This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Andrew, thanks for looking into RA problems. I think your patch should be thoroughly tested not only for performance. Such changes might break some ports. I tried this change when I worked on YARA project and that time the result was negative. Therefore it is not used in IRA. I think that there were some reasons for ignoring this in regclass too. But may be I am wrong.I noticed while looking into a register allocation issue in 4.1.1, that regclass was ignoring '!' attribute so it would sometimes give the wrong result so we get performance issue (selecting GPR instead of FPR). So I saw that IRA also ignore it too which seems wrong and seems like the code was copied from regclass. preprocess_constraints and find_reloads both take '!' into account.
Can someone benchmark this on x86 and PPC? I can only really benchmark with a 4.3 or 4.1.1 based compiler with a subset of SPEC. The 4.1.1 based compiler gets a nice but small 0.6% performance increase and a small code decrease.
Thanks, Andrew Pinski
ChangeLog:
* regclass.c (record_reg_classes): Take into account '!'.
(record_reg_classes): Likewise.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |