convert ctors/dtors section to be in TLOF instead of

TAI.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77842 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2009-08-02 00:34:36 +00:00
parent f9f1adbcbb
commit 80ec2792b2
10 changed files with 78 additions and 42 deletions

View File

@@ -210,16 +210,6 @@ namespace llvm {
/// table.
const char *JumpTableDirective;
/// StaticCtorsSection - This is the directive that is emitted to switch to
/// a section to emit the static constructor list.
/// Defaults to "\t.section .ctors,\"aw\",@progbits".
const char *StaticCtorsSection;
/// StaticDtorsSection - This is the directive that is emitted to switch to
/// a section to emit the static destructor list.
/// Defaults to "\t.section .dtors,\"aw\",@progbits".
const char *StaticDtorsSection;
//===--- Global Variable Emission Directives --------------------------===//
/// GlobalDirective - This is the directive used to declare a global entity.
@@ -533,12 +523,6 @@ namespace llvm {
const char *getSectionEndDirectiveSuffix() const {
return SectionEndDirectiveSuffix;
}
const char *getStaticCtorsSection() const {
return StaticCtorsSection;
}
const char *getStaticDtorsSection() const {
return StaticDtorsSection;
}
const char *getGlobalDirective() const {
return GlobalDirective;
}

View File

@@ -50,6 +50,14 @@ protected:
/// section for constants.
const MCSection *ReadOnlySection;
/// StaticCtorSection - This section contains the static constructor pointer
/// list.
const MCSection *StaticCtorSection;
/// StaticDtorSection - This section contains the static destructor pointer
/// list.
const MCSection *StaticDtorSection;
public:
// FIXME: NONPUB.
const MCSection *getOrCreateSection(const char *Name,
@@ -69,7 +77,10 @@ public:
const MCSection *getTextSection() const { return TextSection; }
const MCSection *getDataSection() const { return DataSection; }
const MCSection *getStaticCtorSection() const { return StaticCtorSection; }
const MCSection *getStaticDtorSection() const { return StaticDtorSection; }
/// shouldEmitUsedDirectiveFor - This hook allows targets to selectively
/// decide not to emit the UsedDirective for some symbols in llvm.used.
/// FIXME: REMOVE this (rdar://7071300)