clang: lib/CodeGen/CodeGenTBAA.cpp File Reference (original) (raw)

#include "[CodeGenTBAA.h](CodeGenTBAA%5F8h%5Fsource.html)"
#include "[ABIInfoImpl.h](ABIInfoImpl%5F8h%5Fsource.html)"
#include "[CGCXXABI.h](CGCXXABI%5F8h%5Fsource.html)"
#include "[CGRecordLayout.h](CGRecordLayout%5F8h%5Fsource.html)"
#include "[CodeGenTypes.h](CodeGenTypes%5F8h%5Fsource.html)"
#include "[clang/AST/ASTContext.h](ASTContext%5F8h%5Fsource.html)"
#include "[clang/AST/Attr.h](AST%5F2Attr%5F8h%5Fsource.html)"
#include "[clang/AST/Mangle.h](Mangle%5F8h%5Fsource.html)"
#include "[clang/AST/RecordLayout.h](RecordLayout%5F8h%5Fsource.html)"
#include "[clang/Basic/CodeGenOptions.h](CodeGenOptions%5F8h%5Fsource.html)"
#include "[clang/Basic/TargetInfo.h](include%5F2clang%5F2Basic%5F2TargetInfo%5F8h%5Fsource.html)"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/Debug.h"

Go to the source code of this file.

Functions
static bool TypeHasMayAlias (QualType QTy)
static bool isValidBaseType (QualType QTy)
Check if the given type is a valid base type to be used in access tags.

Function Documentation

isValidBaseType()

static bool isValidBaseType ( QualType QTy) static

Check if the given type is a valid base type to be used in access tags.

Definition at line 101 of file CodeGenTBAA.cpp.

References clang::Type::getAs(), clang::RecordDecl::getDefinition(), clang::RecordDecl::hasFlexibleArrayMember(), clang::TagDecl::isClass(), and clang::TagDecl::isStruct().

Referenced by clang::CodeGen::CodeGenTBAA::getBaseTypeInfo(), and clang::CodeGen::CodeGenTBAA::getTypeInfo().

TypeHasMayAlias()

static bool TypeHasMayAlias ( QualType QTy) static

Definition at line 83 of file CodeGenTBAA.cpp.

References clang::Type::getAs(), and clang::Type::getAsTagDecl().

Referenced by clang::CodeGen::CodeGenTBAA::getAccessInfo(), clang::CodeGen::CodeGenTBAA::getTBAAStructInfo(), and clang::CodeGen::CodeGenTBAA::getTypeInfo().