diff options
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r-- | clang/lib/CodeGen/CGExprAgg.cpp | 15 | ||||
-rw-r--r-- | clang/lib/CodeGen/CGExprComplex.cpp | 6 | ||||
-rw-r--r-- | clang/lib/CodeGen/CGExprScalar.cpp | 6 |
3 files changed, 0 insertions, 27 deletions
diff --git a/clang/lib/CodeGen/CGExprAgg.cpp b/clang/lib/CodeGen/CGExprAgg.cpp index df335a7135c..e2f5c79d994 100644 --- a/clang/lib/CodeGen/CGExprAgg.cpp +++ b/clang/lib/CodeGen/CGExprAgg.cpp @@ -81,7 +81,6 @@ public: void VisitStmtExpr(const StmtExpr *E); void VisitBinaryOperator(const BinaryOperator *BO); void VisitBinAssign(const BinaryOperator *E); - void VisitOverloadExpr(const OverloadExpr *E); void VisitBinComma(const BinaryOperator *E); void VisitObjCMessageExpr(ObjCMessageExpr *E); @@ -197,20 +196,6 @@ void AggExprEmitter::VisitObjCKVCRefExpr(ObjCKVCRefExpr *E) { CGF.EmitAggregateCopy(DestPtr, RV.getAggregateAddr(), E->getType()); } -void AggExprEmitter::VisitOverloadExpr(const OverloadExpr *E) { - RValue RV = CGF.EmitCallExpr(E->getFn(), E->arg_begin(), - E->arg_end(CGF.getContext())); - - assert(RV.isAggregate() && "Return value must be aggregate value!"); - - // If the result is ignored, don't copy from the value. - if (DestPtr == 0) - // FIXME: If the source is volatile, we must read from it. - return; - - CGF.EmitAggregateCopy(DestPtr, RV.getAggregateAddr(), E->getType()); -} - void AggExprEmitter::VisitBinComma(const BinaryOperator *E) { CGF.EmitAnyExpr(E->getLHS()); CGF.EmitAggExpr(E->getRHS(), DestPtr, false); diff --git a/clang/lib/CodeGen/CGExprComplex.cpp b/clang/lib/CodeGen/CGExprComplex.cpp index ebf35948ff8..c676b579e65 100644 --- a/clang/lib/CodeGen/CGExprComplex.cpp +++ b/clang/lib/CodeGen/CGExprComplex.cpp @@ -94,7 +94,6 @@ public: } ComplexPairTy VisitCallExpr(const CallExpr *E); ComplexPairTy VisitStmtExpr(const StmtExpr *E); - ComplexPairTy VisitOverloadExpr(const OverloadExpr *OE); // Operators. ComplexPairTy VisitPrePostIncDec(const UnaryOperator *E, @@ -260,11 +259,6 @@ ComplexPairTy ComplexExprEmitter::VisitCallExpr(const CallExpr *E) { return CGF.EmitCallExpr(E).getComplexVal(); } -ComplexPairTy ComplexExprEmitter::VisitOverloadExpr(const OverloadExpr *E) { - return CGF.EmitCallExpr(E->getFn(), E->arg_begin(), - E->arg_end(CGF.getContext())).getComplexVal(); -} - ComplexPairTy ComplexExprEmitter::VisitStmtExpr(const StmtExpr *E) { return CGF.EmitCompoundStmt(*E->getSubStmt(), true).getComplexVal(); } diff --git a/clang/lib/CodeGen/CGExprScalar.cpp b/clang/lib/CodeGen/CGExprScalar.cpp index f5a1cf05258..4b185f61018 100644 --- a/clang/lib/CodeGen/CGExprScalar.cpp +++ b/clang/lib/CodeGen/CGExprScalar.cpp @@ -322,7 +322,6 @@ public: Value *VisitBlockExpr(const BlockExpr *BE); Value *VisitConditionalOperator(const ConditionalOperator *CO); Value *VisitChooseExpr(ChooseExpr *CE); - Value *VisitOverloadExpr(OverloadExpr *OE); Value *VisitVAArgExpr(VAArgExpr *VE); Value *VisitObjCStringLiteral(const ObjCStringLiteral *E) { return CGF.EmitObjCStringLiteral(E); @@ -1335,11 +1334,6 @@ Value *ScalarExprEmitter::VisitChooseExpr(ChooseExpr *E) { Visit(E->isConditionTrue(CGF.getContext()) ? E->getLHS() : E->getRHS()); } -Value *ScalarExprEmitter::VisitOverloadExpr(OverloadExpr *E) { - return CGF.EmitCallExpr(E->getFn(), E->arg_begin(), - E->arg_end(CGF.getContext())).getScalarVal(); -} - Value *ScalarExprEmitter::VisitVAArgExpr(VAArgExpr *VE) { llvm::Value *ArgValue = CGF.EmitVAListRef(VE->getSubExpr()); llvm::Value *ArgPtr = CGF.EmitVAArg(ArgValue, VE->getType()); |