From e43846f8c5ee0b3cf0e3636898eadd26f7fe1ea9 Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Fri, 20 Jan 2023 23:27:55 +0800 Subject: [PATCH] fix: patch Instance::now --- .../external/boa/boa_engine/src/vm/mod.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/javascript-engine/external/boa/boa_engine/src/vm/mod.rs b/javascript-engine/external/boa/boa_engine/src/vm/mod.rs index b90ede4..81ebc90 100644 --- a/javascript-engine/external/boa/boa_engine/src/vm/mod.rs +++ b/javascript-engine/external/boa/boa_engine/src/vm/mod.rs @@ -13,7 +13,7 @@ use crate::{ use crate::{JsError, JsNativeError}; use boa_interner::ToInternedString; use boa_profiler::Profiler; -use std::{convert::TryInto, mem::size_of, time::Instant}; +use std::{convert::TryInto, mem::size_of}; mod call_frame; mod code_block; @@ -216,13 +216,18 @@ impl Context<'_> { .code_block .instruction_operands(&mut pc, self.interner()); - let instant = Instant::now(); + // wasm32 not supports `Instant::now()` + #[cfg(not(target_arch = "wasm32"))] + let instant = std::time::Instant::now(); let result = self.execute_instruction(); - let duration = instant.elapsed(); + #[cfg(target_arch = "wasm32")] + let duration_micros = -1; + #[cfg(not(target_arch = "wasm32"))] + let duration_micros = instant.elapsed().as_micros(); println!( "{: "[function]".to_string(),