svenbarth
1abc9c1fe7
* when specializing a routine all nested specializations must go to the para- or localsymtable as otherwise the symbol can't be found to be registered
...
git-svn-id: trunk@43568 -
2019-11-24 00:04:31 +00:00
svenbarth
6edf6cad2c
* also check for Nil symtables in tsymtable.includeoption
...
git-svn-id: trunk@43567 -
2019-11-24 00:04:27 +00:00
svenbarth
d79e2ee9da
* also store, reset and restore the current module's procinfo
...
git-svn-id: trunk@43566 -
2019-11-24 00:04:23 +00:00
pierre
c882828fd0
Minimalist change to avoid Invalid Typecast error on class when compiled with '-CriotR -O2' for i386-go32v2 target
...
git-svn-id: trunk@43565 -
2019-11-23 22:44:30 +00:00
michael
f7d6192905
* Show --stop-on-parser-error in help
...
git-svn-id: trunk@43564 -
2019-11-23 13:40:49 +00:00
michael
77103fe7f2
* Report error with correct exit code
...
git-svn-id: trunk@43563 -
2019-11-23 13:34:45 +00:00
michael
a23ed797e6
* Fix bug ID #0036335 : console pops up when getting compiler info
...
git-svn-id: trunk@43562 -
2019-11-23 08:03:12 +00:00
pierre
8ea92a8280
Use correct macro to for 64-bit riscv CPU
...
git-svn-id: trunk@43561 -
2019-11-22 21:29:19 +00:00
Jonas Maebe
ff919184d8
* restored original behaviour of shl/shr constant evaluation outside
...
inline statements
o fixes compilation of pasjpeg with -Cr
git-svn-id: trunk@43560 -
2019-11-22 21:12:00 +00:00
Jonas Maebe
0f46207776
* fixed (harmless) range error when expanding ~
...
git-svn-id: trunk@43559 -
2019-11-22 21:11:56 +00:00
michael
cf203a6590
* Add column separator
...
git-svn-id: trunk@43558 -
2019-11-22 15:15:15 +00:00
michael
0c25ada935
* Add header row
...
git-svn-id: trunk@43557 -
2019-11-22 14:44:14 +00:00
michael
94e0b499df
* Add boolean field length correction
...
git-svn-id: trunk@43556 -
2019-11-22 14:25:35 +00:00
michael
d3733c4718
* Add boolean field length correction
...
git-svn-id: trunk@43555 -
2019-11-22 14:25:15 +00:00
pierre
17c422c3f2
Patch by Gareth Moreton.
...
* TAOptObj.CollapseZeroDistJump: Change hp1 to local variable,
initialized as p.next, to avoid problems of dangling pointers
revealed by use of "-CriotR -O2" compilation arguments.
git-svn-id: trunk@43554 -
2019-11-22 09:10:32 +00:00
florian
98226d33b7
* do not optimize inline nodes which are part of call node which has an init and/or cleanup block, resolves #36323
...
git-svn-id: trunk@43553 -
2019-11-21 22:15:06 +00:00
svenbarth
3e9bfedbc4
* ensure that the required functions are referenced for Win32 SEH for packages as well
...
git-svn-id: trunk@43552 -
2019-11-21 21:45:21 +00:00
svenbarth
40c11baaac
* use a different name for the packages' entry point and use _DLLMainCRTStartup as an alias to avoid problems with the C-prefix
...
git-svn-id: trunk@43551 -
2019-11-21 21:45:18 +00:00
svenbarth
bb3b1b06a7
* fix condition for including a unit's object files or not when compiling with packages
...
git-svn-id: trunk@43550 -
2019-11-21 21:45:15 +00:00
svenbarth
2a1d26cc90
* use translateable error messages for undefined symbols and also report in which object file the symbol was first found
...
git-svn-id: trunk@43549 -
2019-11-21 21:45:11 +00:00
svenbarth
1e66b2464a
* regenerate msg*.inc files after adding new error messages for undefined symbols
...
git-svn-id: trunk@43548 -
2019-11-21 21:45:08 +00:00
svenbarth
f28ac2bfc6
+ add error messages for undefined symbols (both with a known object file and without)
...
git-svn-id: trunk@43547 -
2019-11-21 21:45:04 +00:00
svenbarth
cd7e3f354b
+ add a description for the link_e_comdat_selection_differs message
...
git-svn-id: trunk@43546 -
2019-11-21 21:45:01 +00:00
svenbarth
4b3ce0c023
* the symbol of the interface wrapper function needs to be considered as referenced as well
...
git-svn-id: trunk@43545 -
2019-11-21 21:44:57 +00:00
svenbarth
0a915e883e
* keep track of static symbols that a global function references, as those must now be exported from a dynamic package as well if the function can potentially be inlined
...
git-svn-id: trunk@43544 -
2019-11-21 21:44:53 +00:00
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