Allow register hints to be attached to intervals with register requirements. no bug, r=dvander
authorAndrew Drake <adrake@adrake.org>
Fri, 19 Aug 2011 14:05:01 -0700
changeset 105152 380c69106e5f333c09a9686052043e251c38129a
parent 105151 420a6166dba11d5fcd10124cad3b0eb359a6d6ba
child 105153 d826b6da07f2aeec901c6fea4f09ba7a106fface
push id23447
push userdanderson@mozilla.com
push dateTue, 11 Sep 2012 17:34:27 +0000
treeherdermozilla-central@fdfaef738a00 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdvander
milestone8.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Allow register hints to be attached to intervals with register requirements. no bug, r=dvander
js/src/ion/LinearScan.cpp
--- a/js/src/ion/LinearScan.cpp
+++ b/js/src/ion/LinearScan.cpp
@@ -1358,18 +1358,16 @@ LinearScanAllocator::setIntervalRequirem
             LUse *use = reg->ins()->getOperand(0)->toUse();
             LBlock *predecessor = reg->block()->mir()->getPredecessor(0)->lir();
             CodePosition predEnd = outputOf(predecessor->lastId());
             interval->setHint(Requirement(use->virtualRegister(), predEnd));
         } else {
             // Non-phis get a REGISTER requirement
             interval->setRequirement(Requirement(Requirement::REGISTER));
         }
-
-        return;
     }
 
     // Search for any uses for requirements or hints
     bool fixedOpIsHint = false;
     LOperand *fixedOp = NULL;
     LOperand *registerOp = NULL;
     for (size_t i = 0; i < interval->reg()->numUses(); i++) {
         LOperand *op = interval->reg()->getUse(i);