|
clang
5.0.0
|
#include "CodeGenFunction.h"#include "CGCXXABI.h"#include "CGObjCRuntime.h"#include "CGRecordLayout.h"#include "CodeGenModule.h"#include "TargetInfo.h"#include "clang/AST/APValue.h"#include "clang/AST/ASTContext.h"#include "clang/AST/RecordLayout.h"#include "clang/AST/StmtVisitor.h"#include "clang/Basic/Builtins.h"#include "llvm/IR/Constants.h"#include "llvm/IR/DataLayout.h"#include "llvm/IR/Function.h"#include "llvm/IR/GlobalVariable.h"Go to the source code of this file.
Functions | |
| static llvm::Constant * | EmitNullConstantForBase (CodeGenModule &CGM, llvm::Type *baseType, const CXXRecordDecl *base) |
| Emit the null constant for a base subobject. More... | |
| static llvm::Constant * | EmitNullConstant (CodeGenModule &CGM, const RecordDecl *record, bool asCompleteObject) |
|
static |
Definition at line 1533 of file CGExprConstant.cpp.
References clang::CodeGen::CodeGenModule::EmitNullConstant(), EmitNullConstantForBase(), clang::RecordDecl::fields(), clang::Type::getAsTagDecl(), clang::ASTContext::getASTRecordLayout(), clang::CodeGen::CGRecordLayout::getBaseSubobjectLLVMType(), clang::CodeGen::CodeGenTypes::getCGRecordLayout(), clang::CodeGen::CodeGenModule::getContext(), clang::NamedDecl::getIdentifier(), clang::CodeGen::CGRecordLayout::getLLVMFieldNo(), clang::CodeGen::CGRecordLayout::getLLVMType(), clang::CodeGen::CGRecordLayout::getNonVirtualBaseLLVMFieldNo(), clang::ASTRecordLayout::getNonVirtualSize(), clang::ValueDecl::getType(), clang::CodeGen::CodeGenModule::getTypes(), clang::CodeGen::CGRecordLayout::getVirtualBaseIndex(), I, clang::FieldDecl::isBitField(), clang::CXXRecordDecl::isEmpty(), clang::TagDecl::isUnion(), clang::CharUnits::isZero(), and clang::CodeGen::Type.
Referenced by clang::CodeGen::CodeGenModule::EmitNullConstant(), clang::CodeGen::CodeGenModule::EmitNullConstantForBase(), and EmitNullConstantForBase().
|
static |
Emit the null constant for a base subobject.
Definition at line 1619 of file CGExprConstant.cpp.
References EmitNullConstant(), clang::CodeGen::CodeGenTypes::getCGRecordLayout(), clang::CodeGen::CodeGenModule::getTypes(), and clang::CodeGen::CGRecordLayout::isZeroInitializableAsBase().
Referenced by EmitNullConstant().
1.8.6