diff options
author | ccoutant <ccoutant@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-03-21 00:22:58 +0000 |
---|---|---|
committer | ccoutant <ccoutant@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-03-21 00:22:58 +0000 |
commit | 723534c073db746fa284056ea35b8110e721162e (patch) | |
tree | bc565f5f355e819f7ad7993f29c1e0f095165fb4 | |
parent | fb07aa2baf589152a2b59686f180d4558becaa2c (diff) |
For google/gcc-4_6 branch.
Fix bug where we were outputting a garbage value for the index operand
of DW_OP_GNU_addr_index.
Tested: incremental remake in GCC build directory and hand tested.
2012-03-20 Cary Coutant <ccoutant@google.com>
* dwarf2out.c (size_of_loc_descr): Use val_index instead of
v.val_unsigned.
(output_loc_operands): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/google/gcc-4_6@185594 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog.google-4_6 | 6 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog.google-4_6 b/gcc/ChangeLog.google-4_6 index 9296b8fda09..bad9a8e2bed 100644 --- a/gcc/ChangeLog.google-4_6 +++ b/gcc/ChangeLog.google-4_6 @@ -1,3 +1,9 @@ +2012-03-20 Cary Coutant <ccoutant@google.com> + + * dwarf2out.c (size_of_loc_descr): Use val_index instead of + v.val_unsigned. + (output_loc_operands): Likewise. + 2012-03-19 Sterling Augustine <saugustine@google.com> Cary Coutant <ccoutant@google.com> diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index e022fb05d72..e67dc3515b9 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -4902,7 +4902,7 @@ size_of_loc_descr (dw_loc_descr_ref loc) size += DWARF2_ADDR_SIZE; break; case DW_OP_GNU_addr_index: - size += size_of_uleb128 (loc->dw_loc_oprnd1.v.val_unsigned); + size += size_of_uleb128 (loc->dw_loc_oprnd1.val_index); break; case DW_OP_const1u: case DW_OP_const1s: @@ -5283,7 +5283,7 @@ output_loc_operands (dw_loc_descr_ref loc, int for_eh_or_skip) break; case DW_OP_GNU_addr_index: - dw2_asm_output_data_uleb128 (loc->dw_loc_oprnd1.v.val_unsigned, + dw2_asm_output_data_uleb128 (loc->dw_loc_oprnd1.val_index, "(address index)"); break; |