Chromium Code Reviews| 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); |