Revision: 7466
Author: [email protected]
Date: Fri Apr 1 01:03:34 2011
Log: Fix minor issues in typed array load/store implementation
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/6675043
http://code.google.com/p/v8/source/detail?r=7466
Modified:
/branches/bleeding_edge/src/ia32/lithium-codegen-ia32.cc
/branches/bleeding_edge/src/ia32/stub-cache-ia32.cc
=======================================
--- /branches/bleeding_edge/src/ia32/lithium-codegen-ia32.cc Thu Mar 31
09:17:37 2011
+++ /branches/bleeding_edge/src/ia32/lithium-codegen-ia32.cc Fri Apr 1
01:03:34 2011
@@ -2304,11 +2304,11 @@
break;
case kExternalUnsignedIntArray:
__ mov(result, Operand(external_pointer, key, times_4, 0));
- __ test(Operand(result), Immediate(0x80000000));
+ __ test(result, Operand(result));
// TODO(danno): we could be more clever here, perhaps having a
special
// version of the stub that detects if the overflow case actually
// happens, and generate code that returns a double rather than
int.
- DeoptimizeIf(not_zero, instr->environment());
+ DeoptimizeIf(negative, instr->environment());
break;
case kExternalFloatArray:
UNREACHABLE();
=======================================
--- /branches/bleeding_edge/src/ia32/stub-cache-ia32.cc Thu Mar 31 09:17:37
2011
+++ /branches/bleeding_edge/src/ia32/stub-cache-ia32.cc Fri Apr 1 01:03:34
2011
@@ -1,4 +1,4 @@
-// Copyright 2006-2009 the V8 project authors. All rights reserved.
+// Copyright 2011 the V8 project authors. All rights reserved.
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
@@ -3629,6 +3629,7 @@
__ bind(&done);
}
__ mov_b(Operand(edi, ebx, times_1, 0), ecx);
+ break;
case kExternalByteArray:
case kExternalUnsignedByteArray:
__ mov_b(Operand(edi, ebx, times_1, 0), ecx);
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev