Split SwitchSection into the SwitchTo{Text|Data}Section functions, to better

support assemblers that distinguish the two.

llvm-svn: 28183
This commit is contained in:
Chris Lattner 2006-05-09 04:59:30 +00:00
parent 8587f8885d
commit a6212b0fe6
1 changed files with 19 additions and 3 deletions

View File

@ -179,16 +179,32 @@ namespace llvm {
AsmPrinter(std::ostream &o, TargetMachine &TM);
public:
/// SwitchSection - Switch to the specified section of the executable if we
/// are not already in it! If GV is non-null and if the global has an
/// SwitchToTextSection - Switch to the specified section of the executable
/// if we are not already in it! If GV is non-null and if the global has an
/// explicitly requested section, we switch to the section indicated for the
/// global instead of NewSection.
///
/// If the new section is an empty string, this method forgets what the
/// current section is, but does not emit a .section directive.
///
void SwitchSection(const char *NewSection, const GlobalValue *GV);
/// This method is used when about to emit executable code.
///
void SwitchToTextSection(const char *NewSection, const GlobalValue *GV);
/// SwitchToDataSection - Switch to the specified section of the executable
/// if we are not already in it! If GV is non-null and if the global has an
/// explicitly requested section, we switch to the section indicated for the
/// global instead of NewSection.
///
/// If the new section is an empty string, this method forgets what the
/// current section is, but does not emit a .section directive.
///
/// This method is used when about to emit data. For most assemblers, this
/// is the same as the SwitchToTextSection method, but not all assemblers
/// are the same.
///
void SwitchToDataSection(const char *NewSection, const GlobalValue *GV);
/// getPreferredAlignmentLog - Return the preferred alignment of the
/// specified global, returned in log form. This includes an explicitly
/// requested alignment (if the global has one).