Nuno Cruces
c6a907bb9d
experimental: cleanup context keys ( #2175 )
...
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com >
2024-04-06 21:04:55 +09:00
Takeshi Yoneda
c4532da719
testing: pass N, P into Run of hammer ( #2146 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2024-03-12 10:34:42 +09:00
Takeshi Yoneda
3c7bc733c5
Nuke old singlepass compiler, enable optimizing compiler by default ( #2130 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2024-03-07 15:26:45 +09:00
Takeshi Yoneda
77ad69f97c
interpreter: v128.store shouldn't commit change when offset overflows ( #2096 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2024-02-27 11:36:56 +09:00
Takeshi Yoneda
08998eda2d
wazevo(regalloc): spill the unused values with high priority ( #2082 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2024-02-20 16:22:09 +09:00
Takeshi Yoneda
9c0c7c4a02
wazevo(frontend): missing listener.After call in br_if target ( #2078 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2024-02-20 11:36:40 +09:00
Takeshi Yoneda
ea4a07e3cf
wazevo(amd64): imported func calls / global.get ( #1952 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2024-01-24 11:35:16 -08:00
Anuraag Agrawal
5c70d8bbcc
threads: add decoding of shared memory ( #1914 )
...
Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com >
2024-01-11 19:32:08 -08:00
Takeshi Yoneda
6515656e5f
Completes migration of enginetest to integration_tests ( #1707 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-09-14 10:02:18 +09:00
Takeshi Yoneda
5250820c1c
Migrates enginetest into integration tests ( #1705 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-09-13 13:56:25 +09:00
Takeshi Yoneda
c9019e6406
wazevo: supports for LookupFunction API ( #1704 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-09-13 12:36:56 +09:00
Takeshi Yoneda
b8262fe4fb
Lifts LookupFunction into ModuleInstance from ModuleEngine ( #1636 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-08-18 10:46:50 +09:00
Crypt Keeper
2f8dd23097
adds experimental sys.Errno to begin decoupling from the syscall package ( #1582 )
...
Signed-off-by: Adrian Cole <adrian@tetrate.io >
2023-07-17 08:13:29 +08:00
guangwu
df428249a3
chore: pkg imported more than once ( #1541 )
...
Signed-off-by: guoguangwu <guoguangwu@magic-shield.com >
2023-06-29 07:49:43 +08:00
Nuno Cruces
c8ee0baaf8
compiler: test traps report correct line numbers ( #1528 )
...
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com >
2023-06-20 08:04:02 +10:00
Crypt Keeper
e31856d360
updates external tool versions ( #1498 )
...
Signed-off-by: Adrian Cole <adrian@tetrate.io >
2023-06-02 15:53:29 +08:00
Takeshi Yoneda
256b7a4bf9
dwarf: ignores tombstone entries in inlined information ( #1488 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-05-22 15:56:33 +10:00
Anuraag Agrawal
714368bcea
Remove threads support ( #1487 )
...
Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com >
2023-05-22 12:18:36 +10:00
Anuraag Agrawal
f2c8caaf92
Generically convert to string in hammer recovery ( #1479 )
...
Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com >
2023-05-17 13:51:20 +10:00
Anuraag Agrawal
bc96257575
Implement WebAssembly threads proposal with interpreter ( #1460 )
...
Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com >
2023-05-16 12:22:17 +08:00
Takeshi Yoneda
80452a94c3
Bulk lazy initialization of FunctionDefinitions ( #1425 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
Co-authored-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-05-12 08:02:40 +10:00
Achille
78c35acd6e
experimental: remove return value of FunctionListener.Before ( #1453 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
Co-authored-by: Crypt Keeper <64215+codefromthecrypt@users.noreply.github.com >
2023-05-11 11:52:10 +08:00
Achille
a105c43629
experimental: remove error parameter from FunctionListener.After ( #1452 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
2023-05-11 06:48:26 +08:00
Thomas Pelletier
ef3d671195
experimental: split program counter and source offset resolution ( #1448 )
...
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
2023-05-09 13:34:01 -07:00
Achille
daad2fdb66
experimental: add FunctionListener and FunctionListenerFactory implementations ( #1444 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
2023-05-09 17:03:08 +08:00
Thomas Pelletier
ed17e523ba
experimental: expose source offset to Listener ( #1433 )
...
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
Co-authored-by: Achille Roussel <achille.roussel@gmail.com >
2023-05-09 08:18:27 +08:00
Takeshi Yoneda
f47b0d3362
Reduces FunctionDefinition usages ( #1419 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-05-01 10:37:43 +08:00
Nuno Cruces
77e8d72d67
api: adds CallWithStack to avoid allocations ( #1407 )
...
Signed-off-by: Nuno Cruces <ncruces@users.noreply.github.com >
2023-05-01 08:52:40 +09:00
Thomas Pelletier
0bfb4b52eb
Give Listener a read-only view of globals ( #1404 )
...
* experimental: give listener r/o view of globals
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* experimental: add global support to interpreter
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* exp: replace globals proxy with module interface
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* exp: trim down experimental.InternalModule
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* Replace globals view slice with constantGlobal
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* Fix tests after merge
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* Address PR feedback
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* Rename methods of experimental.Module
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* Run make check
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
* Add WazeroOnlyType to constantGlobal
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
---------
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
2023-04-29 00:07:28 -07:00
Takeshi Yoneda
3c1c76e2a1
debug: includes Go stack trace in the face of Go runtime errors ( #1401 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-04-25 10:45:20 +09:00
Thomas Pelletier
9aca08c5e6
Provide new StackIterator to Before Listener hook ( #1363 )
...
Signed-off-by: Thomas Pelletier <thomas@pelletier.codes >
2023-04-18 08:22:58 +09:00
Crypt Keeper
b9e03dc691
Makes host function index insertion order ( #1370 )
...
This makes host functions index consistently on insertion order, rather
than lexicographic order. This helps with ABI such as Emscripten, which
need an expected order.
This also constrains the internal code around host functions to only one
export name. More than one was never used. By restricting this, logic is
simpler and smaller.
Signed-off-by: Adrian Cole <adrian@tetrate.io >
2023-04-17 17:18:11 +01:00
Takeshi Yoneda
8ac9a54923
wasm: reduces allocs during import resolution ( #1361 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-04-13 12:35:04 +09:00
Takeshi Yoneda
3cbd881201
binary: makes NameMap and IndirectNameMap slices over values, not ptrs ( #1351 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-04-10 21:27:50 +09:00
Takeshi Yoneda
cc28399052
wazeroir: reuses allocated slices for a module ( #1342 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-04-05 20:26:44 +09:00
Takeshi Yoneda
fa722dd9e3
Implements api.Function directly over engine specific callEngine ( #1297 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-28 16:49:35 +09:00
Takeshi Yoneda
0857336746
Removes wasm.FunctionInstance type ( #1294 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-28 14:43:44 +09:00
Takeshi Yoneda
cd606bde04
Refactors NewModuleEngine and NewCallEngine ( #1291 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-27 09:40:55 +09:00
Takeshi Yoneda
a4226906cf
Deletes wasm.CallCtx ( #1280 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-24 17:00:43 -07:00
Crypt Keeper
451c792ee8
Avoids returning ExitError on exit code zero, and optimizes for no allocations ( #1284 )
...
Fixes #1283
Signed-off-by: Adrian Cole <adrian@tetrate.io >
2023-03-24 16:42:30 +01:00
Takeshi Yoneda
cd1110c088
Avoids allocation of exports map per instance ( #1275 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-23 16:37:56 +09:00
Takeshi Yoneda
cd05a22df2
Reduces allocations during instantiation ( #1267 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-22 18:55:58 +09:00
Takeshi Yoneda
e17a85146a
Holds wasm.Code as values on wasm.Module ( #1243 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-15 14:45:54 +09:00
Takeshi Yoneda
350e81e632
Holds function types as values, not ptrs in wasm.Module ( #1227 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-15 13:45:52 +09:00
Takeshi Yoneda
aba4ede088
Removes usage of host functions with Wasm optocdes ( #1241 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-15 13:42:53 +09:00
Takeshi Yoneda
e42987a17a
Holds memory/func defs, and validated elements as values in wasm.Module ( #1224 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-13 14:52:01 +09:00
Takeshi Yoneda
7466f0e7bd
Holds most fields as slice of values, not ptrs in wasm.Module ( #1221 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-13 12:50:36 +09:00
Takeshi Yoneda
24e4d5dfa0
Generates typeIDs at compilation time ( #1218 )
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-10 13:46:08 +09:00
Takeshi Yoneda
ad968dc3fe
Pass correct api.Module to host functions ( #1213 )
...
Fixes #1211
Previously, host functions are getting api.Module for the "originating" module,
which is the module for api.Function currently invoked, except that the api.Module
is modified by withMemory with the caller's memory instance, therefore there
haven't been no problem for most cases. The only issues were the methods
besides Memory() of api.Module, and this commit fixes them.
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io >
2023-03-08 15:05:48 +09:00
Edoardo Vacchi
117474c477
refactor binary encoding to its own package ( #1187 )
...
move binary encoder to its own package
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-03-03 07:21:22 +08:00