mirror of
https://github.com/denoland/deno.git
synced 2024-11-21 15:04:11 -05:00
perf(core): use single ObjectTemplate for ops in initialize_ops
(#15959)
This commit is contained in:
parent
1464b756a4
commit
3864961364
1 changed files with 5 additions and 5 deletions
|
@ -140,17 +140,17 @@ fn initialize_ops(
|
|||
op_ctxs: &[OpCtx],
|
||||
snapshot_loaded: bool,
|
||||
) {
|
||||
let object_template = v8::ObjectTemplate::new(scope);
|
||||
assert!(object_template.set_internal_field_count(
|
||||
(crate::runtime::V8_WRAPPER_OBJECT_INDEX + 1) as usize
|
||||
));
|
||||
|
||||
for ctx in op_ctxs {
|
||||
let ctx_ptr = ctx as *const OpCtx as *const c_void;
|
||||
|
||||
// If this is a fast op, we don't want it to be in the snapshot.
|
||||
// Only initialize once snapshot is loaded.
|
||||
if ctx.decl.fast_fn.is_some() && snapshot_loaded {
|
||||
let object_template = v8::ObjectTemplate::new(scope);
|
||||
assert!(object_template.set_internal_field_count(
|
||||
(crate::runtime::V8_WRAPPER_OBJECT_INDEX + 1) as usize
|
||||
));
|
||||
|
||||
let method_obj = object_template.new_instance(scope).unwrap();
|
||||
method_obj.set_aligned_pointer_in_internal_field(
|
||||
crate::runtime::V8_WRAPPER_OBJECT_INDEX,
|
||||
|
|
Loading…
Reference in a new issue