Commit Graph

61520 Commits

Author SHA1 Message Date
nickysn
e85e10a8f2 - don't override push_high_param for WASM, use the generic 'high' handling
git-svn-id: branches/wasm@48066 -
2021-01-04 16:56:22 +00:00
nickysn
29ee9a648d - more JVM cleanup
git-svn-id: branches/wasm@48065 -
2021-01-04 16:51:13 +00:00
nickysn
d7695db80e - don't override def2regtyp
git-svn-id: branches/wasm@48064 -
2021-01-04 16:49:15 +00:00
nickysn
e04c1221a2 - don't override thlcgwasm.gen_load_return_value
git-svn-id: branches/wasm@48063 -
2021-01-04 16:47:43 +00:00
nickysn
e7ce1feed0 - more JVM leftovers cleanup
git-svn-id: branches/wasm@48062 -
2021-01-04 16:45:32 +00:00
nickysn
1f3ff5f496 - clean up more JVM stuff
git-svn-id: branches/wasm@48061 -
2021-01-04 16:44:01 +00:00
nickysn
542c3fca3e - more JVM methods removed
git-svn-id: branches/wasm@48060 -
2021-01-04 16:42:04 +00:00
nickysn
db1a4d57a2 - removed some more unneeded for WASM methods, copied from the JVM hl codegen
git-svn-id: branches/wasm@48059 -
2021-01-04 16:37:33 +00:00
nickysn
5b961c4125 - removed several JVM methods that aren't necessary for WebAssembly
git-svn-id: branches/wasm@48058 -
2021-01-04 16:34:28 +00:00
nickysn
04c14500a7 + added math.inc and set.inc
git-svn-id: branches/wasm@48057 -
2021-01-04 15:37:16 +00:00
nickysn
97430823cf * fix for the stack tracking in twasmaddnode.second_addboolean
git-svn-id: branches/wasm@48056 -
2021-01-04 15:32:27 +00:00
nickysn
5677e7ed81 * fixed crash with ifs with an empty then clause
git-svn-id: branches/wasm@48055 -
2021-01-04 15:26:39 +00:00
nickysn
f95b74f929 * fixed stack tracking in thlcgwasm.a_op_reg_reg_reg_checkoverflow
git-svn-id: branches/wasm@48054 -
2021-01-04 15:02:00 +00:00
nickysn
92ac6bace9 * stack tracking fix for trunc32 in thlcgwasm.a_op_stack
git-svn-id: branches/wasm@48053 -
2021-01-04 15:00:05 +00:00
nickysn
b84bb3e9c4 * fixed stack tracking in thlcgwasm.resizestackfpuval
git-svn-id: branches/wasm@48052 -
2021-01-04 14:59:10 +00:00
nickysn
c6aecf184b * fixed stack tracking in thlcgwasm.gen_load_uninitialized_function_result
git-svn-id: branches/wasm@48051 -
2021-01-04 14:57:54 +00:00
nickysn
bdaeda27c2 * fixed stack tracking in thlcgwasm.a_loadfpu_const_stack
git-svn-id: branches/wasm@48050 -
2021-01-04 14:57:07 +00:00
nickysn
0e395a0d06 * handle addresses just like integers in thlcgwasm.a_load_const_stack
git-svn-id: branches/wasm@48049 -
2021-01-04 14:53:35 +00:00
nickysn
450883ea2b * fixed stack tracking for 64-bit operations in thlcgwasm.a_op_stack
git-svn-id: branches/wasm@48048 -
2021-01-04 14:51:44 +00:00
nickysn
5ea9bd6924 + uncommented the 64-bit handling code in the wasm add node
git-svn-id: branches/wasm@48047 -
2021-01-04 14:45:11 +00:00
nickysn
3719383b94 + added stack tracking in the entry and exit code
git-svn-id: branches/wasm@48046 -
2021-01-04 14:36:32 +00:00
nickysn
bcb5c140d1 * free a stack slot after br_if
git-svn-id: branches/wasm@48045 -
2021-01-04 14:08:22 +00:00
nickysn
2212bd5f3c * fixed the stack tracking in twasmaddnode.second_addboolean
git-svn-id: branches/wasm@48044 -
2021-01-04 13:58:47 +00:00
nickysn
bfe4d44aef * call decstack after if in twasmifnode.pass_generate_code to keep track of the stack balance correctly
git-svn-id: branches/wasm@48043 -
2021-01-04 13:53:26 +00:00
nickysn
d85e70bbb4 * fixed the decstack balancing in thlcgwasm.a_cmp_stack_stack
git-svn-id: branches/wasm@48042 -
2021-01-04 13:51:14 +00:00
nickysn
d7b1d67cc6 - removed commented out code from thlcgwasm.a_cmp_stack_stack
git-svn-id: branches/wasm@48041 -
2021-01-04 13:50:18 +00:00
nickysn
68693b2890 + support <,<=,> and >= comparisons of address register types in thlcgwasm.a_cmp_stack_stack
git-svn-id: branches/wasm@48040 -
2021-01-04 13:49:14 +00:00
nickysn
11ae8e54a1 - removed the unused label parameter from a_cmp_stack_stack
git-svn-id: branches/wasm@48039 -
2021-01-04 13:35:24 +00:00
nickysn
5145681ccd * a_cmp_stack_label renamed a_cmp_stack_stack
git-svn-id: branches/wasm@48038 -
2021-01-04 13:33:40 +00:00
nickysn
0a0ec1de65 + adjust the stack properly on function calls
git-svn-id: branches/wasm@48037 -
2021-01-04 13:08:58 +00:00
nickysn
f86665b97f * drop unused return values from the stack
git-svn-id: branches/wasm@48036 -
2021-01-04 12:44:11 +00:00
nickysn
0cdd7d4d22 + support exit()
git-svn-id: branches/wasm@48035 -
2021-01-04 12:17:50 +00:00
nickysn
c92d27dadb * fixed formatting in thlcgwasm.a_jmp_always
git-svn-id: branches/wasm@48034 -
2021-01-04 12:01:10 +00:00
nickysn
f40bfcc662 + also call incblock and decblock in the second_addboolean for the shortcut boolean evaluation. This avoids breaking
break and continue inside inlined functions, used in an expression.

