LLVM 20.0.0git
|
#include "ARM.h"
#include "ARMBaseInstrInfo.h"
#include "ARMBasicBlockInfo.h"
#include "ARMSubtarget.h"
#include "MVETailPredUtils.h"
#include "llvm/CodeGen/LivePhysRegs.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
Go to the source code of this file.
Classes | |
class | llvm::ARMBlockPlacement |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
#define | DEBUG_TYPE "arm-block-placement" |
#define | DEBUG_PREFIX "ARM Block Placement: " |
Functions | |
INITIALIZE_PASS (ARMBlockPlacement, DEBUG_TYPE, "ARM block placement", false, false) static MachineInstr *findWLSInBlock(MachineBasicBlock *MBB) | |
static MachineInstr * | findWLS (MachineLoop *ML) |
Find WhileLoopStart in the loop predecessor BB or otherwise in its only predecessor. | |
#define DEBUG_PREFIX "ARM Block Placement: " |
Definition at line 27 of file ARMBlockPlacement.cpp.
#define DEBUG_TYPE "arm-block-placement" |
Definition at line 26 of file ARMBlockPlacement.cpp.
|
static |
Find WhileLoopStart in the loop predecessor BB or otherwise in its only predecessor.
If found, returns (BB, WLS Instr) pair, otherwise a null pair.
Definition at line 76 of file ARMBlockPlacement.cpp.
References ML, llvm::MachineBasicBlock::pred_begin(), and llvm::MachineBasicBlock::pred_size().
Referenced by llvm::ARMBlockPlacement::fixBackwardsWLS().
INITIALIZE_PASS | ( | ARMBlockPlacement | , |
DEBUG_TYPE | , | ||
"ARM block placement" | , | ||
false | , | ||
false | |||
) |
Definition at line 63 of file ARMBlockPlacement.cpp.
References llvm::isWhileLoopStart(), MBB, and llvm::MachineBasicBlock::terminators().