Index: src/builtins/builtins-promise.cc |
diff --git a/src/builtins/builtins-promise.cc b/src/builtins/builtins-promise.cc |
index 9908c339e05d145e4391354486a763cba29a7576..2e7ed1cb363529a3777b9f4d15aaf377999f8151 100644 |
--- a/src/builtins/builtins-promise.cc |
+++ b/src/builtins/builtins-promise.cc |
@@ -42,7 +42,7 @@ Node* PromiseBuiltinsAssembler::AllocateAndInitJSPromise(Node* context, |
PromiseInit(instance); |
Label out(this); |
- GotoUnless(IsPromiseHookEnabled(), &out); |
+ GotoUnless(Word32Or(IsPromiseHookEnabled(), IsDebugActive()), &out); |
Yang
2017/01/23 14:49:22
If this becomes a performance bottleneck, we could
kozy
2017/01/23 22:29:01
Done.
|
CallRuntime(Runtime::kPromiseHookInit, context, instance, parent); |
Goto(&out); |
@@ -63,7 +63,7 @@ Node* PromiseBuiltinsAssembler::AllocateAndSetJSPromise(Node* context, |
SmiConstant(0)); |
Label out(this); |
- GotoUnless(IsPromiseHookEnabled(), &out); |
+ GotoUnless(Word32Or(IsPromiseHookEnabled(), IsDebugActive()), &out); |
CallRuntime(Runtime::kPromiseHookInit, context, instance, |
UndefinedConstant()); |
Goto(&out); |
@@ -134,7 +134,7 @@ Node* PromiseBuiltinsAssembler::NewPromiseCapability(Node* context, |
StoreObjectField(capability, JSPromiseCapability::kResolveOffset, resolve); |
StoreObjectField(capability, JSPromiseCapability::kRejectOffset, reject); |
- GotoUnless(IsPromiseHookEnabled(), &out); |
+ GotoUnless(Word32Or(IsPromiseHookEnabled(), IsDebugActive()), &out); |
CallRuntime(Runtime::kPromiseHookInit, context, promise, |
UndefinedConstant()); |
Goto(&out); |
@@ -1074,7 +1074,7 @@ TF_BUILTIN(PromiseConstructor, PromiseBuiltinsAssembler) { |
PromiseInit(instance); |
var_result.Bind(instance); |
- GotoUnless(IsPromiseHookEnabled(), &debug_push); |
+ GotoUnless(Word32Or(IsPromiseHookEnabled(), IsDebugActive()), &debug_push); |
CallRuntime(Runtime::kPromiseHookInit, context, instance, |
UndefinedConstant()); |
Goto(&debug_push); |