Index: src/arm/macro-assembler-arm.cc |
diff --git a/src/arm/macro-assembler-arm.cc b/src/arm/macro-assembler-arm.cc |
index 6af3d6c20cb74107494a278d6441367c65e3a168..a4e1fa0cf3423d177b157501c02e87bf2c7c52a3 100644 |
--- a/src/arm/macro-assembler-arm.cc |
+++ b/src/arm/macro-assembler-arm.cc |
@@ -3129,6 +3129,17 @@ void MacroAssembler::AssertBoundFunction(Register object) { |
} |
} |
+void MacroAssembler::AssertGeneratorObject(Register object) { |
+ if (emit_debug_code()) { |
+ STATIC_ASSERT(kSmiTag == 0); |
+ tst(object, Operand(kSmiTagMask)); |
+ Check(ne, kOperandIsASmiAndNotAGeneratorObject); |
+ push(object); |
+ CompareObjectType(object, object, object, JS_GENERATOR_OBJECT_TYPE); |
+ pop(object); |
+ Check(eq, kOperandIsNotAGeneratorObject); |
+ } |
+} |
void MacroAssembler::AssertReceiver(Register object) { |
if (emit_debug_code()) { |