LLVM
8.0.1
|
#include "MipsSERegisterInfo.h"
#include "Mips.h"
#include "MipsMachineFunction.h"
#include "MipsSEInstrInfo.h"
#include "MipsSubtarget.h"
#include "MipsTargetMachine.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetFrameLowering.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "mips-reg-info" |
Functions | |
static unsigned | getLoadStoreOffsetSizeInBits (const unsigned Opcode, MachineOperand MO) |
Get the size of the offset supported by the given load/store/inline asm. More... | |
static unsigned | getLoadStoreOffsetAlign (const unsigned Opcode) |
Get the scale factor applied to the immediate in the given load/store. More... | |
#define DEBUG_TYPE "mips-reg-info" |
Definition at line 40 of file MipsSERegisterInfo.cpp.
Get the scale factor applied to the immediate in the given load/store.
Definition at line 130 of file MipsSERegisterInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), llvm::MachineOperand::ChangeToImmediate(), llvm::MachineOperand::ChangeToRegister(), llvm::MachineRegisterInfo::createVirtualRegister(), llvm::errs(), llvm::ISD::FrameIndex, llvm::MachineFrameInfo::getCalleeSavedInfo(), llvm::MachineFunction::getFrameInfo(), llvm::MipsRegisterInfo::getFrameRegister(), llvm::MachineOperand::getImm(), llvm::MachineFunction::getInfo(), llvm::TargetSubtargetInfo::getInstrInfo(), getLoadStoreOffsetSizeInBits(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineFunction::getRegInfo(), llvm::TargetSubtargetInfo::getRegisterInfo(), llvm::MachineFunction::getSubtarget(), llvm::MachineFunction::getTarget(), llvm::MachineFrameInfo::hasVarSizedObjects(), llvm::MachineInstr::isDebugValue(), llvm::MipsFunctionInfo::isEhDataRegFI(), llvm::MachineFrameInfo::isFixedObjectIndex(), llvm::isInt< 16 >(), llvm::isIntN(), llvm::MipsFunctionInfo::isISRRegFI(), llvm::RegState::Kill, LLVM_DEBUG, llvm::MipsSEInstrInfo::loadImmediate(), MI, llvm::OffsetToAlignment(), Reg, and TII.
|
inlinestatic |
Get the size of the offset supported by the given load/store/inline asm.
The result includes the effects of any scale factors applied to the instruction immediate.
Definition at line 66 of file MipsSERegisterInfo.cpp.
References llvm::InlineAsm::Constraint_ZC, llvm::MachineOperand::getImm(), llvm::InlineAsm::getMemoryConstraintID(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getParent(), llvm::MachineInstr::getParent(), llvm::MachineFunction::getSubtarget(), llvm::MipsSubtarget::hasMips32r6(), llvm::ISD::INLINEASM, llvm::MipsSubtarget::inMicroMipsMode(), and llvm::PPCISD::SC.
Referenced by getLoadStoreOffsetAlign().