Reviewers: Søren Gjesse,

Description:
MIPS: Fix a bug in MacroAssembler::CheckFastElements.

This fixes 3 mjsunit tests when running with --stress-opt: object-freeze,
object-prevent-extensions, object-seal.

Original commit was 54ce3d60 (r8176).

BUG=
TEST=


Please review this at http://codereview.chromium.org/7236024/

Affected files:
  M src/mips/macro-assembler-mips.cc


Index: src/mips/macro-assembler-mips.cc
diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc index 913bfa5e683e5d4aeecfb2bb623c3b7d94e40002..5cbbd18512c23a53de8a592e3bad0d037893c7b2 100644
--- a/src/mips/macro-assembler-mips.cc
+++ b/src/mips/macro-assembler-mips.cc
@@ -2657,9 +2657,8 @@ void MacroAssembler::CheckFastElements(Register map,
                                        Register scratch,
                                        Label* fail) {
   STATIC_ASSERT(JSObject::FAST_ELEMENTS == 0);
-  lbu(scratch, FieldMemOperand(map, Map::kBitField2Offset));
-  And(scratch, scratch, Operand(Map::kMaximumBitField2FastElementValue));
-  Branch(fail, hi, scratch, Operand(zero_reg));
+  lbu(scratch, FieldMemOperand(map, Map::kInstanceTypeOffset));
+ Branch(fail, hi, scratch, Operand(Map::kMaximumBitField2FastElementValue));
 }




--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to