svenbarth
2e259ee3cc
* the VMT of the exception class needs to be referenced indirectly
...
git-svn-id: trunk@43543 -
2019-11-21 21:44:48 +00:00
svenbarth
a041f899d3
* when creating the static field of a generic, insert it into the generic instead of the global symtable as it isn't really used anyway
...
git-svn-id: trunk@43542 -
2019-11-21 21:44:43 +00:00
svenbarth
06fc84037c
* ensure that generic symbols are not tried to be exported
...
git-svn-id: trunk@43541 -
2019-11-21 21:44:40 +00:00
svenbarth
da1312698b
* correctly check for the system unit
...
git-svn-id: trunk@43540 -
2019-11-21 21:44:36 +00:00
svenbarth
6151f7af29
* check the localswitches of the node instead of the global ones
...
git-svn-id: trunk@43539 -
2019-11-21 21:44:33 +00:00
svenbarth
6f584333e5
* symbols called by g_call might need to be imported from dynamic packages as well
...
git-svn-id: trunk@43538 -
2019-11-21 21:44:29 +00:00
svenbarth
85637ad5fa
* register constant symbols
...
git-svn-id: trunk@43537 -
2019-11-21 21:44:26 +00:00
svenbarth
f4d96906c2
* reference FPC_ABSMASK_SINGLE/-DOUBLE using the indirect symbol if required for dynamic packages
...
git-svn-id: trunk@43536 -
2019-11-21 21:44:22 +00:00
svenbarth
f13200d68b
* restore localswitch settings after the initialization and finalization code was generated
...
git-svn-id: trunk@43535 -
2019-11-21 21:44:19 +00:00
svenbarth
276f5bdef8
* ensure that nothing assembly related is generated for generics when a typed constant (this also includes local variable initializations) are parsed
...
git-svn-id: trunk@43534 -
2019-11-21 21:44:16 +00:00
svenbarth
04984e9af9
* also generate indirect symbols for AB_PRIVATE_EXTERN symbols as these might be used from a unit in another package due to inlining
...
git-svn-id: trunk@43533 -
2019-11-21 21:44:12 +00:00
florian
f5caa9940b
* make use of RemoveCurrentP
...
git-svn-id: trunk@43532 -
2019-11-21 20:19:49 +00:00
florian
61bf55e0fe
* define renamed
...
git-svn-id: trunk@43531 -
2019-11-21 19:58:48 +00:00
pierre
bfb4b885ca
Add riscv32 mathu inculde file, redirecting to ../riscv64/mathu.inc file (this file seems to have no 64-bit specific code)
...
git-svn-id: trunk@43530 -
2019-11-21 10:52:27 +00:00
pierre
ff415ba39c
Fixes by Gareth Moreton for problems exposed by use of -CriotR option
...
git-svn-id: trunk@43529 -
2019-11-21 10:00:20 +00:00
pierre
9bd19b050b
Also use syscall_nr_fstatat for FpStat function for riscv32 cpu
...
git-svn-id: trunk@43528 -
2019-11-20 23:04:33 +00:00
pierre
b990c59693
+ riscv32 cpu: Use SYSINIT_UNITS instead of LOADERS
...
* mips/mipsel cpus: pass -xgot on to AS call for LOADERS,
if OPT contains -ao-xgot.
git-svn-id: trunk@43527 -
2019-11-20 22:57:49 +00:00
pierre
0e0407ad57
Add si_XXX.inc files, pointing to riscv64 counterparts
...
git-svn-id: trunk@43526 -
2019-11-20 22:51:03 +00:00
pierre
23111a71ea
Add missing and needed syscall_nr_XXX
...
git-svn-id: trunk@43525 -
2019-11-20 22:48:47 +00:00
pierre
e8b9d8442e
Replace obsolete scall by ecall instruction
...
git-svn-id: trunk@43524 -
2019-11-20 22:48:06 +00:00
pierre
247f80abfb
prepare source to also support riscv32 code
...
git-svn-id: trunk@43523 -
2019-11-20 22:46:31 +00:00
pierre
a61a0cce4c
Use same entered_paren local variable as 64-bit counterpart and fix register names
...
git-svn-id: trunk@43522 -
2019-11-20 22:44:30 +00:00
florian
6248a127ca
* write assembler optimizer messages into output file if DEBUG_AOPTOBJ is set
...
git-svn-id: trunk@43521 -
2019-11-20 22:12:28 +00:00
florian
40c54e9d37
* do not generate conditional jump with full references
...
+ more assembler optimizer output
git-svn-id: trunk@43520 -
2019-11-20 22:12:27 +00:00
florian
da54d0e8f7
+ patch by J. Gareth Moreton: new method TAOptObj.CanDoJumpOpts and arm specific implementation
...
git-svn-id: trunk@43519 -
2019-11-20 22:12:27 +00:00
florian
f505822ab5
o patch by J. Gareth Moreton:
...
* fix jump optimizer for MIPS(EL).
+ New method called "MakeUnconditional" introduced that can do platform-specific changes
git-svn-id: trunk@43518 -
2019-11-20 22:12:26 +00:00
Mattias Gaertner
4ad0d137b1
pastojs: write generic function without body
...
git-svn-id: trunk@43517 -
2019-11-20 16:59:33 +00:00
pierre
7eb0be6127
Fix invalid typecast revealed by -CriotR by changing order of terms in boolean expression
...
git-svn-id: trunk@43515 -
2019-11-19 22:47:39 +00:00
michael
37a9cda682
* Treat 3.2 as 3.0.4
...
git-svn-id: trunk@43513 -
2019-11-18 16:00:03 +00:00
michael
269cb2d46a
* Fix bug ID #36147
...
git-svn-id: trunk@43511 -
2019-11-17 22:27:28 +00:00
florian
91f3f022fe
* MM registers which might not be changed can be still used in 3 op mathematical operations as source
...
git-svn-id: trunk@43509 -
2019-11-17 14:48:45 +00:00
florian
2d3ef8b4bc
* pushf/push cs on all platforms when directly calling an interrupt procedure, with the
...
recent changes needed for 16 byte stack alignment it should work now
git-svn-id: trunk@43508 -
2019-11-17 14:16:32 +00:00
michael
0b888bb4ce
* Accidentally made all published properties protected
...
git-svn-id: trunk@43507 -
2019-11-17 09:33:03 +00:00
florian
a7e72617a6
* fix stackmisalignment calculation to take care of pushf/push cs, before r43503,
...
it was correct by coincidence
git-svn-id: trunk@43506 -
2019-11-17 09:14:54 +00:00
Jonas Maebe
acbb456ae5
* fixed constant evaluation of shr of negative values after r43497
...
(tshlshr compiled with -O3)
git-svn-id: trunk@43504 -
2019-11-16 17:58:06 +00:00
florian
240acc10f8
* fix calculation of stackmisalignment for interrupt procedures as pointed out by Jonas
...
git-svn-id: trunk@43503 -
2019-11-16 17:46:39 +00:00
florian
3de38c4894
* naming of tests fixed
...
git-svn-id: trunk@43502 -
2019-11-16 17:18:04 +00:00
florian
60b3296594
* relax conditions in tcallnode.optimize_funcret_assignment, resolves #36279
...
git-svn-id: trunk@43501 -
2019-11-16 17:16:16 +00:00
florian
52cc02aa3b
* values passed to const parameters are not limited to registers and constants
...
git-svn-id: trunk@43500 -
2019-11-16 17:16:15 +00:00
Jonas Maebe
4fd670c6ec
* fixed missing masking of values after shifting them during inline
...
evaluation
o also only mask values when performing a constant evaluation of
"0 shl/shr x" during inline evaluation (just like when evaluating other
shl/shr operations)
git-svn-id: trunk@43497 -
2019-11-16 14:27:47 +00:00
florian
851accbb4b
* cse adjusted
...
git-svn-id: trunk@43496 -
2019-11-16 14:07:59 +00:00
florian
13ab35e3ef
* fix usage of ppumove generated shared libraries
...
git-svn-id: trunk@43495 -
2019-11-16 14:07:32 +00:00
florian
f5d5e84649
* more libunits
...
git-svn-id: trunk@43494 -
2019-11-16 14:04:46 +00:00
florian
a969097a80
* optimization Move removed 4 fixed
...
git-svn-id: trunk@43493 -
2019-11-16 14:04:02 +00:00
michael
a5479bd91b
* Add ellipsis, fix string type when wrapping
...
git-svn-id: trunk@43492 -
2019-11-16 13:26:06 +00:00
michael
e959e6165e
* Implement option to replace too-long words with asterisks (bug ID 33639)
...
git-svn-id: trunk@43491 -
2019-11-16 12:59:25 +00:00
michael
33ac2f8e97
* Fix overflow in case of disabled wordwrap (bug ID 33356)
...
git-svn-id: trunk@43490 -
2019-11-16 12:11:32 +00:00
michael
1460bf1112
* Fix bug ID #0035296 : need to handle really long words for memos
...
git-svn-id: trunk@43489 -
2019-11-16 11:30:37 +00:00
florian
18c5881e60
* update sharedlibs variable
...
git-svn-id: trunk@43488 -
2019-11-16 11:04:28 +00:00
florian
798a1b6219
* -P option for ppumove
...
git-svn-id: trunk@43487 -
2019-11-16 11:03:53 +00:00