[llvm] [llvm] Ensure that soft float targets don't use float/vector code for memops. (PR #107022)
Alex Rønne Petersen via llvm-commits
llvm-commits at lists.llvm.org
Mon May 5 04:31:28 PDT 2025
================
@@ -2023,6 +2023,11 @@ class TargetLoweringBase {
return LLT();
}
+ bool useIntScalarMemOps(const AttributeList &FuncAttributes) const {
----------------
alexrp wrote:
> Also the name should reflect the meaning, not the implementation.
Hmm, I'm not sure I follow; it seems to me that's what it does already? What do you have in mind?
> This seems to me like it's just an extension of useSoftFloat which contains the function context. Can you just add the argument to useSoftFloat instead?
The backends are inconsistent about whether they use `TM.Options.FloatABIType` or `useSoftFloat()` for ABI questions. The ideal (IMO) would be that they all agree on using the former for ABI questions and the latter for "can we use float/vector code within ABI boundaries?" (which would just be a question of the `noimplicitfloat` attribute, at least for now).
This PR is intended to be an incremental step towards that ideal. But if you think it makes more sense, I can try to tackle that whole inconsistency in one go if you think that makes more sense.
https://github.com/llvm/llvm-project/pull/107022
More information about the llvm-commits
mailing list