cse.c (cse_insn): Don't cse past a basic block boundary.
2002-12-10 Andrew Haley <aph@redhat.com> * cse.c (cse_insn): Don't cse past a basic block boundary. From-SVN: r60000
This commit is contained in:
parent
4fe1edca4d
commit
3e25353ee7
2 changed files with 14 additions and 2 deletions
|
@ -1,3 +1,7 @@
|
|||
2002-12-10 Andrew Haley <aph@redhat.com>
|
||||
|
||||
* cse.c (cse_insn): Don't cse past a basic block boundary.
|
||||
|
||||
2002-12-10 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
|
||||
|
|
12
gcc/cse.c
12
gcc/cse.c
|
@ -6316,8 +6316,16 @@ cse_insn (insn, libcall_insn)
|
|||
if ((src_ent->first_reg == REGNO (SET_DEST (sets[0].rtl)))
|
||||
&& ! find_reg_note (insn, REG_RETVAL, NULL_RTX))
|
||||
{
|
||||
rtx prev = prev_nonnote_insn (insn);
|
||||
|
||||
rtx prev = insn;
|
||||
/* Scan for the previous nonnote insn, but stop at a basic
|
||||
block boundary. */
|
||||
do
|
||||
{
|
||||
prev = PREV_INSN (prev);
|
||||
}
|
||||
while (prev && GET_CODE (prev) == NOTE
|
||||
&& NOTE_LINE_NUMBER (prev) != NOTE_INSN_BASIC_BLOCK);
|
||||
|
||||
/* Do not swap the registers around if the previous instruction
|
||||
attaches a REG_EQUIV note to REG1.
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue