Ilya Rezvov
|
7d199ddc03
|
fix some errors
|
2018-05-28 16:33:20 -07:00 |
|
Ilya Rezvov
|
f8bec75b25
|
attempt to make it work
|
2018-05-28 14:45:51 -07:00 |
|
Ilya Rezvov
|
1cf668408a
|
unify name convention for signed/unsigned operations
|
2018-05-27 15:29:31 -07:00 |
|
Ilya Rezvov
|
ddf89644ce
|
make inc and dec polymorphic
|
2018-05-27 14:49:49 -07:00 |
|
Ilya Rezvov
|
3926e5b9f1
|
make export combinator polymorphic
|
2018-05-27 11:59:27 -07:00 |
|
Ilya Rezvov
|
330fb93f0f
|
introduce polymorphic result types for combinators
|
2018-05-27 11:17:26 -07:00 |
|
Ilya Rezvov
|
95318c86fc
|
wrap instruction for builder
|
2018-05-25 11:30:08 -07:00 |
|
Ilya Rezvov
|
4ec5a0fcbf
|
two more helpers for builder
|
2018-05-24 16:22:05 -07:00 |
|
Ilya Rezvov
|
9d1ce5a630
|
more instructions for builder
|
2018-05-24 11:36:34 -07:00 |
|
Ilya Rezvov
|
a0bdcae94a
|
fix memarg binary parsing
|
2018-05-23 11:48:45 -07:00 |
|
Ilya Rezvov
|
705b43af34
|
add more operations
|
2018-05-23 09:38:21 -07:00 |
|
Ilya Rezvov
|
05ad97a30e
|
fix binary generation
|
2018-05-22 18:47:10 -07:00 |
|
Ilya Rezvov
|
ba6f26b06d
|
add export directives
|
2018-05-22 15:06:39 -07:00 |
|
Ilya Rezvov
|
96dd6a8a40
|
export nop instruction
|
2018-05-18 11:42:02 -07:00 |
|
Ilya Rezvov
|
d2d767d122
|
add partial memory instructions for builder
|
2018-05-17 13:28:34 -07:00 |
|
Ilya Rezvov
|
9ca5353b0f
|
extend supported instructions set
|
2018-05-16 14:45:34 -07:00 |
|
Ilya Rezvov
|
edf072ed2a
|
add more generators
|
2018-05-13 15:12:13 -07:00 |
|
Ilya Rezvov
|
5986526167
|
implement more operations for generation
|
2018-05-13 10:37:09 -07:00 |
|
Ilya Rezvov
|
2db6b2db41
|
add if expression form
|
2018-05-13 09:41:29 -07:00 |
|
Ilya Rezvov
|
1330eb41f6
|
start builder api
|
2018-05-12 22:37:50 -07:00 |
|
Ilya Rezvov
|
8ca3319ba4
|
add wasm executable
|
2018-05-10 13:39:43 -07:00 |
|
Ilya Rezvov
|
4601666eab
|
stabilize inline exports extraction algorithm
|
2018-04-26 20:19:19 -07:00 |
|
Ilya Rezvov
|
0a7b417605
|
reduce deep of code
|
2018-04-25 13:47:11 -07:00 |
|
Ilya Rezvov
|
abc546723d
|
reduce code duplication
|
2018-04-25 11:16:41 -07:00 |
|
Ilya Rezvov
|
fc2eb97647
|
use ExceptT transformer to clarify interpreter code
|
2018-04-25 10:49:58 -07:00 |
|
Ilya Rezvov
|
70f207d02d
|
extract storing code to common function
|
2018-04-24 21:07:12 -07:00 |
|
Ilya Rezvov
|
a619e1b742
|
extract load instructions to generic function
|
2018-04-24 19:08:31 -07:00 |
|
Ilya Rezvov
|
9d14c233c5
|
fix parsing of multiple folded instructions in if predicate expression
|
2018-04-24 16:12:52 -07:00 |
|
Ilya Rezvov
|
081d6ded2a
|
use single rule for all index refences
|
2018-04-24 15:37:43 -07:00 |
|
Ilya Rezvov
|
6157cbb492
|
update readme
|
2018-04-21 11:28:03 -07:00 |
|
Ilya Rezvov
|
5356e0b435
|
pass all tests
|
2018-04-21 11:24:05 -07:00 |
|
Ilya Rezvov
|
d0b5535bb2
|
pass all assert_trap tests
|
2018-04-21 10:58:34 -07:00 |
|
Ilya Rezvov
|
c073d85d74
|
calculate offset without uint32 overflow
|
2018-04-21 10:46:29 -07:00 |
|
Ilya Rezvov
|
56f9aea99d
|
check if target and local type of call_indirect are the same
|
2018-04-21 10:39:23 -07:00 |
|
Ilya Rezvov
|
7726eb7505
|
protect memory access with traps
|
2018-04-21 10:11:37 -07:00 |
|
Ilya Rezvov
|
e99c7c427b
|
check sign-sensitive division arguments for trap conditions
|
2018-04-21 09:40:18 -07:00 |
|
Ilya Rezvov
|
49719b64cd
|
implement assert_trap assertion
|
2018-04-21 08:59:31 -07:00 |
|
Ilya Rezvov
|
3c882a97d1
|
check validity of all data and elem segments before updating store on initialization
|
2018-04-20 19:24:39 -07:00 |
|
Ilya Rezvov
|
108eb0c0ee
|
check imported values types
|
2018-04-20 19:11:09 -07:00 |
|
Ilya Rezvov
|
a8459fb541
|
do not grow tables on initialization. again
|
2018-04-19 16:25:27 -07:00 |
|
Ilya Rezvov
|
80f61158d7
|
do not grow memory for data segments
|
2018-04-19 16:17:28 -07:00 |
|
Ilya Rezvov
|
a7962d69c2
|
implemented assert_unlinkable assertion
|
2018-04-19 13:32:07 -07:00 |
|
Ilya Rezvov
|
1720730df5
|
pass assert_malformed tests
|
2018-04-18 22:42:47 -07:00 |
|
Ilya Rezvov
|
78e59dea8f
|
add length constraint check for LEB128 encoded integers
|
2018-04-16 21:47:38 -07:00 |
|
Ilya Rezvov
|
fbadde5c3a
|
improve alignment parsing
|
2018-04-16 21:02:26 -07:00 |
|
Ilya Rezvov
|
7dfbe2775e
|
fix call_inderect type use parsing
|
2018-04-16 20:51:04 -07:00 |
|
Ilya Rezvov
|
b27ce14618
|
check if length of code section equals of length of function type section
|
2018-04-16 20:11:46 -07:00 |
|
Ilya Rezvov
|
b27a89cc17
|
fix int literals parsing
|
2018-04-16 20:00:20 -07:00 |
|
Ilya Rezvov
|
cb7fee3d45
|
check imports appear before any other definitions
|
2018-04-16 16:08:38 -07:00 |
|
Ilya Rezvov
|
f046ab3cfa
|
check if aux type signature match referred type
|
2018-04-16 15:54:10 -07:00 |
|
Ilya Rezvov
|
6c4183c930
|
check if optional labels match for block instructions
|
2018-04-16 15:37:28 -07:00 |
|
Ilya Rezvov
|
035ffe05da
|
check if name is valid utf8 string
|
2018-04-16 14:35:05 -07:00 |
|
Ilya Rezvov
|
be47aa7d43
|
fail on too long offset and align constants
|
2018-04-15 19:08:27 -07:00 |
|
Ilya Rezvov
|
a1ae58b5f7
|
make parser monadic
|
2018-04-15 18:54:39 -07:00 |
|
Ilya Rezvov
|
a5e16c6e7b
|
add MIT license
|
2018-04-15 16:28:04 -07:00 |
|
Ilya Rezvov
|
09f4b15d2c
|
implemented assert_malformed assertion and added NFData instances for all parsing types
|
2018-04-15 16:16:11 -07:00 |
|
Ilya Rezvov
|
73124a3eff
|
pass all assert_invalid tests
|
2018-04-14 17:11:47 -07:00 |
|
Ilya Rezvov
|
d7dc05b157
|
update tests from core repo
|
2018-04-14 16:35:18 -07:00 |
|
Ilya Rezvov
|
681e0e3eca
|
fix br_if typing
|
2018-04-14 16:31:21 -07:00 |
|
Ilya Rezvov
|
d0b1092064
|
simplify validation algorithm
|
2018-04-14 13:38:09 -07:00 |
|
Ilya Rezvov
|
23ed83a42e
|
fix parsing of functions with incorrect type indexes
|
2018-04-13 16:56:25 -07:00 |
|
Ilya Rezvov
|
16bbc3d198
|
implement assert_invalid assertion
|
2018-04-13 14:25:23 -07:00 |
|
Ilya Rezvov
|
b2a0d2c86e
|
pass return_nan tests
|
2018-04-12 14:17:01 -07:00 |
|
Ilya Rezvov
|
2955456e26
|
pass all assert_return tests
|
2018-04-11 21:15:56 -07:00 |
|
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 |
|