| Index: src/arm/macro-assembler-arm.cc
|
| ===================================================================
|
| --- src/arm/macro-assembler-arm.cc (revision 6773)
|
| +++ src/arm/macro-assembler-arm.cc (working copy)
|
| @@ -1747,6 +1747,18 @@
|
| }
|
|
|
|
|
| +void MacroAssembler::AbortIfNotString(Register object) {
|
| + STATIC_ASSERT(kSmiTag == 0);
|
| + tst(object, Operand(kSmiTagMask));
|
| + Assert(ne, "Operand is not a string");
|
| + push(object);
|
| + ldr(object, FieldMemOperand(object, HeapObject::kMapOffset));
|
| + CompareInstanceType(object, object, FIRST_NONSTRING_TYPE);
|
| + pop(object);
|
| + Assert(lo, "Operand is not a string");
|
| +}
|
| +
|
| +
|
| void MacroAssembler::JumpIfNonSmisNotBothSequentialAsciiStrings(
|
| Register first,
|
| Register second,
|
|
|