@@ -30,6 +30,11 @@ extern macro PromiseBuiltinsAssembler::IsIsolatePromiseHookEnabled(uint32):
3030
3131extern macro PromiseBuiltinsAssembler::PromiseHookFlags(): uint32;
3232
33+ namespace macros {
34+ extern macro GetContinuationPreservedEmbedderData(): Object;
35+ extern macro SetContinuationPreservedEmbedderData(Object): void;
36+ }
37+
3338namespace promise {
3439extern macro IsFunctionWithPrototypeSlotMap(Map): bool;
3540
@@ -78,7 +83,7 @@ macro NewPromiseFulfillReactionJobTask(
7883 return new PromiseFulfillReactionJobTask{
7984 map: PromiseFulfillReactionJobTaskMapConstant(),
8085 continuation_preserved_embedder_data:
81- GetContinuationPreservedEmbedderData(),
86+ macros:: GetContinuationPreservedEmbedderData(),
8287 argument,
8388 context: handlerContext,
8489 handler,
@@ -106,7 +111,7 @@ macro NewPromiseRejectReactionJobTask(
106111 return new PromiseRejectReactionJobTask{
107112 map: PromiseRejectReactionJobTaskMapConstant(),
108113 continuation_preserved_embedder_data:
109- GetContinuationPreservedEmbedderData(),
114+ macros:: GetContinuationPreservedEmbedderData(),
110115 argument,
111116 context: handlerContext,
112117 handler,
@@ -301,7 +306,7 @@ macro NewPromiseReaction(
301306 return new PromiseReaction{
302307 map: PromiseReactionMapConstant(),
303308 continuation_preserved_embedder_data:
304- GetContinuationPreservedEmbedderData(),
309+ macros:: GetContinuationPreservedEmbedderData(),
305310 next: next,
306311 reject_handler: rejectHandler,
307312 fulfill_handler: fulfillHandler,
@@ -345,7 +350,7 @@ macro NewPromiseResolveThenableJobTask(
345350 return new PromiseResolveThenableJobTask{
346351 map: PromiseResolveThenableJobTaskMapConstant(),
347352 continuation_preserved_embedder_data:
348- GetContinuationPreservedEmbedderData(),
353+ macros:: GetContinuationPreservedEmbedderData(),
349354 context: nativeContext,
350355 promise_to_resolve: promiseToResolve,
351356 thenable,
@@ -450,4 +455,18 @@ transitioning macro BranchIfAccessCheckFailed(
450455 }
451456 } label HasAccess {}
452457}
458+
459+ @if(V8_ENABLE_CONTINUATION_PRESERVED_EMBEDDER_DATA)
460+ transitioning javascript builtin GetContinuationPreservedEmbedderData(
461+ js-implicit context: Context, receiver: JSAny)(): JSAny {
462+ return UnsafeCast<JSAny>(macros::GetContinuationPreservedEmbedderData());
463+ }
464+
465+ @if(V8_ENABLE_CONTINUATION_PRESERVED_EMBEDDER_DATA)
466+ transitioning javascript builtin SetContinuationPreservedEmbedderData(
467+ js-implicit context: Context, receiver: JSAny)(data: Object): Undefined {
468+ macros::SetContinuationPreservedEmbedderData(data);
469+ return Undefined;
470+ }
471+
453472}
0 commit comments