]> granicus.if.org Git - clang/commitdiff
x86_64 ABI: Qualified id types are passed as pointers.
authorDaniel Dunbar <daniel@zuster.org>
Thu, 26 Feb 2009 07:21:35 +0000 (07:21 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Thu, 26 Feb 2009 07:21:35 +0000 (07:21 +0000)
 - <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

lib/CodeGen/CGCall.cpp

index 93f4ebe9452576285c0d5c33bc7923756db16907..974b9b46f6df5c8e1a5a52a8365156723a324be1 100644 (file)
@@ -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()) {