diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2009-01-25 02:10:46 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2009-01-25 02:10:46 +0000 |
commit | 1ef0965bbd46a2915746ffe8067d411b18117415 (patch) | |
tree | 49a7e23c89655f8d0b5becdc6fd1e3a7c554ede2 /lib/CodeGen/CGExprConstant.cpp | |
parent | 3941b18b8e441c8c466efecd557de60b9a32d10b (diff) |
Get rid of some code that should be unnecessary.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62950 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGExprConstant.cpp')
-rw-r--r-- | lib/CodeGen/CGExprConstant.cpp | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/lib/CodeGen/CGExprConstant.cpp b/lib/CodeGen/CGExprConstant.cpp index 716e295f3e..32d126e590 100644 --- a/lib/CodeGen/CGExprConstant.cpp +++ b/lib/CodeGen/CGExprConstant.cpp @@ -48,13 +48,6 @@ public: llvm::Constant *VisitParenExpr(ParenExpr *PE) { return Visit(PE->getSubExpr()); } - - llvm::Constant *VisitObjCStringLiteral(const ObjCStringLiteral *E) { - std::string S(E->getString()->getStrData(), - E->getString()->getByteLength()); - llvm::Constant *C = CGM.getObjCRuntime().GenerateConstantString(S); - return llvm::ConstantExpr::getBitCast(C, ConvertType(E->getType())); - } llvm::Constant *VisitCompoundLiteralExpr(CompoundLiteralExpr *E) { return Visit(E->getInitializer()); @@ -371,54 +364,9 @@ public: return llvm::ConstantArray::get(CGM.GetStringForStringLiteral(E), false); } - llvm::Constant *VisitAddrLabelExpr(const AddrLabelExpr *E) { - assert(CGF && "Invalid address of label expression outside function."); - llvm::Constant *C = - llvm::ConstantInt::get(llvm::Type::Int32Ty, - CGF->GetIDForAddrOfLabel(E->getLabel())); - return llvm::ConstantExpr::getIntToPtr(C, ConvertType(E->getType())); - } - - llvm::Constant *VisitUnaryAddrOf(const UnaryOperator *E) { - return EmitLValue(E->getSubExpr()); - } - llvm::Constant *VisitUnaryOffsetOf(const UnaryOperator *E) { - int64_t Val = E->evaluateOffsetOf(CGM.getContext()); - - assert(E->getType()->isIntegerType() && "Result type must be an integer!"); - - uint32_t ResultWidth = - static_cast<uint32_t>(CGM.getContext().getTypeSize(E->getType())); - return llvm::ConstantInt::get(llvm::APInt(ResultWidth, Val)); - } - llvm::Constant *VisitUnaryExtension(const UnaryOperator *E) { return Visit(E->getSubExpr()); } - - // Binary operators - - llvm::Constant *VisitCallExpr(const CallExpr *E) { - Expr::EvalResult Result; - if (E->Evaluate(Result, CGM.getContext())) { - if (Result.Val.isInt()) - return llvm::ConstantInt::get(Result.Val.getInt()); - if (Result.Val.isFloat()) - return llvm::ConstantFP::get(Result.Val.getFloat()); - } - - // Handle __builtin___CFStringMakeConstantString. - if (E->isBuiltinCall() ==Builtin::BI__builtin___CFStringMakeConstantString){ - const Expr *Arg = E->getArg(0)->IgnoreParenCasts(); - - const StringLiteral *Literal = cast<StringLiteral>(Arg); - std::string S(Literal->getStrData(), Literal->getByteLength()); - return CGM.GetAddrOfConstantCFString(S); - } - - CGM.ErrorUnsupported(E, "constant call expression"); - return llvm::Constant::getNullValue(ConvertType(E->getType())); - } // Utility methods const llvm::Type *ConvertType(QualType T) { |