LLVM 20.0.0git
|
#include "RISCVCallingConv.h"
#include "RISCVSubtarget.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/MC/MCRegister.h"
Go to the source code of this file.
Functions | |
static ArrayRef< MCPhysReg > | getArgGPR16s (const RISCVABI::ABI ABI) |
static ArrayRef< MCPhysReg > | getArgGPR32s (const RISCVABI::ABI ABI) |
static ArrayRef< MCPhysReg > | getFastCCArgGPRs (const RISCVABI::ABI ABI) |
static ArrayRef< MCPhysReg > | getFastCCArgGPRF16s (const RISCVABI::ABI ABI) |
static ArrayRef< MCPhysReg > | getFastCCArgGPRF32s (const RISCVABI::ABI ABI) |
static bool | CC_RISCVAssign2XLen (unsigned XLen, CCState &State, CCValAssign VA1, ISD::ArgFlagsTy ArgFlags1, unsigned ValNo2, MVT ValVT2, MVT LocVT2, ISD::ArgFlagsTy ArgFlags2, bool EABI) |
static MCRegister | allocateRVVReg (MVT ValVT, unsigned ValNo, CCState &State, const RISCVTargetLowering &TLI) |
Variables | |
static const MCPhysReg | ArgFPR16s [] |
static const MCPhysReg | ArgFPR32s [] |
static const MCPhysReg | ArgFPR64s [] |
static const MCPhysReg | ArgVRs [] |
static const MCPhysReg | ArgVRM2s [] |
static const MCPhysReg | ArgVRM4s [] |
static const MCPhysReg | ArgVRM8s [] = {RISCV::V8M8, RISCV::V16M8} |
static const MCPhysReg | ArgVRN2M1s [] |
static const MCPhysReg | ArgVRN3M1s [] |
static const MCPhysReg | ArgVRN4M1s [] |
static const MCPhysReg | ArgVRN5M1s [] |
static const MCPhysReg | ArgVRN6M1s [] |
static const MCPhysReg | ArgVRN7M1s [] |
static const MCPhysReg | ArgVRN8M1s [] |
static const MCPhysReg | ArgVRN2M2s [] |
static const MCPhysReg | ArgVRN3M2s [] |
static const MCPhysReg | ArgVRN4M2s [] |
static const MCPhysReg | ArgVRN2M4s [] |
|
static |
Definition at line 280 of file RISCVCallingConv.cpp.
References llvm::CCState::AllocateReg(), ArgVRM2s, ArgVRM4s, ArgVRM8s, ArgVRN2M1s, ArgVRN2M2s, ArgVRN2M4s, ArgVRN3M1s, ArgVRN3M2s, ArgVRN4M1s, ArgVRN4M2s, ArgVRN5M1s, ArgVRN6M1s, ArgVRN7M1s, ArgVRN8M1s, ArgVRs, llvm::TargetLoweringBase::getRegClassFor(), llvm::MVT::getVectorElementType(), and llvm_unreachable.
Referenced by llvm::CC_RISCV(), and llvm::CC_RISCV_FastCC().
|
static |
Definition at line 236 of file RISCVCallingConv.cpp.
References llvm::CCState::addLoc(), llvm::CCState::AllocateReg(), llvm::CCState::AllocateStack(), ArgGPRs, llvm::CCValAssign::Full, llvm::RISCV::getArgGPRs(), llvm::CCValAssign::getLocVT(), llvm::CCState::getMachineFunction(), llvm::CCValAssign::getMem(), llvm::ISD::ArgFlagsTy::getNonZeroOrigAlign(), llvm::CCValAssign::getReg(), llvm::MachineFunction::getSubtarget(), llvm::RISCVSubtarget::getTargetABI(), llvm::CCValAssign::getValNo(), and llvm::CCValAssign::getValVT().
Referenced by llvm::CC_RISCV().
|
static |
Definition at line 142 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, and llvm::RISCVABI::ABI_LP64E.
Referenced by llvm::CC_RISCV().
|
static |
Definition at line 159 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, and llvm::RISCVABI::ABI_LP64E.
Referenced by llvm::CC_RISCV().
|
static |
Definition at line 194 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, and llvm::RISCVABI::ABI_LP64E.
Referenced by llvm::CC_RISCV_FastCC().
|
static |
Definition at line 214 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, and llvm::RISCVABI::ABI_LP64E.
Referenced by llvm::CC_RISCV_FastCC().
|
static |
Definition at line 176 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, and llvm::RISCVABI::ABI_LP64E.
Referenced by llvm::CC_RISCV_FastCC().
Definition at line 45 of file RISCVCallingConv.cpp.
Referenced by llvm::CC_RISCV().
Definition at line 48 of file RISCVCallingConv.cpp.
Referenced by llvm::CC_RISCV().
Definition at line 51 of file RISCVCallingConv.cpp.
Referenced by llvm::CC_RISCV().
Definition at line 59 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 62 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 64 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 65 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 111 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 123 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 70 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 115 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 76 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 119 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 82 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 89 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 96 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 102 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().
Definition at line 55 of file RISCVCallingConv.cpp.
Referenced by allocateRVVReg().