aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2009-07-01 16:16:06 -0700
committerRichard Henderson <rth@gcc.gnu.org>2009-07-01 16:16:06 -0700
commit9f2af3cef8463e296639cfaa5811c38b2dabeae5 (patch)
tree20843b799e49eace89130d1e320370a99d5ac4b1 /gcc
parentd66a97e281d541d7595fa72c9ac7e3484c8abc3e (diff)
downloadgcc-9f2af3cef8463e296639cfaa5811c38b2dabeae5.zip
gcc-9f2af3cef8463e296639cfaa5811c38b2dabeae5.tar.gz
gcc-9f2af3cef8463e296639cfaa5811c38b2dabeae5.tar.bz2
re PR debug/40431 (ICE in div_data_align, at dwarf2out.c:533 while configuring sparcv9 libgcc)
PR debug/40431 * dwarf2out.c (def_cfa_1): Revert 2009-06-11 change for DW_CFA_def_cfa_offset and DW_CFA_def_cfa. From-SVN: r149157
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/dwarf2out.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 456acee..801851b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2009-07-01 Richard Henderson <rth@redhat.com>
+
+ PR debug/40431
+ * dwarf2out.c (def_cfa_1): Revert 2009-06-11 change for
+ DW_CFA_def_cfa_offset and DW_CFA_def_cfa.
+
2009-07-01 Michael Meissner <meissner@linux.vnet.ibm.com>
PR bootstrap/40558
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index edb93f9..3324039 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -994,7 +994,7 @@ def_cfa_1 (const char *label, dw_cfa_location *loc_p)
the CFA register did not change but the offset did. The data
factoring for DW_CFA_def_cfa_offset_sf happens in output_cfi, or
in the assembler via the .cfi_def_cfa_offset directive. */
- if (need_data_align_sf_opcode (loc.offset))
+ if (loc.offset < 0)
cfi->dw_cfi_opc = DW_CFA_def_cfa_offset_sf;
else
cfi->dw_cfi_opc = DW_CFA_def_cfa_offset;
@@ -1021,7 +1021,7 @@ def_cfa_1 (const char *label, dw_cfa_location *loc_p)
the specified offset. The data factoring for DW_CFA_def_cfa_sf
happens in output_cfi, or in the assembler via the .cfi_def_cfa
directive. */
- if (need_data_align_sf_opcode (loc.offset))
+ if (loc.offset < 0)
cfi->dw_cfi_opc = DW_CFA_def_cfa_sf;
else
cfi->dw_cfi_opc = DW_CFA_def_cfa;