LLVM 20.0.0git
Macros | Functions | Variables
BPFISelLowering.cpp File Reference
#include "BPFISelLowering.h"
#include "BPF.h"
#include "BPFSubtarget.h"
#include "llvm/CodeGen/CallingConvLower.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/DiagnosticInfo.h"
#include "llvm/IR/DiagnosticPrinter.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "BPFGenCallingConv.inc"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "bpf-lower"
 
#define SET_NEWCC(X, Y)
 

Functions

static void fail (const SDLoc &DL, SelectionDAG &DAG, const Twine &Msg, SDValue Val={})
 
static void resetRegMaskBit (const TargetRegisterInfo *TRI, uint32_t *RegMask, MCRegister Reg)
 
static uint32_tregMaskFromTemplate (const TargetRegisterInfo *TRI, MachineFunction &MF, const uint32_t *BaseRegMask)
 
static void NegateCC (SDValue &LHS, SDValue &RHS, ISD::CondCode &CC)
 
static SDValue getTargetNode (GlobalAddressSDNode *N, const SDLoc &DL, EVT Ty, SelectionDAG &DAG, unsigned Flags)
 
static SDValue getTargetNode (ConstantPoolSDNode *N, const SDLoc &DL, EVT Ty, SelectionDAG &DAG, unsigned Flags)
 

Variables

static cl::opt< boolBPFExpandMemcpyInOrder ("bpf-expand-memcpy-in-order", cl::Hidden, cl::init(false), cl::desc("Expand memcpy into load/store pairs in order"))
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "bpf-lower"

Definition at line 33 of file BPFISelLowering.cpp.

◆ SET_NEWCC

#define SET_NEWCC (   X,
  Y 
)
Value:
case ISD::X: \
if (is32BitCmp && HasJmp32) \
NewCC = isSelectRROp ? BPF::Y##_rr_32 : BPF::Y##_ri_32; \
else \
NewCC = isSelectRROp ? BPF::Y##_rr : BPF::Y##_ri; \
break

Function Documentation

◆ fail()

static void fail ( const SDLoc DL,
SelectionDAG DAG,
const Twine Msg,
SDValue  Val = {} 
)
static

◆ getTargetNode() [1/2]

static SDValue getTargetNode ( ConstantPoolSDNode N,
const SDLoc DL,
EVT  Ty,
SelectionDAG DAG,
unsigned  Flags 
)
static

Definition at line 729 of file BPFISelLowering.cpp.

References llvm::SelectionDAG::getTargetConstantPool(), and N.

◆ getTargetNode() [2/2]

static SDValue getTargetNode ( GlobalAddressSDNode N,
const SDLoc DL,
EVT  Ty,
SelectionDAG DAG,
unsigned  Flags 
)
static

Definition at line 724 of file BPFISelLowering.cpp.

References DL, llvm::SelectionDAG::getTargetGlobalAddress(), and N.

◆ NegateCC()

static void NegateCC ( SDValue LHS,
SDValue RHS,
ISD::CondCode CC 
)
static

◆ regMaskFromTemplate()

static uint32_t * regMaskFromTemplate ( const TargetRegisterInfo TRI,
MachineFunction MF,
const uint32_t BaseRegMask 
)
static

◆ resetRegMaskBit()

static void resetRegMaskBit ( const TargetRegisterInfo TRI,
uint32_t RegMask,
MCRegister  Reg 
)
static

Definition at line 404 of file BPFISelLowering.cpp.

References SubReg, and TRI.

Variable Documentation

◆ BPFExpandMemcpyInOrder

cl::opt< bool > BPFExpandMemcpyInOrder("bpf-expand-memcpy-in-order", cl::Hidden, cl::init(false), cl::desc("Expand memcpy into load/store pairs in order")) ( "bpf-expand-memcpy-in-order"  ,
cl::Hidden  ,
cl::init(false)  ,
cl::desc("Expand memcpy into load/store pairs in order")   
)
static