pa.c (pa_output_function_epilogue): Only update last_address when a nonnote insn...
authorJohn David Anglin <danglin@gcc.gnu.org>
Sun, 28 Sep 2014 15:39:23 +0000 (15:39 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Sun, 28 Sep 2014 15:39:23 +0000 (15:39 +0000)
* config/pa/pa.c (pa_output_function_epilogue): Only update
last_address when a nonnote insn is found.

From-SVN: r215669

gcc/ChangeLog
gcc/config/pa/pa.c

index 2c416972b0f52edec8f9366d30a1d9906ed8e346..8628256afb8ebf5a310d83be031af4654d93d6da 100644 (file)
@@ -1,3 +1,8 @@
+2014-09-28  John David Anglin  <danglin@gcc.gnu.org>
+
+       * config/pa/pa.c (pa_output_function_epilogue): Only update
+       last_address when a nonnote insn is found.
+
 2014-09-26  Jan Hubicka  <hubicka@ucw.cz>      
        
        PR ipa/60665
index 20f2ef662d380c0d7bebf043545c8b36dcb2805e..59755f28da51bb1fd99addf0307f07e7b7cb42ae 100644 (file)
@@ -4192,9 +4192,12 @@ pa_output_function_epilogue (FILE *file, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
     {
       last_address = extra_nop ? 4 : 0;
       insn = get_last_nonnote_insn ();
-      last_address += INSN_ADDRESSES (INSN_UID (insn));
-      if (INSN_P (insn))
-       last_address += insn_default_length (insn);
+      if (insn)
+       {
+         last_address += INSN_ADDRESSES (INSN_UID (insn));
+         if (INSN_P (insn))
+           last_address += insn_default_length (insn);
+       }
       last_address = ((last_address + FUNCTION_BOUNDARY / BITS_PER_UNIT - 1)
                      & ~(FUNCTION_BOUNDARY / BITS_PER_UNIT - 1));
     }