[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 03:45:27 PDT 2025


================
@@ -1440,9 +1440,11 @@ bool SystemZTargetLowering::findOptimalMemOpLowering(
                                                   SrcAS, FuncAttributes);
 }
 
-EVT SystemZTargetLowering::getOptimalMemOpType(const MemOp &Op,
-                                   const AttributeList &FuncAttributes) const {
-  return Subtarget.hasVector() ? MVT::v2i64 : MVT::Other;
+EVT SystemZTargetLowering::getOptimalMemOpType(
+    const MemOp &Op, const AttributeList &FuncAttributes) const {
+  return Subtarget.hasVector() && !useIntScalarMemOps(FuncAttributes)
----------------
alexrp wrote:

I think you might be right that it's not needed. I don't actually recall why I modified this function in the initial version of the PR.

I'll re-check and remove it if it's unnecessary.

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


More information about the llvm-commits mailing list