[clang] 9e45146 - [CodeGen] Fix element type for sret argument

Nikita Popov via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 17 07:13:37 PST 2021


Author: Nikita Popov
Date: 2021-12-17T16:13:28+01:00
New Revision: 9e451467217be1325e95eca60bad7924d23e4fe4

URL: https://github.com/llvm/llvm-project/commit/9e451467217be1325e95eca60bad7924d23e4fe4
DIFF: https://github.com/llvm/llvm-project/commit/9e451467217be1325e95eca60bad7924d23e4fe4.diff

LOG: [CodeGen] Fix element type for sret argument

Fix a mistake in 9bf917394eba3ba4df77cc17690c6d04f4e9d57f: sret
arguments use ConvertType, not ConvertTypeForMem, see the handling
in CodeGenTypes::GetFunctionType().

This fixes fp-matrix-pragma.c on s390x.

Added: 
    

Modified: 
    clang/lib/CodeGen/CodeGenFunction.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp
index 91deeb657d623..4c488bcd552ff 100644
--- a/clang/lib/CodeGen/CodeGenFunction.cpp
+++ b/clang/lib/CodeGen/CodeGenFunction.cpp
@@ -1070,7 +1070,7 @@ void CodeGenFunction::StartFunction(GlobalDecl GD, QualType RetTy,
     auto AI = CurFn->arg_begin();
     if (CurFnInfo->getReturnInfo().isSRetAfterThis())
       ++AI;
-    ReturnValue = Address(&*AI, ConvertTypeForMem(RetTy),
+    ReturnValue = Address(&*AI, ConvertType(RetTy),
                           CurFnInfo->getReturnInfo().getIndirectAlign());
     if (!CurFnInfo->getReturnInfo().getIndirectByVal()) {
       ReturnValuePointer =


        


More information about the cfe-commits mailing list