From 4db650ddd57b85475d71c0b9fc84d37becab9d6a Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Fri, 22 Jul 2022 19:06:32 +0530 Subject: Revert "feat(ops): V8 Fast Calls (#15122)" (#15276) This reverts commit 03dc3b8972f460e40d0b75fc3207cae9fe4f60da. --- ops/README.md | 28 ---------------------------- 1 file changed, 28 deletions(-) (limited to 'ops/README.md') diff --git a/ops/README.md b/ops/README.md index 7b61704b5..02ee266f7 100644 --- a/ops/README.md +++ b/ops/README.md @@ -14,31 +14,3 @@ Extension::builder() .ops(vec![op_add::decl()]) .build(); ``` - -## Peformance - -The macro can optimize away code, short circuit fast paths and generate a Fast -API impl. - -Cases where code is optimized away: - -- `-> ()` skips serde_v8 and `rv.set` calls. -- `-> Result<(), E>` skips serde_v8 and `rv.set` calls for `Ok()` branch. -- `-> ResourceId` or `-> [int]` types will use specialized method like - `v8::ReturnValue::set_uint32`. A fast path for SMI. -- `-> Result` or `-> Result<[int], E>` types will be optimized - like above for the `Ok()` branch. - -### Fast calls - -The macro will infer and try to auto generate V8 fast API call trait impl for -`sync` ops with: - -- arguments: integers / `&mut OpState` -- return_type: integers - -The `#[op(fast)]` attribute can be used to enforce fast call generation at -compile time. - -Trait gen for `async` ops & a ZeroCopyBuf equivalent type is planned and will be -added soon. -- cgit v1.2.3