aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/pa/pa.c
diff options
context:
space:
mode:
authorJohn David Anglin <danglin@gcc.gnu.org>2014-09-28 15:39:23 +0000
committerJohn David Anglin <danglin@gcc.gnu.org>2014-09-28 15:39:23 +0000
commit501fcaf556523b9c582e8b907ba7ea0fbc765e6d (patch)
treeab987f817bf2c6f496d719a4ae928cc2e0026966 /gcc/config/pa/pa.c
parent05342e105f8fdb1d443f508a13a7f36941efd38a (diff)
downloadgcc-501fcaf556523b9c582e8b907ba7ea0fbc765e6d.zip
gcc-501fcaf556523b9c582e8b907ba7ea0fbc765e6d.tar.gz
gcc-501fcaf556523b9c582e8b907ba7ea0fbc765e6d.tar.bz2
pa.c (pa_output_function_epilogue): Only update last_address when a nonnote insn is found.
* config/pa/pa.c (pa_output_function_epilogue): Only update last_address when a nonnote insn is found. From-SVN: r215669
Diffstat (limited to 'gcc/config/pa/pa.c')
-rw-r--r--gcc/config/pa/pa.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index 20f2ef6..59755f2 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -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));
}