mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-15 16:09:02 +00:00
Only use the initialized MCInstrInfo if it's been initialized already
during SetupMachineFunction. This is also the single use of MII and it'll be changing to TargetInstrInfo (which is MachineFunction based) in the next commit here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229931 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
edf1d1e3ea
commit
19f93ebf18
@ -148,8 +148,12 @@ void AsmPrinter::EmitInlineAsm(StringRef Str, const MDNode *LocMDNode,
|
|||||||
// emitInlineAsmEnd().
|
// emitInlineAsmEnd().
|
||||||
MCSubtargetInfo STIOrig = *STI;
|
MCSubtargetInfo STIOrig = *STI;
|
||||||
|
|
||||||
|
// We may create a new MCInstrInfo here since we might be at the module level
|
||||||
|
// and not have a MachineFunction to initialize the TargetInstrInfo from and
|
||||||
|
// we only need MCInstrInfo for asm parsing.
|
||||||
std::unique_ptr<MCTargetAsmParser> TAP(TM.getTarget().createMCAsmParser(
|
std::unique_ptr<MCTargetAsmParser> TAP(TM.getTarget().createMCAsmParser(
|
||||||
*STI, *Parser, *MII, TM.Options.MCOptions));
|
*STI, *Parser, MII ? *MII : *TM.getTarget().createMCInstrInfo(),
|
||||||
|
TM.Options.MCOptions));
|
||||||
if (!TAP)
|
if (!TAP)
|
||||||
report_fatal_error("Inline asm not supported by this streamer because"
|
report_fatal_error("Inline asm not supported by this streamer because"
|
||||||
" we don't have an asm parser for this target\n");
|
" we don't have an asm parser for this target\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user