clang API Documentation
#include "CodeGenModule.h"#include "CodeGenFunction.h"#include "clang/AST/CXXInheritance.h"#include "clang/AST/RecordLayout.h"#include "llvm/ADT/DenseSet.h"#include "llvm/ADT/SetVector.h"#include "llvm/Support/Compiler.h"#include "llvm/Support/Format.h"#include <algorithm>#include <cstdio>

Go to the source code of this file.
Defines | |
| #define | DUMP_OVERRIDERS 0 |
Functions | |
| static llvm::Value * | PerformTypeAdjustment (CodeGenFunction &CGF, llvm::Value *Ptr, int64_t NonVirtualAdjustment, int64_t VirtualAdjustment) |
| static llvm::GlobalVariable * | GetGlobalVariable (llvm::Module &Module, llvm::StringRef Name, const llvm::Type *Ty, llvm::GlobalValue::LinkageTypes Linkage) |
| #define DUMP_OVERRIDERS 0 |
Definition at line 198 of file CGVtable.cpp.
| static llvm::GlobalVariable* GetGlobalVariable | ( | llvm::Module & | Module, | |
| llvm::StringRef | Name, | |||
| const llvm::Type * | Ty, | |||
| llvm::GlobalValue::LinkageTypes | Linkage | |||
| ) | [static] |
GetGlobalVariable - Will return a global variable of the given type. If a variable with a different type already exists then a new variable with the right type will be created. FIXME: We should move this to CodeGenModule and rename it to something better and then use it in CGVTT and CGRTTI.
Definition at line 2984 of file CGVtable.cpp.
Referenced by clang::CodeGen::CodeGenVTables::GenerateConstructionVTable(), and clang::CodeGen::CodeGenVTables::GetAddrOfVTable().
| static llvm::Value* PerformTypeAdjustment | ( | CodeGenFunction & | CGF, | |
| llvm::Value * | Ptr, | |||
| int64_t | NonVirtualAdjustment, | |||
| int64_t | VirtualAdjustment | |||
| ) | [static] |
Definition at line 2569 of file CGVtable.cpp.
References clang::CodeGen::CodeGenFunction::Builder, clang::CodeGen::CodeGenFunction::ConvertType(), clang::CodeGen::CodeGenFunction::getContext(), clang::CodeGen::CodeGenFunction::getLLVMContext(), and clang::ASTContext::getPointerDiffType().
Referenced by clang::CodeGen::CodeGenFunction::GenerateThunk().