summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibWasm/Constants.h
AgeCommit message (Collapse)Author
2022-10-24LibWasm: Allow vectors of up to 500M entriesAli Mohammad Pur
This usually shows up in custom sections, containing plain bytes.
2022-03-20LibWasm: Increase the arbitrary local value count per type limitAli Mohammad Pur
It was arbitrary, it's still arbitrary, but now it's funny too :^)
2021-09-05LibWasm: Move the vector size limit to Constants.h and increase it a bitAli Mohammad Pur
2021-08-31LibWasm: Limit the number of function localsAli Mohammad Pur
It's possible for the module to request too many locals, we now reject such modules instead of trying to allocate space for them. The value itself is chosen arbitrarily, so future tweaks _might_ be necessary. Found by OSS-Fuzz: https://oss-fuzz.com/testcase?key=4755809098661888
2021-07-12LibWasm: Use AK::StackInfo to track stack sizeAli Mohammad Pur
This way, we can make sure that it doesn't overflow when ASAN is enabled.
2021-07-06LibWasm: Tweak the implementation-defined limits a bitAli Mohammad Pur
2021-07-02LibWasm: Give traps a reason and display it when neededAli Mohammad Pur
This makes debugging wasm code a bit easier, as we now know what fails instead of just "too bad, something went wrong".
2021-06-22LibWasm: Limit the call stack depth and the number of executed instsAli Mohammad Pur
These limits are described in the spec, and we're supposed to stop execution at some point. The limits are arbitrarily chosen.
2021-05-17LibWasm: Implement memory.grow, memory.size and dropAli Mohammad Pur
These allow a very basic memory-using program to work.
2021-05-08LibWasm: Start implementing a basic WebAssembly binary format parserAli Mohammad Pur
This can currently parse a really simple module. Note that it cannot parse the DataCount section, and it's still missing almost all of the instructions. This commit also adds a 'wasm' test utility that tries to parse a given webassembly binary file. It currently does nothing but exit when the parse fails, but it's a start :^)