[llvm] Add FeatureFuseLiterals as SubTargetFeature for Grace and Olympus (PR #160257)

David Green via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 23 02:42:26 PDT 2025


davemgreen wrote:

The fused instructions are listed in the software optimization guide, and do not include movk AFAIU. I'm guessing that the real transform that you want isn't whether movk is fused for scheduling but whether a load or movk+fmov is used for materializing a fp constant? fmov has a limited bandwidth so should be avoided, but in load-heavy code (or where a load blocks other transforms, as it sounds like is happening here) the movks might be quicker.

Can we fix that directly? Either by changing how constants are materialized or making is so there isn't the load in the entry block of whatever function is causing the problem?

https://github.com/llvm/llvm-project/pull/160257


More information about the llvm-commits mailing list