aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenFunction.cpp
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2021-12-17 11:00:25 +0100
committerNikita Popov <npopov@redhat.com>2021-12-17 12:11:50 +0100
commit9bf917394eba3ba4df77cc17690c6d04f4e9d57f (patch)
tree4494a332d15835120b532617d02f6b0222577a5f /clang/lib/CodeGen/CodeGenFunction.cpp
parentda8bd972a33ad642d6237b5b95b31a2a20f46a35 (diff)
downloadllvm-9bf917394eba3ba4df77cc17690c6d04f4e9d57f.zip
llvm-9bf917394eba3ba4df77cc17690c6d04f4e9d57f.tar.gz
llvm-9bf917394eba3ba4df77cc17690c6d04f4e9d57f.tar.bz2
[CodeGen] Avoid more pointer element type accesses
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
-rw-r--r--clang/lib/CodeGen/CodeGenFunction.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp
index f14e4c3..91deeb6 100644
--- a/clang/lib/CodeGen/CodeGenFunction.cpp
+++ b/clang/lib/CodeGen/CodeGenFunction.cpp
@@ -1070,7 +1070,8 @@ void CodeGenFunction::StartFunction(GlobalDecl GD, QualType RetTy,
auto AI = CurFn->arg_begin();
if (CurFnInfo->getReturnInfo().isSRetAfterThis())
++AI;
- ReturnValue = Address(&*AI, CurFnInfo->getReturnInfo().getIndirectAlign());
+ ReturnValue = Address(&*AI, ConvertTypeForMem(RetTy),
+ CurFnInfo->getReturnInfo().getIndirectAlign());
if (!CurFnInfo->getReturnInfo().getIndirectByVal()) {
ReturnValuePointer =
CreateDefaultAlignTempAlloca(Int8PtrTy, "result.ptr");