summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprConstant.cpp
diff options
context:
space:
mode:
authorSebastian Redl <sebastian.redl@getdesigned.at>2008-11-11 17:56:53 +0000
committerSebastian Redl <sebastian.redl@getdesigned.at>2008-11-11 17:56:53 +0000
commit6f28289aca5bf15feb49b95e73f80cf9af99cdb3 (patch)
tree71037f611a5ba7b910255fcfb6a419cf159d8ee7 /clang/lib/CodeGen/CGExprConstant.cpp
parent5499e89d06ba27f89dbffb028cbce72e3a3c95ed (diff)
downloadbcm5719-llvm-6f28289aca5bf15feb49b95e73f80cf9af99cdb3.tar.gz
bcm5719-llvm-6f28289aca5bf15feb49b95e73f80cf9af99cdb3.zip
Introduce a single AST node SizeOfAlignOfExpr for all sizeof and alignof expressions, both of values and types.
llvm-svn: 59057
Diffstat (limited to 'clang/lib/CodeGen/CGExprConstant.cpp')
-rw-r--r--clang/lib/CodeGen/CGExprConstant.cpp10
1 files changed, 2 insertions, 8 deletions
diff --git a/clang/lib/CodeGen/CGExprConstant.cpp b/clang/lib/CodeGen/CGExprConstant.cpp
index 89b34e611ba..1e224571f95 100644
--- a/clang/lib/CodeGen/CGExprConstant.cpp
+++ b/clang/lib/CodeGen/CGExprConstant.cpp
@@ -384,8 +384,8 @@ public:
return 0;
}
- llvm::Constant *VisitSizeOfAlignOfTypeExpr(const SizeOfAlignOfTypeExpr *E) {
- return EmitSizeAlignOf(E->getArgumentType(), E->getType(), E->isSizeOf());
+ llvm::Constant *VisitSizeOfAlignOfExpr(const SizeOfAlignOfExpr *E) {
+ return EmitSizeAlignOf(E->getTypeOfArgument(), E->getType(), E->isSizeOf());
}
llvm::Constant *VisitAddrLabelExpr(const AddrLabelExpr *E) {
@@ -426,12 +426,6 @@ public:
return llvm::ConstantExpr::getZExt(SubExpr, ConvertType(E->getType()));
}
- llvm::Constant *VisitUnarySizeOf(const UnaryOperator *E) {
- return EmitSizeAlignOf(E->getSubExpr()->getType(), E->getType(), true);
- }
- llvm::Constant *VisitUnaryAlignOf(const UnaryOperator *E) {
- return EmitSizeAlignOf(E->getSubExpr()->getType(), E->getType(), false);
- }
llvm::Constant *VisitUnaryAddrOf(const UnaryOperator *E) {
return EmitLValue(E->getSubExpr());
}
OpenPOWER on IntegriCloud