aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2005-10-24 12:01:46 -0700
committerJohn David Anglin <danglin@gcc.gnu.org>2005-10-24 19:01:46 +0000
commit77c4f044f6ed9067a72d516bc6b40728fb9756eb (patch)
treef9335828a5d02f72fa609e514c166fd78ca5495d /gcc
parent3674b34daf6b281648cc01d31fe85e5d7a5dfe3f (diff)
downloadgcc-77c4f044f6ed9067a72d516bc6b40728fb9756eb.zip
gcc-77c4f044f6ed9067a72d516bc6b40728fb9756eb.tar.gz
gcc-77c4f044f6ed9067a72d516bc6b40728fb9756eb.tar.bz2
pa.c (store_reg_modify): Set RTX_FRAME_RELATED_P on each set in parallel.
* pa.c (store_reg_modify): Set RTX_FRAME_RELATED_P on each set in parallel. (hppa_expand_prologue): Likewise. From-SVN: r105856
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/pa/pa.c34
2 files changed, 10 insertions, 30 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e4e85dd..14e264c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-10-24 Richard Henderson <rth@redhat.com>
+
+ * pa.c (store_reg_modify): Set RTX_FRAME_RELATED_P on each set in
+ parallel.
+ (hppa_expand_prologue): Likewise.
+
2005-10-24 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* pa-linux.h (NO_PROFILE_COUNTERS): Delete define.
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index aa603dc..6f77f4f 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -3326,25 +3326,9 @@ store_reg_modify (int base, int reg, HOST_WIDE_INT mod)
RTX_FRAME_RELATED_P (insn) = 1;
/* RTX_FRAME_RELATED_P must be set on each frame related set
- in a parallel with more than one element. Don't set
- RTX_FRAME_RELATED_P in the first set if reg is temporary
- register 1. The effect of this operation is recorded in
- the initial copy. */
- if (reg != 1)
- {
- RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, 0)) = 1;
- RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, 1)) = 1;
- }
- else
- {
- /* The first element of a PARALLEL is always processed if it is
- a SET. Thus, we need an expression list for this case. */
- REG_NOTES (insn)
- = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR,
- gen_rtx_SET (VOIDmode, basereg,
- gen_rtx_PLUS (word_mode, basereg, delta)),
- REG_NOTES (insn));
- }
+ in a parallel with more than one element. */
+ RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, 0)) = 1;
+ RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, 1)) = 1;
}
}
@@ -3578,17 +3562,7 @@ hppa_expand_prologue (void)
frames. */
insn = emit_move_insn (tmpreg, frame_pointer_rtx);
if (DO_FRAME_NOTES)
- {
- /* We need to record the frame pointer save here since the
- new frame pointer is set in the following insn. */
- RTX_FRAME_RELATED_P (insn) = 1;
- REG_NOTES (insn)
- = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR,
- gen_rtx_SET (VOIDmode,
- gen_rtx_MEM (word_mode, stack_pointer_rtx),
- frame_pointer_rtx),
- REG_NOTES (insn));
- }
+ RTX_FRAME_RELATED_P (insn) = 1;
insn = emit_move_insn (frame_pointer_rtx, stack_pointer_rtx);
if (DO_FRAME_NOTES)