[PATCH v2] AArch64: Improve GOT addressing

2021-05-24 Thread Wilco Dijkstra via Gcc-patches
Version v2 uses movsi/di for GOT accesses until after reload as suggested. This caused worse spilling, however improving the costs of GOT accesses resulted in better codesize and performance gains: Improve GOT addressing by treating the instructions as a pair. This reduces register pressure and i

Re: [PATCH v2] AArch64: Improve GOT addressing

2021-05-26 Thread Richard Sandiford via Gcc-patches
Wilco Dijkstra writes: > @@ -23746,6 +23767,24 @@ aarch_macro_fusion_pair_p (rtx_insn *prev, rtx_insn > *curr) > } > } > > + /* Always treat GOT accesses as a pair to ensure they can be easily > + identified and optimized in linkers. */ Sorry, I guess I'd not given enough wei

Re: [PATCH v2] AArch64: Improve GOT addressing

2021-05-26 Thread Wilco Dijkstra via Gcc-patches
Hi Richard, > Are we actually planning to do any linker relaxations here, or is this > purely theoretical?  If doing relaxations is a realistic possiblity then > I agree that would be a good/legitimate reason to use a single define_insn > for both instructions.  In that case though, there should b