diff options
author | Devang Patel <dpatel@apple.com> | 2007-10-23 02:10:49 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2007-10-23 02:10:49 +0000 |
commit | b84a06e68ffd71da22e3c75b6e4bbdba37816413 (patch) | |
tree | 1d218863bb30d46284d0c652b491f65d0b2131b3 /CodeGen/CodeGenFunction.h | |
parent | 9f0a1cb8cf741d8ccd86beb15b50867b0758750f (diff) |
Begin struct layout work.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43236 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CodeGen/CodeGenFunction.h')
-rw-r--r-- | CodeGen/CodeGenFunction.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/CodeGen/CodeGenFunction.h b/CodeGen/CodeGenFunction.h index 3e08461efa..c14687e07e 100644 --- a/CodeGen/CodeGenFunction.h +++ b/CodeGen/CodeGenFunction.h @@ -65,13 +65,15 @@ namespace clang { class ChooseExpr; class PreDefinedExpr; class ObjCStringLiteral; - + class MemberExpr; + class BlockVarDecl; class EnumConstantDecl; class ParmVarDecl; namespace CodeGen { class CodeGenModule; - + class CodeGenTypes; + class RecordLayoutInfo; /// RValue - This trivial value class is used to represent the result of an /// expression that is evaluated. It can be one of three things: either a @@ -296,6 +298,8 @@ public: /// then reuse it. void StartBlock(const char *N); + /// getRecordLayoutInfo - Return record layout info. + RecordLayoutInfo *getRecordLayoutInfo(CodeGenTypes &CGT, QualType RTy); //===--------------------------------------------------------------------===// // Declaration Emission //===--------------------------------------------------------------------===// @@ -370,6 +374,7 @@ public: LValue EmitUnaryOpLValue(const UnaryOperator *E); LValue EmitArraySubscriptExpr(const ArraySubscriptExpr *E); LValue EmitOCUVectorElementExpr(const OCUVectorElementExpr *E); + LValue EmitMemberExpr(const MemberExpr *E); //===--------------------------------------------------------------------===// // Scalar Expression Emission |