summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-02-26 07:21:35 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-02-26 07:21:35 +0000
commitb98d1f714062e2717a91df5207d569f07b8fef88 (patch)
treee3d4c3133fe88dc75f0f63dd8de7c8fd88f303b0 /clang
parent264e46e1e9b87edd0b29230d94dd994f1718da5f (diff)
downloadbcm5719-llvm-b98d1f714062e2717a91df5207d569f07b8fef88.tar.gz
bcm5719-llvm-b98d1f714062e2717a91df5207d569f07b8fef88.zip
x86_64 ABI: Qualified id types are passed as pointers.
- <rdar://problem/6622451> Bad x86_64 code gen for message call taking one argument. llvm-svn: 65510
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/CodeGen/CGCall.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGCall.cpp b/clang/lib/CodeGen/CGCall.cpp
index 93f4ebe9452..974b9b46f6d 100644
--- a/clang/lib/CodeGen/CGCall.cpp
+++ b/clang/lib/CodeGen/CGCall.cpp
@@ -523,6 +523,7 @@ void X86_64ABIInfo::classify(QualType Ty,
// FIXME: _float128 and _Decimal128 are (SSE, SSEUp).
// FIXME: __int128 is (Integer, Integer).
} else if (Ty->isPointerLikeType() || Ty->isBlockPointerType() ||
+ Ty->isObjCQualifiedIdType() ||
Ty->isObjCQualifiedInterfaceType()) {
Current = Integer;
} else if (const VectorType *VT = Ty->getAsVectorType()) {
OpenPOWER on IntegriCloud