This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Add new target feature to fuse literal generation
ClosedPublic

Authored by evandro on Jan 13 2017, 1:40 PM.

Details

Summary

This feature enables the fusion of such operations on Cortex A57, as recommended in its Software Optimisation Guide, sections 4.14 and 4.15.

Diff Detail

Repository
rL LLVM

Event Timeline

evandro updated this revision to Diff 84365.Jan 13 2017, 1:40 PM
evandro retitled this revision from to [AArch64] Add new target feature to fuse literal generation.
evandro updated this object.
evandro set the repository for this revision to rL LLVM.
evandro added a subscriber: llvm-commits.
evandro updated this object.Jan 13 2017, 3:27 PM
evandro updated this revision to Diff 84580.Jan 16 2017, 11:43 AM
gberry added a subscriber: gberry.Jan 16 2017, 2:53 PM

Small comment on the test, otherwise, looks good.

llvm/test/CodeGen/AArch64/misched-fusion-lit.ll
2 ↗(On Diff #84580)

Can you add a line that disables fusing (either A53 or mattr)? Just to make sure we check for the right things on both sides.

evandro updated this revision to Diff 84678.Jan 17 2017, 8:27 AM
rengolin accepted this revision.Jan 17 2017, 11:45 AM

Thanks! LGTM. I think D28697 should be fine, too, but I'd rather Kristof/James/Tim would have an extra ack.

cheers,
--renato

This revision is now accepted and ready to land.Jan 17 2017, 11:45 AM
evandro updated this revision to Diff 86540.Jan 31 2017, 5:48 PM

Final patch after approval.

This revision was automatically updated to reflect the committed changes.