Index: src/arm64/macro-assembler-arm64.cc |
diff --git a/src/arm64/macro-assembler-arm64.cc b/src/arm64/macro-assembler-arm64.cc |
index 32c5a8b3ff6dbc23bbbb6bcb4fb6a2f55ade5d3f..819f2973e2309fbeb94c5728b88ca5e9565b927d 100644 |
--- a/src/arm64/macro-assembler-arm64.cc |
+++ b/src/arm64/macro-assembler-arm64.cc |
@@ -1626,6 +1626,19 @@ void MacroAssembler::AssertFunction(Register object) { |
} |
+void MacroAssembler::AssertBoundFunction(Register object) { |
+ if (emit_debug_code()) { |
+ AssertNotSmi(object, kOperandIsASmiAndNotABoundFunction); |
+ |
+ UseScratchRegisterScope temps(this); |
+ Register temp = temps.AcquireX(); |
+ |
+ CompareObjectType(object, temp, temp, JS_BOUND_FUNCTION_TYPE); |
+ Check(eq, kOperandIsNotABoundFunction); |
+ } |
+} |
+ |
+ |
void MacroAssembler::AssertUndefinedOrAllocationSite(Register object, |
Register scratch) { |
if (emit_debug_code()) { |