haku2: VM logging
This commit is contained in:
parent
5de4f9d7c6
commit
7658e0d4e8
5 changed files with 105 additions and 2 deletions
|
@ -5,6 +5,7 @@ use std::{
|
|||
marker::{PhantomData, PhantomPinned},
|
||||
mem::forget,
|
||||
ptr::{self, NonNull},
|
||||
slice,
|
||||
};
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
|
@ -40,6 +41,54 @@ unsafe extern "C" fn __haku2_dealloc(ptr: *mut u8, size: usize, align: usize) {
|
|||
}
|
||||
}
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
unsafe extern "C" fn __haku2_log_err(
|
||||
scope: *const u8,
|
||||
scope_len: usize,
|
||||
msg: *const u8,
|
||||
len: usize,
|
||||
) {
|
||||
let scope = String::from_utf8_lossy(slice::from_raw_parts(scope, scope_len));
|
||||
let msg = String::from_utf8_lossy(slice::from_raw_parts(msg, len));
|
||||
log::error!("{scope}: {msg}");
|
||||
}
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
unsafe extern "C" fn __haku2_log_warn(
|
||||
scope: *const u8,
|
||||
scope_len: usize,
|
||||
msg: *const u8,
|
||||
len: usize,
|
||||
) {
|
||||
let scope = String::from_utf8_lossy(slice::from_raw_parts(scope, scope_len));
|
||||
let msg = String::from_utf8_lossy(slice::from_raw_parts(msg, len));
|
||||
log::warn!("{scope}: {msg}");
|
||||
}
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
unsafe extern "C" fn __haku2_log_info(
|
||||
scope: *const u8,
|
||||
scope_len: usize,
|
||||
msg: *const u8,
|
||||
len: usize,
|
||||
) {
|
||||
let scope = String::from_utf8_lossy(slice::from_raw_parts(scope, scope_len));
|
||||
let msg = String::from_utf8_lossy(slice::from_raw_parts(msg, len));
|
||||
log::info!("{scope}: {msg}");
|
||||
}
|
||||
|
||||
#[unsafe(no_mangle)]
|
||||
unsafe extern "C" fn __haku2_log_debug(
|
||||
scope: *const u8,
|
||||
scope_len: usize,
|
||||
msg: *const u8,
|
||||
len: usize,
|
||||
) {
|
||||
let scope = String::from_utf8_lossy(slice::from_raw_parts(scope, scope_len));
|
||||
let msg = String::from_utf8_lossy(slice::from_raw_parts(msg, len));
|
||||
log::debug!("{scope}: {msg}");
|
||||
}
|
||||
|
||||
#[repr(C)]
|
||||
struct ScratchC {
|
||||
_data: (),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue