[Bug rtl-optimization/90706] [10/11/12/13 Regression] Useless code generated for stack / register operations on AVR
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Mar 31 12:42:56 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90706
--- Comment #20 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Vladimir Makarov
<vmakarov@gcc.gnu.org>:
https://gcc.gnu.org/g:88792f04e5c63025506244b9ac7186a3cc10c25a
commit r12-9372-g88792f04e5c63025506244b9ac7186a3cc10c25a
Author: Vladimir N. Makarov <vmakarov@redhat.com>
Date: Thu Mar 2 16:29:05 2023 -0500
IRA: Use minimal cost for hard register movement
This is the 2nd attempt to fix PR90706. IRA calculates wrong AVR
costs for moving general hard regs of SFmode. This was the reason for
spilling a pseudo in the PR. In this patch we use smaller move cost
of hard reg in its natural and operand modes.
PR rtl-optimization/90706
gcc/ChangeLog:
* ira-costs.cc: Include print-rtl.h.
(record_reg_classes, scan_one_insn): Add code to print debug info.
(record_operand_costs): Find and use smaller cost for hard reg
move.
gcc/testsuite/ChangeLog:
* gcc.target/avr/pr90706.c: New.
More information about the Gcc-bugs
mailing list