17 lines
438 B
Rust
Raw Normal View History

2018-11-13 19:19:23 -08:00
use libc::printf as _printf;
use crate::webassembly::Instance;
2018-11-20 20:11:58 +01:00
/// putchar
pub use libc::putchar;
/// printf
2018-11-13 19:19:23 -08:00
pub extern "C" fn printf(memory_offset: i32, extra: i32, instance: &Instance) -> i32 {
2018-11-20 19:24:23 -08:00
debug!("emscripten::printf");
2018-11-13 19:19:23 -08:00
let mem = &instance.memories[0];
return unsafe {
let base_memory_offset = mem.mmap.as_ptr().offset(memory_offset as isize) as *const i8;
_printf(base_memory_offset, extra)
};
}