GlobalISel was only doing this with minsize. SDAG does this with optsize.
(See: SelectionDAG::shouldOptForSize())
This is a 0.3% code size improvement for CTMark at -Os.
(Best: 1.1% improvements on lencod + pairlocalalign)
Paths
| Differential D96451
[AArch64][GlobalISel] Perform load/store extended reg folding with optsize ClosedPublic Authored by paquette on Feb 10 2021, 2:13 PM.
Details Summary GlobalISel was only doing this with minsize. SDAG does this with optsize. (See: SelectionDAG::shouldOptForSize()) This is a 0.3% code size improvement for CTMark at -Os. (Best: 1.1% improvements on lencod + pairlocalalign)
Diff Detail
Event TimelineHerald added subscribers: danielkiss, hiraditya, kristof.beyls, rovka. · View Herald TranscriptFeb 10 2021, 2:13 PM This revision is now accepted and ready to land.Feb 10 2021, 2:40 PM Closed by commit rG5f7a4d8d0589: [AArch64][GlobalISel] Perform load/store extended reg folding with optsize (authored by paquette). · Explain WhyFeb 10 2021, 2:42 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 322830 llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
llvm/test/CodeGen/AArch64/GlobalISel/load-addressing-modes.mir
|