diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/lib/Target/X86/X86RegisterInfo.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86RegisterInfo.cpp b/llvm/lib/Target/X86/X86RegisterInfo.cpp index b3d9bb2ab83..dae171f8af8 100644 --- a/llvm/lib/Target/X86/X86RegisterInfo.cpp +++ b/llvm/lib/Target/X86/X86RegisterInfo.cpp @@ -31,6 +31,9 @@ namespace { cl::opt<bool> NoFPElim("disable-fp-elim", cl::desc("Disable frame pointer elimination optimization")); + cl::opt<bool> + NoFusing("disable-spill-fusing", + cl::desc("Disable fusing of spill code into instructions")); } X86RegisterInfo::X86RegisterInfo() @@ -106,6 +109,8 @@ static MachineInstr *MakeRMIInst(unsigned Opcode, unsigned FrameIndex, bool X86RegisterInfo::foldMemoryOperand(MachineBasicBlock::iterator &MI, unsigned i, int FrameIndex) const { + if (NoFusing) return false; + /// FIXME: This should obviously be autogenerated by tablegen when patterns /// are available! MachineBasicBlock& MBB = *MI->getParent(); |

