Index: src/arm/lithium-codegen-arm.cc |
diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc |
index 3da16cdc177169974c816a66aed68a1663e70b87..d5b67a7a1ba65078c8eec836adc8967404dd6f05 100644 |
--- a/src/arm/lithium-codegen-arm.cc |
+++ b/src/arm/lithium-codegen-arm.cc |
@@ -2904,14 +2904,9 @@ void LCodeGen::DoAccessArgumentsAt(LAccessArgumentsAt* instr) { |
Register length = ToRegister(instr->length()); |
Register index = ToRegister(instr->index()); |
Register result = ToRegister(instr->result()); |
- |
- // Bailout index is not a valid argument index. Use unsigned check to get |
- // negative check for free. |
- __ sub(length, length, index, SetCC); |
- DeoptimizeIf(ls, instr->environment()); |
- |
// There are two words between the frame pointer and the last argument. |
// Subtracting from length accounts for one of them add one more. |
+ __ sub(length, length, index); |
__ add(length, length, Operand(1)); |
__ ldr(result, MemOperand(arguments, length, LSL, kPointerSizeLog2)); |
} |