diff options
author | aoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-02-02 04:31:35 +0000 |
---|---|---|
committer | aoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-02-02 04:31:35 +0000 |
commit | 9221ec44e8429334e08c67adc351a7b246f1c120 (patch) | |
tree | 45c11f92ea932c870f55bc85a553c33839b01d65 /gcc/final.c | |
parent | 31eea452785bba769a547f18c3fbb9b02a11cfad (diff) | |
download | gcc-9221ec44e8429334e08c67adc351a7b246f1c120.tar.gz |
gcc/ChangeLog:
PR debug/47498
PR debug/47501
PR debug/45136
PR debug/45130
* haifa-sched.c (get_ebb_head_tail): Move notes across boundary
debug insns.
(no_real_insns_p, schedule_block, set_priorities): Drop special
treatment of boundary debug insns.
* sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug
insns.
* sched-ebb.c (schedule_ebbs): Adjust skipping of debug insns.
* sched-int.h (DEBUG_INSN_SCHED_P): Remove.
(BOUNDARY_DEBUG_INSN_P): Likewise.
(SCHEDULE_DEBUG_INSN_P): Likewise.
* sched-rgn.c (init_ready_list): Drop special treatment of
boundary debug insns.
* final.c (rest_of_clean_state): Clear notes' BB.
gcc/testsuite/ChangeLog:
PR debug/47498
PR debug/47501
PR debug/45136
PR debug/45130
* debug/pr47498.c: New.
* debug/pr47501.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169513 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/final.c b/gcc/final.c index 09dec08e0ea..ceb79744c41 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -4402,7 +4402,11 @@ rest_of_clean_state (void) if (LABEL_P (insn)) INSN_UID (insn) = CODE_LABEL_NUMBER (insn); else - INSN_UID (insn) = 0; + { + if (NOTE_P (insn)) + set_block_for_insn (insn, NULL); + INSN_UID (insn) = 0; + } } } @@ -4423,7 +4427,6 @@ rest_of_clean_state (void) && NOTE_KIND (insn) != NOTE_INSN_BLOCK_END && NOTE_KIND (insn) != NOTE_INSN_CFA_RESTORE_STATE))) print_rtl_single (final_output, insn); - } if (final_output) |