git-svn-id: branches/wasm@48033 -
2021-01-04 11:58:47 +00:00
nickysn
aa102564c5 * fixed the break and continue br depth calculation
git-svn-id: branches/wasm@48032 -
2021-01-04 11:55:01 +00:00
nickysn
3cc9ba9302 - don't push dummy zeros (they are useless and will be discarded), before branching for break/continue
git-svn-id: branches/wasm@48031 -
2021-01-04 11:36:32 +00:00
nickysn
0a923963a9 * use the eqz instruction instead of "xor 1" in twasmwhilerepeatnode.pass_generate_code_condition for reversing the condition
git-svn-id: branches/wasm@48030 -
2021-01-04 11:24:02 +00:00
nickysn
0fae32d2b7 * simplified if-then-else code generation, since we now support void 'if' instructions
git-svn-id: branches/wasm@48029 -
2021-01-04 11:06:41 +00:00
nickysn
b6735179ed * use a functype operand for a_if, instead of hardcoding
git-svn-id: branches/wasm@48028 -
2021-01-04 11:01:18 +00:00
nickysn
07c1783e24 * refactored call_indirect to use a 'functype' operand type. This type will be reused for block instructions as well.
git-svn-id: branches/wasm@48027 -
2021-01-04 10:50:06 +00:00
nickysn
6ef60815b8 * fixed the 'if' instruction syntax in the llvm-mc asm writer
git-svn-id: branches/wasm@48026 -
2021-01-04 10:11:29 +00:00
nickysn
ade8003fb5 * thlcgwasm.blocks renamed br_blocks, to ensure searching for it in the compiler
sources only finds this identifier (the word 'blocks' is used in too many
  other places and comments). No functional changes.

git-svn-id: branches/wasm@48023 -
2021-01-04 06:47:40 +00:00
nickysn
052d1bc38a * synchronized with trunk
git-svn-id: branches/wasm@48022 -
2021-01-04 02:57:44 +00:00
florian
7d5b0d2382 * handle rawbytestrings in Win32Ansi2UnicodeMove properly, resolves #38299
git-svn-id: trunk@48021 -
2021-01-03 22:55:37 +00:00
pierre
f2568e37e4 Add testing for single float type in trndmode.pp
git-svn-id: trunk@48020 -
2021-01-03 22:03:27 +00:00
pierre
57861c934d Check also that SetRoundMode returns correctly previous rounding mode
git-svn-id: trunk@48019 -
2021-01-03 21:55:35 +00:00
pierre
3362abb30c * Set softfloat_rounding_mode indise SetRoundMode function for all CPUs.
* SetRoundMode returns previous rounding mode value for all CPUs.

git-svn-id: trunk@48018 -
2021-01-03 21:44:18 +00:00
florian
9592c033e5 * process fma intrinsic parameters in an order which takes care of multiple x87 stack parameters, resolves #38295
git-svn-id: trunk@48017 -
2021-01-03 17:08:58 +00:00
michael
743e7c1c1b * Forgot to commit
git-svn-id: trunk@48014 -
2021-01-03 15:30:41 +00:00
marco
1332915a10 * still add files that start with ., just not to FTS
git-svn-id: trunk@48013 -
2021-01-03 15:21:43 +00:00