LLVM API Documentation
#include "AArch64.h"
#include "AArch64RegisterInfo.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/CodeGen/MachineCombinerPattern.h"
#include "AArch64GenInstrInfo.inc"
Go to the source code of this file.
Classes | |
class | llvm::AArch64InstrInfo |
Namespaces | |
namespace | llvm |
List of target independent CodeGen pass IDs. | |
Defines | |
#define | GET_INSTRINFO_HEADER |
Enumerations | |
enum | llvm::AArch64FrameOffsetStatus { llvm::AArch64FrameOffsetCannotUpdate = 0x0, llvm::AArch64FrameOffsetIsLegal = 0x1, llvm::AArch64FrameOffsetCanUpdate = 0x2 } |
Use to report the frame offset status in isAArch64FrameOffsetLegal. More... | |
Functions | |
void | llvm::emitFrameOffset (MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, DebugLoc DL, unsigned DestReg, unsigned SrcReg, int Offset, const TargetInstrInfo *TII, MachineInstr::MIFlag=MachineInstr::NoFlags, bool SetNZCV=false) |
bool | llvm::rewriteAArch64FrameIndex (MachineInstr &MI, unsigned FrameRegIdx, unsigned FrameReg, int &Offset, const AArch64InstrInfo *TII) |
int | llvm::isAArch64FrameOffsetLegal (const MachineInstr &MI, int &Offset, bool *OutUseUnscaledOp=nullptr, unsigned *OutUnscaledOp=nullptr, int *EmittableOffset=nullptr) |
Check if the Offset is a valid frame offset for MI . The returned value reports the validity of the frame offset for MI . It uses the values defined by AArch64FrameOffsetStatus for that. If result == AArch64FrameOffsetCannotUpdate, MI cannot be updated to use an offset.eq If result & AArch64FrameOffsetIsLegal, Offset can completely be rewriten in MI . If result & AArch64FrameOffsetCanUpdate, Offset contains the amount that is off the limit of the legal offset. If set, OutUseUnscaledOp will contain the whether MI should be turned into an unscaled operator, which opcode is in OutUnscaledOp . If set, EmittableOffset contains the amount that can be set in MI (possibly with OutUnscaledOp if OutUseUnscaledOp is true) and that is a legal offset. | |
static bool | llvm::isUncondBranchOpcode (int Opc) |
static bool | llvm::isCondBranchOpcode (int Opc) |
static bool | llvm::isIndirectBranchOpcode (int Opc) |
#define GET_INSTRINFO_HEADER |
Definition at line 22 of file AArch64InstrInfo.h.