Revision: 8586
Author: [email protected]
Date: Sun Jul 10 23:46:58 2011
Log: MIPS: port Fix problem with arguments object ICs not checking for
dictionary mode elements.
Ported r8497 (916120a)
Patch by Daniel Kalmar <[email protected]>
BUG=
TEST=
Review URL: http://codereview.chromium.org//7329013
Patch from Paul Lind <[email protected]>.
http://code.google.com/p/v8/source/detail?r=8586
Modified:
/branches/bleeding_edge/src/mips/ic-mips.cc
=======================================
--- /branches/bleeding_edge/src/mips/ic-mips.cc Fri Jul 8 03:46:10 2011
+++ /branches/bleeding_edge/src/mips/ic-mips.cc Sun Jul 10 23:46:58 2011
@@ -854,6 +854,9 @@
const int kBackingStoreOffset = FixedArray::kHeaderSize + kPointerSize;
Register backing_store = parameter_map;
__ lw(backing_store, FieldMemOperand(parameter_map,
kBackingStoreOffset));
+ Handle<Map> fixed_array_map(masm->isolate()->heap()->fixed_array_map());
+ __ CheckMap(backing_store, scratch, fixed_array_map, slow_case,
+ DONT_DO_SMI_CHECK);
__ lw(scratch, FieldMemOperand(backing_store,
FixedArray::kLengthOffset));
__ Branch(slow_case, Ugreater_equal, key, Operand(scratch));
__ li(scratch, Operand(kPointerSize >> 1));
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev