diff options
author | Andrew Pinski <quic_apinski@quicinc.com> | 2025-07-27 20:37:55 -0700 |
---|---|---|
committer | Andrew Pinski <andrew.pinski@oss.qualcomm.com> | 2025-08-08 14:30:28 -0700 |
commit | 644a264d165fa6349b944ddb4158dd7f77d7f49f (patch) | |
tree | 135089af75f3c95fe3739e9d14e54dcf2d91c825 /gcc/testsuite/g++.target/arm | |
parent | 899e7284bfa0b736165c3d9d5c18d5d883c5cbfb (diff) | |
download | gcc-master.zip gcc-master.tar.gz gcc-master.tar.bz2 |
In the testcase provided, currently we lose the landing pad for the exception that could
throw from the aggregate load as we remove one copy and the second statement where load
happens was not marked as throwable before so the landing pad for that internal throw is
now gone.
The fix is to ignore statements that could throw (internally or externally).
PR tree-optimization/120599
gcc/ChangeLog:
* tree-ssa-forwprop.cc (optimize_agr_copyprop): Don't try to copy
from statements that throw.
gcc/testsuite/ChangeLog:
* g++.dg/torture/noncall-eh-1.C: New test.
Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
Diffstat (limited to 'gcc/testsuite/g++.target/arm')
0 files changed, 0 insertions, 0 deletions