From 09d53fecfcc93377627b6ee7b4d92f8a6ff152e9 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 10 Mar 2010 07:20:42 +0000 Subject: move three lowering hooks from MAI to TLOF and make one of them semantic instead of syntactic. This completes MCization of darwin/x86[-64]! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98145 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/MC/MCAsmInfo.h | 21 --------------------- include/llvm/Target/TargetLoweringObjectFile.h | 23 ++++++++++++++++++++++- 2 files changed, 22 insertions(+), 22 deletions(-) (limited to 'include') diff --git a/include/llvm/MC/MCAsmInfo.h b/include/llvm/MC/MCAsmInfo.h index 3effea4..7e0c8a5 100644 --- a/include/llvm/MC/MCAsmInfo.h +++ b/include/llvm/MC/MCAsmInfo.h @@ -247,18 +247,6 @@ namespace llvm { /// encode inline subroutine information. bool DwarfUsesInlineInfoSection; // Defaults to false. - /// Is_EHSymbolPrivate - If set, the "_foo.eh" is made private so that it - /// doesn't show up in the symbol table of the object file. - bool Is_EHSymbolPrivate; // Defaults to true. - - /// GlobalEHDirective - This is the directive used to make exception frame - /// tables globally visible. - const char *GlobalEHDirective; // Defaults to NULL. - - /// SupportsWeakEmptyEHFrame - True if target assembler and linker will - /// handle a weak_definition of constant 0 for an omitted EH frame. - bool SupportsWeakOmittedEHFrame; // Defaults to true. - /// DwarfSectionOffsetDirective - Special section offset directive. const char* DwarfSectionOffsetDirective; // Defaults to NULL @@ -419,15 +407,6 @@ namespace llvm { bool doesDwarfUsesInlineInfoSection() const { return DwarfUsesInlineInfoSection; } - bool is_EHSymbolPrivate() const { - return Is_EHSymbolPrivate; - } - const char *getGlobalEHDirective() const { - return GlobalEHDirective; - } - bool getSupportsWeakOmittedEHFrame() const { - return SupportsWeakOmittedEHFrame; - } const char *getDwarfSectionOffsetDirective() const { return DwarfSectionOffsetDirective; } diff --git a/include/llvm/Target/TargetLoweringObjectFile.h b/include/llvm/Target/TargetLoweringObjectFile.h index 42d88a0..056efea 100644 --- a/include/llvm/Target/TargetLoweringObjectFile.h +++ b/include/llvm/Target/TargetLoweringObjectFile.h @@ -87,11 +87,23 @@ protected: const MCSection *DwarfRangesSection; const MCSection *DwarfMacroInfoSection; + /// SupportsWeakEmptyEHFrame - True if target object file supports a + /// weak_definition of constant 0 for an omitted EH frame. + bool SupportsWeakOmittedEHFrame; + + /// IsFunctionEHSymbolGlobal - This flag is set to true if the ".eh" symbol + /// for a function should be marked .globl. + bool IsFunctionEHSymbolGlobal; + + /// IsFunctionEHFrameSymbolPrivate - This flag is set to true if the + /// "EH_frame" symbol for EH information should be an assembler temporary (aka + /// private linkage, aka an L or .L label) or false if it should be a normal + /// non-.globl label. This defaults to true. + bool IsFunctionEHFrameSymbolPrivate; public: MCContext &getContext() const { return *Ctx; } - virtual ~TargetLoweringObjectFile(); /// Initialize - this method must be called before any actual lowering is @@ -101,6 +113,15 @@ public: Ctx = &ctx; } + bool isFunctionEHSymbolGlobal() const { + return IsFunctionEHSymbolGlobal; + } + bool isFunctionEHFrameSymbolPrivate() const { + return IsFunctionEHFrameSymbolPrivate; + } + bool getSupportsWeakOmittedEHFrame() const { + return SupportsWeakOmittedEHFrame; + } const MCSection *getTextSection() const { return TextSection; } const MCSection *getDataSection() const { return DataSection; } -- cgit v1.1