Commit Graph

61660 Commits

Author SHA1 Message Date
nickysn
f8361cb5dd * fixed internal error with functions with ret_in_param result types and unitialized result
git-svn-id: branches/wasm@48234 -
2021-01-20 21:13:58 +00:00
nickysn
0651e88682 * fixed wasm32 compilation error in setjump.inc
git-svn-id: branches/wasm@48232 -
2021-01-20 20:57:42 +00:00
nickysn
ed9b14bc20 + allow int64 as for loop counter also for 32-bit targets with a 64-bit ALU
git-svn-id: branches/wasm@48229 -
2021-01-20 16:29:30 +00:00
nickysn
780ded903a * synchronized with trunk
git-svn-id: branches/wasm@48225 -
2021-01-19 23:01:55 +00:00
pierre
4111e13017 Avoid inlining of real constant for m68k if type is not best precision
git-svn-id: trunk@48224 -
2021-01-19 22:33:32 +00:00
pierre
0055023394 Also set __stkptr inside cprt0.as and dllprt0.as startup assembly sources
git-svn-id: trunk@48223 -
2021-01-19 22:30:59 +00:00
pierre
83a1f5fbc3 Also set __stkptr inside cprt0.as startup assembly source
git-svn-id: trunk@48222 -
2021-01-19 22:28:37 +00:00
florian
85afaf5289 * patch by J. Gareth Moreton: Unitialized result variable fix on non-x86 debug builds, resolves #38371
git-svn-id: trunk@48221 -
2021-01-19 21:04:41 +00:00
nickysn
2f233adda2 + dummy WASI heap functions
git-svn-id: branches/wasm@48220 -
2021-01-19 19:55:34 +00:00
nickysn
774f6f650d + dummy setjmp/longjmp implementation for WebAssembly
git-svn-id: branches/wasm@48219 -
2021-01-19 19:38:25 +00:00
nickysn
b8367e3152 + added fpc_cpuinit for WebAssembly
git-svn-id: branches/wasm@48218 -
2021-01-19 19:31:35 +00:00
nickysn
55db998529 + uncommented the setjump/longjump declarations, in order to get more of the RTL to compile
git-svn-id: branches/wasm@48217 -
2021-01-19 19:30:16 +00:00
nickysn
7a15157387 + dummy implementation of the code generator for the try..except node for WebAssembly
git-svn-id: branches/wasm@48216 -
2021-01-19 19:28:27 +00:00
nickysn
f99e74866d + dummy override of WebAssembly handle_nested_exception
git-svn-id: branches/wasm@48215 -
2021-01-19 19:20:02 +00:00
nickysn
2150d935cf + dummy override for WebAssembly free_exception
git-svn-id: branches/wasm@48214 -
2021-01-19 19:18:15 +00:00
nickysn
c5fae9f214 + implemented second_ansistring_to_pchar for WebAssembly
git-svn-id: branches/wasm@48213 -
2021-01-19 19:15:18 +00:00
nickysn
0f235f38ab + introduced thlcgwasm.a_loadaddr_ref_stack
git-svn-id: branches/wasm@48212 -
2021-01-19 19:11:17 +00:00
Mattias Gaertner
b460f87fd4 fcl-passrc: fixed checking statement after except-on
git-svn-id: trunk@48211 -
2021-01-19 19:08:26 +00:00
yury
30587299ea * TRegIniFile: When accessing a section do not change/close the current open key.
* TRegIniFile should work properly with the XML registry. The tregistry2 test should work on any platform.

git-svn-id: trunk@48210 -
2021-01-19 17:38:36 +00:00
yury
5d69ba2cd8 * TXmlRegistry: When a key name starts with \ or / it means the absolute path to the key is specified. So ignore the currently selected key when an absolute key is requested.
git-svn-id: trunk@48209 -
2021-01-19 17:30:11 +00:00
yury
050a342101 * Reverted r41816 to allow TXmlRegistry.DeleteKey() delete the key and all its children. It is Delphi compatible. Windows implementation of TRegistry.DeleteKey() was fixed accordingly.
git-svn-id: trunk@48208 -
2021-01-19 17:25:56 +00:00
yury
ffff24593d * To be Delphi compatible TRegistry.DeleteKey() must delete the specified key and all its child keys.
git-svn-id: trunk@48207 -
2021-01-19 17:21:18 +00:00
yury
2c196ee8a9 * TRegistryIniFile: Fixed uninitialized Result in ValueExists(). Implemented SectionExists().
git-svn-id: trunk@48206 -
2021-01-19 17:13:44 +00:00
yury
9fd0f94d7c * tregistry2 test: Delete reg.xml and the app config dir.
git-svn-id: trunk@48205 -
2021-01-19 17:10:55 +00:00
yury
a29bfe5505 * Moved the tregistry2.pp test from packages to tests in order it to be run by daily test runs. tregistry2 has been failing for years and nobody has noticed this.
git-svn-id: trunk@48204 -
2021-01-19 16:52:43 +00:00
yury
4bf19e9d92 * Extended the tregistry2 test.
git-svn-id: trunk@48203 -
2021-01-19 16:40:45 +00:00
nickysn
28b9d0c6b4 + dummy code generator for the try..finally blocks in WebAssembly
git-svn-id: branches/wasm@48202 -
2021-01-19 16:24:18 +00:00
nickysn
d5caaf792c * update comment about twasmifnode, since the WebAssembly 'if' instruction that
we emit is no longer hardcoded to return a value

