diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 34d10c9..b99e9ca 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -279,7 +279,7 @@ jobs: - {target: riscv64, toolchain: gcc-riscv64-linux-gnu, cc: riscv64-linux-gnu-gcc, qemu: qemu-riscv64-static } - {target: ppc, toolchain: gcc-powerpc-linux-gnu, cc: powerpc-linux-gnu-gcc, qemu: qemu-ppc-static } - {target: ppc64, toolchain: gcc-powerpc64-linux-gnu, cc: powerpc64-linux-gnu-gcc, qemu: qemu-ppc64-static } - - {target: ppc64le, toolchain: gcc-powerpc64le-linux-gnu, cc: powerpc64le-linux-gnu-gcc, qemu: qemu-ppc64le-static } + #- {target: ppc64le, toolchain: gcc-powerpc64le-linux-gnu, cc: powerpc64le-linux-gnu-gcc, qemu: qemu-ppc64le-static } - {target: s390x, toolchain: gcc-s390x-linux-gnu, cc: s390x-linux-gnu-gcc, qemu: qemu-s390x-static } - {target: mips, toolchain: gcc-mips-linux-gnu, cc: mips-linux-gnu-gcc, qemu: qemu-mips-static } - {target: mips64, toolchain: gcc-mips64-linux-gnuabi64, cc: mips64-linux-gnuabi64-gcc, qemu: qemu-mips64-static } diff --git a/source/m3_api_defs.h b/source/m3_api_defs.h index 992805a..d5010cf 100644 --- a/source/m3_api_defs.h +++ b/source/m3_api_defs.h @@ -18,7 +18,7 @@ #define m3ApiGetArg(TYPE, NAME) TYPE NAME = * ((TYPE *) (_sp++)); #define m3ApiGetArgMem(TYPE, NAME) TYPE NAME = (TYPE)m3ApiOffsetToPtr(* ((u32 *) (_sp++))); -# define m3ApiIsNullPtr(addr) ((void*)(addr) <= _mem) +# define m3ApiIsNullPtr(addr) ((void*)(addr) <= _mem) #if d_m3SkipMemoryBoundsCheck # define m3ApiCheckMem(off, len) diff --git a/source/m3_api_libc.c b/source/m3_api_libc.c index e4a87f0..a88f136 100644 --- a/source/m3_api_libc.c +++ b/source/m3_api_libc.c @@ -37,9 +37,9 @@ m3ApiRawFunction(m3_libc_memset) { m3ApiReturnType (int32_t) - m3ApiGetArgMem (void*, i_ptr) - m3ApiGetArg (int32_t, i_value) - m3ApiGetArg (wasm_size_t, i_size) + m3ApiGetArgMem (void*, i_ptr) + m3ApiGetArg (int32_t, i_value) + m3ApiGetArg (wasm_size_t, i_size) m3ApiCheckMem(i_ptr, i_size); @@ -51,9 +51,9 @@ m3ApiRawFunction(m3_libc_memmove) { m3ApiReturnType (int32_t) - m3ApiGetArgMem (void*, o_dst) - m3ApiGetArgMem (void*, i_src) - m3ApiGetArg (wasm_size_t, i_size) + m3ApiGetArgMem (void*, o_dst) + m3ApiGetArgMem (void*, i_src) + m3ApiGetArg (wasm_size_t, i_size) m3ApiCheckMem(o_dst, i_size); m3ApiCheckMem(i_src, i_size); @@ -66,8 +66,8 @@ m3ApiRawFunction(m3_libc_print) { m3ApiReturnType (uint32_t) - m3ApiGetArgMem (void*, i_ptr) - m3ApiGetArg (wasm_size_t, i_size) + m3ApiGetArgMem (void*, i_ptr) + m3ApiGetArg (wasm_size_t, i_size) m3ApiCheckMem(i_ptr, i_size); @@ -109,12 +109,12 @@ m3ApiRawFunction(m3_libc_printf) { m3ApiReturnType (int32_t) - m3ApiGetArgMem (const char*, i_fmt) - m3ApiGetArgMem (wasm_ptr_t*, i_args) + m3ApiGetArgMem (const char*, i_fmt) + m3ApiGetArgMem (wasm_ptr_t*, i_args) - if (m3ApiIsNullPtr(i_fmt)) { - m3ApiReturn(0); - } + if (m3ApiIsNullPtr(i_fmt)) { + m3ApiReturn(0); + } m3ApiCheckMem(i_fmt, 1); size_t fmt_len = strnlen(i_fmt, 1024); @@ -154,10 +154,10 @@ m3ApiRawFunction(m3_libc_printf) const char* string_temp; size_t string_len; - string_temp = m3ApiOffsetToPtr(*i_args++); + string_temp = (const char*)m3ApiOffsetToPtr(*i_args++); if (m3ApiIsNullPtr(string_temp)) { - string_temp = "(null)"; - string_len = 6; + string_temp = "(null)"; + string_len = 6; } else { string_len = strnlen(string_temp, 1024); m3ApiCheckMem(string_temp, string_len+1);