mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 20:29:48 +00:00
Add comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104276 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4e7f8390c0
commit
76c315a26c
@ -1777,6 +1777,9 @@ LSRInstance::OptimizeLoopTermCond() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// reconcileNewOffset - Determine if the given use can accomodate a fixup
|
||||||
|
/// at the given offset and other details. If so, update the use and
|
||||||
|
/// return true.
|
||||||
bool
|
bool
|
||||||
LSRInstance::reconcileNewOffset(LSRUse &LU, int64_t NewOffset, bool HasBaseReg,
|
LSRInstance::reconcileNewOffset(LSRUse &LU, int64_t NewOffset, bool HasBaseReg,
|
||||||
LSRUse::KindType Kind, const Type *AccessTy) {
|
LSRUse::KindType Kind, const Type *AccessTy) {
|
||||||
@ -2026,6 +2029,9 @@ void LSRInstance::CollectFixupsAndInitialFormulae() {
|
|||||||
DEBUG(print_fixups(dbgs()));
|
DEBUG(print_fixups(dbgs()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// InsertInitialFormula - Insert a formula for the given expression into
|
||||||
|
/// the given use, separating out loop-variant portions from loop-invariant
|
||||||
|
/// and loop-computable portions.
|
||||||
void
|
void
|
||||||
LSRInstance::InsertInitialFormula(const SCEV *S, LSRUse &LU, size_t LUIdx) {
|
LSRInstance::InsertInitialFormula(const SCEV *S, LSRUse &LU, size_t LUIdx) {
|
||||||
Formula F;
|
Formula F;
|
||||||
@ -2034,6 +2040,8 @@ LSRInstance::InsertInitialFormula(const SCEV *S, LSRUse &LU, size_t LUIdx) {
|
|||||||
assert(Inserted && "Initial formula already exists!"); (void)Inserted;
|
assert(Inserted && "Initial formula already exists!"); (void)Inserted;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// InsertSupplementalFormula - Insert a simple single-register formula for
|
||||||
|
/// the given expression into the given use.
|
||||||
void
|
void
|
||||||
LSRInstance::InsertSupplementalFormula(const SCEV *S,
|
LSRInstance::InsertSupplementalFormula(const SCEV *S,
|
||||||
LSRUse &LU, size_t LUIdx) {
|
LSRUse &LU, size_t LUIdx) {
|
||||||
@ -2928,6 +2936,8 @@ void LSRInstance::NarrowSearchSpaceUsingHeuristics() {
|
|||||||
print_uses(dbgs()));
|
print_uses(dbgs()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// With all other options exhausted, loop until the system is simple
|
||||||
|
// enough to handle.
|
||||||
SmallPtrSet<const SCEV *, 4> Taken;
|
SmallPtrSet<const SCEV *, 4> Taken;
|
||||||
while (EstimateSearchSpaceComplexity() >= ComplexityLimit) {
|
while (EstimateSearchSpaceComplexity() >= ComplexityLimit) {
|
||||||
// Ok, we have too many of formulae on our hands to conveniently handle.
|
// Ok, we have too many of formulae on our hands to conveniently handle.
|
||||||
@ -3072,6 +3082,8 @@ retry:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Solve - Choose one formula from each use. Return the results in the given
|
||||||
|
/// Solution vector.
|
||||||
void LSRInstance::Solve(SmallVectorImpl<const Formula *> &Solution) const {
|
void LSRInstance::Solve(SmallVectorImpl<const Formula *> &Solution) const {
|
||||||
SmallVector<const Formula *, 8> Workspace;
|
SmallVector<const Formula *, 8> Workspace;
|
||||||
Cost SolutionCost;
|
Cost SolutionCost;
|
||||||
@ -3206,6 +3218,8 @@ LSRInstance::AdjustInsertPositionForExpand(BasicBlock::iterator IP,
|
|||||||
return IP;
|
return IP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Expand - Emit instructions for the leading candidate expression for this
|
||||||
|
/// LSRUse (this is called "expanding").
|
||||||
Value *LSRInstance::Expand(const LSRFixup &LF,
|
Value *LSRInstance::Expand(const LSRFixup &LF,
|
||||||
const Formula &F,
|
const Formula &F,
|
||||||
BasicBlock::iterator IP,
|
BasicBlock::iterator IP,
|
||||||
@ -3461,6 +3475,8 @@ void LSRInstance::Rewrite(const LSRFixup &LF,
|
|||||||
DeadInsts.push_back(LF.OperandValToReplace);
|
DeadInsts.push_back(LF.OperandValToReplace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// ImplementSolution - Rewrite all the fixup locations with new values,
|
||||||
|
/// following the chosen solution.
|
||||||
void
|
void
|
||||||
LSRInstance::ImplementSolution(const SmallVectorImpl<const Formula *> &Solution,
|
LSRInstance::ImplementSolution(const SmallVectorImpl<const Formula *> &Solution,
|
||||||
Pass *P) {
|
Pass *P) {
|
||||||
|
Loading…
Reference in New Issue
Block a user