diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2008-10-04 04:58:19 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2008-10-04 04:58:19 +0000 |
commit | 1547cff649e224268ae79ef4d607881fe155d01d (patch) | |
tree | 7e26d180aa26cd794b68e7894d7a09d914ddebe2 /contrib/crossrpms/patches | |
parent | 2008-10-03 Joel Sherrill <joel.sherrill@oarcorp.com> (diff) | |
download | rtems-1547cff649e224268ae79ef4d607881fe155d01d.tar.bz2 |
Update to 2.18.92.
Diffstat (limited to 'contrib/crossrpms/patches')
-rw-r--r-- | contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff b/contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff new file mode 100644 index 0000000000..4b303b329e --- /dev/null +++ b/contrib/crossrpms/patches/binutils-2.18.92-rtems4.10-20081004.diff @@ -0,0 +1,242 @@ +diff -Naur binutils-2.18.92.orig/bfd/config.bfd binutils-2.18.92/bfd/config.bfd +--- binutils-2.18.92.orig/bfd/config.bfd 2008-04-16 20:02:01.000000000 +0200 ++++ binutils-2.18.92/bfd/config.bfd 2008-10-04 06:56:29.000000000 +0200 +@@ -721,7 +721,7 @@ + targ_defvec=bfd_elf32_iq2000_vec + ;; + +- m32c-*-elf) ++ m32c-*-elf | m32c-*-rtems*) + targ_defvec=bfd_elf32_m32c_vec + ;; + +diff -Naur binutils-2.18.92.orig/gas/configure.tgt binutils-2.18.92/gas/configure.tgt +--- binutils-2.18.92.orig/gas/configure.tgt 2008-10-02 10:07:17.000000000 +0200 ++++ binutils-2.18.92/gas/configure.tgt 2008-10-04 06:56:29.000000000 +0200 +@@ -244,9 +244,10 @@ + + iq2000-*-elf) fmt=elf ;; + +- m32c-*-elf) fmt=elf ;; ++ m32c-*-elf | m32c-*-rtems*) fmt=elf ;; + + m32r-*-elf*) fmt=elf ;; ++ m32r-*-rtems*) fmt=elf ;; + m32r-*-linux*) fmt=elf em=linux;; + + m68hc11-*-* | m6811-*-*) fmt=elf ;; +diff -Naur binutils-2.18.92.orig/ld/configure.tgt binutils-2.18.92/ld/configure.tgt +--- binutils-2.18.92.orig/ld/configure.tgt 2008-08-09 07:35:13.000000000 +0200 ++++ binutils-2.18.92/ld/configure.tgt 2008-10-04 06:56:29.000000000 +0200 +@@ -301,10 +301,12 @@ + ;; + iq2000-*-elf) targ_emul=elf32iq2000 ; targ_extra_emuls="elf32iq10" + ;; +-m32c-*-elf) targ_emul=elf32m32c ++m32c-*-elf|m32c-*-rtems*) ++ targ_emul=elf32m32c + ;; + m32r*le-*-elf*) targ_emul=m32rlelf ;; + m32r*-*-elf*) targ_emul=m32relf ;; ++m32r*-*-rtems*) targ_emul=m32relf ;; + m32r*le-*-linux-*) targ_emul=m32rlelf_linux ;; + m32r*-*-linux-*) targ_emul=m32relf_linux + ;; +diff -Naur binutils-2.18.92.orig/ld/testsuite/ChangeLog binutils-2.18.92/ld/testsuite/ChangeLog +--- binutils-2.18.92.orig/ld/testsuite/ChangeLog 2008-10-02 10:07:18.000000000 +0200 ++++ binutils-2.18.92/ld/testsuite/ChangeLog 2008-10-04 06:52:32.000000000 +0200 +@@ -6,6 +6,20 @@ + + * ld-mips-elf/reloc-estimate-1.d: Make endian-neutral. + ++2008-09-20 Jan Kratochvil <jan.kratochvil@redhat.com> ++ ++ Provide virtual target "cfi" for targets supporting CFI. ++ * ld-elf/eh-frame-hdr.d: Replace target and xfail statements by single ++ `target: cfi'. ++ * ld-elf/eh-group.exp: Call check_as_cfi instead of is_elf_format. ++ * ld-elf/eh-group1.s, elf/eh-group2.s: Use more compatible section ++ flags prefix '%'. ++ * ld-elf/eh5.d: Replace target statement by `target: cfi' with an Alpha ++ exception. Relax the `Code alignment factor' matching. ++ * lib/ld-lib.exp: Rename istarget as istarget_ld. ++ (istarget, check_as_cfi): New procedure. ++ (run_dump_test): New comment for the virtual target `cfi'. ++ + 2008-09-17 Jan Kratochvil <jan.kratochvil@redhat.com> + + * ld-elf/eh-group.exp, ld-elf/eh-group1.s, ld-elf/eh-group2.s: New test. +diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh5.d binutils-2.18.92/ld/testsuite/ld-elf/eh5.d +--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh5.d 2008-01-28 16:15:32.000000000 +0100 ++++ binutils-2.18.92/ld/testsuite/ld-elf/eh5.d 2008-10-04 06:52:32.000000000 +0200 +@@ -3,14 +3,15 @@ + #source: eh5b.s + #ld: + #readelf: -wf +-#target: x86_64-*-* i?86-*-* ++#target: cfi ++#notarget: alpha* + + The section .eh_frame contains: + + 00000000 0000001[04] 00000000 CIE + Version: 1 + Augmentation: "zR" +- Code alignment factor: 1 ++ Code alignment factor: .* + Data alignment factor: .* + Return address column: .* + Augmentation data: 1b +@@ -29,7 +30,7 @@ + 000000(2c|30) 00000014 00000000 CIE + Version: 1 + Augmentation: "zPR" +- Code alignment factor: 1 ++ Code alignment factor: .* + Data alignment factor: .* + Return address column: .* + Augmentation data: 03 .. .. .. .. 1b +@@ -53,7 +54,7 @@ + 0000007[48] 0000001[8c] 00000000 CIE + Version: 1 + Augmentation: "zPLR" +- Code alignment factor: 1 ++ Code alignment factor: .* + Data alignment factor: .* + Return address column: .* + Augmentation data: 03 .. .. .. .. 0c 1b +@@ -74,7 +75,7 @@ + 000000b[08] 0000001[04] 00000000 CIE + Version: 1 + Augmentation: "zR" +- Code alignment factor: 1 ++ Code alignment factor: .* + Data alignment factor: .* + Return address column: .* + Augmentation data: 1b +@@ -89,7 +90,7 @@ + 000000[de]8 00000014 00000000 CIE + Version: 1 + Augmentation: "zPR" +- Code alignment factor: 1 ++ Code alignment factor: .* + Data alignment factor: .* + Return address column: .* + Augmentation data: 03 .. .. .. .. 1b +@@ -111,7 +112,7 @@ + 000001(1c|30) 0000001[8c] 00000000 CIE + Version: 1 + Augmentation: "zPLR" +- Code alignment factor: 1 ++ Code alignment factor: .* + Data alignment factor: .* + Return address column: .* + Augmentation data: 03 .. .. .. .. 0c 1b +diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-frame-hdr.d binutils-2.18.92/ld/testsuite/ld-elf/eh-frame-hdr.d +--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-frame-hdr.d 2006-12-04 09:57:09.000000000 +0100 ++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-frame-hdr.d 2008-10-04 06:52:32.000000000 +0200 +@@ -1,17 +1,7 @@ + #source: eh-frame-hdr.s + #ld: -e _start --eh-frame-hdr + #objdump: -hw +-#target: alpha*-*-* +-#target: arm*-*-* +-#target: i?86-*-* +-#target: m68k-*-* +-#target: mips*-*-* +-#target: powerpc*-*-* +-#target: s390*-*-* +-#target: sh*-*-* +-#xfail: sh*l*-*-* +-#target: sparc*-*-* +-#target: x86_64-*-* ++#target: cfi + #... + [0-9] .eh_frame_hdr 0*[12][048c] .* + #pass +diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group1.s binutils-2.18.92/ld/testsuite/ld-elf/eh-group1.s +--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group1.s 2008-09-17 10:18:20.000000000 +0200 ++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-group1.s 2008-10-04 06:52:32.000000000 +0200 +@@ -1,4 +1,4 @@ +- .section sect, "axG", @progbits, sectgroup, comdat ++ .section sect, "axG", %progbits, sectgroup, comdat + .global _start + _start: + .cfi_startproc +diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group2.s binutils-2.18.92/ld/testsuite/ld-elf/eh-group2.s +--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group2.s 2008-09-17 10:18:20.000000000 +0200 ++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-group2.s 2008-10-04 06:52:32.000000000 +0200 +@@ -1,4 +1,4 @@ +- .section sect, "axG", @progbits, sectgroup, comdat ++ .section sect, "axG", %progbits, sectgroup, comdat + .cfi_startproc + .skip 16 + .cfi_endproc +diff -Naur binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group.exp binutils-2.18.92/ld/testsuite/ld-elf/eh-group.exp +--- binutils-2.18.92.orig/ld/testsuite/ld-elf/eh-group.exp 2008-09-17 10:18:20.000000000 +0200 ++++ binutils-2.18.92/ld/testsuite/ld-elf/eh-group.exp 2008-10-04 06:52:32.000000000 +0200 +@@ -29,9 +29,9 @@ + # executable trying to create .eh_frame_hdr. It needs a separate .exp file due + # to the requirement of two `ld' runs. + +-# Exclude non-ELF targets. ++# Exclude non-CFI (such as ia64) targets. + +-if ![is_elf_format] { ++if {![check_as_cfi]} { + return + } + +diff -Naur binutils-2.18.92.orig/ld/testsuite/lib/ld-lib.exp binutils-2.18.92/ld/testsuite/lib/ld-lib.exp +--- binutils-2.18.92.orig/ld/testsuite/lib/ld-lib.exp 2008-02-18 12:04:09.000000000 +0100 ++++ binutils-2.18.92/ld/testsuite/lib/ld-lib.exp 2008-10-04 06:52:32.000000000 +0200 +@@ -598,7 +598,8 @@ + # + # target: TARGET + # Only run the test for TARGET. This may occur more than once; the +-# target being tested must match at least one. ++# target being tested must match at least one. You may provide target ++# name "cfi" for any target supporting the CFI statements. + # + # notarget: TARGET + # Do not run the test for TARGET. This may occur more than once; +@@ -1569,3 +1570,39 @@ + } + return $gc_sections_available_saved + } ++ ++# Check if the assembler supports CFI statements. ++ ++proc check_as_cfi { } { ++ global check_as_cfi_result ++ global as ++ if [info exists check_as_cfi_result] { ++ return $check_as_cfi_result ++ } ++ set as_file "tmpdir/check_as_cfi.s" ++ set as_fh [open $as_file w 0666] ++ puts $as_fh "# Generated file. DO NOT EDIT" ++ puts $as_fh "\t.cfi_startproc" ++ puts $as_fh "\t.cfi_endproc" ++ close $as_fh ++ remote_download host $as_file ++ verbose -log "Checking CFI support:" ++ rename "perror" "check_as_cfi_perror" ++ proc perror { args } { } ++ set success [ld_assemble $as $as_file "/dev/null"] ++ rename "perror" "" ++ rename "check_as_cfi_perror" "perror" ++ #remote_file host delete $as_file ++ set check_as_cfi_result $success ++ return $success ++} ++ ++# Provide virtual target "cfi" for targets supporting CFI. ++ ++rename "istarget" "istarget_ld" ++proc istarget { target } { ++ if {$target == "cfi"} { ++ return [check_as_cfi] ++ } ++ return [istarget_ld $target] ++} |