forked from OSchip/llvm-project
Add a finishParse() callback to the targer asm parser
This callback is invoked when the parse has finished successfuly. It will be used to write out ARM constant pools to implement the ldr pseudo. llvm-svn: 197706
This commit is contained in:
parent
a570b5adb5
commit
308e7e4367
|
@ -182,6 +182,11 @@ public:
|
|||
return 0;
|
||||
}
|
||||
|
||||
/// Allow a target to perform any actions after the parse completes
|
||||
/// successfully. For example, to write out constant pools for ldr pseudo on
|
||||
/// ARM.
|
||||
virtual void finishParse() {};
|
||||
|
||||
virtual void onLabelParsed(MCSymbol *Symbol) { };
|
||||
};
|
||||
|
||||
|
|
|
@ -677,6 +677,10 @@ bool AsmParser::Run(bool NoInitialTextSection, bool NoFinalize) {
|
|||
}
|
||||
}
|
||||
|
||||
// Callback to the target parser in case it needs to do anything.
|
||||
if (!HadError)
|
||||
getTargetParser().finishParse();
|
||||
|
||||
// Finalize the output stream if there are no errors and if the client wants
|
||||
// us to.
|
||||
if (!HadError && !NoFinalize)
|
||||
|
|
Loading…
Reference in New Issue