Add support for v850e and v850eq targets.

Add support for BFD_RELOC_V850_PCREL relocation.
This commit is contained in:
Nick Clifton 1997-08-18 18:42:35 +00:00
parent 492c267000
commit def47b537e
4 changed files with 198 additions and 4 deletions

View File

@ -23,12 +23,23 @@ else
lose_these_too="${d30v_files} ${lose_these_too}"
fi
v850_files="cpu-v850.c elf32-v850.c"
v850_files="elf32-v850.c"
if ( echo $* | grep keep\-v850 > /dev/null ) ; then
keep_these_too="${v850_files} ${keep_these_too}"
keep_these_too="cpu-v850.c ${v850_files} ${keep_these_too}"
lose_these_too="cpu-v850e.c cpu-v850eq.c ${lose_these_too}"
else
lose_these_too="${v850_files} ${lose_these_too}"
if ( echo $* | grep keep\-v850e > /dev/null ) ; then
keep_these_too="cpu-v850e.c ${v850_files} ${keep_these_too}"
lose_these_too="cpu-v850.c cpu-v850eq.c ${lose_these_too}"
else
if ( echo $* | grep keep\-v850eq > /dev/null ) ; then
keep_these_too="cpu-v850eq.c ${v850_files} ${keep_these_too}"
lose_these_too="cpu-v850.c cpu-v850e.c ${lose_these_too}"
else
lose_these_too="cpu-v850.c cpu-v850e.c cpu-v850eq.c ${v850_files} ${lose_these_too}"
fi
fi
fi
tic80_files="cpu-tic80.c coff-tic80.c"
@ -323,7 +334,7 @@ else
done
fi
v850_files="ChangeLog ChangeLog.2 Makefile.in Makefile.am archures.c reloc.c targets.c config.bfd configure.in configure bfd-in2.h elf.c libbfd.h"
v850_files="ChangeLog ChangeLog.2 Makefile.in Makefile.am archures.c reloc.c targets.c config.bfd configure.in configure bfd-in2.h elf.c libbfd.h elf32-v850.c"
if ( echo $* | grep keep\-v850 > /dev/null ) ; then
for i in $v850_files ; do
if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then
@ -333,6 +344,12 @@ if ( echo $* | grep keep\-v850 > /dev/null ) ; then
fi
done
else
if ( echo $* | grep keep\-v850e > /dev/null ) ; then
;
else
if ( echo $* | grep keep\-v850eq > /dev/null ) ; then
;
else
for i in $v850_files ; do
if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then
if [ -n "${verbose}" ] ; then
@ -349,6 +366,61 @@ else
mv new $i
fi
done
fi
fi
fi
if ( echo $* | grep keep\-v850e > /dev/null ) ; then
for i in $v850_files ; do
if test -r $i && (grep sanitize-v850e $i > /dev/null) ; then
if [ -n "${verbose}" ] ; then
echo Keeping v850e stuff in $i
fi
fi
done
else
for i in $v850_files ; do
if test -f $i && (grep sanitize-v850e $i > /dev/null) ; then
if [ -n "${verbose}" ] ; then
echo Removing traces of \"v850e\" from $i...
fi
cp $i new
sed '/start\-sanitize\-v850e/,/end-\sanitize\-v850e/d' < $i > new
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
if [ -n "${verbose}" ] ; then
echo Caching $i in .Recover...
fi
mv $i .Recover
fi
mv new $i
fi
done
fi
if ( echo $* | grep keep\-v850eq > /dev/null ) ; then
for i in $v850_files ; do
if test -r $i && (grep sanitize-v850eq $i > /dev/null) ; then
if [ -n "${verbose}" ] ; then
echo Keeping v850eq stuff in $i
fi
fi
done
else
for i in $v850_files ; do
if test -f $i && (grep sanitize-v850eq $i > /dev/null) ; then
if [ -n "${verbose}" ] ; then
echo Removing traces of \"v850eq\" from $i...
fi
cp $i new
sed '/start\-sanitize\-v850eq/,/end-\sanitize\-v850eq/d' < $i > new
if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
if [ -n "${verbose}" ] ; then
echo Caching $i in .Recover...
fi
mv $i .Recover
fi
mv new $i
fi
done
fi
r5900_files="ChangeLog config.bfd"

View File

@ -1,3 +1,47 @@
start-sanitize-v850
Mon Aug 18 11:36:19 1997 Nick Clifton <nickc@cygnus.com>
* elf32-v850.c (v850_elf_howto_table, v850_elf_reloc_map,
v850_elf_check_relocs, v850_elf_reloc,
v850_elf_final_link_relocate): Add support for
BFD_RELOC_V850_16_PCREL relocation.
* reloc.c (COMMENT): Add suuport for BFD_RELOC_V850_16_PCREL
relocation.
* libbfd.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
* bfd-in2.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
end-sanitize-v850
start-sanitize-v850e
Mon Aug 18 11:33:56 1997 Nick Clifton <nickc@cygnus.com>
* cpu-v850e: New file.
* elf.c (prep_headers): Add support for v850e target.
* bfd-in2.h (bfd_architecture): Add support for v850e target.
* config.bfd: Add support for v850e target.
* archures.c: Add support for v850e target.
end-sanitize-v850e
start-sanitize-v850eq
Mon Aug 18 11:33:56 1997 Nick Clifton <nickc@cygnus.com>
* cpu-v850eq: New file.
* elf.c (prep_headers): Add support for v850eq target.
* bfd-in2.h (bfd_architecture): Add support for v850eq target.
* config.bfd: Add support for v850eq target.
* archures.c: Add support for v850eq target.
end-sanitize-v850eq
Fri Aug 15 12:01:28 1997 Ian Lance Taylor <ian@cygnus.com>
* coffgen.c (coff_find_nearest_line): Correctly handle the offset

39
bfd/cpu-v850e.c Normal file
View File

@ -0,0 +1,39 @@
/* BFD support for the NEC V850E processor
Copyright 1994, 1995 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "bfd.h"
#include "sysdep.h"
#include "libbfd.h"
const bfd_arch_info_type bfd_v850e_arch =
{
32, /* 32 bits in a word */
32, /* 32 bits in an address */
8, /* 8 bits in a byte */
bfd_arch_v850e,
0, /* only 1 machine */
"v850e",
"v850e",
2,
true, /* the one and only */
bfd_default_compatible,
bfd_default_scan ,
0,
};

39
bfd/cpu-v850eq.c Normal file
View File

@ -0,0 +1,39 @@
/* BFD support for the NEC V850EQ processor
Copyright 1994, 1995 Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "bfd.h"
#include "sysdep.h"
#include "libbfd.h"
const bfd_arch_info_type bfd_v850eq_arch =
{
32, /* 32 bits in a word */
32, /* 32 bits in an address */
8, /* 8 bits in a byte */
bfd_arch_v850eq,
0, /* only 1 machine */
"v850eq",
"v850eq",
2,
true, /* the one and only */
bfd_default_compatible,
bfd_default_scan ,
0,
};