LLVM
17.0.0git
|
#include "XCoreInstrInfo.h"
#include "XCore.h"
#include "XCoreMachineFunctionInfo.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineMemOperand.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Function.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "XCoreGenInstrInfo.inc"
Go to the source code of this file.
Namespaces | |
llvm | |
This is an optimization pass for GlobalISel generic memory operations. | |
llvm::XCore | |
Macros | |
#define | GET_INSTRINFO_CTOR_DTOR |
Enumerations | |
enum | llvm::XCore::CondCode { llvm::XCore::COND_TRUE, llvm::XCore::COND_FALSE, llvm::XCore::COND_INVALID } |
Functions | |
static bool | isZeroImm (const MachineOperand &op) |
static bool | IsBRU (unsigned BrOpc) |
static bool | IsBRT (unsigned BrOpc) |
static bool | IsBRF (unsigned BrOpc) |
static bool | IsCondBranch (unsigned BrOpc) |
static bool | IsBR_JT (unsigned BrOpc) |
static XCore::CondCode | GetCondFromBranchOpc (unsigned BrOpc) |
GetCondFromBranchOpc - Return the XCore CC that matches the correspondent Branch instruction opcode. More... | |
static unsigned | GetCondBranchFromCond (XCore::CondCode CC) |
GetCondBranchFromCond - Return the Branch instruction opcode that matches the cc. More... | |
static XCore::CondCode | GetOppositeBranchCondition (XCore::CondCode CC) |
GetOppositeBranchCondition - Return the inverse of the specified condition, e.g. More... | |
static bool | isImmU6 (unsigned val) |
static bool | isImmU16 (unsigned val) |
static bool | isImmMskBitp (unsigned val) |
#define GET_INSTRINFO_CTOR_DTOR |
Definition at line 30 of file XCoreInstrInfo.cpp.
|
inlinestatic |
GetCondBranchFromCond - Return the Branch instruction opcode that matches the cc.
Definition at line 146 of file XCoreInstrInfo.cpp.
References CC, llvm::XCore::COND_FALSE, llvm::XCore::COND_TRUE, and llvm_unreachable.
Referenced by llvm::M68kInstrInfo::AnalyzeBranchImpl(), llvm::XCoreInstrInfo::insertBranch(), and llvm::M68kInstrInfo::insertBranch().
|
static |
GetCondFromBranchOpc - Return the XCore CC that matches the correspondent Branch instruction opcode.
Definition at line 133 of file XCoreInstrInfo.cpp.
References llvm::XCore::COND_FALSE, llvm::XCore::COND_INVALID, llvm::XCore::COND_TRUE, IsBRF(), and IsBRT().
Referenced by llvm::XCoreInstrInfo::analyzeBranch().
|
inlinestatic |
GetOppositeBranchCondition - Return the inverse of the specified condition, e.g.
turning COND_E to COND_NE.
Definition at line 157 of file XCoreInstrInfo.cpp.
References CC, llvm::XCore::COND_FALSE, llvm::XCore::COND_TRUE, and llvm_unreachable.
Referenced by llvm::XCoreInstrInfo::reverseBranchCondition().
|
inlinestatic |
Definition at line 126 of file XCoreInstrInfo.cpp.
References llvm::ISD::BR_JT, and llvm::XCoreISD::BR_JT32.
Referenced by llvm::XCoreInstrInfo::analyzeBranch().
|
inlinestatic |
Definition at line 115 of file XCoreInstrInfo.cpp.
Referenced by GetCondFromBranchOpc(), and IsCondBranch().
|
inlinestatic |
Definition at line 108 of file XCoreInstrInfo.cpp.
Referenced by GetCondFromBranchOpc(), and IsCondBranch().
|
inlinestatic |
Definition at line 101 of file XCoreInstrInfo.cpp.
Referenced by llvm::XCoreInstrInfo::analyzeBranch(), and llvm::XCoreInstrInfo::removeBranch().
|
inlinestatic |
Definition at line 122 of file XCoreInstrInfo.cpp.
References IsBRF(), and IsBRT().
Referenced by hasConditionalTerminator(), and llvm::XCoreInstrInfo::removeBranch().
|
static |
Definition at line 415 of file XCoreInstrInfo.cpp.
References llvm::bit_width(), llvm::isMask_32(), N, and val.
Referenced by llvm::XCoreInstrInfo::loadImmediate().
|
inlinestatic |
Definition at line 411 of file XCoreInstrInfo.cpp.
References val.
Referenced by llvm::XCoreInstrInfo::loadImmediate().
|
inlinestatic |
Definition at line 407 of file XCoreInstrInfo.cpp.
References val.
Referenced by llvm::XCoreInstrInfo::loadImmediate().
|
static |
Definition at line 53 of file XCoreInstrInfo.cpp.
References op.
Referenced by llvm::XCoreInstrInfo::isLoadFromStackSlot(), and llvm::XCoreInstrInfo::isStoreToStackSlot().