summaryrefslogtreecommitdiff
path: root/test/wasm2c/check-imports.txt
Commit message (Collapse)AuthorAgeFilesLines
* wasm2c: harmonize bulk mem ops re: i32/i64 (#2506) + parametrize memchecks ↵HEADmainKeith Winstein2024-12-171-47/+94
| | | | | | | | | | | | | | | | | per-memory (#2507) The PR updates the bulk memory operations (memory.fill, memory.copy, table.fill, etc.) to support 64-bit addresses and counts. Previously these functions only took u32's, even with memory64 enabled. (#2506) This PR also allows "software-bounds-checked" memories and "guard-page-checked" memories to coexist in the same module. It creates two versions of every memory operation: an unrestricted version (that works with any memory) and a _default32 version (for memories with default page size and i32 indexing). (#2507) #2506 and #2507 have been squashed together to avoid a performance regression. This is a stepping stone to supporting custom-page-sizes (which will need to be software-bounds-checked) (#2508).
* wasm2c: Reset the segment register after call_indirect as the register may ↵Shravan Narayan2024-10-181-0/+3
| | | | have changed
* wasm2c: Cleanup of handling of WASM_RT_USE_SEGUE macroShravan Narayan2024-10-141-29/+9
|
* wasm2c: Use wrappers for function references (#2465)Soni L.2024-09-231-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang 17(?) tightened UBSAN checks, so that you now get this: ``` - test/wasm2c/spec/call_indirect.txt expected error code 0, got 1. STDERR MISMATCH: --- expected +++ actual @@ -0,0 +1,3 @@ +out/test/wasm2c/spec/call_indirect/call_indirect.0.c:2144:12: runtime error: call to function w2c_call__indirect__0__wasm_f0 through pointer to incorrect function type 'unsigned int (*)(void *)' +/home/runner/work/wabt/wabt/out/test/wasm2c/spec/call_indirect/call_indirect.0.c:1925: note: w2c_call__indirect__0__wasm_f0 defined here +SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior out/test/wasm2c/spec/call_indirect/call_indirect.0.c:2144:12 STDOUT MISMATCH: --- expected +++ actual @@ -1 +0,0 @@ -134/134 tests passed. ``` This happens because emitted functions use a typed module instance, while function references use a `void*` instance. It is UB in C to call the former with the latter, so clang is correct here. We had to pick one of two ways to fix this: either emit `void*` wrapper functions that do the appropriate downcasting for any module functions that go into a table (potentially including imported functions), or the approach that takes significantly less effort of changing everything to `void*` and downcasting internally. ~~We obviously chose the latter.~~ We eventually started emitting wrapper functions.
* wasm2c: Add segue option to make exclusive use of the segment registerShravan Narayan2024-09-181-1/+11
|
* wasm2c: Segue support for CPUs without wrgsbase instructionsShravan Narayan2024-09-061-9/+25
|
* wasm2c: Segue optimization for modules with a single unshared memory (#2395)Shravan Narayan2024-06-261-14/+70
|
* wasm2c: Cleanup/separate code for heap and stack signal handlersShravan Narayan2023-12-141-1/+1
|
* wasm2c: Improve address abstraction for BE support (#2328)Soni L2023-11-141-52/+45
|
* wasm2c: implement the tail-call proposal (#2272)Keith Winstein2023-10-241-5/+29
|
* [wasm2c] Use wasm_rt_memcpy everywhere in generated code (#2292)Sam Clegg2023-09-091-15/+15
|
* Share reading/validation code between elem exprs & other const exprs (#2288)Keith Winstein2023-09-061-6/+19
| | | | | | This continues the work from #1783 and reduces special handling of elem exprs, by treating them the same as other const expressions (init expressions).
* c-writer.cc: clean up handling of functions & tags (NFC) (#2271)Keith Winstein2023-07-311-2/+2
|
* wasm2c: add link to clang bug on mips force read constraintShravan Narayan2023-07-301-0/+1
|
* wasm2c: ensure force read constraints compile for clang on mipsShravan Narayan2023-07-301-20/+28
|
* wasm2c: include simd128.h and wasm-rt-exceptions.h where necessary (#2236)Keith Winstein2023-05-121-136/+1
| | | Co-authored-by: Shravan Narayan <shravanrn@gmail.com>
* Track use of SIMD and exceptions in IR, and CWriter includes support only if ↵Keith Winstein2023-05-081-2/+0
| | | | used (#2226)
* wasm2c: Enable exceptions and simd according to command line flagsShravan Narayan2023-05-021-0/+6
|
* alloca() lives in <stdlib.h> on OpenBSD too (fixes #2216) (#2217)Landry Breuil2023-04-261-1/+1
| | | per http://man.openbsd.org/alloca.3
* wasm2c: Use malloc.h instead of alloca.h for mingwShravan Narayan2023-04-241-1/+3
|
* wasm2c.includes.c: replace alloca.h with stdlib.h on FreeBSD (#2212)Petr Penzin2023-04-221-0/+2
|
* wasm2c: Separate the macros for allocation and bounds checks strategiesShravan Narayan2023-04-121-1/+1
|
* wasm2c: expose the initial and max size required from imported tablesShravan Narayan2023-04-111-0/+915