This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH to configure.ac cfi advance test for middle-end/40332
- From: Jason Merrill <jason at redhat dot com>
- To: gcc-patches List <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 19 Feb 2010 12:58:08 -0500
- Subject: PATCH to configure.ac cfi advance test for middle-end/40332
gas in binutils 2.19.1 fails to generate DW_CFA_advance_loc4, so this
patch increases the skip amount in the configure test in order to trip
that bug and therefore disable cfi directives when used with that gas.
Tested that the test gives the expected result with 2.19.1 and
2.19.51.0.14-3.fc11. OK for trunk?
commit 38fdf3a6264a2272f3fcfb22ecfe854ce70e1a38
Author: Jason Merrill <jason@redhat.com>
Date: Fri Feb 19 11:50:05 2010 -0500
PR target/40332
* configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
* configure: Likewise.
diff --git a/gcc/configure b/gcc/configure
index 92ee2e9..a0e15ad 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -21421,7 +21421,7 @@ else
echo ' .text
.cfi_startproc
.cfi_adjust_cfa_offset 64
- .skip 512, 0
+ .skip 75031, 0
.cfi_adjust_cfa_offset 128
.cfi_endproc' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
@@ -21433,7 +21433,7 @@ else
then
if $gcc_cv_readelf -wf conftest.o 2>/dev/null \
- | grep 'DW_CFA_advance_loc[12]:[ ][ ]*512[ ]' >/dev/null; then
+ | grep 'DW_CFA_advance_loc[124]:[ ][ ]*75031[ ]' >/dev/null; then
gcc_cv_as_cfi_advance_working=yes
fi
diff --git a/gcc/configure.ac b/gcc/configure.ac
index fee13b3..cd44af8 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -2292,12 +2292,12 @@ gcc_GAS_CHECK_FEATURE([working cfi advance], gcc_cv_as_cfi_advance_working,
[ .text
.cfi_startproc
.cfi_adjust_cfa_offset 64
- .skip 512, 0
+ .skip 75031, 0
.cfi_adjust_cfa_offset 128
.cfi_endproc],
[[
if $gcc_cv_readelf -wf conftest.o 2>/dev/null \
- | grep 'DW_CFA_advance_loc[12]:[ ][ ]*512[ ]' >/dev/null; then
+ | grep 'DW_CFA_advance_loc[124]:[ ][ ]*75031[ ]' >/dev/null; then
gcc_cv_as_cfi_advance_working=yes
fi
]])