@@ -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
@@ -80,7 +85,7 @@ macro NewPromiseFulfillReactionJobTask(
8085 return new PromiseFulfillReactionJobTask{
8186 map: PromiseFulfillReactionJobTaskMapConstant(),
8287 continuation_preserved_embedder_data:
83- GetContinuationPreservedEmbedderData(),
88+ macros:: GetContinuationPreservedEmbedderData(),
8489 argument,
8590 context: handlerContext,
8691 handler,
@@ -108,7 +113,7 @@ macro NewPromiseRejectReactionJobTask(
108113 return new PromiseRejectReactionJobTask{
109114 map: PromiseRejectReactionJobTaskMapConstant(),
110115 continuation_preserved_embedder_data:
111- GetContinuationPreservedEmbedderData(),
116+ macros:: GetContinuationPreservedEmbedderData(),
112117 argument,
113118 context: handlerContext,
114119 handler,
@@ -303,7 +308,7 @@ macro NewPromiseReaction(
303308 return new PromiseReaction{
304309 map: PromiseReactionMapConstant(),
305310 continuation_preserved_embedder_data:
306- GetContinuationPreservedEmbedderData(),
311+ macros:: GetContinuationPreservedEmbedderData(),
307312 next: next,
308313 reject_handler: rejectHandler,
309314 fulfill_handler: fulfillHandler,
@@ -347,7 +352,7 @@ macro NewPromiseResolveThenableJobTask(
347352 return new PromiseResolveThenableJobTask{
348353 map: PromiseResolveThenableJobTaskMapConstant(),
349354 continuation_preserved_embedder_data:
350- GetContinuationPreservedEmbedderData(),
355+ macros:: GetContinuationPreservedEmbedderData(),
351356 context: nativeContext,
352357 promise_to_resolve: promiseToResolve,
353358 thenable,
@@ -452,4 +457,18 @@ transitioning macro BranchIfAccessCheckFailed(
452457 }
453458 } label HasAccess {}
454459}
460+
461+ @if(V8_ENABLE_CONTINUATION_PRESERVED_EMBEDDER_DATA)
462+ transitioning javascript builtin GetContinuationPreservedEmbedderData(
463+ js-implicit context: Context, receiver: JSAny)(): JSAny {
464+ return UnsafeCast<JSAny>(macros::GetContinuationPreservedEmbedderData());
465+ }
466+
467+ @if(V8_ENABLE_CONTINUATION_PRESERVED_EMBEDDER_DATA)
468+ transitioning javascript builtin SetContinuationPreservedEmbedderData(
469+ js-implicit context: Context, receiver: JSAny)(data: Object): Undefined {
470+ macros::SetContinuationPreservedEmbedderData(data);
471+ return Undefined;
472+ }
473+
455474}
0 commit comments