LLVM 20.0.0git
Macros | Functions
LocalStackSlotAllocation.cpp File Reference
#include "llvm/CodeGen/LocalStackSlotAllocation.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/TargetFrameLowering.h"
#include "llvm/CodeGen/TargetOpcodes.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <tuple>

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "localstackalloc"
 

Functions

 STATISTIC (NumAllocations, "Number of frame indices allocated into local block")
 
 STATISTIC (NumBaseRegisters, "Number of virtual frame base registers allocated")
 
 STATISTIC (NumReplacements, "Number of frame indices references replaced")
 
 INITIALIZE_PASS (LocalStackSlotPass, DEBUG_TYPE, "Local Stack Slot Allocation", false, false) bool LocalStackSlotImpl
 
static bool lookupCandidateBaseReg (unsigned BaseReg, int64_t BaseOffset, int64_t FrameSizeAdjust, int64_t LocalFrameOffset, const MachineInstr &MI, const TargetRegisterInfo *TRI)
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "localstackalloc"

Definition at line 43 of file LocalStackSlotAllocation.cpp.

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( LocalStackSlotPass  ,
DEBUG_TYPE  ,
"Local Stack Slot Allocation"  ,
false  ,
false   
)

◆ lookupCandidateBaseReg()

static bool lookupCandidateBaseReg ( unsigned  BaseReg,
int64_t  BaseOffset,
int64_t  FrameSizeAdjust,
int64_t  LocalFrameOffset,
const MachineInstr MI,
const TargetRegisterInfo TRI 
)
inlinestatic

Definition at line 291 of file LocalStackSlotAllocation.cpp.

References MI, llvm::Offset, and TRI.

◆ STATISTIC() [1/3]

STATISTIC ( NumAllocations  ,
"Number of frame indices allocated into local block"   
)

◆ STATISTIC() [2/3]

STATISTIC ( NumBaseRegisters  ,
"Number of virtual frame base registers allocated"   
)

◆ STATISTIC() [3/3]

STATISTIC ( NumReplacements  ,
"Number of frame indices references replaced"   
)

References MI.