private boolean tryMapRegs(ArrayList<RegisterSpec> specs,int ropReg,int maxAllowedCategory,boolean markReserved){
  boolean remaining=false;
  for (  RegisterSpec spec : specs) {
    if (ssaRegsMapped.get(spec.getReg())) {
      continue;
    }
    boolean succeeded;
    succeeded=tryMapReg(spec,ropReg,maxAllowedCategory);
    remaining=!succeeded || remaining;
    if (succeeded && markReserved) {
      markReserved(ropReg,spec.getCategory());
    }
  }
  return !remaining;
}

private boolean tryMapRegs ( ArrayList < RegisterSpec > specs , int ropReg , int maxAllowedCategory , boolean markReserved ) { boolean remaining = false ; for ( RegisterSpec spec : specs ) { if ( ssaRegsMapped . get ( spec . getReg ( ) ) ) { continue ; } boolean succeeded ; succeeded = tryMapReg ( spec , ropReg , maxAllowedCategory ) ; remaining = ! succeeded || remaining ; if ( succeeded && markReserved ) { markReserved ( ropReg , spec . getCategory ( ) ) ; } } return ! remaining ; }
tries to map a list of ssa registers into the a rop reg , marking used rop space as reserved . ssa registers that don ' t fit are left unmapped .
