From 9f8fea3531f8f8d04d1e183ff570be37d41d13f5 Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Mon, 12 May 2008 20:54:26 +0000 Subject: [PATCH] Constify the machine instruction passed into the "is{Trivially,Really}ReMaterializable" methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51001 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Target/TargetInstrInfo.h | 4 ++-- lib/Target/X86/X86InstrInfo.cpp | 3 ++- lib/Target/X86/X86InstrInfo.h | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/include/llvm/Target/TargetInstrInfo.h b/include/llvm/Target/TargetInstrInfo.h index ca35fa7850c..f9fd6ab30d8 100644 --- a/include/llvm/Target/TargetInstrInfo.h +++ b/include/llvm/Target/TargetInstrInfo.h @@ -67,7 +67,7 @@ public: /// isTriviallyReMaterializable - Return true if the instruction is trivially /// rematerializable, meaning it has no side effects and requires no operands /// that aren't always available. - bool isTriviallyReMaterializable(MachineInstr *MI) const { + bool isTriviallyReMaterializable(const MachineInstr *MI) const { return MI->getDesc().isRematerializable() && isReallyTriviallyReMaterializable(MI); } @@ -81,7 +81,7 @@ protected: /// return false if the instruction has any side effects other than /// producing a value, or if it requres any address registers that are not /// always available. - virtual bool isReallyTriviallyReMaterializable(MachineInstr *MI) const { + virtual bool isReallyTriviallyReMaterializable(const MachineInstr *MI) const { return true; } diff --git a/lib/Target/X86/X86InstrInfo.cpp b/lib/Target/X86/X86InstrInfo.cpp index 8b31f5d5f09..d2c5abe6d63 100644 --- a/lib/Target/X86/X86InstrInfo.cpp +++ b/lib/Target/X86/X86InstrInfo.cpp @@ -760,7 +760,8 @@ static inline bool isGVStub(GlobalValue *GV, X86TargetMachine &TM) { return TM.getSubtarget().GVRequiresExtraLoad(GV, TM, false); } -bool X86InstrInfo::isReallyTriviallyReMaterializable(MachineInstr *MI) const { +bool +X86InstrInfo::isReallyTriviallyReMaterializable(const MachineInstr *MI) const { switch (MI->getOpcode()) { default: break; case X86::MOV8rm: diff --git a/lib/Target/X86/X86InstrInfo.h b/lib/Target/X86/X86InstrInfo.h index 5f09241f165..06080b74af4 100644 --- a/lib/Target/X86/X86InstrInfo.h +++ b/lib/Target/X86/X86InstrInfo.h @@ -260,7 +260,7 @@ public: unsigned isLoadFromStackSlot(MachineInstr *MI, int &FrameIndex) const; unsigned isStoreToStackSlot(MachineInstr *MI, int &FrameIndex) const; - bool isReallyTriviallyReMaterializable(MachineInstr *MI) const; + bool isReallyTriviallyReMaterializable(const MachineInstr *MI) const; void reMaterialize(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, unsigned DestReg, const MachineInstr *Orig) const; -- 2.34.1