mirror of
https://github.com/fluencelabs/wasmer
synced 2025-06-13 00:51:20 +00:00
Add addition em functions to run tests
This commit is contained in:
@ -191,5 +191,5 @@ pub extern "C" fn _sysconf(name: c_int, _ctx: &mut Ctx) -> c_long {
|
||||
pub extern "C" fn ___assert_fail(a: c_int, b: c_int, c: c_int, d: c_int, _ctx: &mut Ctx) {
|
||||
debug!("emscripten::___assert_fail {} {} {} {}", a, b, c, d);
|
||||
// TODO: Implement like emscripten expects regarding memory/page size
|
||||
unimplemented!()
|
||||
// TODO raise an error
|
||||
}
|
||||
|
@ -2344,6 +2344,30 @@ pub fn generate_emscripten_env(globals: &mut EmscriptenGlobals) -> ImportObject
|
||||
},
|
||||
);
|
||||
|
||||
env_namespace.insert(
|
||||
"_emscripten_random",
|
||||
Export::Function {
|
||||
func: func!(math, _emscripten_random),
|
||||
ctx: Context::Internal,
|
||||
signature: FuncSig {
|
||||
params: vec![],
|
||||
returns: vec![F64],
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
env_namespace.insert(
|
||||
"_gmtime",
|
||||
Export::Function {
|
||||
func: func!(time, _gmtime),
|
||||
ctx: Context::Internal,
|
||||
signature: FuncSig {
|
||||
params: vec![I32],
|
||||
returns: vec![I32],
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
// mock_external!(env_namespace, _time);
|
||||
// mock_external!(env_namespace, _sysconf);
|
||||
// mock_external!(env_namespace, _strftime);
|
||||
@ -2383,6 +2407,7 @@ pub fn generate_emscripten_env(globals: &mut EmscriptenGlobals) -> ImportObject
|
||||
// mock_external!(env_namespace, ___syscall102);
|
||||
// mock_external!(env_namespace, ___syscall20);
|
||||
mock_external!(env_namespace, _dlerror);
|
||||
mock_external!(env_namespace, _gmtime);
|
||||
|
||||
imports.register("env", env_namespace);
|
||||
imports.register("asm2wasm", asm_namespace);
|
||||
|
@ -14,12 +14,17 @@ pub extern "C" fn _llvm_log2_f64(value: f64, _ctx: &mut Ctx) -> f64 {
|
||||
|
||||
pub extern "C" fn _llvm_log10_f32(value: f64, _ctx: &mut Ctx) -> f64 {
|
||||
debug!("emscripten::_llvm_log10_f32");
|
||||
unimplemented!()
|
||||
-1.0
|
||||
}
|
||||
|
||||
pub extern "C" fn _llvm_log2_f32(value: f64, _ctx: &mut Ctx) -> f64 {
|
||||
debug!("emscripten::_llvm_log10_f32");
|
||||
unimplemented!()
|
||||
-1.0
|
||||
}
|
||||
|
||||
pub extern "C" fn _emscripten_random(_ctx: &mut Ctx) -> f64 {
|
||||
debug!("emscripten::_emscripten_random");
|
||||
-1.0
|
||||
}
|
||||
|
||||
// emscripten: f64-rem
|
||||
|
@ -109,6 +109,11 @@ pub extern "C" fn _mktime(one: i32, ctx: &mut Ctx) -> i32 {
|
||||
-1
|
||||
}
|
||||
|
||||
pub extern "C" fn _gmtime(one: i32, ctx: &mut Ctx) -> i32 {
|
||||
debug!("emscripten::_gmtime");
|
||||
-1
|
||||
}
|
||||
|
||||
#[repr(C)]
|
||||
struct guest_tm {
|
||||
pub tm_sec: c_int, // 0
|
||||
|
Reference in New Issue
Block a user