diff options
author | Richard Biener <rguenther@suse.de> | 2023-07-25 15:32:11 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2023-08-02 09:03:13 +0200 |
commit | 07b7cd70399d22c113ad8bb1eff5cc2d12973d33 (patch) | |
tree | a0eeb793d4e83846abcc29be91a9066da7304d09 /gcc/tree-cfg.cc | |
parent | f0b7a61d83534fc8f7aa593b1f0f0357a371a800 (diff) | |
download | gcc-07b7cd70399d22c113ad8bb1eff5cc2d12973d33.zip gcc-07b7cd70399d22c113ad8bb1eff5cc2d12973d33.tar.gz gcc-07b7cd70399d22c113ad8bb1eff5cc2d12973d33.tar.bz2 |
rtl-optimization/110587 - remove quadratic regno_in_use_p
The following removes the code checking whether a noop copy
is between something involved in the return sequence composed
of a SET and USE. Instead of checking for this special-case
the following makes us only ever remove noop copies between
pseudos - which is the case that is necessary for IRA/LRA
interfacing to function according to the comment. That makes
looking for the return reg special case unnecessary, reducing
the compile-time in LRA non-specific to zero for the testcase.
PR rtl-optimization/110587
* lra-spills.cc (return_regno_p): Remove.
(regno_in_use_p): Likewise.
(lra_final_code_change): Do not remove noop moves
between hard registers.
Diffstat (limited to 'gcc/tree-cfg.cc')
0 files changed, 0 insertions, 0 deletions