This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
RTEMS Patch for binutils 2.9.1
- To: binutils@sourceware.cygnus.com
- Subject: RTEMS Patch for binutils 2.9.1
- From: <joel@OARcorp.com>
- Date: Thu, 13 May 1999 08:43:30 -0500 (CDT)
I do not know if I have submitted the individual patches in this in the
past or not. I wanted to make sure that it got in though. The patch
applied without hassle to binutils-2.9.1.0.14 so I doubt they are in.
This patch does a few minor things for RTEMS targets mostly in
configuration files. It also adds some RTEMS targets that are
either aliases or copies of existing targets with no new files.
Included in this patch is one thing I am pretty sure will be rejected.
The mod to opcode/hppa.h adds instructions and unless something has
changed recently, knowing that these instructions exist requires having
access to a manual that was restricted in some way. Perhaps one of the
HPPA folks will be able to state something more recent HPPA technical
information.
Thu May 13 07:31:58 CDT 1999 Joel Sherrill (joel@OARcorp.com)
* bfd/config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to
list of target formats (targ_selvecs).
* bfd/config.bfd (i[3456]86*-*-rtemself*, mips*el-*-rtems*,
powerpcle*-*rtems*, sh-*-rtemself*): New targets.
* gas/configure (i386-*-rtemself*, sh-*-rtemself*): New targets.
* gas/configure.in (i386-*-rtemself*, sh-*-rtemself*): New
targets.
* opcode/hppa.h: Added 72000 instructions.
* ld/configure.tgt (i386-*-rtemself*, sh-*-rtemself*,
mips*el-*-rtems*, powerpcle-*-rtems*): New targets.
diff -N -P -r -c /usr1/rtems/work/original/binutils-2.9.1/bfd/config.bfd binutils-2.9.1/bfd/config.bfd
*** /usr1/rtems/work/original/binutils-2.9.1/bfd/config.bfd Fri May 1 10:48:05 1998
--- binutils-2.9.1/bfd/config.bfd Mon Jan 25 15:16:47 1999
***************
*** 174,186 ****
targ_defvec=bfd_elf32_i386_vec
targ_selvecs=i386coff_vec
;;
i[3456]86-*-msdosdjgpp* | i[3456]*-*-go32* | i[3456]86-go32-rtems* )
targ_defvec=go32coff_vec
targ_selvecs="go32stubbedcoff_vec i386aout_vec"
;;
i[3456]86-*-sysv* | i[3456]86-*-isc* | i[3456]86-*-sco* | i[3456]86-*-coff | \
! i[3456]86-*-aix* | i[3456]86*-*-rtems*)
targ_defvec=i386coff_vec
;;
i[3456]86-sequent-bsd*)
targ_defvec=i386dynix_vec
--- 174,194 ----
targ_defvec=bfd_elf32_i386_vec
targ_selvecs=i386coff_vec
;;
+ i[3456]86-*-rtemself*)
+ targ_defvec=bfd_elf32_i386_vec
+ targ_selvecs="i386coff_vec i386aout_vec"
+ ;;
i[3456]86-*-msdosdjgpp* | i[3456]*-*-go32* | i[3456]86-go32-rtems* )
targ_defvec=go32coff_vec
targ_selvecs="go32stubbedcoff_vec i386aout_vec"
;;
i[3456]86-*-sysv* | i[3456]86-*-isc* | i[3456]86-*-sco* | i[3456]86-*-coff | \
! i[3456]86-*-aix*)
! targ_defvec=i386coff_vec
! ;;
! i[3456]86*-*-rtems*)
targ_defvec=i386coff_vec
+ targ_selvecs="bfd_elf32_i386_vec i386aout_vec"
;;
i[3456]86-sequent-bsd*)
targ_defvec=i386dynix_vec
***************
*** 300,306 ****
targ_defvec=bfd_elf32_m68k_vec
targ_selvecs="m68kcoff_vec ieee_vec"
;;
! m68*-*-coff* | m68*-*-sysv* | m68*-*-rtems*)
targ_defvec=m68kcoff_vec
targ_selvecs="m68kcoff_vec versados_vec ieee_vec"
;;
--- 308,319 ----
targ_defvec=bfd_elf32_m68k_vec
targ_selvecs="m68kcoff_vec ieee_vec"
;;
! m68*-*-rtems*)
! # same as m68k-coff with some extra targets
! targ_defvec=m68kcoff_vec
! targ_selvecs="m68kcoff_vec versados_vec ieee_vec aout0_big_vec"
! ;;
! m68*-*-coff* | m68*-*-sysv*)
targ_defvec=m68kcoff_vec
targ_selvecs="m68kcoff_vec versados_vec ieee_vec"
;;
***************
*** 423,429 ****
targ_defvec=ecoff_big_vec
targ_selvecs=ecoff_little_vec
;;
! mips*el-*-elf*)
targ_defvec=bfd_elf32_littlemips_vec
targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
;;
--- 436,442 ----
targ_defvec=ecoff_big_vec
targ_selvecs=ecoff_little_vec
;;
! mips*el-*-elf* | mips*el-*-rtems*)
targ_defvec=bfd_elf32_littlemips_vec
targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
;;
***************
*** 477,483 ****
targ_selvecs="nlm32_powerpc_vec rs6000coff_vec"
;;
powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
! powerpcle-*-solaris2* | powerpcle-*-linux-gnu*)
targ_defvec=bfd_elf32_powerpcle_vec
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec ppcboot_vec"
;;
--- 490,496 ----
targ_selvecs="nlm32_powerpc_vec rs6000coff_vec"
;;
powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
! powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle*-*rtems*)
targ_defvec=bfd_elf32_powerpcle_vec
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec ppcboot_vec"
;;
***************
*** 491,497 ****
targ_defvec=rs6000coff_vec
;;
! sh-*-elf*)
targ_defvec=bfd_elf32_sh_vec
targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
targ_underscore=yes
--- 504,510 ----
targ_defvec=rs6000coff_vec
;;
! sh-*-elf* | sh-*-rtemself*)
targ_defvec=bfd_elf32_sh_vec
targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
targ_underscore=yes
diff -N -P -r -c /usr1/rtems/work/original/binutils-2.9.1/gas/configure binutils-2.9.1/gas/configure
*** /usr1/rtems/work/original/binutils-2.9.1/gas/configure Fri May 1 10:45:07 1998
--- binutils-2.9.1/gas/configure Mon Jan 25 15:16:47 1999
***************
*** 1500,1505 ****
--- 1500,1506 ----
i386-*-vsta) fmt=aout ;;
i386-*-msdosdjgpp* | i386-*-go32* | i386-go32-rtems*)
fmt=coff em=go32;;
+ i386-*-rtemself*) fmt=elf ;;
i386-*-rtems*) fmt=coff ;;
i386-*-gnu*) fmt=elf ;;
i386-*-mach*)
***************
*** 1593,1598 ****
--- 1594,1600 ----
sh-*-elf*) fmt=elf ;;
sh-*-coff*) fmt=coff ;;
+ sh-*-rtemself*) fmt=elf ;;
sh-*-rtems*) fmt=coff ;;
ns32k-pc532-mach* | ns32k-pc532-ux*) fmt=aout em=pc532mach ;;
diff -N -P -r -c /usr1/rtems/work/original/binutils-2.9.1/gas/configure.in binutils-2.9.1/gas/configure.in
*** /usr1/rtems/work/original/binutils-2.9.1/gas/configure.in Fri May 1 10:45:07 1998
--- binutils-2.9.1/gas/configure.in Mon Jan 25 15:16:47 1999
***************
*** 171,176 ****
--- 171,177 ----
i386-*-vsta) fmt=aout ;;
i386-*-msdosdjgpp* | i386-*-go32* | i386-go32-rtems*)
fmt=coff em=go32;;
+ i386-*-rtemself*) fmt=elf ;;
i386-*-rtems*) fmt=coff ;;
i386-*-gnu*) fmt=elf ;;
i386-*-mach*)
***************
*** 261,266 ****
--- 262,268 ----
sh-*-elf*) fmt=elf ;;
sh-*-coff*) fmt=coff ;;
+ sh-*-rtemself*) fmt=elf ;;
sh-*-rtems*) fmt=coff ;;
ns32k-pc532-mach* | ns32k-pc532-ux*) fmt=aout em=pc532mach ;;
diff -N -P -r -c /usr1/rtems/work/original/binutils-2.9.1/include/opcode/hppa.h binutils-2.9.1/include/opcode/hppa.h
*** /usr1/rtems/work/original/binutils-2.9.1/include/opcode/hppa.h Fri May 1 10:48:35 1998
--- binutils-2.9.1/include/opcode/hppa.h Mon Jan 25 15:16:47 1999
***************
*** 370,375 ****
--- 370,383 ----
{ "fice", 0x040002c0, 0xfc001fdf, "Zx(b)", pa10},
{ "diag", 0x14000000, 0xfc000000, "D", pa10},
+ /* Following group is 72000 specific */
+ { "mtcpu", 0x14001600, 0xfc00ffff, "x,^"},
+ { "mfcpu", 0x14001A00, 0xfc00ffff, "^,x"},
+ { "tocen", 0x14403600, 0xffffffff, ""},
+ { "tocdis", 0x14401620, 0xffffffff, ""},
+ { "shdwgr", 0x14402600, 0xffffffff, ""},
+ { "grshdw", 0x14400620, 0xffffffff, ""},
+
/* gfw and gfr are not in the HP PA 1.1 manual, but they are in either
the Timex FPU or the Mustang ERS (not sure which) manual. */
{ "gfw", 0x04001680, 0xfc003fdf, "Zx(s,b)", pa11},
diff -N -P -r -c /usr1/rtems/work/original/binutils-2.9.1/ld/configure.tgt binutils-2.9.1/ld/configure.tgt
*** /usr1/rtems/work/original/binutils-2.9.1/ld/configure.tgt Fri May 1 10:48:48 1998
--- binutils-2.9.1/ld/configure.tgt Thu May 13 09:03:24 1999
***************
*** 66,71 ****
--- 66,72 ----
i[3456]86-*-isc*) targ_emul=i386coff ;;
i[3456]86-*-lynxos*) targ_emul=i386lynx ;;
i[3456]86-*-coff) targ_emul=i386coff ;;
+ i[3456]86-*-rtemself*) targ_emul=elf_i386 ;;
i[3456]86-*-rtems*) targ_emul=i386coff ;;
i[3456]86-*-bsd) targ_emul=i386bsd ;;
i[3456]86-*-bsd386) targ_emul=i386bsd ;;
***************
*** 112,118 ****
h8500-*-hms) targ_emul=h8500
targ_extra_emuls="h8500s h8500b h8500m h8500c"
;;
! sh-*-elf*) targ_emul=shelf
targ_extra_emuls="shlelf sh shl"
;;
sh-*-*|sh-*-rtems*) targ_emul=sh; targ_extra_emuls=shl ;;
--- 113,120 ----
h8500-*-hms) targ_emul=h8500
targ_extra_emuls="h8500s h8500b h8500m h8500c"
;;
! sh-*-elf* | sh-*-rtemself*)
! targ_emul=shelf
targ_extra_emuls="shlelf sh shl"
;;
sh-*-*|sh-*-rtems*) targ_emul=sh; targ_extra_emuls=shl ;;
***************
*** 157,162 ****
--- 159,165 ----
mips*vr5000-*-elf*) targ_emul=elf32b4300 ;;
mips*el-*-elf*) targ_emul=elf32elmip ;;
mips*-*-elf*) targ_emul=elf32ebmip ;;
+ mips*el-*-rtems*) targ_emul=elf32elmip ;;
mips*-*-rtems*) targ_emul=elf32ebmip ;;
mips*el-*-linux-gnu*) targ_emul=elf32lsmip
targ_extra_emuls="elf32bsmip mipslit mipsbig"
***************
*** 184,189 ****
--- 187,193 ----
| powerpc-*-netbsd*)
targ_emul=elf32ppc ;;
powerpcle-*-elf* | powerpcle-*-eabi* | powerpcle-*-solaris* | powerpcle-*-sysv*) targ_emul=elf32lppc ;;
+ powerpcle-*-rtems*) targ_emul=elf32leppc ;;
powerpc-*-rtems*) targ_emul=elf32ppc ;;
powerpc-*-macos*) targ_emul=ppcmacos ;;
powerpc-*-netware*) targ_emul=ppcnw ;;