anchor.diff:                      read_stale = False;
                   end
                   // combine everything together
  -                return valid && computed && younger && overlap && read_stale;
  +                return valid && younger && overlap && read_stale;
               endfunction
               Vector#(LdQSize, Bool) killLds = map(needKill, idxVec);
               if(findOldestLd(killLds) matches tagged Valid .killTag) begin
  
positive.code:         return pred[tag] ? Valid (tag) : Invalid;
      endfunction
  
      // find youngest SQ entry that satisfy a constraint (i.e. largest tag)
      function Maybe#(StQTag) findYoungestSt(Vector#(StQSize, Bool) pred);
          function StQTag getYounger(StQTag a, StQTag b);
  
negative.code:                     spec_bits: ld_specBits_updAddr[killTag]
                  });
                  // checks
                  doAssert(ld_computed_updAddr[killTag], "must be computed");
                  doAssert(!ld_isMMIO_updAddr[killTag], "cannot kill MMIO");
                  doAssert(ld_memFunc[killTag] == Ld, "can only kill Ld");
                  Maybe#(SpecTag) specTag = ld_specTag_updAddr[killTag];
  