aboutsummaryrefslogtreecommitdiff
path: root/libgo
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2017-12-13 15:05:57 +0100
committerSegher Boessenkool <segher@gcc.gnu.org>2017-12-13 15:05:57 +0100
commit2046f23f52d5ed4299f12e5f98a88491e4936c44 (patch)
treefdd3d7a0babdfbf3b3c64e2de65288c9cc43e89b /libgo
parent2b031ef48e365e256495a3e6d226a59f2290444f (diff)
downloadgcc-2046f23f52d5ed4299f12e5f98a88491e4936c44.zip
gcc-2046f23f52d5ed4299f12e5f98a88491e4936c44.tar.gz
gcc-2046f23f52d5ed4299f12e5f98a88491e4936c44.tar.bz2
combine: Fix PR83393
In move_deaths we move a REG_DEAD note if the instruction combination has extended the lifetime of a register so that the existing note is no longer valid. We find that note using reg_stat, but what that finds can refer to a later insn. If so, we cannot use the cached value. This patch implements that. PR rtl-optimization/83393 * combine.c (move_deaths): If reg_stat points to a too new insn in last_death, do not use it: find the proper insn instead. gcc/testsuite/ PR rtl-optimization/83393 * gcc.dg/pr83393.c: New testcase. From-SVN: r255606
Diffstat (limited to 'libgo')
0 files changed, 0 insertions, 0 deletions