LLVM 20.0.0git
Namespaces | Macros | Functions | Variables
AVRISelLowering.cpp File Reference
#include "AVRISelLowering.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/CodeGen/CallingConvLower.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/ErrorHandling.h"
#include "AVR.h"
#include "AVRMachineFunctionInfo.h"
#include "AVRSubtarget.h"
#include "AVRTargetMachine.h"
#include "MCTargetDesc/AVRMCTargetDesc.h"
#include "AVRGenCallingConv.inc"

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Macros

#define NODE(name)
 

Functions

static AVRCC::CondCodes llvm::intCCToAVRCC (ISD::CondCode CC)
 IntCCToAVRCC - Convert a DAG integer condition code to an AVR CC.
 
template<typename ArgT >
static void llvm::analyzeArguments (TargetLowering::CallLoweringInfo *CLI, const Function *F, const DataLayout *TD, const SmallVectorImpl< ArgT > &Args, SmallVectorImpl< CCValAssign > &ArgLocs, CCState &CCInfo, bool Tiny)
 Analyze incoming and outgoing function arguments.
 
template<typename ArgT >
static unsigned llvm::getTotalArgumentsSizeInBytes (const SmallVectorImpl< ArgT > &Args)
 Count the total number of bytes needed to pass or return these arguments.
 
template<typename ArgT >
static void llvm::analyzeReturnValues (const SmallVectorImpl< ArgT > &Args, CCState &CCInfo, bool Tiny)
 Analyze incoming and outgoing value of returning from a function.
 
static void llvm::insertMultibyteShift (MachineInstr &MI, MachineBasicBlock *BB, MutableArrayRef< std::pair< Register, int > > Regs, ISD::NodeType Opc, int64_t ShiftAmt)
 
static bool llvm::isCopyMulResult (MachineBasicBlock::iterator const &I)
 

Variables

static const MCPhysReg llvm::RegList8AVR []
 Registers for calling conventions, ordered in reverse as required by ABI.
 
static const MCPhysReg llvm::RegList8Tiny []
 
static const MCPhysReg llvm::RegList16AVR []
 
static const MCPhysReg llvm::RegList16Tiny []
 

Macro Definition Documentation

◆ NODE

#define NODE (   name)
Value:
case AVRISD::name: \
return #name
static const char * name
Definition: SMEABIPass.cpp:50