aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2023-06-06 01:49:22 +0200
committerHans-Peter Nilsson <hp@bitrange.com>2023-06-06 04:47:05 +0200
commit9677cc7496ffe44c5b483658ce30361519576537 (patch)
tree7c7c29ac4a709c88da793e97d242e2a82a53f9a8
parentd1344c418005927e2c39d8285ec63461d72a6717 (diff)
downloadgcc-9677cc7496ffe44c5b483658ce30361519576537.zip
gcc-9677cc7496ffe44c5b483658ce30361519576537.tar.gz
gcc-9677cc7496ffe44c5b483658ce30361519576537.tar.bz2
bootstrap rtl-checking: Fix XVEC vs XVECEXP in postreload.cc
PR bootstrap/110120 * postreload.cc (reload_cse_move2add, move2add_use_add2_insn): Use XVECEXP, not XEXP, to access first item of a PARALLEL.
-rw-r--r--gcc/postreload.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/postreload.cc b/gcc/postreload.cc
index b479d4b..20e138b 100644
--- a/gcc/postreload.cc
+++ b/gcc/postreload.cc
@@ -1801,7 +1801,7 @@ move2add_use_add2_insn (scalar_int_mode mode, rtx reg, rtx sym, rtx off,
naked SET, or else its single_set is the first element
in a PARALLEL. */
rtx *setloc = GET_CODE (PATTERN (insn)) == PARALLEL
- ? &XEXP (PATTERN (insn), 0) : &PATTERN (insn);
+ ? &XVECEXP (PATTERN (insn), 0, 0) : &PATTERN (insn);
if (*setloc == set && costs_lt_p (&newcst, &oldcst, speed))
{
changed = validate_change (insn, setloc, new_set, 0);
@@ -2027,7 +2027,7 @@ reload_cse_move2add (rtx_insn *first)
costs_add_n_insns (&oldcst, 1);
rtx *setloc = GET_CODE (PATTERN (next)) == PARALLEL
- ? &XEXP (PATTERN (next), 0) : &PATTERN (next);
+ ? &XVECEXP (PATTERN (next), 0, 0) : &PATTERN (next);
if (*setloc == set
&& costs_lt_p (&newcst, &oldcst, speed)
&& have_add2_insn (reg, new_src))