| Index: src/ia32/full-codegen-ia32.cc
|
| ===================================================================
|
| --- src/ia32/full-codegen-ia32.cc (revision 5085)
|
| +++ src/ia32/full-codegen-ia32.cc (working copy)
|
| @@ -1985,6 +1985,26 @@
|
| }
|
|
|
|
|
| +void FullCodeGenerator::EmitIsSpecObject(ZoneList<Expression*>* args) {
|
| + ASSERT(args->length() == 1);
|
| +
|
| + VisitForValue(args->at(0), kAccumulator);
|
| +
|
| + Label materialize_true, materialize_false;
|
| + Label* if_true = NULL;
|
| + Label* if_false = NULL;
|
| + PrepareTest(&materialize_true, &materialize_false, &if_true, &if_false);
|
| +
|
| + __ test(eax, Immediate(kSmiTagMask));
|
| + __ j(equal, if_false);
|
| + __ CmpObjectType(eax, FIRST_JS_OBJECT_TYPE, ebx);
|
| + __ j(above_equal, if_true);
|
| + __ jmp(if_false);
|
| +
|
| + Apply(context_, if_true, if_false);
|
| +}
|
| +
|
| +
|
| void FullCodeGenerator::EmitIsUndetectableObject(ZoneList<Expression*>* args) {
|
| ASSERT(args->length() == 1);
|
|
|
|
|