Nikolay Nikolov
|
f32ef29253
* WebAssembly high level code generator: use the global.get and global.set
|
3 years ago |
Nikolay Nikolov
|
4db653998b
+ generate proper WebAssembly threadvar access when multithreading is turned on
|
3 years ago |
Nikolay Nikolov
|
9b16fafc52
+ generate exception checks after calls to fpc_overflow class in WebAssembly
|
3 years ago |
Nikolay Nikolov
|
b11434a6f8
+ WebAssembly: use the 64-bit div instruction, instead of an RTL helper for 64-bit division
|
3 years ago |
Nikolay Nikolov
|
e74797d411
* replaced several internal errors, related to the WebAssembly labels
|
3 years ago |
Nikolay Nikolov
|
6e4e3b8580
* fixed WebAssembly code generation in thlcgwasm.g_overflowCheck_loc (patch by Pierre)
|
3 years ago |
Nikolay Nikolov
|
8bea5dd41e
* WebAssembly code generation fix in thlcgwasm.a_op_reg_reg_reg_checkoverflow, based on patch by Pierre (but simplified, to use a single block)
|
3 years ago |
Pierre Muller
|
be969205ad
Do not alloc/dealloc NR_DEFAULTFLAGS for wasm32, as it is NR_NO
|
3 years ago |
Nikolay Nikolov
|
c4f9ec91c9
+ fix support for 8-byte records, held in a register pair on the WebAssembly target. This fixes #39524
|
3 years ago |
J. Gareth "Curious Kit" Moreton
|
2dc0995067
- Bug fix to new ADD/SUB optimisation where conditions are concerned
|
3 years ago |
Nikolay Nikolov
|
12a2c56461
- removed thlcgwasm.incblock, .decblock and br_blocks, as branching is now done
|
3 years ago |
Nikolay Nikolov
|
3094f75690
* WebAssembly code generation for 'case' nodes changed to use labels
|
3 years ago |
Nikolay Nikolov
|
6fe647ee3d
* moved the default procedure CurrRaiseLabel to the end of the procedure, not
|
3 years ago |
Nikolay Nikolov
|
5a0956d805
* use WebAssembly asm labels for the raise branch instruction in branchful
|
3 years ago |
Nikolay Nikolov
|
c96e203780
* moved the 'end_block' WebAssembly instruction before the 'exit' label right
|
3 years ago |
Nikolay Nikolov
|
1ce2fb8a4a
* use WebAssembly asm labels for generating code for the 'exit' statement
|
3 years ago |
Nikolay Nikolov
|
0662a0bd44
+ use WebAssembly asm labels for the code generation of 'break' statements as well
|
3 years ago |
Nikolay Nikolov
|
01dc62b127
+ introduced the use of asm labels for WebAssembly. Resolve them in
|
3 years ago |
Nikolay Nikolov
|
b91fc3a0d3
* fixed passing of singleton record parameters, containing a float in WebAssembly
|
3 years ago |
Nikolay Nikolov
|
3c58f26e83
* thlcgwasm.g_checkexceptions renamed .g_maybe_checkforexceptions, added also as
|
3 years ago |
Nikolay Nikolov
|
7110d1e48e
* use 'br_if' instead of 'if br end_if' sequence in the code, generated by
|
3 years ago |
Nikolay Nikolov
|
7afb665c92
+ insert exception flag check and branch after each function call, when
|
3 years ago |
Nikolay Nikolov
|
5be1bfeeca
+ added comment that states that raiseBr is only used in branchful exceptions mode
|
3 years ago |
Nikolay Nikolov
|
d02921d66b
+ introduced raiseBr, similar to exitBr, but will point to the current
|
3 years ago |
Nikolay Nikolov
|
5adec3ca98
+ workaround for WebAssembly treating the stack parameter of the store and load
|
3 years ago |
Nikolay Nikolov
|
0a383d8c0f
* fixed WebAssembly method pointer assignment
|
3 years ago |
Nikolay Nikolov
|
cc2fa67dfa
* fixed OS_S8 to OS_16 conversion for WebAssembly. This fixes test/cg/tcnvint6
|
3 years ago |
Nikolay Nikolov
|
d2726c2406
* fixed WebAssembly code generation for not(cbool64)
|
3 years ago |
Nikolay Nikolov
|
4fc763ac50
* fixed WebAssembly cbool support for OP_NOT
|
3 years ago |
Nikolay Nikolov
|
188a21bbfd
* fixed 'not(boolean64)' for WebAssembly
|
3 years ago |