Volker
|
fcaa15d22d
|
Fix SWITCH start position detection and replace erroneous ValueStackManager
|
2018-08-11 18:12:40 +02:00 |
|
Volker
|
3e9c26f198
|
Add writeOpCode(int) for simpler handling of 2 byte opcodes
|
2018-08-11 16:18:01 +02:00 |
|
Volker
|
d7c13c018e
|
Use the new Non-trapping float-to-int conversions for Java like behavior.
|
2018-08-11 15:46:20 +02:00 |
|
Volker
|
0822d9af8c
|
END can not be outside of parent block
|
2018-08-10 20:35:17 +02:00 |
|
Volker
|
9b554b114b
|
calculate the block type of a if block for the conditional operator.
|
2018-08-10 18:52:29 +02:00 |
|
Volker
|
4e4fa8a28f
|
pass the ValueType to the return WasmBlockInstruction
|
2018-08-10 18:50:54 +02:00 |
|
Volker
|
b78e6054c6
|
Add getPopCount()
|
2018-08-10 18:25:38 +02:00 |
|
Volker
|
cd8dd10182
|
Add method getPushValueType()
|
2018-08-06 12:52:44 +02:00 |
|
Volker
|
d3e80bf709
|
Move method name creation into WasmCallInstruction
|
2018-08-06 12:46:18 +02:00 |
|
Volker
|
d16b2b63c2
|
Add constructor with ConstantRef
|
2018-08-06 12:44:47 +02:00 |
|
Volker
|
a736f41eb4
|
generalize exception handling
|
2018-08-06 12:23:42 +02:00 |
|
Volker
|
ff3662db43
|
The different writeConst summarized to one method
|
2018-08-05 18:27:06 +02:00 |
|
Volker
|
b1eb27c474
|
support dynamic result type for an if block
|
2018-08-05 14:45:18 +02:00 |
|
Volker
|
c8aecea7ab
|
Add getLastValueType()
|
2018-08-05 14:40:56 +02:00 |
|
Volker
|
a27733234f
|
use experimental Sign-extension operators
|
2018-08-03 21:49:42 +02:00 |
|
Volker
|
0df046a644
|
add TODO for not implemented byte codes
|
2018-08-03 19:41:21 +02:00 |
|
Volker
|
cc742b6259
|
docu
|
2018-08-03 18:29:53 +02:00 |
|
Volker
|
e3764913c3
|
negate compare condition of if operations in the branch manager instead on parsing the byte code.
|
2018-08-03 18:04:08 +02:00 |
|
Volker
|
fbe2d97fc6
|
Add negateCompare() and fix typos in method names.
|
2018-08-03 17:25:31 +02:00 |
|
Volker
|
ce82010721
|
pass the compare instruction of an IF operation to the branch manager
|
2018-08-03 15:17:07 +02:00 |
|
Volker
|
e1fa502b2d
|
docu
|
2018-08-03 12:50:12 +02:00 |
|
Volker
|
f2942bffc5
|
Improve the loop compiling and add support for while{} loops with condition on loop start.
|
2018-08-02 12:18:31 +02:00 |
|
Volker
|
9c1215720d
|
fix non i32 compare operations
|
2018-08-02 12:13:54 +02:00 |
|
Volker
|
4ce2fed5fa
|
add method for patching code position
|
2018-08-02 12:12:51 +02:00 |
|
Volker
|
3a74ebbe20
|
Finish refactoring with an intermediate model in the memory of WASM instructions.
|
2018-07-27 23:27:27 +02:00 |
|
Volker
|
d81da1f342
|
Use byte values for ValeTypes instead of Varint values. Prepare for ref
values.
|
2018-07-27 18:30:04 +02:00 |
|
Volker
|
776cf133bc
|
Use UNREACHABLE operation after endless loop.
|
2018-07-27 17:51:36 +02:00 |
|
Volker
|
bab58acebe
|
add branch operation after the creating the in memory model and not on
parsing.
|
2018-07-15 18:06:25 +02:00 |
|
Volker
|
949e3d2aa2
|
add method getCodePosition()
|
2018-07-15 18:04:18 +02:00 |
|
Volker
|
82ad07dd9e
|
Add a placeholder instruction
|
2018-07-15 18:02:44 +02:00 |
|
Volker
|
dde69e55c9
|
Add java code position to the WasmInstruction
|
2018-07-09 17:18:15 +02:00 |
|
Volker
|
24bfe22a51
|
Use an intermediate model in the memory of the parsed Java bytecode.
|
2018-06-21 18:49:55 +02:00 |
|
Volker
|
95afeb17a7
|
Next step of refactoring with an intermediate model in the memory of
WASM instructions.
|
2018-06-21 18:29:20 +02:00 |
|
Volker
|
c6ca470003
|
Move the end handling of a method into writeCode() to hold all code
operation together
|
2018-06-21 18:09:19 +02:00 |
|
Volker
|
7c9a081e96
|
First step of refactoring with an intermediate model in the memory of
the parsed Java bytecode.
|
2018-06-17 21:15:58 +02:00 |
|
Volker
|
0d72c9cd50
|
use annotation package from library
|
2018-06-11 19:06:03 +02:00 |
|
Volker
|
e6093fa495
|
fix JavaDoc
|
2018-06-10 21:00:51 +02:00 |
|
Volker Berlin
|
ecd61dcde7
|
Use a single CoeInputStream pro method instead chucks pro line number
|
2018-06-03 11:54:45 +02:00 |
|
Volker Berlin
|
0c83869a81
|
support the do while(condition) loop
|
2018-06-02 23:57:04 +02:00 |
|
Volker Berlin
|
9b3993450e
|
Fix "switch" with multiple "case" values for one block.
|
2018-06-01 22:04:34 +02:00 |
|
Volker Berlin
|
dea54b631c
|
Split ModuleWriter in ModuleWrite and ModuleGenerator
|
2018-06-01 19:44:40 +02:00 |
|
Volker Berlin
|
4a5518c69a
|
write import function parameters
|
2018-05-31 21:35:01 +02:00 |
|
Volker Berlin
|
ce78f9fe7a
|
Remove duplicate function types from type section.
|
2018-05-30 21:19:01 +02:00 |
|
Volker Berlin
|
19edad4898
|
extra return only if needed
|
2018-05-30 20:41:19 +02:00 |
|
Volker Berlin
|
6ffd004c2b
|
Add return values of method calls to the stack manager
|
2018-05-30 19:59:45 +02:00 |
|
Volker Berlin
|
7d53f8d549
|
handle function call to imported function.
|
2018-05-30 19:26:34 +02:00 |
|
Volker Berlin
|
88a584cd63
|
First step to support imports.
|
2018-05-30 18:57:36 +02:00 |
|
Volker Berlin
|
3e207615ac
|
add method getAnnotation
|
2018-05-30 18:31:17 +02:00 |
|
Volker Berlin
|
a94bf26365
|
extract class FunctionName
|
2018-05-21 14:29:32 +02:00 |
|
Volker Berlin
|
64fb45a6c5
|
fix compare operators
|
2018-05-20 16:11:27 +02:00 |
|