final.c (final): Allow notes to not have computed addresses; kill no longer needed...
authorJan Hubicka <jh@suse.cz>
Sun, 2 Jun 2002 22:23:45 +0000 (00:23 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Sun, 2 Jun 2002 22:23:45 +0000 (22:23 +0000)
* final.c (final):  Allow notes to not have computed addresses;
kill no longer needed STACK_REGS ifdef.

From-SVN: r54190

gcc/ChangeLog
gcc/final.c

index 31dc8b0751fa2d02181339faa3035cf3149bd0f0..8602d146540074c875f377abaa816db23ef1a147 100644 (file)
@@ -1,3 +1,8 @@
+Mon Jun  3 00:18:20 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * final.c (final):  Allow notes to not have computed addresses;
+       kill no longer needed STACK_REGS ifdef.
+
 2002-06-02  Richard Henderson  <rth@redhat.com>
 
        * gcse.c (bypass_conditional_jumps): Fix typo last change.
index f58190a69589c009c7f84311962aef7d7d5b33b5..a66bd5c53f6bcbaa6b79dbebdf950c246d3d71c9 100644 (file)
@@ -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));