aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2005-10-24 19:01:46 +0000
committerJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>2005-10-24 19:01:46 +0000
commitfbda78f67b54bb8fd947a53a5d6f6c9d6dd807fc (patch)
treef9335828a5d02f72fa609e514c166fd78ca5495d
parent4f7f428a03923b1ec862b843f616f86a20702ce2 (diff)
* pa.c (store_reg_modify): Set RTX_FRAME_RELATED_P on each set in
parallel. (hppa_expand_prologue): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@105856 138bc75d-0d04-0410-961f-82ee72b054a4
-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 e4e85dde37a..14e264cef8f 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 aa603dc90b4..6f77f4ffdb3 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)