diff options
author | Ilya Leoshkevich <iii@linux.ibm.com> | 2018-07-30 08:30:06 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2018-07-30 08:30:06 +0000 |
commit | dc843a8597ef7ac7f2663120ae96c689c2dbbadb (patch) | |
tree | 0646832414012bff09de8e4d469a4df0fe91611e /gcc/combine.c | |
parent | 4cdfee3f206d784f8a502af4f34180a0762df4fe (diff) | |
download | gcc-dc843a8597ef7ac7f2663120ae96c689c2dbbadb.zip gcc-dc843a8597ef7ac7f2663120ae96c689c2dbbadb.tar.gz gcc-dc843a8597ef7ac7f2663120ae96c689c2dbbadb.tar.bz2 |
lra: consider clobbers when selecting hard_regno to spill
The idea behind the rclass loop in spill_hard_reg_in_range() seems to
be: find a hard_regno, which in general conflicts with reload regno,
but does not do so between `from` and `to`, and then do the live range
splitting based on this information. To check the absence of conflicts,
we make use of insn_bitmap, which does not contain insns which clobber
the hard_regno.
gcc/ChangeLog:
2018-07-30 Ilya Leoshkevich <iii@linux.ibm.com>
PR target/86547
* lra-constraints.c (spill_hard_reg_in_range): When selecting the
hard_regno, make sure no insn between `from` and `to` clobbers it.
From-SVN: r263063
Diffstat (limited to 'gcc/combine.c')
0 files changed, 0 insertions, 0 deletions