summaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2002-06-02 22:23:45 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2002-06-02 22:23:45 +0000
commit7021895a4b8310020e96af614a4174700d3b134e (patch)
treeb474099edf77f2aed033459366af20532af2d1fd /gcc/final.c
parent1247b8fdfc3af4605fca9c52b021a439a4c4ce30 (diff)
downloadgcc-7021895a4b8310020e96af614a4174700d3b134e.tar.gz
* final.c (final): Allow notes to not have computed addresses;
kill no longer needed STACK_REGS ifdef. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54190 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/gcc/final.c b/gcc/final.c
index f58190a6958..a66bd5c53f6 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -1898,16 +1898,12 @@ final (first, file, optimize, prescan)
#ifdef HAVE_ATTR_length
if ((unsigned) INSN_UID (insn) >= INSN_ADDRESSES_SIZE ())
{
-#ifdef STACK_REGS
- /* Irritatingly, the reg-stack pass is creating new instructions
- and because of REG_DEAD note abuse it has to run after
- shorten_branches. Fake address of -1 then. */
- insn_current_address = -1;
-#else
/* This can be triggered by bugs elsewhere in the compiler if
new insns are created after init_insn_lengths is called. */
- abort ();
-#endif
+ if (GET_CODE (insn) == NOTE)
+ insn_current_address = -1;
+ else
+ abort ();
}
else
insn_current_address = INSN_ADDRESSES (INSN_UID (insn));