Index: src/mips/macro-assembler-mips.cc |
diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc |
index 11c641d93afcdcc9b0651bb2d39422f44b6b7659..8293a100282b1519de3b65648796c55268475a2d 100644 |
--- a/src/mips/macro-assembler-mips.cc |
+++ b/src/mips/macro-assembler-mips.cc |
@@ -4896,8 +4896,10 @@ void MacroAssembler::JumpIfBothInstanceTypesAreNotSequentialAscii( |
Register scratch2, |
Label* failure) { |
int kFlatAsciiStringMask = |
- kIsNotStringMask | kStringEncodingMask | kStringRepresentationMask; |
+ kIsNotStringMask | kStringEncodingMask | kAsciiDataHintMask | |
+ kStringRepresentationMask; |
int kFlatAsciiStringTag = ASCII_STRING_TYPE; |
+ ASSERT_EQ(ASCII_STRING_TYPE, ASCII_STRING_TYPE & kFlatAsciiStringMask); |
ASSERT(kFlatAsciiStringTag <= 0xffff); // Ensure this fits 16-bit immed. |
andi(scratch1, first, kFlatAsciiStringMask); |
Branch(failure, ne, scratch1, Operand(kFlatAsciiStringTag)); |
@@ -4910,8 +4912,10 @@ void MacroAssembler::JumpIfInstanceTypeIsNotSequentialAscii(Register type, |
Register scratch, |
Label* failure) { |
int kFlatAsciiStringMask = |
- kIsNotStringMask | kStringEncodingMask | kStringRepresentationMask; |
+ kIsNotStringMask | kStringEncodingMask | kAsciiDataHintMask | |
+ kStringRepresentationMask; |
int kFlatAsciiStringTag = ASCII_STRING_TYPE; |
+ ASSERT_EQ(ASCII_STRING_TYPE, ASCII_STRING_TYPE & kFlatAsciiStringMask); |
And(scratch, type, Operand(kFlatAsciiStringMask)); |
Branch(failure, ne, scratch, Operand(kFlatAsciiStringTag)); |
} |