Bug 937697 - Simplify some BoundsCheckRange code. r=bhackett

--HG--
extra : rebase_source : 719258647e87d0bf52636e5d23085e2f1f7e2ec5
This commit is contained in:
Jan de Mooij 2013-12-24 13:51:26 +01:00
Родитель 37ef87be41
Коммит 579911751f
1 изменённых файлов: 7 добавлений и 4 удалений

Просмотреть файл

@ -5013,16 +5013,19 @@ CodeGenerator::visitBoundsCheckRange(LBoundsCheckRange *lir)
masm.add32(Imm32(min), temp);
if (!bailoutIf(Assembler::Overflow, lir->snapshot()))
return false;
}
masm.cmp32(temp, Imm32(0));
if (!bailoutIf(Assembler::LessThan, lir->snapshot()))
return false;
if (min != 0) {
int32_t diff;
if (SafeSub(max, min, &diff))
max = diff;
else
masm.sub32(Imm32(min), temp);
}
masm.cmp32(temp, Imm32(0));
if (!bailoutIf(Assembler::LessThan, lir->snapshot()))
return false;
}
// Compute the maximum possible index. No overflow check is needed when