diff options
author | Jakub Jelinek <jakub@redhat.com> | 2010-07-28 19:00:06 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2010-07-28 19:00:06 +0200 |
commit | 652c4638a0194d601e968599e27319e1edcd93e2 (patch) | |
tree | ad46818f516d8143e99cd575130c838a4547d4cf | |
parent | fb039b24f5066fb5a021f852ae0de4b242a21089 (diff) | |
download | gcc-652c4638a0194d601e968599e27319e1edcd93e2.zip gcc-652c4638a0194d601e968599e27319e1edcd93e2.tar.gz gcc-652c4638a0194d601e968599e27319e1edcd93e2.tar.bz2 |
re PR debug/45103 (DW_OP_reg* has too large valid range for noreturn funcs)
PR debug/45103
* dwarf2out.c (dwarf2out_var_location): Always consider
NOTE_DURING_CALL_P notes, even when not followed by real instructions.
From-SVN: r162646
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5e8721d..03c0db1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-07-28 Jakub Jelinek <jakub@redhat.com> + + PR debug/45103 + * dwarf2out.c (dwarf2out_var_location): Always consider + NOTE_DURING_CALL_P notes, even when not followed by real instructions. + 2010-07-28 Maxim Kuvyrkov <maxim@codesourcery.com> PR rtl-optimization/45107 diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index d6751ac..f9fc997 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -21278,7 +21278,7 @@ dwarf2out_var_location (rtx loc_note) next_real = next_real_insn (loc_note); /* If there are no instructions which would be affected by this note, don't do anything. */ - if (next_real == NULL_RTX) + if (next_real == NULL_RTX && !NOTE_DURING_CALL_P (loc_note)) return; /* If there were any real insns between note we processed last time |