mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-27 07:12:06 +00:00
Removed the SubsectionsViaSymbols MCStreamer API and replaced it with a generic
EmitAssemblerFlag API which takes a value from the added AssemblerFlag enumerated constants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76087 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
214d319403
commit
f96db468fc
@ -53,6 +53,10 @@ namespace llvm {
|
||||
SymbolAttrLast = WeakReference
|
||||
};
|
||||
|
||||
enum AssemblerFlag {
|
||||
SubsectionsViaSymbols /// .subsections_via_symbols (Apple)
|
||||
};
|
||||
|
||||
private:
|
||||
MCContext &Context;
|
||||
|
||||
@ -89,10 +93,8 @@ namespace llvm {
|
||||
// symbol section in the constructor and initialize it here?
|
||||
virtual void EmitLabel(MCSymbol *Symbol) = 0;
|
||||
|
||||
/// SubsectionsViaSymbols - Note in the output that the conventions used in
|
||||
/// in the assembly file allows the bytes of a section to be divided up at
|
||||
/// the boundaries of the symbols by a link editor for processing as atoms.
|
||||
virtual void SubsectionsViaSymbols(void) = 0;
|
||||
/// EmitAssemblerFlag - Note in the output the specified @param Flag
|
||||
virtual void EmitAssemblerFlag(AssemblerFlag Flag) = 0;
|
||||
|
||||
/// EmitAssignment - Emit an assignment of @param Value to @param Symbol.
|
||||
///
|
||||
|
@ -38,7 +38,7 @@ namespace {
|
||||
|
||||
virtual void EmitLabel(MCSymbol *Symbol);
|
||||
|
||||
virtual void SubsectionsViaSymbols(void);
|
||||
virtual void EmitAssemblerFlag(AssemblerFlag Flag);
|
||||
|
||||
virtual void EmitAssignment(MCSymbol *Symbol, const MCValue &Value,
|
||||
bool MakeAbsolute = false);
|
||||
@ -129,8 +129,11 @@ void MCAsmStreamer::EmitLabel(MCSymbol *Symbol) {
|
||||
Symbol->setExternal(false);
|
||||
}
|
||||
|
||||
void MCAsmStreamer::SubsectionsViaSymbols(void) {
|
||||
OS << ".subsections_via_symbols\n";
|
||||
void MCAsmStreamer::EmitAssemblerFlag(AssemblerFlag Flag) {
|
||||
switch (Flag) {
|
||||
case SubsectionsViaSymbols: OS << ".subsections_via_symbols"; break;
|
||||
}
|
||||
OS << '\n';
|
||||
}
|
||||
|
||||
void MCAsmStreamer::AbortAssembly(const char *AbortReason) {
|
||||
|
@ -1107,7 +1107,7 @@ bool AsmParser::ParseDirectiveDarwinSubsectionsViaSymbols() {
|
||||
|
||||
Lexer.Lex();
|
||||
|
||||
Out.SubsectionsViaSymbols();
|
||||
Out.EmitAssemblerFlag(MCStreamer::SubsectionsViaSymbols);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user