summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common.gypi2
-rw-r--r--deps/v8/src/builtins/promise-jobs.tq3
-rw-r--r--deps/v8/src/codegen/code-stub-assembler.cc6
-rw-r--r--deps/v8/src/codegen/code-stub-assembler.h10
4 files changed, 10 insertions, 11 deletions
diff --git a/common.gypi b/common.gypi
index 4c584060e6..b5c0a18c59 100644
--- a/common.gypi
+++ b/common.gypi
@@ -36,7 +36,7 @@
# Reset this number to 0 on major V8 upgrades.
# Increment by one for each non-official patch applied to deps/v8.
- 'v8_embedder_string': '-node.11',
+ 'v8_embedder_string': '-node.12',
##### V8 defaults for Node.js #####
diff --git a/deps/v8/src/builtins/promise-jobs.tq b/deps/v8/src/builtins/promise-jobs.tq
index 6fa81dcd28..77d2e7cf9c 100644
--- a/deps/v8/src/builtins/promise-jobs.tq
+++ b/deps/v8/src/builtins/promise-jobs.tq
@@ -7,6 +7,7 @@
// https://tc39.es/ecma262/#sec-promise-jobs
namespace promise {
extern macro IsJSPromiseMap(Map): bool;
+extern macro NeedsAnyPromiseHooks(): bool;
// https://tc39.es/ecma262/#sec-promiseresolvethenablejob
transitioning builtin
@@ -25,7 +26,7 @@ PromiseResolveThenableJob(implicit context: Context)(
const promiseThen = *NativeContextSlot(ContextSlot::PROMISE_THEN_INDEX);
const thenableMap = thenable.map;
if (TaggedEqual(then, promiseThen) && IsJSPromiseMap(thenableMap) &&
- !IsIsolatePromiseHookEnabledOrDebugIsActiveOrHasAsyncEventDelegate() &&
+ !NeedsAnyPromiseHooks() &&
IsPromiseSpeciesLookupChainIntact(nativeContext, thenableMap)) {
// We know that the {thenable} is a JSPromise, which doesn't require
// any special treatment and that {then} corresponds to the initial
diff --git a/deps/v8/src/codegen/code-stub-assembler.cc b/deps/v8/src/codegen/code-stub-assembler.cc
index 81c503cd90..492e6aaf37 100644
--- a/deps/v8/src/codegen/code-stub-assembler.cc
+++ b/deps/v8/src/codegen/code-stub-assembler.cc
@@ -13843,11 +13843,11 @@ TNode<BoolT> CodeStubAssembler::
return Word32NotEqual(flags, Int32Constant(0));
}
-TNode<BoolT> CodeStubAssembler::
- IsAnyPromiseHookEnabledOrHasAsyncEventDelegate(TNode<Uint32T> flags) {
+TNode<BoolT> CodeStubAssembler::NeedsAnyPromiseHooks(TNode<Uint32T> flags) {
uint32_t mask = Isolate::PromiseHookFields::HasContextPromiseHook::kMask |
Isolate::PromiseHookFields::HasIsolatePromiseHook::kMask |
- Isolate::PromiseHookFields::HasAsyncEventDelegate::kMask;
+ Isolate::PromiseHookFields::HasAsyncEventDelegate::kMask |
+ Isolate::PromiseHookFields::IsDebugActive::kMask;
return IsSetWord32(flags, mask);
}
diff --git a/deps/v8/src/codegen/code-stub-assembler.h b/deps/v8/src/codegen/code-stub-assembler.h
index 5faacd9d1b..24204d82f8 100644
--- a/deps/v8/src/codegen/code-stub-assembler.h
+++ b/deps/v8/src/codegen/code-stub-assembler.h
@@ -3535,12 +3535,10 @@ class V8_EXPORT_PRIVATE CodeStubAssembler
return IsAnyPromiseHookEnabledOrDebugIsActiveOrHasAsyncEventDelegate(
PromiseHookFlags());
}
- TNode<BoolT> IsAnyPromiseHookEnabledOrHasAsyncEventDelegate(
- TNode<Uint32T> flags);
- TNode<BoolT>
- IsAnyPromiseHookEnabledOrHasAsyncEventDelegate() {
- return IsAnyPromiseHookEnabledOrHasAsyncEventDelegate(
- PromiseHookFlags());
+
+ TNode<BoolT> NeedsAnyPromiseHooks(TNode<Uint32T> flags);
+ TNode<BoolT> NeedsAnyPromiseHooks() {
+ return NeedsAnyPromiseHooks(PromiseHookFlags());
}
// for..in helpers