forked from OSchip/llvm-project
Rename ClassType to the more accurate UnderlyingType and document its purpose.
rdar://problem/13463793 llvm-svn: 179877
This commit is contained in:
parent
ed185ab5c7
commit
425ca79300
|
@ -349,19 +349,20 @@ namespace llvm {
|
||||||
DIType createVectorType(uint64_t Size, uint64_t AlignInBits,
|
DIType createVectorType(uint64_t Size, uint64_t AlignInBits,
|
||||||
DIType Ty, DIArray Subscripts);
|
DIType Ty, DIArray Subscripts);
|
||||||
|
|
||||||
/// createEnumerationType - Create debugging information entry for an
|
/// createEnumerationType - Create debugging information entry for an
|
||||||
/// enumeration.
|
/// enumeration.
|
||||||
/// @param Scope Scope in which this enumeration is defined.
|
/// @param Scope Scope in which this enumeration is defined.
|
||||||
/// @param Name Union name.
|
/// @param Name Union name.
|
||||||
/// @param File File where this member is defined.
|
/// @param File File where this member is defined.
|
||||||
/// @param LineNumber Line number.
|
/// @param LineNumber Line number.
|
||||||
/// @param SizeInBits Member size.
|
/// @param SizeInBits Member size.
|
||||||
/// @param AlignInBits Member alignment.
|
/// @param AlignInBits Member alignment.
|
||||||
/// @param Elements Enumeration elements.
|
/// @param Elements Enumeration elements.
|
||||||
|
/// @param UnderlyingType Underlying type of a C++11/ObjC fixed enum.
|
||||||
DICompositeType createEnumerationType(
|
DICompositeType createEnumerationType(
|
||||||
DIDescriptor Scope, StringRef Name, DIFile File, unsigned LineNumber,
|
DIDescriptor Scope, StringRef Name, DIFile File, unsigned LineNumber,
|
||||||
uint64_t SizeInBits, uint64_t AlignInBits, DIArray Elements,
|
uint64_t SizeInBits, uint64_t AlignInBits, DIArray Elements,
|
||||||
DIType ClassType);
|
DIType UnderlyingType);
|
||||||
|
|
||||||
/// createSubroutineType - Create subroutine type.
|
/// createSubroutineType - Create subroutine type.
|
||||||
/// @param File File in which this subroutine is defined.
|
/// @param File File in which this subroutine is defined.
|
||||||
|
|
|
@ -342,7 +342,10 @@ namespace llvm {
|
||||||
|
|
||||||
/// DICompositeType - This descriptor holds a type that can refer to multiple
|
/// DICompositeType - This descriptor holds a type that can refer to multiple
|
||||||
/// other types, like a function or struct.
|
/// other types, like a function or struct.
|
||||||
/// FIXME: Why is this a DIDerivedType??
|
/// DICompositeType is derived from DIDerivedType because some
|
||||||
|
/// composite types (such as enums) can be derived from basic types
|
||||||
|
// FIXME: Make this derive from DIType directly & just store the
|
||||||
|
// base type in a single DIType field.
|
||||||
class DICompositeType : public DIDerivedType {
|
class DICompositeType : public DIDerivedType {
|
||||||
friend class DIDescriptor;
|
friend class DIDescriptor;
|
||||||
void printInternal(raw_ostream &OS) const;
|
void printInternal(raw_ostream &OS) const;
|
||||||
|
|
|
@ -427,7 +427,7 @@ DIType DIBuilder::createObjCIVar(StringRef Name,
|
||||||
DIObjCProperty DIBuilder::createObjCProperty(StringRef Name,
|
DIObjCProperty DIBuilder::createObjCProperty(StringRef Name,
|
||||||
DIFile File, unsigned LineNumber,
|
DIFile File, unsigned LineNumber,
|
||||||
StringRef GetterName,
|
StringRef GetterName,
|
||||||
StringRef SetterName,
|
StringRef SetterName,
|
||||||
unsigned PropertyAttributes,
|
unsigned PropertyAttributes,
|
||||||
DIType Ty) {
|
DIType Ty) {
|
||||||
Value *Elts[] = {
|
Value *Elts[] = {
|
||||||
|
@ -601,7 +601,7 @@ DIBuilder::createSubroutineType(DIFile File, DIArray ParameterTypes) {
|
||||||
DICompositeType DIBuilder::createEnumerationType(
|
DICompositeType DIBuilder::createEnumerationType(
|
||||||
DIDescriptor Scope, StringRef Name, DIFile File, unsigned LineNumber,
|
DIDescriptor Scope, StringRef Name, DIFile File, unsigned LineNumber,
|
||||||
uint64_t SizeInBits, uint64_t AlignInBits, DIArray Elements,
|
uint64_t SizeInBits, uint64_t AlignInBits, DIArray Elements,
|
||||||
DIType ClassType) {
|
DIType UnderlyingType) {
|
||||||
// TAG_enumeration_type is encoded in DICompositeType format.
|
// TAG_enumeration_type is encoded in DICompositeType format.
|
||||||
Value *Elts[] = {
|
Value *Elts[] = {
|
||||||
GetTagConstant(VMContext, dwarf::DW_TAG_enumeration_type),
|
GetTagConstant(VMContext, dwarf::DW_TAG_enumeration_type),
|
||||||
|
@ -613,7 +613,7 @@ DICompositeType DIBuilder::createEnumerationType(
|
||||||
ConstantInt::get(Type::getInt64Ty(VMContext), AlignInBits),
|
ConstantInt::get(Type::getInt64Ty(VMContext), AlignInBits),
|
||||||
ConstantInt::get(Type::getInt32Ty(VMContext), 0),
|
ConstantInt::get(Type::getInt32Ty(VMContext), 0),
|
||||||
ConstantInt::get(Type::getInt32Ty(VMContext), 0),
|
ConstantInt::get(Type::getInt32Ty(VMContext), 0),
|
||||||
ClassType,
|
UnderlyingType,
|
||||||
Elements,
|
Elements,
|
||||||
ConstantInt::get(Type::getInt32Ty(VMContext), 0),
|
ConstantInt::get(Type::getInt32Ty(VMContext), 0),
|
||||||
Constant::getNullValue(Type::getInt32Ty(VMContext))
|
Constant::getNullValue(Type::getInt32Ty(VMContext))
|
||||||
|
|
Loading…
Reference in New Issue