]> git.ipfire.org Git - thirdparty/gcc.git/commit
[LRA]: Backporting solutions for PR112918 and PR113354 to solve PR99015
authorVladimir N. Makarov <vmakarov@redhat.com>
Thu, 29 May 2025 19:26:30 +0000 (15:26 -0400)
committerVladimir N. Makarov <vmakarov@redhat.com>
Thu, 29 May 2025 19:29:11 +0000 (15:29 -0400)
commitaf73c8bf5168848275bf909ee44fbb8f4973438f
tree779d23e937454430258ace372e93ba67e388608a
parentd0398041388b31c4a87c0bfcc93f3dd54f852936
[LRA]: Backporting solutions for PR112918 and PR113354 to solve PR99015

Patches for PR112918 and PR11354 depend on each other and can not be
clearly applied to gcc-13 branch.  So patches were modified and
combined.

gcc/ChangeLog:

PR rtl-optimization/99015
* lra-constraints.cc (enough_allocatable_hard_regs_p): Extract
from in_class_p.
(in_class_p): Use it with added conditions.
(process_alt_operands): Try to change class too.
(curr_insn_transform): Pass true to in_class_p for reg operand
win.  Spill pseudo only used in the insn if the corresponding
operand does not require hard register anymore.
gcc/lra-constraints.cc