Fix calling time.now() in wasm js runtime

This commit is contained in:
Damian Tarnawski
2023-10-19 18:45:04 +02:00
parent 840459bdb0
commit c19af95db0
2 changed files with 5 additions and 10 deletions

View File

@@ -10,7 +10,7 @@ _now :: proc "contextless" () -> Time {
foreign odin_env {
time_now :: proc "contextless" () -> i64 ---
}
return Time{time_now()}
return Time{time_now()*1e6}
}
_sleep :: proc "contextless" (d: Duration) {
@@ -26,7 +26,7 @@ _tick_now :: proc "contextless" () -> Tick {
foreign odin_env {
tick_now :: proc "contextless" () -> i64 ---
}
return Tick{tick_now()}
return Tick{tick_now()*1e6}
}
_yield :: proc "contextless" () {

View File

@@ -1334,14 +1334,9 @@ function odinSetupDefaultImports(wasmMemoryInterface, consoleElement) {
abort: () => { Module.abort() },
evaluate: (str_ptr, str_len) => { eval.call(null, wasmMemoryInterface.loadString(str_ptr, str_len)); },
time_now: () => {
// convert ms to ns
return Date.now() * 1e6;
},
tick_now: () => {
// convert ms to ns
return performance.now() * 1e6;
},
// return a bigint to be converted to i64
time_now: () => BigInt(Date.now()),
tick_now: () => BigInt(performance.now()),
time_sleep: (duration_ms) => {
if (duration_ms > 0) {
// TODO(bill): Does this even make any sense?