From: Saleem Abdulrasool Date: Sat, 17 Jun 2017 17:30:31 +0000 (+0000) Subject: CodeGen: make the type match the comment for a libcall X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d5b2509387058176f38f90a482f3d8465b03e3b4;p=clang CodeGen: make the type match the comment for a libcall Fix the type for a (runtime) library call to match both the comment and the runtime implementation. As it happens, the type being used matched, this just makes it more precise. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@305638 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGObjCMac.cpp b/lib/CodeGen/CGObjCMac.cpp index c78d3febd4..7976c53d9e 100644 --- a/lib/CodeGen/CGObjCMac.cpp +++ b/lib/CodeGen/CGObjCMac.cpp @@ -308,7 +308,7 @@ public: SmallVector Params; Params.push_back(Ctx.VoidPtrTy); Params.push_back(Ctx.VoidPtrTy); - Params.push_back(Ctx.LongTy); + Params.push_back(Ctx.getSizeType()); Params.push_back(Ctx.BoolTy); Params.push_back(Ctx.BoolTy); llvm::FunctionType *FTy = diff --git a/test/CodeGenObjC/objc_copyStruct.m b/test/CodeGenObjC/objc_copyStruct.m new file mode 100644 index 0000000000..7fa0ad54f3 --- /dev/null +++ b/test/CodeGenObjC/objc_copyStruct.m @@ -0,0 +1,16 @@ +// RUN: %clang -target x86_64-unknown-windows-msvc -fobjc-runtime=ios -Wno-objc-root-class -S -o - -emit-llvm %s | FileCheck %s +// RUN: %clang -target x86_64-apple-ios -fobjc-runtime=ios -Wno-objc-root-class -S -o - -emit-llvm %s | FileCheck %s + +struct S { + float f, g; +}; + +@interface I +@property struct S s; +@end + +@implementation I +@end + +// CHECK: declare {{.*}}void @objc_copyStruct(i8*, i8*, i64, i1, i1) +