aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorMichael Meissner <gnu@the-meissners.org>1995-05-09 21:07:06 +0000
committerMichael Meissner <gnu@the-meissners.org>1995-05-09 21:07:06 +0000
commitc7b44b0425dc1a4ee75abee5897de77a2b86648d (patch)
treebd51dbc49d168a6cbc4ac819ad1c143f78181fac /bfd
parentb4ecce2f530b2ff83b121c100beff29da1032db2 (diff)
downloadgdb-c7b44b0425dc1a4ee75abee5897de77a2b86648d.zip
gdb-c7b44b0425dc1a4ee75abee5897de77a2b86648d.tar.gz
gdb-c7b44b0425dc1a4ee75abee5897de77a2b86648d.tar.bz2
Add little endian PowerPC support.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog23
-rwxr-xr-xbfd/config.bfd7
-rw-r--r--bfd/configure.in21
-rw-r--r--bfd/targets.c10
4 files changed, 53 insertions, 8 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 1c1ac51..363a9cb 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,26 @@
+Tue May 9 17:01:38 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * config.bfd: Add little endian PowerPC support.
+ * configure.in: Ditto.
+ * targets.c: Ditto.
+ * config/ppcle-elf.mt: New file, for little endian PowerPC
+ support.
+ * config/ppc-elf.mt: Add little endian powerpc to the BFD
+ selection vectors.
+ * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Complain if
+ linking a different endian object than we expect.
+ (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define, to provide little
+ endian support.
+
+Tue May 2 16:32:24 1995 Jeff Law (law@snake.cs.utah.edu)
+
+ * config.bfd (hppa*-*-lites*): Treat just like hppa*-*-*elf*.
+
+Tue Apr 25 19:38:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * coffgen.c (make_a_section_from_file): Initialize lma same as
+ vma.
+
Tue Apr 25 11:03:21 1995 Jason Molenda (crash@phydeaux.cygnus.com)
* hosts/std-host.h: #include ansidecl.h 'cause PTR is used in
diff --git a/bfd/config.bfd b/bfd/config.bfd
index fb3437e..7719fc6 100755
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -42,6 +42,7 @@ case "${canon}" in
rce-*-aout) bfd_name=rce-aout ;;
# end-sanitize-rce
hppa*-*-*elf*) bfd_name=hppa-elf ;;
+ hppa*-*-lites*) bfd_name=hppa-elf ;;
hppa*-*-bsd*) bfd_name=hppabsd ;;
hppa*-*-hpux*) bfd_name=hppahpux ;;
hppa*-*-hiux*) bfd_name=hppahpux ;;
@@ -60,8 +61,10 @@ case "${canon}" in
i[345]86-*-freebsd*) bfd_name=i386-bsd strip_underscore=yes ;;
i[345]86-*-netbsd*) bfd_name=i386-nbsd strip_underscore=yes ;;
i[345]86-*-netware*) bfd_name=i386-nlm ;;
+ i[345]86-*-linuxaout*) bfd_name=i386-laout strip_underscore=yes ;;
i[345]86-*-linux*) bfd_name=i386-linux strip_underscore=yes ;;
i[345]86-*-lynxos*) bfd_name=i386-lynx ;;
+ i[345]86-*-gnuelf*) bfd_name=i386-gelf strip_underscore=yes ;;
i[345]86-*-gnu*) bfd_name=i386-gnu strip_underscore=yes ;;
i[345]86-*-mach*) bfd_name=i386-mach3 strip_underscore=yes ;;
i[345]86-*-osf1mk*) bfd_name=i386-mach3 strip_underscore=yes ;;
@@ -82,6 +85,7 @@ case "${canon}" in
m68*-est-coff) bfd_name=m68k-coff ;;
m68*-*-aout*) bfd_name=m68k-0aout strip_underscore=yes ;;
m68*-*-coff*) bfd_name=m68k-coff ;;
+ m68*-*-elf*) bfd_name=m68k-elf ;;
m68*-*-hpux*) bfd_name=hp300hpux strip_underscore=yes ;;
m68*-*-lynxos*) bfd_name=m68k-lynx ;;
m68*-*-netbsd*) bfd_name=m68k-nbsd strip_underscore=yes ;;
@@ -122,6 +126,9 @@ case "${canon}" in
powerpc-*-sysv4*) bfd_name=ppc-elf ;;
powerpc-*-eabi*) bfd_name=ppc-elf ;;
powerpc-*-netware*) bfd_name=ppc-nlm ;;
+ powerpcle-*-elf*) bfd_name=ppcle-elf ;;
+ powerpcle-*-sysv4*) bfd_name=ppcle-elf ;;
+ powerpcle-*-eabi*) bfd_name=ppcle-elf ;;
rs6000-*-*) bfd_name=rs6000 ;;
sparc-*-lynxos*) bfd_name=sparc-lynx ;;
sparc-*-netbsd*) bfd_name=sparc-nbsd strip_underscore=yes;;
diff --git a/bfd/configure.in b/bfd/configure.in
index b8c8940..186f2e2 100644
--- a/bfd/configure.in
+++ b/bfd/configure.in
@@ -143,16 +143,21 @@ do
apollocoff_vec) tb="$tb coff-apollo.o" ;;
b_out_vec_big_host) tb="$tb bout.o aout32.o stab-syms.o" ;;
b_out_vec_little_host) tb="$tb bout.o aout32.o stab-syms.o" ;;
+# start-sanitize-arc
+ bfd_elf32_littlearc_vec) tb="$tb elf32-arc.o elf32.o elf.o" ;;
+ bfd_elf32_bigarc_vec) tb="$tb elf32-arc.o elf32.o elf.o" ;;
+# end-sanitize-arc
bfd_elf32_big_generic_vec) tb="$tb elf32-gen.o elf32.o elf.o" ;;
- bfd_elf32_bigmips_vec) tb="$tb elf32-mips.o elf32.o elf.o ecoff.o ecofflink.o" ;;
+ bfd_elf32_bigmips_vec) tb="$tb elf32-mips.o elf32.o elf.o ecofflink.o" ;;
bfd_elf32_hppa_vec) tb="$tb elf32-hppa.o elf32.o elf.o" ;;
bfd_elf32_i386_vec) tb="$tb elf32-i386.o elf32.o elf.o" ;;
bfd_elf32_i860_vec) tb="$tb elf32-i860.o elf32.o elf.o" ;;
bfd_elf32_little_generic_vec) tb="$tb elf32-gen.o elf32.o elf.o" ;;
- bfd_elf32_littlemips_vec) tb="$tb elf32-mips.o elf32.o elf.o ecoff.o ecofflink.o" ;;
+ bfd_elf32_littlemips_vec) tb="$tb elf32-mips.o elf32.o elf.o ecofflink.o" ;;
bfd_elf32_m68k_vec) tb="$tb elf32-m68k.o elf32.o elf.o" ;;
bfd_elf32_m88k_vec) tb="$tb elf32-m88k.o elf32.o elf.o" ;;
bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.o elf32.o elf.o" ;;
+ bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.o elf32.o elf.o" ;;
bfd_elf32_sparc_vec) tb="$tb elf32-sparc.o elf32.o elf.o" ;;
bfd_elf64_big_generic_vec) tb="$tb elf64-gen.o elf64.o elf.o"
target64=true ;;
@@ -176,6 +181,7 @@ do
i386bsd_vec) tb="$tb i386bsd.o aout32.o stab-syms.o" ;;
i386dynix_vec) tb="$tb i386dynix.o aout32.o stab-syms.o" ;;
i386coff_vec) tb="$tb coff-i386.o cofflink.o" ;;
+ i386msdos_vec) tb="$tb i386msdos.o" ;;
i386linux_vec) tb="$tb i386linux.o aout32.o stab-syms.o" ;;
i386lynx_aout_vec) tb="$tb i386lynx.o lynx-core.o aout32.o stab-syms.o" ;;
i386lynx_coff_vec) tb="$tb cf-i386lynx.o cofflink.o lynx-core.o stab-syms.o" ;;
@@ -217,6 +223,7 @@ do
tekhex_vec) tb="$tb tekhex.o" ;;
we32kcoff_vec) tb="$tb coff-we32k.o" ;;
z8kcoff_vec) tb="$tb coff-z8k.o reloc16.o" ;;
+ w65_vec) tb="$tb coff-w65.o reloc16.o" ;;
"") ;;
*) echo "*** unknown target vector $vec" 1>&2; exit 1 ;;
@@ -277,11 +284,11 @@ echo BFD_MACHINES=${bfd_machines} >> Makefile.2
test -n "$DEFAULT_VECTOR" && defvec="$DEFAULT_VECTOR"
-echo "TDEFAULTS = \
-${defvec+-DDEFAULT_VECTOR=$defvec} \
-${selvecs+-DSELECT_VECS='$selvecs'} \
-${selarchs+-DSELECT_ARCHITECTURES='$selarchs'}" \
- >> Makefile.2
+tdefaults="TDEFAULTS ="
+test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}"
+test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'"
+test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'"
+echo "${tdefaults}" >> Makefile.2
cat Makefile.tmp >> Makefile.2
rm -f Makefile.tmp
diff --git a/bfd/targets.c b/bfd/targets.c
index b3103d0..8841e82 100644
--- a/bfd/targets.c
+++ b/bfd/targets.c
@@ -263,14 +263,21 @@ The general target vector.
. {* Entry points to copy private data. *}
.#define BFD_JUMP_TABLE_COPY(NAME)\
.CAT(NAME,_bfd_copy_private_bfd_data),\
-.CAT(NAME,_bfd_copy_private_section_data)
+.CAT(NAME,_bfd_merge_private_bfd_data),\
+.CAT(NAME,_bfd_copy_private_section_data),\
+.CAT(NAME,_bfd_set_private_flags)
. {* Called to copy BFD general private data from one object file
. to another. *}
. boolean (*_bfd_copy_private_bfd_data) PARAMS ((bfd *, bfd *));
+. {* Called to merge BFD general private data from one object file
+. to a common output file when linking. *}
+. boolean (*_bfd_merge_private_bfd_data) PARAMS ((bfd *, bfd *));
. {* Called to copy BFD private section data from one object file
. to another. *}
. boolean (*_bfd_copy_private_section_data) PARAMS ((bfd *, sec_ptr,
. bfd *, sec_ptr));
+. {* Called to set private backend flags *}
+. boolean (*_bfd_set_private_flags) PARAMS ((bfd *, flagword));
.
. {* Core file entry points. *}
.#define BFD_JUMP_TABLE_CORE(NAME)\
@@ -446,6 +453,7 @@ extern const bfd_target bfd_elf32_littlemips_vec;
extern const bfd_target bfd_elf32_m68k_vec;
extern const bfd_target bfd_elf32_m88k_vec;
extern const bfd_target bfd_elf32_powerpc_vec;
+extern const bfd_target bfd_elf32_powerpcle_vec;
extern const bfd_target bfd_elf32_sparc_vec;
extern const bfd_target bfd_elf64_big_generic_vec;
extern const bfd_target bfd_elf64_little_generic_vec;