aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGCall.cpp
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
commit9a8c2e9051b3db6909e5efa872ad60ff524be065 (patch)
tree4d7a101e88cf974468a31d7fafadf16573680d2e /lib/CodeGen/CGCall.cpp
parentaa95c3bd0a1ade2c84813ba6d92403f4e9183198 (diff)
x86_64 ABI: Qualified id types are passed as pointers.
- <rdar://problem/6622451> Bad x86_64 code gen for message call taking one argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65510 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGCall.cpp')
-rw-r--r--lib/CodeGen/CGCall.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/CodeGen/CGCall.cpp b/lib/CodeGen/CGCall.cpp
index 93f4ebe945..974b9b46f6 100644
--- a/lib/CodeGen/CGCall.cpp
+++ b/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()) {