Chromium Code Reviews| Index: src/arm/stub-cache-arm.cc |
| diff --git a/src/arm/stub-cache-arm.cc b/src/arm/stub-cache-arm.cc |
| index 2c60b28a5d0af293d5841c3e1755c56099776d8d..e6022b4c75764c3318988e43e0be008bedf1180c 100644 |
| --- a/src/arm/stub-cache-arm.cc |
| +++ b/src/arm/stub-cache-arm.cc |
| @@ -3489,9 +3489,9 @@ void KeyedLoadStubCompiler::GenerateLoadExternalArray( |
| // Check that the index is in range. |
| __ ldr(ip, FieldMemOperand(r3, ExternalArray::kLengthOffset)); |
| - __ cmp(ip, Operand(key, ASR, kSmiTagSize)); |
| + __ cmp(key, ip); |
| // Unsigned comparison catches both negative and too-large values. |
| - __ b(lo, &miss_force_generic); |
| + __ b(hs, &miss_force_generic); |
| __ ldr(r3, FieldMemOperand(r3, ExternalArray::kExternalPointerOffset)); |
| // r3: base pointer of external storage |
| @@ -3819,7 +3819,7 @@ void KeyedStoreStubCompiler::GenerateStoreExternalArray( |
| // Check that the index is in range |
| __ SmiUntag(r4, key); |
|
Kevin Millikin (Chromium)
2011/08/11 08:13:06
If you push the untagging down to all the current
danno
2011/08/11 13:59:42
Done.
|
| __ ldr(ip, FieldMemOperand(r3, ExternalArray::kLengthOffset)); |
| - __ cmp(r4, ip); |
| + __ cmp(key, ip); |
| // Unsigned comparison catches both negative and too-large values. |
| __ b(hs, &miss_force_generic); |