LLVM 22.0.0git
|
Flags controlling how much is checked when sinking or hoisting instructions. More...
#include "llvm/Transforms/Utils/LoopUtils.h"
Public Member Functions | |
LLVM_ABI | SinkAndHoistLICMFlags (unsigned LicmMssaOptCap, unsigned LicmMssaNoAccForPromotionCap, bool IsSink, Loop &L, MemorySSA &MSSA) |
LLVM_ABI | SinkAndHoistLICMFlags (bool IsSink, Loop &L, MemorySSA &MSSA) |
void | setIsSink (bool B) |
bool | getIsSink () |
bool | tooManyMemoryAccesses () |
bool | tooManyClobberingCalls () |
void | incrementClobberingCalls () |
Protected Attributes | |
bool | NoOfMemAccTooLarge = false |
unsigned | LicmMssaOptCounter = 0 |
unsigned | LicmMssaOptCap |
unsigned | LicmMssaNoAccForPromotionCap |
bool | IsSink |
Flags controlling how much is checked when sinking or hoisting instructions.
The number of memory access in the loop (and whether there are too many) is determined in the constructors when using MemorySSA.
Definition at line 124 of file LoopUtils.h.
llvm::SinkAndHoistLICMFlags::SinkAndHoistLICMFlags | ( | unsigned | LicmMssaOptCap, |
unsigned | LicmMssaNoAccForPromotionCap, | ||
bool | IsSink, | ||
Loop & | L, | ||
MemorySSA & | MSSA ) |
Definition at line 395 of file LICM.cpp.
References Accesses, for(), llvm::MemorySSA::getBlockAccesses(), if(), IsSink, LicmMssaNoAccForPromotionCap, LicmMssaOptCap, and NoOfMemAccTooLarge.
Referenced by SinkAndHoistLICMFlags().
Definition at line 390 of file LICM.cpp.
References IsSink, llvm::SetLicmMssaNoAccForPromotionCap, llvm::SetLicmMssaOptCap, and SinkAndHoistLICMFlags().
|
inline |
Definition at line 134 of file LoopUtils.h.
References IsSink.
|
inline |
Definition at line 137 of file LoopUtils.h.
References LicmMssaOptCounter.
|
inline |
Definition at line 133 of file LoopUtils.h.
|
inline |
Definition at line 136 of file LoopUtils.h.
References LicmMssaOptCap, and LicmMssaOptCounter.
|
inline |
Definition at line 135 of file LoopUtils.h.
References NoOfMemAccTooLarge.
|
protected |
Definition at line 144 of file LoopUtils.h.
Referenced by getIsSink(), setIsSink(), SinkAndHoistLICMFlags(), and SinkAndHoistLICMFlags().
|
protected |
Definition at line 143 of file LoopUtils.h.
Referenced by SinkAndHoistLICMFlags().
|
protected |
Definition at line 142 of file LoopUtils.h.
Referenced by SinkAndHoistLICMFlags(), and tooManyClobberingCalls().
|
protected |
Definition at line 141 of file LoopUtils.h.
Referenced by incrementClobberingCalls(), and tooManyClobberingCalls().
|
protected |
Definition at line 140 of file LoopUtils.h.
Referenced by SinkAndHoistLICMFlags(), and tooManyMemoryAccesses().