- Update comments.

- Don't use GlobalVariable::LinkageTypes when unsigned works.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52987 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bill Wendling 2008-07-01 22:08:01 +00:00
parent ecdc82a643
commit a28cd12b06
3 changed files with 30 additions and 41 deletions

View File

@ -7,15 +7,15 @@
// //
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
// //
// // Debug descriptor information for a module.
// //
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
#ifndef LLVM_CODEGEN_MACHINEDEBUGINFODESC_H #ifndef LLVM_CODEGEN_MACHINEDEBUGINFODESC_H
#define LLVM_CODEGEN_MACHINEDEBUGINFODESC_H #define LLVM_CODEGEN_MACHINEDEBUGINFODESC_H
#include "llvm/GlobalValue.h"
#include "llvm/Support/DataTypes.h" #include "llvm/Support/DataTypes.h"
#include <string>
#include <vector> #include <vector>
namespace llvm { namespace llvm {
@ -67,7 +67,7 @@ public:
/// getLinkage - get linkage appropriate for this type of descriptor. /// getLinkage - get linkage appropriate for this type of descriptor.
/// ///
virtual GlobalValue::LinkageTypes getLinkage() const; virtual unsigned getLinkage() const;
//===--------------------------------------------------------------------===// //===--------------------------------------------------------------------===//
// Subclasses should supply the following virtual methods. // Subclasses should supply the following virtual methods.
@ -111,7 +111,7 @@ public:
/// getLinkage - get linkage appropriate for this type of descriptor. /// getLinkage - get linkage appropriate for this type of descriptor.
/// ///
virtual GlobalValue::LinkageTypes getLinkage() const; virtual unsigned getLinkage() const;
/// ApplyToFields - Target the visitor to the fields of the AnchorDesc. /// ApplyToFields - Target the visitor to the fields of the AnchorDesc.
/// ///

View File

@ -92,8 +92,8 @@ DebugInfoDesc *DebugInfoDesc::DescFactory(unsigned Tag) {
} }
/// getLinkage - get linkage appropriate for this type of descriptor. /// getLinkage - get linkage appropriate for this type of descriptor.
GlobalValue::LinkageTypes DebugInfoDesc::getLinkage() const { unsigned DebugInfoDesc::getLinkage() const {
return GlobalValue::InternalLinkage; return (unsigned)GlobalValue::InternalLinkage;
} }
/// ApplyToFields - Target the vistor to the fields of the descriptor. /// ApplyToFields - Target the vistor to the fields of the descriptor.
@ -104,11 +104,10 @@ void DebugInfoDesc::ApplyToFields(DIVisitor *Visitor) {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
AnchorDesc::AnchorDesc() AnchorDesc::AnchorDesc()
: DebugInfoDesc(DW_TAG_anchor), AnchorTag(0){ : DebugInfoDesc(DW_TAG_anchor), AnchorTag(0) {}
}
AnchorDesc::AnchorDesc(AnchoredDesc *D) AnchorDesc::AnchorDesc(AnchoredDesc *D)
: DebugInfoDesc(DW_TAG_anchor), AnchorTag(D->getTag()) { : DebugInfoDesc(DW_TAG_anchor), AnchorTag(D->getTag()) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool AnchorDesc::classof(const DebugInfoDesc *D) { bool AnchorDesc::classof(const DebugInfoDesc *D) {
@ -116,8 +115,8 @@ bool AnchorDesc::classof(const DebugInfoDesc *D) {
} }
/// getLinkage - get linkage appropriate for this type of descriptor. /// getLinkage - get linkage appropriate for this type of descriptor.
GlobalValue::LinkageTypes AnchorDesc::getLinkage() const { unsigned AnchorDesc::getLinkage() const {
return GlobalValue::LinkOnceLinkage; return (unsigned)GlobalValue::LinkOnceLinkage;
} }
/// ApplyToFields - Target the visitor to the fields of the TransUnitDesc. /// ApplyToFields - Target the visitor to the fields of the TransUnitDesc.
@ -167,8 +166,7 @@ void AnchorDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
AnchoredDesc::AnchoredDesc(unsigned T) AnchoredDesc::AnchoredDesc(unsigned T)
: DebugInfoDesc(T), Anchor(NULL) { : DebugInfoDesc(T), Anchor(NULL) {}
}
/// ApplyToFields - Target the visitor to the fields of the AnchoredDesc. /// ApplyToFields - Target the visitor to the fields of the AnchoredDesc.
void AnchoredDesc::ApplyToFields(DIVisitor *Visitor) { void AnchoredDesc::ApplyToFields(DIVisitor *Visitor) {
@ -180,8 +178,7 @@ void AnchoredDesc::ApplyToFields(DIVisitor *Visitor) {
CompileUnitDesc::CompileUnitDesc() CompileUnitDesc::CompileUnitDesc()
: AnchoredDesc(DW_TAG_compile_unit), Language(0), FileName(""), : AnchoredDesc(DW_TAG_compile_unit), Language(0), FileName(""),
Directory(""), Producer("") { Directory(""), Producer("") {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool CompileUnitDesc::classof(const DebugInfoDesc *D) { bool CompileUnitDesc::classof(const DebugInfoDesc *D) {
@ -222,8 +219,7 @@ void CompileUnitDesc::dump() {
TypeDesc::TypeDesc(unsigned T) TypeDesc::TypeDesc(unsigned T)
: DebugInfoDesc(T), Context(NULL), Name(""), File(NULL), Line(0), Size(0), : DebugInfoDesc(T), Context(NULL), Name(""), File(NULL), Line(0), Size(0),
Align(0), Offset(0), Flags(0) { Align(0), Offset(0), Flags(0) {}
}
/// ApplyToFields - Target the visitor to the fields of the TypeDesc. /// ApplyToFields - Target the visitor to the fields of the TypeDesc.
/// ///
@ -258,8 +254,7 @@ void TypeDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
BasicTypeDesc::BasicTypeDesc() BasicTypeDesc::BasicTypeDesc()
: TypeDesc(DW_TAG_base_type), Encoding(0) { : TypeDesc(DW_TAG_base_type), Encoding(0) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool BasicTypeDesc::classof(const DebugInfoDesc *D) { bool BasicTypeDesc::classof(const DebugInfoDesc *D) {
@ -287,8 +282,7 @@ void BasicTypeDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
DerivedTypeDesc::DerivedTypeDesc(unsigned T) DerivedTypeDesc::DerivedTypeDesc(unsigned T)
: TypeDesc(T), FromType(NULL) { : TypeDesc(T), FromType(NULL) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool DerivedTypeDesc::classof(const DebugInfoDesc *D) { bool DerivedTypeDesc::classof(const DebugInfoDesc *D) {
@ -331,8 +325,7 @@ void DerivedTypeDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
CompositeTypeDesc::CompositeTypeDesc(unsigned T) CompositeTypeDesc::CompositeTypeDesc(unsigned T)
: DerivedTypeDesc(T), Elements() { : DerivedTypeDesc(T), Elements() {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool CompositeTypeDesc::classof(const DebugInfoDesc *D) { bool CompositeTypeDesc::classof(const DebugInfoDesc *D) {
@ -375,8 +368,7 @@ void CompositeTypeDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
SubrangeDesc::SubrangeDesc() SubrangeDesc::SubrangeDesc()
: DebugInfoDesc(DW_TAG_subrange_type), Lo(0), Hi(0) { : DebugInfoDesc(DW_TAG_subrange_type), Lo(0), Hi(0) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool SubrangeDesc::classof(const DebugInfoDesc *D) { bool SubrangeDesc::classof(const DebugInfoDesc *D) {
@ -403,8 +395,7 @@ void SubrangeDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
EnumeratorDesc::EnumeratorDesc() EnumeratorDesc::EnumeratorDesc()
: DebugInfoDesc(DW_TAG_enumerator), Name(""), Value(0) { : DebugInfoDesc(DW_TAG_enumerator), Name(""), Value(0) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool EnumeratorDesc::classof(const DebugInfoDesc *D) { bool EnumeratorDesc::classof(const DebugInfoDesc *D) {
@ -431,8 +422,8 @@ void EnumeratorDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
VariableDesc::VariableDesc(unsigned T) VariableDesc::VariableDesc(unsigned T)
: DebugInfoDesc(T), Context(NULL), Name(""), File(NULL), Line(0), TyDesc(0) { : DebugInfoDesc(T), Context(NULL), Name(""), File(NULL), Line(0), TyDesc(0)
} {}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool VariableDesc::classof(const DebugInfoDesc *D) { bool VariableDesc::classof(const DebugInfoDesc *D) {
@ -474,8 +465,7 @@ void VariableDesc::dump() {
GlobalDesc::GlobalDesc(unsigned T) GlobalDesc::GlobalDesc(unsigned T)
: AnchoredDesc(T), Context(0), Name(""), FullName(""), LinkageName(""), : AnchoredDesc(T), Context(0), Name(""), FullName(""), LinkageName(""),
File(NULL), Line(0), TyDesc(NULL), IsStatic(false), IsDefinition(false) { File(NULL), Line(0), TyDesc(NULL), IsStatic(false), IsDefinition(false) {}
}
/// ApplyToFields - Target the visitor to the fields of the global. /// ApplyToFields - Target the visitor to the fields of the global.
/// ///
@ -495,8 +485,7 @@ void GlobalDesc::ApplyToFields(DIVisitor *Visitor) {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
GlobalVariableDesc::GlobalVariableDesc() GlobalVariableDesc::GlobalVariableDesc()
: GlobalDesc(DW_TAG_variable), Global(NULL) { : GlobalDesc(DW_TAG_variable), Global(NULL) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool GlobalVariableDesc::classof(const DebugInfoDesc *D) { bool GlobalVariableDesc::classof(const DebugInfoDesc *D) {
@ -530,8 +519,7 @@ void GlobalVariableDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
SubprogramDesc::SubprogramDesc() SubprogramDesc::SubprogramDesc()
: GlobalDesc(DW_TAG_subprogram) { : GlobalDesc(DW_TAG_subprogram) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool SubprogramDesc::classof(const DebugInfoDesc *D) { bool SubprogramDesc::classof(const DebugInfoDesc *D) {
@ -563,8 +551,7 @@ void SubprogramDesc::dump() {
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
BlockDesc::BlockDesc() BlockDesc::BlockDesc()
: DebugInfoDesc(DW_TAG_lexical_block), Context(NULL) { : DebugInfoDesc(DW_TAG_lexical_block), Context(NULL) {}
}
// Implement isa/cast/dyncast. // Implement isa/cast/dyncast.
bool BlockDesc::classof(const DebugInfoDesc *D) { bool BlockDesc::classof(const DebugInfoDesc *D) {

View File

@ -586,8 +586,10 @@ GlobalVariable *DISerializer::Serialize(DebugInfoDesc *DD) {
const StructType *Ty = getTagType(DD); const StructType *Ty = getTagType(DD);
// Create the GlobalVariable early to prevent infinite recursion. // Create the GlobalVariable early to prevent infinite recursion.
GlobalVariable *GV = new GlobalVariable(Ty, true, DD->getLinkage(), GlobalVariable *GV =
NULL, DD->getDescString(), M); new GlobalVariable(Ty, true,
(GlobalValue::LinkageTypes)DD->getLinkage(),
NULL, DD->getDescString(), M);
GV->setSection("llvm.metadata"); GV->setSection("llvm.metadata");
// Insert new GlobalVariable in DescGlobals map. // Insert new GlobalVariable in DescGlobals map.