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
florian
12adb47d65
* clean up
...
git-svn-id: trunk@48011 -
2021-01-03 15:03:27 +00:00
michael
7ee4954b0b
* Refactor HTML engine so it can more easily be extended
...
git-svn-id: trunk@48010 -
2021-01-03 14:08:48 +00:00
michael
7be3d2f80c
* get rid of some warnings
...
git-svn-id: trunk@48009 -
2021-01-03 14:08:02 +00:00
svenbarth
b8578f804f
* fix compilation on targets that use Stabs debug information: ignore generic dummy symbols with no procdefs for generating stabs data
...
git-svn-id: trunk@48007 -
2021-01-03 12:11:44 +00:00
svenbarth
4a274cd63a
+ add a copyright/license header for the nullable unit
...
git-svn-id: trunk@48006 -
2021-01-03 12:11:40 +00:00
michael
1afca037c6
* Help for markdown
...
git-svn-id: trunk@48005 -
2021-01-03 08:37:52 +00:00
Mattias Gaertner
9825d3b552
pastojs: filer export nameexpr
...
git-svn-id: trunk@48004 -
2021-01-03 01:06:04 +00:00
Mattias Gaertner
e911431ed4
fcl-passrc: parser: export unit.symbol, resolver: started library export
...
git-svn-id: trunk@48003 -
2021-01-03 01:04:26 +00:00
svenbarth
c96029ebd5
* Delphi does not allow a generic method to be overloaded by a non generic type of the same name (unlike for generic types and non generic routines); this is probably done to simplify the implementation of implicit specializations of generic methods so we do this as well. For this we change the dummy symbol for generic routines from a typesym to a procsym
...
+ added tests
Note: what Delphi /does/ allow however is to overload a generic routine with a generic type... go figure. :/ We currently don't allow that
git-svn-id: trunk@48002 -
2021-01-02 23:23:39 +00:00
svenbarth
7343e9c4a2
* correctly handle the case should the generic dummy symbol be a procsym instead of a typesym
...
git-svn-id: trunk@48001 -
2021-01-02 23:23:34 +00:00
svenbarth
e4eed4e259
* when only a symbol name is provided to generate_specialization_phase1 allow a symbol table to be provided as well
...
git-svn-id: trunk@48000 -
2021-01-02 23:23:29 +00:00
svenbarth
a65d778f73
* also handle call nodes when determining the generic symbol for inline specializations
...
git-svn-id: trunk@47999 -
2021-01-02 23:23:24 +00:00
svenbarth
f42b39a7b5
* use a case statement instead of nested if-then statements
...
git-svn-id: trunk@47998 -
2021-01-02 23:23:20 +00:00
svenbarth
43ba5b69d2
* ensure that the dummy symbol is registered if it's added due to a routine
...
git-svn-id: trunk@47997 -
2021-01-02 23:23:16 +00:00
svenbarth
9179f9d43b
* always add a generic dummy if it is a procsym
...
git-svn-id: trunk@47996 -
2021-01-02 23:23:12 +00:00
svenbarth
d854d18bd9
* instead of blindly consuming whatever comes next trigger an explicit error if the parsed expression does not match for "INDEX ordexpr" or "NAME strexpr"
...
+ added tests
git-svn-id: trunk@47995 -
2021-01-02 23:23:08 +00:00
nickysn
5524de3be8
- removed redundant comment
...
git-svn-id: branches/wasm@47994 -
2021-01-02 23:09:43 +00:00
nickysn
8f376d1be9
+ added WASI to the main RTL makefile
...
git-svn-id: branches/wasm@47993 -
2021-01-02 22:58:19 +00:00
nickysn
67206943e8
+ added WASI RTL makefile
...
git-svn-id: branches/wasm@47992 -
2021-01-02 22:56:43 +00:00
nickysn
e7cd823692
* fixed -Sew warnings in agwat.pas
...
git-svn-id: branches/wasm@47991 -
2021-01-02 22:51:13 +00:00
nickysn
5c4e4228f6
+ handle all cases in hlcgcpu.pas to avoid warning with -Sew
...
git-svn-id: branches/wasm@47990 -
2021-01-02 22:43:52 +00:00
nickysn
5a98127ae6
+ added makefile.cpu for wasm32
...
git-svn-id: branches/wasm@47989 -
2021-01-02 22:27:30 +00:00
nickysn
cf6c173653
* regenerated makefiles
...
git-svn-id: branches/wasm@47988 -
2021-01-02 22:25:27 +00:00