protected static final class LocalCSE.AvExCache extends Object
| Modifier and Type | Field and Description |
|---|---|
private ArrayList<LocalCSE.AvailableExpression> |
cache
Implementation of the cache
|
private boolean |
doMemory |
private OptOptions |
options |
| Constructor and Description |
|---|
AvExCache(OptOptions opts,
boolean doMem) |
| Modifier and Type | Method and Description |
|---|---|
void |
eliminate(Instruction s)
Eliminate all AE tuples that are killed by a given instruction
|
private void |
eliminate(RegisterOperand op)
Eliminate all AE tuples that contain a given operand
|
LocalCSE.AvailableExpression |
find(Instruction inst)
Find and return a matching available expression.
|
void |
insert(Instruction inst)
Insert a new available expression in the cache
|
void |
invalidateAllLoads()
Eliminate all AE tuples that cache ANY memory location.
|
private final ArrayList<LocalCSE.AvailableExpression> cache
private final OptOptions options
private final boolean doMemory
AvExCache(OptOptions opts, boolean doMem)
public LocalCSE.AvailableExpression find(Instruction inst)
inst - the instruction to matchpublic void insert(Instruction inst)
inst - the instruction that defines the AEprivate void eliminate(RegisterOperand op)
op - the operand in questionpublic void eliminate(Instruction s)
s - the store instructionpublic void invalidateAllLoads()