/// @{
virtual void InitSections();
- virtual void InitToTextSection();
virtual void ChangeSection(const MCSection *Section,
const MCExpr *Subsection);
virtual void EmitLabel(MCSymbol *Symbol);
/// InitSections - Create the default sections and set the initial one.
virtual void InitSections() = 0;
- /// InitToTextSection - Create a text section and switch the streamer to it.
- virtual void InitToTextSection() = 0;
-
/// AssignSection - Sets the symbol's section.
///
/// Each emitted symbol will be tracked in the ordering table,
// Noop calls.
virtual void ChangeSection(const MCSection *Section,
const MCExpr *Subsection) {}
- virtual void InitToTextSection() {}
virtual void InitSections() {}
virtual void EmitAssemblerFlag(MCAssemblerFlag Flag) {}
virtual void EmitThumbFunc(MCSymbol *Func) {}
const MCExpr *Subsection);
virtual void InitSections() {
- InitToTextSection();
- }
-
- virtual void InitToTextSection() {
SwitchSection(getContext().getObjectFileInfo()->getTextSection());
}
MCELFStreamer::~MCELFStreamer() {
}
-void MCELFStreamer::InitToTextSection() {
- SetSectionText();
-}
-
void MCELFStreamer::InitSections() {
// This emulates the same behavior of GNU as. This makes it easier
// to compare the output as the major sections are in the same order.
/// @{
virtual void InitSections();
- virtual void InitToTextSection();
virtual void EmitLabel(MCSymbol *Symbol);
virtual void EmitDebugLabel(MCSymbol *Symbol);
virtual void EmitEHSymAttributes(const MCSymbol *Symbol,
} // end anonymous namespace.
void MCMachOStreamer::InitSections() {
- InitToTextSection();
-}
-
-void MCMachOStreamer::InitToTextSection() {
SwitchSection(getContext().getObjectFileInfo()->getTextSection());
}
/// @name MCStreamer Interface
/// @{
- virtual void InitToTextSection() {
- }
-
virtual void InitSections() {
}
void AsmParser::checkForValidSection() {
if (!ParsingInlineAsm && !getStreamer().getCurrentSection().first) {
TokError("expected section directive before assembly directive");
- Out.InitToTextSection();
+ Out.InitSections();
}
}
/// @{
virtual void InitSections();
- virtual void InitToTextSection();
virtual void EmitLabel(MCSymbol *Symbol);
virtual void EmitDebugLabel(MCSymbol *Symbol);
virtual void EmitZerofill(const MCSection *Section, MCSymbol *Symbol = 0,
} // end anonymous namespace.
void MCPureStreamer::InitSections() {
- InitToTextSection();
-}
-
-void MCPureStreamer::InitToTextSection() {
SwitchSection(getContext().getObjectFileInfo()->getTextSection());
}
// MCStreamer interface
virtual void InitSections();
- virtual void InitToTextSection();
virtual void EmitLabel(MCSymbol *Symbol);
virtual void EmitDebugLabel(MCSymbol *Symbol);
virtual void EmitAssemblerFlag(MCAssemblerFlag Flag);
// MCStreamer interface
-void WinCOFFStreamer::InitToTextSection() {
- SetSectionText();
-}
-
void WinCOFFStreamer::InitSections() {
SetSectionText();
SetSectionData();
}
if (!Section) {
- getStreamer().InitToTextSection();
+ getStreamer().InitSections();
Section = getStreamer().getCurrentSection().first;
}