summaryrefslogtreecommitdiff
path: root/src/prebuilt/wasm2c.include.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/prebuilt/wasm2c.include.c')
-rw-r--r--src/prebuilt/wasm2c.include.c206
1 files changed, 115 insertions, 91 deletions
diff --git a/src/prebuilt/wasm2c.include.c b/src/prebuilt/wasm2c.include.c
index 83d28a87..85ac55cb 100644
--- a/src/prebuilt/wasm2c.include.c
+++ b/src/prebuilt/wasm2c.include.c
@@ -16,21 +16,22 @@ const char SECTION_NAME(declarations)[] =
"#else\n"
"#define FUNC_PROLOGUE \\\n"
" if (++wasm_rt_call_stack_depth > WASM_RT_MAX_CALL_STACK_DEPTH) \\\n"
-" TRAP(EXHAUSTION)\n"
+" TRAP(EXHAUSTION);\n"
"\n"
"#define FUNC_EPILOGUE --wasm_rt_call_stack_depth\n"
"#endif\n"
"\n"
"#define UNREACHABLE TRAP(UNREACHABLE)\n"
"\n"
-"#define CALL_INDIRECT(table, t, ft, x, ...) \\\n"
-" (LIKELY((x) < table.size && table.data[x].func && \\\n"
-" table.data[x].func_type == func_types[ft]) \\\n"
-" || TRAP(CALL_INDIRECT) \\\n"
-" , ((t)table.data[x].func)(__VA_ARGS__))\n"
+"#define CALL_INDIRECT(table, t, ft, x, ...) \\\n"
+" (LIKELY((x) < table.size && table.data[x].func && \\\n"
+" table.data[x].func_type == func_types[ft]) || \\\n"
+" TRAP(CALL_INDIRECT), \\\n"
+" ((t)table.data[x].func)(__VA_ARGS__))\n"
"\n"
-"#define RANGE_CHECK(mem, offset, len) \\\n"
-" if (UNLIKELY(offset + (uint64_t)len > mem->size)) TRAP(OOB)\n"
+"#define RANGE_CHECK(mem, offset, len) \\\n"
+" if (UNLIKELY(offset + (uint64_t)len > mem->size)) \\\n"
+" TRAP(OOB);\n"
"\n"
"#if WASM_RT_MEMCHECK_SIGNAL_HANDLER\n"
"#define MEMCHECK(mem, a, t)\n"
@@ -39,11 +40,11 @@ const char SECTION_NAME(declarations)[] =
"#endif\n"
"\n"
"#if WABT_BIG_ENDIAN\n"
-"static inline void load_data(void *dest, const void *src, size_t n) {\n"
+"static inline void load_data(void* dest, const void* src, size_t n) {\n"
" size_t i = 0;\n"
-" u8 *dest_chars = dest;\n"
+" u8* dest_chars = dest;\n"
" memcpy(dest, src, n);\n"
-" for (i = 0; i < (n>>1); i++) {\n"
+" for (i = 0; i < (n >> 1); i++) {\n"
" u8 cursor = dest_chars[i];\n"
" dest_chars[i] = dest_chars[n - i - 1];\n"
" dest_chars[n - i - 1] = cursor;\n"
@@ -71,11 +72,12 @@ const char SECTION_NAME(declarations)[] =
" sizeof(t1)); \\\n"
" }\n"
"#else\n"
-"static inline void load_data(void *dest, const void *src, size_t n) {\n"
+"static inline void load_data(void* dest, const void* src, size_t n) {\n"
" memcpy(dest, src, n);\n"
"}\n"
-"#define LOAD_DATA(m, o, i, s) do { \\\n"
-" RANGE_CHECK((&m), o, s); \\\n"
+"#define LOAD_DATA(m, o, i, s) \\\n"
+" do { \\\n"
+" RANGE_CHECK((&m), o, s); \\\n"
" load_data(&(m.data[o]), i, s); \\\n"
" } while (0)\n"
"#define DEFINE_LOAD(name, t1, t2, t3) \\\n"
@@ -132,9 +134,9 @@ const char SECTION_NAME(declarations)[] =
" return 63 - r;\n"
" }\n"
"#else\n"
-" if (_BitScanReverse(&r, (unsigned long) (v >> 32))) {\n"
+" if (_BitScanReverse(&r, (unsigned long)(v >> 32))) {\n"
" return 31 - r;\n"
-" } else if (_BitScanReverse(&r, (unsigned long) v)) {\n"
+" } else if (_BitScanReverse(&r, (unsigned long)v)) {\n"
" return 63 - r;\n"
" }\n"
"#endif\n"
@@ -156,14 +158,14 @@ const char SECTION_NAME(declarations)[] =
" unsigned long r = 0;\n"
"#if defined(_M_AMD64) || defined(_M_ARM)\n"
" _BitScanForward64(&r, v);\n"
-" return (int) r;\n"
+" return (int)r;\n"
"#else\n"
-" if (_BitScanForward(&r, (unsigned int) (v))) {\n"
-" return (int) (r);\n"
+" if (_BitScanForward(&r, (unsigned int)(v))) {\n"
+" return (int)(r);\n"
" }\n"
"\n"
-" _BitScanForward(&r, (unsigned int) (v >> 32));\n"
-" return (int) (r + 32);\n"
+" _BitScanForward(&r, (unsigned int)(v >> 32));\n"
+" return (int)(r + 32);\n"
"#endif\n"
"}\n"
"\n"
@@ -173,15 +175,15 @@ const char SECTION_NAME(declarations)[] =
" }\n"
" unsigned long r = 0;\n"
" _BitScanForward(&r, v);\n"
-" return (int) r;\n"
+" return (int)r;\n"
"}\n"
"\n"
-"#define POPCOUNT_DEFINE_PORTABLE(f_n, T) \\\n"
-" static inline u32 f_n(T x) { \\\n"
-" x = x - ((x >> 1) & (T)~(T)0/3); \\\n"
-" x = (x & (T)~(T)0/15*3) + ((x >> 2) & (T)~(T)0/15*3); \\\n"
-" x = (x + (x >> 4)) & (T)~(T)0/255*15; \\\n"
-" return (T)(x * ((T)~(T)0/255)) >> (sizeof(T) - 1) * 8; \\\n"
+"#define POPCOUNT_DEFINE_PORTABLE(f_n, T) \\\n"
+" static inline u32 f_n(T x) { \\\n"
+" x = x - ((x >> 1) & (T) ~(T)0 / 3); \\\n"
+" x = (x & (T) ~(T)0 / 15 * 3) + ((x >> 2) & (T) ~(T)0 / 15 * 3); \\\n"
+" x = (x + (x >> 4)) & (T) ~(T)0 / 255 * 15; \\\n"
+" return (T)(x * ((T) ~(T)0 / 255)) >> (sizeof(T) - 1) * 8; \\\n"
" }\n"
"\n"
"POPCOUNT_DEFINE_PORTABLE(I32_POPCNT, u32)\n"
@@ -200,15 +202,16 @@ const char SECTION_NAME(declarations)[] =
"\n"
"#endif\n"
"\n"
-"#define DIV_S(ut, min, x, y) \\\n"
-" ((UNLIKELY((y) == 0)) ? TRAP(DIV_BY_ZERO) \\\n"
-" : (UNLIKELY((x) == min && (y) == -1)) ? TRAP(INT_OVERFLOW) \\\n"
-" : (ut)((x) / (y)))\n"
+"#define DIV_S(ut, min, x, y) \\\n"
+" ((UNLIKELY((y) == 0)) \\\n"
+" ? TRAP(DIV_BY_ZERO) \\\n"
+" : (UNLIKELY((x) == min && (y) == -1)) ? TRAP(INT_OVERFLOW) \\\n"
+" : (ut)((x) / (y)))\n"
"\n"
-"#define REM_S(ut, min, x, y) \\\n"
-" ((UNLIKELY((y) == 0)) ? TRAP(DIV_BY_ZERO) \\\n"
-" : (UNLIKELY((x) == min && (y) == -1)) ? 0 \\\n"
-" : (ut)((x) % (y)))\n"
+"#define REM_S(ut, min, x, y) \\\n"
+" ((UNLIKELY((y) == 0)) \\\n"
+" ? TRAP(DIV_BY_ZERO) \\\n"
+" : (UNLIKELY((x) == min && (y) == -1)) ? 0 : (ut)((x) % (y)))\n"
"\n"
"#define I32_DIV_S(x, y) DIV_S(u32, INT32_MIN, (s32)x, (s32)y)\n"
"#define I64_DIV_S(x, y) DIV_S(u64, INT64_MIN, (s64)x, (s64)y)\n"
@@ -216,7 +219,7 @@ const char SECTION_NAME(declarations)[] =
"#define I64_REM_S(x, y) REM_S(u64, INT64_MIN, (s64)x, (s64)y)\n"
"\n"
"#define DIVREM_U(op, x, y) \\\n"
-" ((UNLIKELY((y) == 0)) ? TRAP(DIV_BY_ZERO) : ((x) op (y)))\n"
+" ((UNLIKELY((y) == 0)) ? TRAP(DIV_BY_ZERO) : ((x)op(y)))\n"
"\n"
"#define DIV_U(x, y) DIVREM_U(/, x, y)\n"
"#define REM_U(x, y) DIVREM_U(%, x, y)\n"
@@ -231,70 +234,91 @@ const char SECTION_NAME(declarations)[] =
"#define I32_ROTR(x, y) ROTR(x, y, 31)\n"
"#define I64_ROTR(x, y) ROTR(x, y, 63)\n"
"\n"
-"#define FMIN(x, y) \\\n"
-" ((UNLIKELY((x) != (x))) ? NAN \\\n"
-" : (UNLIKELY((y) != (y))) ? NAN \\\n"
-" : (UNLIKELY((x) == 0 && (y) == 0)) ? (signbit(x) ? x : y) \\\n"
-" : (x < y) ? x : y)\n"
-"\n"
-"#define FMAX(x, y) \\\n"
-" ((UNLIKELY((x) != (x))) ? NAN \\\n"
-" : (UNLIKELY((y) != (y))) ? NAN \\\n"
-" : (UNLIKELY((x) == 0 && (y) == 0)) ? (signbit(x) ? y : x) \\\n"
-" : (x > y) ? x : y)\n"
-"\n"
-"#define TRUNC_S(ut, st, ft, min, minop, max, x) \\\n"
-" ((UNLIKELY((x) != (x))) ? TRAP(INVALID_CONVERSION) \\\n"
-" : (UNLIKELY(!((x)minop(min) && (x) < (max)))) ? TRAP(INT_OVERFLOW) \\\n"
-" : (ut)(st)(x))\n"
-"\n"
-"#define I32_TRUNC_S_F32(x) TRUNC_S(u32, s32, f32, (f32)INT32_MIN, >=, 2147483648.f, x)\n"
-"#define I64_TRUNC_S_F32(x) TRUNC_S(u64, s64, f32, (f32)INT64_MIN, >=, (f32)INT64_MAX, x)\n"
-"#define I32_TRUNC_S_F64(x) TRUNC_S(u32, s32, f64, -2147483649., >, 2147483648., x)\n"
-"#define I64_TRUNC_S_F64(x) TRUNC_S(u64, s64, f64, (f64)INT64_MIN, >=, (f64)INT64_MAX, x)\n"
-"\n"
-"#define TRUNC_U(ut, ft, max, x) \\\n"
-" ((UNLIKELY((x) != (x))) ? TRAP(INVALID_CONVERSION) \\\n"
-" : (UNLIKELY(!((x) > (ft)-1 && (x) < (max)))) ? TRAP(INT_OVERFLOW) \\\n"
-" : (ut)(x))\n"
+"#define FMIN(x, y) \\\n"
+" ((UNLIKELY((x) != (x))) \\\n"
+" ? NAN \\\n"
+" : (UNLIKELY((y) != (y))) \\\n"
+" ? NAN \\\n"
+" : (UNLIKELY((x) == 0 && (y) == 0)) ? (signbit(x) ? x : y) \\\n"
+" : (x < y) ? x : y)\n"
+"\n"
+"#define FMAX(x, y) \\\n"
+" ((UNLIKELY((x) != (x))) \\\n"
+" ? NAN \\\n"
+" : (UNLIKELY((y) != (y))) \\\n"
+" ? NAN \\\n"
+" : (UNLIKELY((x) == 0 && (y) == 0)) ? (signbit(x) ? y : x) \\\n"
+" : (x > y) ? x : y)\n"
+"\n"
+"#define TRUNC_S(ut, st, ft, min, minop, max, x) \\\n"
+" ((UNLIKELY((x) != (x))) \\\n"
+" ? TRAP(INVALID_CONVERSION) \\\n"
+" : (UNLIKELY(!((x)minop(min) && (x) < (max)))) ? TRAP(INT_OVERFLOW) \\\n"
+" : (ut)(st)(x))\n"
+"\n"
+"#define I32_TRUNC_S_F32(x) \\\n"
+" TRUNC_S(u32, s32, f32, (f32)INT32_MIN, >=, 2147483648.f, x)\n"
+"#define I64_TRUNC_S_F32(x) \\\n"
+" TRUNC_S(u64, s64, f32, (f32)INT64_MIN, >=, (f32)INT64_MAX, x)\n"
+"#define I32_TRUNC_S_F64(x) \\\n"
+" TRUNC_S(u32, s32, f64, -2147483649., >, 2147483648., x)\n"
+"#define I64_TRUNC_S_F64(x) \\\n"
+" TRUNC_S(u64, s64, f64, (f64)INT64_MIN, >=, (f64)INT64_MAX, x)\n"
+"\n"
+"#define TRUNC_U(ut, ft, max, x) \\\n"
+" ((UNLIKELY((x) != (x))) \\\n"
+" ? TRAP(INVALID_CONVERSION) \\\n"
+" : (UNLIKELY(!((x) > (ft)-1 && (x) < (max)))) ? TRAP(INT_OVERFLOW) \\\n"
+" : (ut)(x))\n"
"\n"
"#define I32_TRUNC_U_F32(x) TRUNC_U(u32, f32, 4294967296.f, x)\n"
"#define I64_TRUNC_U_F32(x) TRUNC_U(u64, f32, (f32)UINT64_MAX, x)\n"
-"#define I32_TRUNC_U_F64(x) TRUNC_U(u32, f64, 4294967296., x)\n"
+"#define I32_TRUNC_U_F64(x) TRUNC_U(u32, f64, 4294967296., x)\n"
"#define I64_TRUNC_U_F64(x) TRUNC_U(u64, f64, (f64)UINT64_MAX, x)\n"
"\n"
"#define TRUNC_SAT_S(ut, st, ft, min, smin, minop, max, smax, x) \\\n"
-" ((UNLIKELY((x) != (x))) ? 0 \\\n"
-" : (UNLIKELY(!((x)minop(min)))) ? smin \\\n"
-" : (UNLIKELY(!((x) < (max)))) ? smax \\\n"
-" : (ut)(st)(x))\n"
-"\n"
-"#define I32_TRUNC_SAT_S_F32(x) TRUNC_SAT_S(u32, s32, f32, (f32)INT32_MIN, INT32_MIN, >=, 2147483648.f, INT32_MAX, x)\n"
-"#define I64_TRUNC_SAT_S_F32(x) TRUNC_SAT_S(u64, s64, f32, (f32)INT64_MIN, INT64_MIN, >=, (f32)INT64_MAX, INT64_MAX, x)\n"
-"#define I32_TRUNC_SAT_S_F64(x) TRUNC_SAT_S(u32, s32, f64, -2147483649., INT32_MIN, >, 2147483648., INT32_MAX, x)\n"
-"#define I64_TRUNC_SAT_S_F64(x) TRUNC_SAT_S(u64, s64, f64, (f64)INT64_MIN, INT64_MIN, >=, (f64)INT64_MAX, INT64_MAX, x)\n"
-"\n"
-"#define TRUNC_SAT_U(ut, ft, max, smax, x) \\\n"
-" ((UNLIKELY((x) != (x))) ? 0 \\\n"
-" : (UNLIKELY(!((x) > (ft)-1))) ? 0 \\\n"
-" : (UNLIKELY(!((x) < (max)))) ? smax \\\n"
-" : (ut)(x))\n"
-"\n"
-"#define I32_TRUNC_SAT_U_F32(x) TRUNC_SAT_U(u32, f32, 4294967296.f, UINT32_MAX, x)\n"
-"#define I64_TRUNC_SAT_U_F32(x) TRUNC_SAT_U(u64, f32, (f32)UINT64_MAX, UINT64_MAX, x)\n"
-"#define I32_TRUNC_SAT_U_F64(x) TRUNC_SAT_U(u32, f64, 4294967296., UINT32_MAX, x)\n"
-"#define I64_TRUNC_SAT_U_F64(x) TRUNC_SAT_U(u64, f64, (f64)UINT64_MAX, UINT64_MAX, x)\n"
-"\n"
-"#define DEFINE_REINTERPRET(name, t1, t2) \\\n"
-" static inline t2 name(t1 x) { \\\n"
-" t2 result; \\\n"
-" memcpy(&result, &x, sizeof(result)); \\\n"
-" return result; \\\n"
+" ((UNLIKELY((x) != (x))) \\\n"
+" ? 0 \\\n"
+" : (UNLIKELY(!((x)minop(min)))) \\\n"
+" ? smin \\\n"
+" : (UNLIKELY(!((x) < (max)))) ? smax : (ut)(st)(x))\n"
+"\n"
+"#define I32_TRUNC_SAT_S_F32(x) \\\n"
+" TRUNC_SAT_S(u32, s32, f32, (f32)INT32_MIN, INT32_MIN, >=, 2147483648.f, \\\n"
+" INT32_MAX, x)\n"
+"#define I64_TRUNC_SAT_S_F32(x) \\\n"
+" TRUNC_SAT_S(u64, s64, f32, (f32)INT64_MIN, INT64_MIN, >=, (f32)INT64_MAX, \\\n"
+" INT64_MAX, x)\n"
+"#define I32_TRUNC_SAT_S_F64(x) \\\n"
+" TRUNC_SAT_S(u32, s32, f64, -2147483649., INT32_MIN, >, 2147483648., \\\n"
+" INT32_MAX, x)\n"
+"#define I64_TRUNC_SAT_S_F64(x) \\\n"
+" TRUNC_SAT_S(u64, s64, f64, (f64)INT64_MIN, INT64_MIN, >=, (f64)INT64_MAX, \\\n"
+" INT64_MAX, x)\n"
+"\n"
+"#define TRUNC_SAT_U(ut, ft, max, smax, x) \\\n"
+" ((UNLIKELY((x) != (x))) ? 0 \\\n"
+" : (UNLIKELY(!((x) > (ft)-1))) \\\n"
+" ? 0 \\\n"
+" : (UNLIKELY(!((x) < (max)))) ? smax : (ut)(x))\n"
+"\n"
+"#define I32_TRUNC_SAT_U_F32(x) \\\n"
+" TRUNC_SAT_U(u32, f32, 4294967296.f, UINT32_MAX, x)\n"
+"#define I64_TRUNC_SAT_U_F32(x) \\\n"
+" TRUNC_SAT_U(u64, f32, (f32)UINT64_MAX, UINT64_MAX, x)\n"
+"#define I32_TRUNC_SAT_U_F64(x) TRUNC_SAT_U(u32, f64, 4294967296., UINT32_MAX, x)\n"
+"#define I64_TRUNC_SAT_U_F64(x) \\\n"
+" TRUNC_SAT_U(u64, f64, (f64)UINT64_MAX, UINT64_MAX, x)\n"
+"\n"
+"#define DEFINE_REINTERPRET(name, t1, t2) \\\n"
+" static inline t2 name(t1 x) { \\\n"
+" t2 result; \\\n"
+" memcpy(&result, &x, sizeof(result)); \\\n"
+" return result; \\\n"
" }\n"
"\n"
"DEFINE_REINTERPRET(f32_reinterpret_i32, u32, f32)\n"
"DEFINE_REINTERPRET(i32_reinterpret_f32, f32, u32)\n"
"DEFINE_REINTERPRET(f64_reinterpret_i64, u64, f64)\n"
"DEFINE_REINTERPRET(i64_reinterpret_f64, f64, u64)\n"
-"\n"
;