mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-19 23:29:20 +00:00
Add an option to control this heuristic tweak so I can test it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44671 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1076210ee3
commit
dfb1561434
@ -52,6 +52,11 @@ namespace {
|
||||
cl::desc("Use new coalescer heuristic"),
|
||||
cl::init(false));
|
||||
|
||||
static cl::opt<bool>
|
||||
ReMatSpillWeight("tweak-remat-spill-weight",
|
||||
cl::desc("Tweak spill weight of re-materializable intervals"),
|
||||
cl::init(true));
|
||||
|
||||
RegisterPass<SimpleRegisterCoalescing>
|
||||
X("simple-register-coalescing", "Simple Register Coalescing");
|
||||
|
||||
@ -1487,7 +1492,7 @@ bool SimpleRegisterCoalescing::runOnMachineFunction(MachineFunction &fn) {
|
||||
LI.weight = HUGE_VALF;
|
||||
else {
|
||||
bool isLoad = false;
|
||||
if (li_->isReMaterializable(LI, isLoad)) {
|
||||
if (ReMatSpillWeight && li_->isReMaterializable(LI, isLoad)) {
|
||||
// If all of the definitions of the interval are re-materializable,
|
||||
// it is a preferred candidate for spilling. If non of the defs are
|
||||
// loads, then it's potentially very cheap to re-materialize.
|
||||
|
Loading…
x
Reference in New Issue
Block a user