Ilya Rezvov
|
7a4735bbfc
|
fix some conversions
|
2018-04-11 15:29:51 -07:00 |
|
Ilya Rezvov
|
d64854aac1
|
clean up labels on exit from blocks and return correct type for i64 unary operations
|
2018-04-11 15:24:27 -07:00 |
|
Ilya Rezvov
|
11b6f4fdc8
|
fix if instruction execution
|
2018-04-11 14:54:05 -07:00 |
|
Ilya Rezvov
|
82c0433e5d
|
fix corner cases for float instructions
|
2018-04-11 11:08:41 -07:00 |
|
Ilya Rezvov
|
e0d9eeb51f
|
fix tee_local semantic
|
2018-04-10 21:59:54 -07:00 |
|
Ilya Rezvov
|
c644578d8b
|
fix memory growing behavior
|
2018-04-10 21:25:54 -07:00 |
|
Ilya Rezvov
|
c75900a2c8
|
fix loading of signed ints from memory
|
2018-04-10 21:09:58 -07:00 |
|
Ilya Rezvov
|
ab1782c982
|
fix int instructions
|
2018-04-10 21:02:37 -07:00 |
|
Ilya Rezvov
|
1fe669e762
|
use correct signed int representation
|
2018-04-10 20:50:26 -07:00 |
|
Ilya Rezvov
|
8514232513
|
fix offset parsing and one byte loading instruction
|
2018-04-10 19:48:02 -07:00 |
|
Ilya Rezvov
|
fd7ce7e450
|
fix copysign instruction
|
2018-04-10 16:56:42 -07:00 |
|
Ilya Rezvov
|
f6cae32148
|
fix float numbers parsing
|
2018-04-10 15:04:18 -07:00 |
|
Ilya Rezvov
|
f4e008ab9a
|
fix arguments order on function call
|
2018-04-10 09:17:26 -07:00 |
|
Ilya Rezvov
|
147f4224d3
|
implement grow memory instruction
|
2018-04-10 09:07:30 -07:00 |
|
Ilya Rezvov
|
3be5840c9a
|
implement grow_memory
|
2018-04-09 21:48:37 -07:00 |
|
Ilya Rezvov
|
d055a4ff6d
|
fix call_indirect evaluation
|
2018-04-09 21:41:17 -07:00 |
|
Ilya Rezvov
|
dac931b055
|
implement assert_return assertion
|
2018-04-09 15:08:48 -07:00 |
|
Ilya Rezvov
|
b7933df8c3
|
add actions interpretatiion
|
2018-04-09 14:36:14 -07:00 |
|
Ilya Rezvov
|
554a56fb63
|
pass nan with payload to token
|
2018-04-09 07:12:47 -07:00 |
|
Ilya Rezvov
|
8cd33831a1
|
'fix' type of br_if and comment multiple table definitions in test module
|
2018-04-08 20:06:25 -07:00 |
|
Ilya Rezvov
|
8ef3eadc9a
|
parse arithmetic nan
|
2018-04-08 19:47:10 -07:00 |
|
Ilya Rezvov
|
6b376ee4cb
|
fix elems validator
|
2018-04-08 17:51:04 -07:00 |
|
Ilya Rezvov
|
277cfad6ff
|
add host environment for script modules
|
2018-04-08 17:42:25 -07:00 |
|
Ilya Rezvov
|
7a66ff7150
|
provide imports for modules from registery
|
2018-04-08 12:50:36 -07:00 |
|
Ilya Rezvov
|
98d9ca2399
|
fix parsing binary modules from text representation
|
2018-04-08 11:54:29 -07:00 |
|
Ilya Rezvov
|
87758b2789
|
fix memory growing for empty data segments
|
2018-04-08 10:53:14 -07:00 |
|
Ilya Rezvov
|
8b5c7fa154
|
grow tables and memories on module initialization
|
2018-04-08 10:45:09 -07:00 |
|
Ilya Rezvov
|
d7641bcee2
|
fix implicit type extraction
|
2018-04-08 10:25:05 -07:00 |
|
Ilya Rezvov
|
43feccbf08
|
load modules in wasm script commands
|
2018-04-08 09:43:41 -07:00 |
|
Ilya Rezvov
|
8c8cec0498
|
update goals
|
2018-03-21 09:49:50 -07:00 |
|
Ilya Rezvov
|
8a22d84804
|
pass all tests
|
2018-03-20 21:52:02 -07:00 |
|
Ilya Rezvov
|
682e71defc
|
fix tokenizing of numbers and expressions of offset
|
2018-03-20 21:33:11 -07:00 |
|
Ilya Rezvov
|
3400a7c1ad
|
fix stack instructions parsing
|
2018-03-20 21:26:42 -07:00 |
|
Ilya Rezvov
|
e9c5ad8dac
|
fix function parsing
|
2018-03-20 21:11:59 -07:00 |
|
Ilya Rezvov
|
4ed8752744
|
add whole test files from Core Test Suit
|
2018-03-20 21:01:25 -07:00 |
|
Ilya Rezvov
|
d9849f77bf
|
parse wasm script grammar
|
2018-03-20 20:28:03 -07:00 |
|
Ilya Rezvov
|
4bf66b9295
|
fix module idents coding
|
2018-03-20 16:51:58 -07:00 |
|
Ilya Rezvov
|
13fecfe74b
|
Merge branch 'master' of github.com:SPY/haskell-wasm
|
2018-03-20 16:17:20 -07:00 |
|
Ilya Rezvov
|
952fa3bd97
|
add types for script extention
|
2018-03-20 16:17:10 -07:00 |
|
Ilya Rezvov
|
96cd65ac24
|
implement store operations
|
2018-03-19 11:36:12 -07:00 |
|
Ilya Rezvov
|
da6d15c63f
|
add loading instructions for i64
|
2018-03-19 11:10:23 -07:00 |
|
Ilya Rezvov
|
4d6a8d6d3f
|
add load instructions handling for primitive types and i32 parts
|
2018-03-18 22:18:54 -07:00 |
|
Ilya Rezvov
|
a4ed63fe53
|
implement relation float operations
|
2018-03-18 19:59:23 -07:00 |
|
Ilya Rezvov
|
3be5bd0648
|
implement binary float operations
|
2018-03-18 19:53:40 -07:00 |
|
Ilya Rezvov
|
8bcfdb18c5
|
add unary float operations
|
2018-03-18 19:46:45 -07:00 |
|
Ilya Rezvov
|
1ba3044aa5
|
implement numeric conversion instructions
|
2018-03-18 19:18:41 -07:00 |
|
Ilya Rezvov
|
4775c42207
|
implement test and unary integer operations
|
2018-03-16 10:32:36 -07:00 |
|
Ilya Rezvov
|
51f4cdfa53
|
fix arguments ordering for int binary operations
|
2018-03-16 10:11:06 -07:00 |
|
Ilya Rezvov
|
3d9cb6132b
|
make fact work
|
2018-03-15 21:53:02 -07:00 |
|
Ilya Rezvov
|
421d7db976
|
implement int rel operations
|
2018-03-15 21:02:38 -07:00 |
|
Ilya Rezvov
|
36225ea479
|
implement int bin operations
|
2018-03-15 20:53:45 -07:00 |
|
Ilya Rezvov
|
d5324acb40
|
implement call_indirect
|
2018-03-15 19:52:57 -07:00 |
|
Ilya Rezvov
|
6561ed0264
|
implement interpretation of control instruction
|
2018-03-15 19:42:24 -07:00 |
|
Ilya Rezvov
|
edbdeaec46
|
start instruction evaluator
|
2018-03-14 21:12:01 -07:00 |
|
Ilya Rezvov
|
1b4a79655f
|
store memory as word8 vector and do not grow mem and tables on initialization
|
2018-03-12 20:46:21 -07:00 |
|
Ilya Rezvov
|
8af5518e2b
|
initialize elem and data segments
|
2018-03-12 10:04:17 -07:00 |
|
Ilya Rezvov
|
93d6d4a417
|
allocate memories and tables
|
2018-03-11 19:11:19 -07:00 |
|
Ilya Rezvov
|
867092c820
|
add globals allocation
|
2018-03-07 16:35:36 -08:00 |
|
Ilya Rezvov
|
1dab371720
|
calculate module instance
|
2018-03-07 14:40:19 -08:00 |
|
Ilya Rezvov
|
a073456a63
|
adjust types to spec
|
2018-03-07 10:53:06 -08:00 |
|
Ilya Rezvov
|
efcd8f35e2
|
refactor interpreter types
|
2018-03-04 20:18:18 -08:00 |
|
Ilya Rezvov
|
c09397539f
|
store integer const instructions as words
|
2018-03-03 10:20:02 -08:00 |
|
Ilya Rezvov
|
b9e03584dd
|
start interpreter
|
2018-02-28 21:20:52 -08:00 |
|
Ilya Rezvov
|
6075818a56
|
const expression get_global can refer only imported constant globals
|
2018-02-27 15:45:39 -08:00 |
|
Ilya Rezvov
|
8012373a96
|
finish validation phase
|
2018-02-27 15:28:38 -08:00 |
|
Ilya Rezvov
|
6866c886f3
|
Merge branch 'master' of github.com:SPY/haskell-wasm
|
2018-02-26 15:48:20 -08:00 |
|
Ilya Rezvov
|
e373066ef5
|
add more validators
|
2018-02-26 15:48:11 -08:00 |
|
Ilya Rezvov
|
88696e4666
|
make tests green again
|
2018-02-25 16:12:56 -08:00 |
|
Ilya Rezvov
|
fdfdd14ace
|
pass more tests on validation stage
|
2018-02-25 12:28:51 -08:00 |
|
Ilya Rezvov
|
6a3a7d56a5
|
fix context building for typechecker
|
2018-02-25 11:28:51 -08:00 |
|
Ilya Rezvov
|
d53611c1e5
|
pass more tests
|
2018-02-25 09:53:28 -08:00 |
|
Ilya Rezvov
|
c7ecb055d4
|
fix types indexes in some cases
|
2018-02-25 09:19:54 -08:00 |
|
Ilya Rezvov
|
1366c63bf3
|
pass more tests
|
2018-02-25 08:52:44 -08:00 |
|
Ilya Rezvov
|
e05bcdd0cb
|
handle functions with empty body
|
2018-02-24 21:49:06 -08:00 |
|
Ilya Rezvov
|
55215f56de
|
pass more tests
|
2018-02-24 21:08:18 -08:00 |
|
Ilya Rezvov
|
254bfca5f8
|
fix function parsing
|
2018-02-24 20:36:11 -08:00 |
|
Ilya Rezvov
|
d69f0fed99
|
check expression types
|
2018-02-24 19:29:06 -08:00 |
|
Ilya Rezvov
|
89e0fb89ed
|
add instruction type signatures
|
2018-02-24 12:13:50 -08:00 |
|
Ilya Rezvov
|
e7978b8d48
|
properly handle order of params and result types in function type in call_indirect instruction
|
2018-02-23 17:01:22 -08:00 |
|
Ilya Rezvov
|
4c8a71de16
|
reduce shift/reduce conflicts
|
2018-02-23 16:40:40 -08:00 |
|
Ilya Rezvov
|
97ae291be5
|
handle call_indirect properly in raw instruction case
|
2018-02-23 16:17:11 -08:00 |
|
Ilya Rezvov
|
a30e6676ff
|
accept only folded form of instructions inside folded forms
|
2018-02-23 15:00:06 -08:00 |
|
Ilya Rezvov
|
31735c93aa
|
handle raw instructions properly
|
2018-02-23 14:52:03 -08:00 |
|
Ilya Rezvov
|
bf67333ec1
|
add test case for unhandled instructions representation
|
2018-02-23 11:23:36 -08:00 |
|
Ilya Rezvov
|
62bca80a3a
|
make validation result monoid instance
|
2018-02-21 20:52:46 -08:00 |
|
Ilya Rezvov
|
7bd2914148
|
add some validation checks
|
2018-02-21 20:14:39 -08:00 |
|
Ilya Rezvov
|
55a6b482ef
|
fix mem arg parsing
|
2018-02-19 18:48:50 -08:00 |
|
Ilya Rezvov
|
6a7b82086a
|
update readme
|
2018-02-19 18:41:40 -08:00 |
|
Ilya Rezvov
|
f1eae1969a
|
fix section parsing
|
2018-02-19 18:38:54 -08:00 |
|
Ilya Rezvov
|
928fa3a606
|
add deserializer for instructions and module
|
2018-02-19 18:36:17 -08:00 |
|
Ilya Rezvov
|
8dc40aa699
|
make serializer work correct
|
2018-02-19 14:30:06 -08:00 |
|
Ilya Rezvov
|
809d5bbf38
|
serialize code and data segments
|
2018-02-19 13:52:46 -08:00 |
|
Ilya Rezvov
|
37656d868a
|
add serializer for export, start and elem sections
|
2018-02-19 13:31:35 -08:00 |
|
Ilya Rezvov
|
9d784d03bd
|
pack/unpack int values
|
2018-02-19 12:52:20 -08:00 |
|
Ilya Rezvov
|
0029c68115
|
add put implememntation for insturction
|
2018-02-19 09:37:02 -08:00 |
|
Ilya Rezvov
|
f9239c52ee
|
serialize more sections
|
2018-02-18 22:59:02 -08:00 |
|
Ilya Rezvov
|
78653b911c
|
write import section
|
2018-02-18 22:46:19 -08:00 |
|
Ilya Rezvov
|
75bdf0637f
|
start binary format support
|
2018-02-18 19:03:21 -08:00 |
|
Ilya Rezvov
|
f6a2daefcc
|
fix tests
|
2018-02-18 10:20:24 -08:00 |
|
Ilya Rezvov
|
4f11058f4b
|
desugarize exports
|
2018-02-18 10:19:12 -08:00 |
|