diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2024-07-16 15:33:23 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2024-07-16 15:33:23 +0100 |
commit | fec38d7987dd6d68b234b0076b57ac66a30a3a1d (patch) | |
tree | 2d9a058b9228e37bc29f63ac0dc92a6f2b0085b0 /gcc/expr.cc | |
parent | 851ec9960b084ad37556ec627e6931e985e41a24 (diff) | |
download | gcc-fec38d7987dd6d68b234b0076b57ac66a30a3a1d.zip gcc-fec38d7987dd6d68b234b0076b57ac66a30a3a1d.tar.gz gcc-fec38d7987dd6d68b234b0076b57ac66a30a3a1d.tar.bz2 |
rtl-ssa: Fix removal of order_nodes [PR115929]
order_nodes are used to implement ordered comparisons between
two insns with the same program point number. remove_insn would
remove an order_node from its splay tree, but didn't remove it
from the insn. This caused confusion if the insn was later
reinserted somewhere else that also needed an order_node.
gcc/
PR rtl-optimization/115929
* rtl-ssa/insns.cc (function_info::remove_insn): Remove an
order_node from the instruction as well as from the splay tree.
gcc/testsuite/
PR rtl-optimization/115929
* gcc.dg/torture/pr115929-1.c: New test.
Diffstat (limited to 'gcc/expr.cc')
0 files changed, 0 insertions, 0 deletions