From: Fariborz Jahanian Date: Fri, 24 Apr 2009 21:07:43 +0000 (+0000) Subject: Minor refactoring. No intended change in behavior. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d019d96e1ea39cec32f1320b1f9f772aae28247e;p=clang Minor refactoring. No intended change in behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69988 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGObjCMac.cpp b/lib/CodeGen/CGObjCMac.cpp index 7bcb82b6cb..5c2dbf8110 100644 --- a/lib/CodeGen/CGObjCMac.cpp +++ b/lib/CodeGen/CGObjCMac.cpp @@ -1389,10 +1389,8 @@ CodeGen::RValue CGObjCMac::GenerateMessageSend(CodeGen::CodeGenFunction &CGF, llvm::Value *Receiver, bool IsClassMessage, const CallArgList &CallArgs) { - llvm::Value *Arg0 = - CGF.Builder.CreateBitCast(Receiver, ObjCTypes.ObjectPtrTy, "tmp"); return EmitMessageSend(CGF, ResultType, Sel, - Arg0, CGF.getContext().getObjCIdType(), + Receiver, CGF.getContext().getObjCIdType(), false, CallArgs); } @@ -1404,6 +1402,8 @@ CodeGen::RValue CGObjCMac::EmitMessageSend(CodeGen::CodeGenFunction &CGF, bool IsSuper, const CallArgList &CallArgs) { CallArgList ActualArgs; + if (!IsSuper) + Arg0 = CGF.Builder.CreateBitCast(Arg0, ObjCTypes.ObjectPtrTy, "tmp"); ActualArgs.push_back(std::make_pair(RValue::get(Arg0), Arg0Ty)); ActualArgs.push_back(std::make_pair(RValue::get(EmitSelector(CGF.Builder, Sel)),