aboutsummaryrefslogtreecommitdiff
path: root/CodeGen/CodeGenFunction.h
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2007-10-23 02:10:49 +0000
committerDevang Patel <dpatel@apple.com>2007-10-23 02:10:49 +0000
commitb84a06e68ffd71da22e3c75b6e4bbdba37816413 (patch)
tree1d218863bb30d46284d0c652b491f65d0b2131b3 /CodeGen/CodeGenFunction.h
parent9f0a1cb8cf741d8ccd86beb15b50867b0758750f (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.h9
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