diff options
author | Vladimir N. Makarov <vmakarov@redhat.com> | 2025-01-16 12:17:31 -0500 |
---|---|---|
committer | Vladimir N. Makarov <vmakarov@redhat.com> | 2025-01-16 14:23:37 -0500 |
commit | d9835825b3d71bbbb93b3d6669174f4386be2cb1 (patch) | |
tree | c023a2bf96aa3c043043d486348cfcb00fee8f6b /libphobos/src | |
parent | c158f36027c316aedaa7bde83ca28a3365721fce (diff) | |
download | gcc-d9835825b3d71bbbb93b3d6669174f4386be2cb1.zip gcc-d9835825b3d71bbbb93b3d6669174f4386be2cb1.tar.gz gcc-d9835825b3d71bbbb93b3d6669174f4386be2cb1.tar.bz2 |
[PR118067][LRA]: Use the right mode to evaluate secondary memory reload
In the PR case, LRA made insn alternative costly. It happened
because LRA incorrectly found that the alternative needs 2nd memory
reload as the wrong mode for targetm.secondary_memory_needed was used.
This resulted in LRA cycling as an alternative with mask regs was
chosen. The patch fixes the PR and add more debug printing which
could be useful in the future for debugging function
process_alt_operands.
gcc/ChangeLog:
PR rtl-optimization/1180167
* lra-constraints.cc (process_alt_operands): Use operand mode not
subreg reg mode. Add and improve debugging prints for updating
losers.
gcc/testsuite/ChangeLog:
PR rtl-optimization/118067
* gcc.target/i386/pr118067.c: New.
Diffstat (limited to 'libphobos/src')
0 files changed, 0 insertions, 0 deletions