diff options
| author | Divy Srivastava <dj.srivastava23@gmail.com> | 2022-11-10 03:53:31 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-10 17:23:31 +0530 |
| commit | bc33a4b2e06dd5518e0d1bbf7b538d0b00df214d (patch) | |
| tree | e139e95178892521ecb5807959e324422ed29045 /ops/optimizer_tests/op_state_basic1.out | |
| parent | 92764c0decb370b0f8a78770314ceda7228d315f (diff) | |
refactor(ops): Rewrite fast call optimizer and codegen (#16514)
Diffstat (limited to 'ops/optimizer_tests/op_state_basic1.out')
| -rw-r--r-- | ops/optimizer_tests/op_state_basic1.out | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/ops/optimizer_tests/op_state_basic1.out b/ops/optimizer_tests/op_state_basic1.out new file mode 100644 index 000000000..0f03f2c58 --- /dev/null +++ b/ops/optimizer_tests/op_state_basic1.out @@ -0,0 +1,35 @@ +struct foo_fast { + _phantom: ::std::marker::PhantomData<()>, +} +impl<'scope> deno_core::v8::fast_api::FastFunction for foo_fast { + fn function(&self) -> *const ::std::ffi::c_void { + foo_fast_fn as *const ::std::ffi::c_void + } + fn args(&self) -> &'static [deno_core::v8::fast_api::Type] { + use deno_core::v8::fast_api::Type::*; + use deno_core::v8::fast_api::CType; + &[V8Value, Uint32, Uint32, CallbackOptions] + } + fn return_type(&self) -> deno_core::v8::fast_api::CType { + deno_core::v8::fast_api::CType::Uint32 + } +} +fn foo_fast_fn<'scope>( + _: deno_core::v8::Local<deno_core::v8::Object>, + a: u32, + b: u32, + fast_api_callback_options: *mut deno_core::v8::fast_api::FastApiCallbackOptions, +) -> u32 { + use deno_core::v8; + use deno_core::_ops; + let __opts: &mut v8::fast_api::FastApiCallbackOptions = unsafe { + &mut *fast_api_callback_options + }; + let __ctx = unsafe { + &*(v8::Local::<v8::External>::cast(unsafe { __opts.data.data }).value() + as *const _ops::OpCtx) + }; + let state = &mut ::std::cell::RefCell::borrow_mut(&__ctx.state); + let result = foo::call(state, a, b); + result +} |
