From be920410bf8b84655a04213d19bb69385721b161 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Jun 09 2009 15:35:23 +0000 Subject: 2.19.51.0.2-20 --- diff --git a/binutils-2.19.51.0.2-pr10255.patch b/binutils-2.19.51.0.2-pr10255.patch new file mode 100644 index 0000000..d351667 --- /dev/null +++ b/binutils-2.19.51.0.2-pr10255.patch @@ -0,0 +1,73 @@ +2009-06-09 Jakub Jelinek + + PR gas/10255 + * dw2gencfi.c (output_cfi_insn): Initialize fragment before rs_cfa + to DW_CFA_advance_loc4. + + * gas/cfi/cfi-common-7.d: New test. + * gas/cfi/cfi-common-7.s: New. + * gas/cfi/cfi.exp: Add cfi-common-7 test. + +--- gas/dw2gencfi.c.jj 2009-01-27 17:50:43.000000000 +0100 ++++ gas/dw2gencfi.c 2009-06-09 13:51:19.000000000 +0200 +@@ -1,5 +1,6 @@ + /* dw2gencfi.c - Support for generating Dwarf2 CFI information. +- Copyright 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. ++ Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 ++ Free Software Foundation, Inc. + Contributed by Michal Ludvig + + This file is part of GAS, the GNU Assembler. +@@ -1001,7 +1002,7 @@ output_cfi_insn (struct cfi_insn_data *i + is already allocated to the frag. This comes from the way + that it scans the .eh_frame section looking first for the + .byte DW_CFA_advance_loc4. */ +- frag_more (1); ++ *frag_more (1) = DW_CFA_advance_loc4; + + frag_var (rs_cfa, 4, 0, DWARF2_LINE_MIN_INSN_LENGTH << 3, + make_expr_symbol (&exp), frag_now_fix () - 1, +--- gas/testsuite/gas/cfi/cfi.exp.jj 2008-09-25 20:39:42.000000000 +0200 ++++ gas/testsuite/gas/cfi/cfi.exp 2009-06-09 14:07:08.000000000 +0200 +@@ -89,6 +89,7 @@ if { ![istarget "hppa64*-*"] } then { + run_dump_test "cfi-common-3" + run_dump_test "cfi-common-4" + run_dump_test "cfi-common-5" ++ run_dump_test "cfi-common-7" + } + + # MIPS doesn't support PC relative cfi directives. +--- gas/testsuite/gas/cfi/cfi-common-7.d.jj 2009-06-09 13:58:25.000000000 +0200 ++++ gas/testsuite/gas/cfi/cfi-common-7.d 2009-06-09 14:04:33.000000000 +0200 +@@ -0,0 +1,22 @@ ++#readelf: -wf ++#name: CFI common 7 ++Contents of the .eh_frame section: ++ ++00000000 00000010 00000000 CIE ++ Version: 1 ++ Augmentation: "zR" ++ Code alignment factor: .* ++ Data alignment factor: .* ++ Return address column: .* ++ Augmentation data: [01]b ++ ++ DW_CFA_nop ++ DW_CFA_nop ++ DW_CFA_nop ++ ++00000014 000000(1c|20) 00000018 FDE cie=00000000 pc=.* ++ DW_CFA_advance_loc: 16 to .* ++ DW_CFA_def_cfa: r0( \([er]ax\)|) ofs 16 ++ DW_CFA_advance_loc4: 75031 to .* ++ DW_CFA_def_cfa: r0( \([er]ax\)|) ofs 64 ++#... +--- gas/testsuite/gas/cfi/cfi-common-7.s.jj 2009-06-09 13:57:19.000000000 +0200 ++++ gas/testsuite/gas/cfi/cfi-common-7.s 2009-06-09 13:59:34.000000000 +0200 +@@ -0,0 +1,6 @@ ++ .cfi_startproc simple ++ .skip 16 ++ .cfi_def_cfa 0, 16 ++ .skip 75031 ++ .cfi_def_cfa 0, 64 ++ .cfi_endproc diff --git a/binutils.spec b/binutils.spec index ee2da78..647ba50 100644 --- a/binutils.spec +++ b/binutils.spec @@ -17,7 +17,7 @@ Summary: A GNU collection of binary utilities Name: %{?cross}binutils%{?_with_debug:-debug} Version: 2.19.51.0.2 -Release: 19%{?dist} +Release: 20%{?dist} License: GPLv3+ Group: Development/Tools URL: http://sources.redhat.com/binutils @@ -33,6 +33,7 @@ Patch07: binutils-2.19.50.0.1-build-id.patch Patch08: binutils-2.19.51.0.2-ifunc.patch Patch09: binutils-2.19.51.0.2-IBM.patch Patch10: binutils-2.19.51.0.2-tls-get-addr.patch +Patch11: binutils-2.19.51.0.2-pr10255.patch %if 0%{?_with_debug:1} # Define this if you want to skip the strip step and preserve debug info. @@ -106,6 +107,7 @@ to consider using libelf instead of BFD. %patch08 -p1 -b .ifunc~ %patch09 -p0 -b .IBM~ %patch10 -p0 -b .tls-get-addr~ +%patch11 -p0 -b .pr10255~ # We cannot run autotools as there is an exact requirement of autoconf-2.59. @@ -349,6 +351,9 @@ fi %endif # %{isnative} %changelog +* Tue Jun 9 2009 Jakub Jelinek 2.19.51.0.2-20 +- Fix .cfi_* skip over >= 64KB of code. (PR gas/10255) + * Wed May 27 2009 Nick Clifton 2.19.51.0.2-19 - Import fix for binutils PR #9938. (BZ 500295)