make SectionFlagsForGlobal a private static function instead of a public
authorChris Lattner <sabre@nondot.org>
Fri, 24 Jul 2009 16:46:50 +0000 (16:46 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 24 Jul 2009 16:46:50 +0000 (16:46 +0000)
virtual one.

llvm-svn: 76973

llvm/include/llvm/Target/TargetAsmInfo.h
llvm/lib/Target/TargetAsmInfo.cpp

index 63afe9b..42545c6 100644 (file)
@@ -595,13 +595,6 @@ namespace llvm {
     virtual SectionKind::Kind
     SectionKindForGlobal(const GlobalValue *GV) const;
 
-    /// SectionFlagsForGlobal - This hook allows the target to select proper
-    /// section flags either for given global or for section.
-// FIXME: Eliminate this.
-    virtual unsigned
-    SectionFlagsForGlobal(const GlobalValue *GV = NULL,
-                          const char* name = NULL) const;
-
     /// SectionForGlobal - This hooks returns proper section name for given
     /// global with all necessary flags and marks.
 // FIXME: Eliminate this.
index 96e3e85..6790ec9 100644 (file)
@@ -188,13 +188,12 @@ static bool isConstantString(const Constant *C) {
   return false;
 }
 
-unsigned
-TargetAsmInfo::SectionFlagsForGlobal(const GlobalValue *GV,
-                                     const char *Name) const {
+static unsigned SectionFlagsForGlobal(const GlobalValue *GV,
+                                      SectionKind::Kind Kind,
+                                      const char *Name = 0) {
   unsigned Flags = SectionFlags::None;
 
   // Decode flags from global itself.
-  SectionKind::Kind Kind = SectionKindForGlobal(GV);
   switch (Kind) {
   case SectionKind::Text:
     Flags |= SectionFlags::Code;
@@ -292,7 +291,8 @@ const Section *TargetAsmInfo::SectionForGlobal(const GlobalValue *GV) const {
   // Select section name
   if (GV->hasSection()) {
     // Honour section already set, if any.
-    unsigned Flags = SectionFlagsForGlobal(GV, GV->getSection().c_str());
+    unsigned Flags = SectionFlagsForGlobal(GV, SectionKindForGlobal(GV),
+                                           GV->getSection().c_str());
     return getNamedSection(GV->getSection().c_str(), Flags);
   }
 
@@ -303,7 +303,7 @@ const Section *TargetAsmInfo::SectionForGlobal(const GlobalValue *GV) const {
           getSectionPrefixForUniqueGlobal(SectionKindForGlobal(GV))) {
       // FIXME: Use mangler interface (PR4584).
       std::string Name = Prefix+GV->getNameStr();
-      unsigned Flags = SectionFlagsForGlobal(GV);
+      unsigned Flags = SectionFlagsForGlobal(GV, SectionKindForGlobal(GV));
       return getNamedSection(Name.c_str(), Flags);
     }
   }