-
- Downloads
re PR rtl-optimization/23478 (Miscompilation due to reloading of a var that is also used in EH pad)
PR rtl-optimization/23478 * regs.h (reg_info): Add throw_calls_crossed. (REG_N_THROWING_CALLS_CROSSED): Define. * flow.c (allocate_reg_life_data): Initialize REG_N_THROWING_CALLS_CROSSED. (propagate_one_insn, attempt_auto_inc): Update REG_N_THROWING_CALLS_CROSSED. * global.c (global_alloc): Don't allocate pseudos across calls that may throw. * g++.dg/opt/pr23478.C: New test. From-SVN: r103348
Showing
- gcc/ChangeLog 12 additions, 0 deletionsgcc/ChangeLog
- gcc/flow.c 10 additions, 2 deletionsgcc/flow.c
- gcc/global.c 3 additions, 1 deletiongcc/global.c
- gcc/regs.h 7 additions, 0 deletionsgcc/regs.h
- gcc/testsuite/ChangeLog 5 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/testsuite/g++.dg/opt/pr23478.C 211 additions, 0 deletionsgcc/testsuite/g++.dg/opt/pr23478.C
Loading
Please register or sign in to comment