git-svn-id: branches/wasm@48201 -
2021-01-19 16:13:45 +00:00
nickysn
0236da1da9 * changed the formatting in nwasmflw.pas to match the style of the rest of the compiler
git-svn-id: branches/wasm@48200 -
2021-01-19 16:11:54 +00:00
nickysn
d1c58ccf4b + override the try finally node for WebAssembly. No functional changes yet.
git-svn-id: branches/wasm@48199 -
2021-01-19 16:06:37 +00:00
nickysn
cc94ab3ab8 + implemented length() code generation for WebAssembly
git-svn-id: branches/wasm@48198 -
2021-01-19 14:32:23 +00:00
nickysn
888af282a4 + override the inline node for WASM
git-svn-id: branches/wasm@48197 -
2021-01-19 14:04:47 +00:00
nickysn
67909adcc3 + override tcgexceptionstatehandler for WASM and create a dummy new_exception
git-svn-id: branches/wasm@48196 -
2021-01-19 13:54:26 +00:00
nickysn
aafc6423f0 + introduced a_cmp_loc_reg_br, a_cmp_reg_loc_br and a_cmp_ref_loc_br
git-svn-id: branches/wasm@48195 -
2021-01-19 13:09:08 +00:00
nickysn
fe5dee892f + introduced a_cmp_subsetreg_reg_br and a_cmp_subsetref_reg_br
git-svn-id: branches/wasm@48194 -
2021-01-19 13:05:50 +00:00
nickysn
db4c786059 + introduced a_cmp_const_loc_br
git-svn-id: branches/wasm@48193 -
2021-01-19 13:03:03 +00:00
nickysn
f9d1a9b8e3 * decstack after each br_if in the a_cmp_XXX_br methods
git-svn-id: branches/wasm@48192 -
2021-01-19 13:00:42 +00:00
nickysn
e1b98a515a * fixed class name in comment
git-svn-id: branches/wasm@48191 -
2021-01-19 12:58:16 +00:00
nickysn
dbc7cb9001 * set expectloc correctly in the WASM add node (it is never LOC_FLAGS or LOC_JUMP, but LOC_REGISTER instead)
git-svn-id: branches/wasm@48190 -
2021-01-19 12:55:29 +00:00
Mattias Gaertner
25fd38b2da pastojs: fixed o as intftype, when o is nil
git-svn-id: trunk@48188 -
2021-01-19 09:42:56 +00:00
pierre
dc799a9d49 Fix clearing of single type register variable in initialize_regvars method for ARM cpu (with -Ooregvar)
git-svn-id: trunk@48186 -
2021-01-18 23:29:24 +00:00
nickysn
8021de82f6 * synchronized with trunk
git-svn-id: branches/wasm@48185 -
2021-01-18 23:11:34 +00:00
nickysn
a478e15836 - removed some commented out code
git-svn-id: branches/wasm@48184 -
2021-01-18 23:11:02 +00:00
nickysn
7f31c03718 * update the flowcontrol set in the IF node pass_generate_code
git-svn-id: branches/wasm@48183 -
2021-01-18 23:08:25 +00:00
nickysn
c0e7035e50 + set node location to LOC_VOID in the WebAssembly if node pass_generate_code
git-svn-id: branches/wasm@48182 -
2021-01-18 23:05:11 +00:00
nickysn
69c407dff5 + added dummy int64p.inc file for WebAssembly
git-svn-id: branches/wasm@48181 -
2021-01-18 22:50:22 +00:00
nickysn
9fdc8c141c + implemented the boolean NOT node for WebAssembly
git-svn-id: branches/wasm@48180 -
2021-01-18 22:48:24 +00:00
nickysn
af41eee9d1 + support references with only index reg, and no base reg in thlcgwasm.prepare_stack_for_ref
git-svn-id: branches/wasm@48179 -
2021-01-18 22:35:56 +00:00
nickysn
c4e8f091ec * generate jumpless code for the IN node for WebAssembly. TODO: this needs to be
refactored, so the WebAssembly-specific code generation code goes in the wasm
  in node descendant class.

git-svn-id: branches/wasm@48178 -
2021-01-18 22:32:35 +00:00
nickysn
c8e130d525 + added WebAssembly invalid register check in op_reg when compiler is compiled with EXTDEBUG
git-svn-id: branches/wasm@48177 -
2021-01-18 22:29:45 +00:00