aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir N. Makarov <vmakarov@redhat.com>2023-08-13 20:54:58 -0400
committerVladimir N. Makarov <vmakarov@redhat.com>2023-08-13 21:01:41 -0400
commited6603fd103dc2b15943b391ac061e0172d22956 (patch)
treed1c576cfd8a0e5d6ab73a1e4fcc8ef36ab322677
parentdbe8c0a230d2eb59b9bf79fb8f12c0abcbe7e925 (diff)
downloadgcc-ed6603fd103dc2b15943b391ac061e0172d22956.zip
gcc-ed6603fd103dc2b15943b391ac061e0172d22956.tar.gz
gcc-ed6603fd103dc2b15943b391ac061e0172d22956.tar.bz2
[LRA]: Fix asserts for output stack pointer reloads
The patch implementing output stack pointer reloads contained superfluous asserts. The patch makes them useful. gcc/ChangeLog: * lra-constraints.cc (curr_insn_transform): Set done_p up and check it on true after processing output stack pointer reload.
-rw-r--r--gcc/lra-constraints.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/lra-constraints.cc b/gcc/lra-constraints.cc
index 2623990..8d9443a 100644
--- a/gcc/lra-constraints.cc
+++ b/gcc/lra-constraints.cc
@@ -4852,6 +4852,7 @@ curr_insn_transform (bool check_only_p)
&& SET_DEST (set) == stack_pointer_rtx)
{
lra_assert (!done_p);
+ done_p = true;
curr_id->sp_offset = 0;
lra_insn_recog_data_t id = lra_get_insn_recog_data (insn);
id->sp_offset = sp_offset;
@@ -4860,7 +4861,7 @@ curr_insn_transform (bool check_only_p)
" Moving sp offset from insn %u to %u\n",
INSN_UID (curr_insn), INSN_UID (insn));
}
- lra_assert (!done_p);
+ lra_assert (done_p);
}
return change_p;
}