Jonas Maebe
dd6e6eb26a
* disable tail recursion optimisation if there is a copy-back parameter
...
* handle fparainit in tail recursion optimisation (mantis #37397 )
git-svn-id: trunk@45823 -
2020-07-21 17:57:50 +00:00
florian
13cb57b2c3
+ Aarch64: trgcpu.get_spill_subreg: return MM sub register correctly, resolves #37393
...
git-svn-id: trunk@45814 -
2020-07-20 21:07:09 +00:00
Jonas Maebe
3fde3f23ce
* moved ios test object files to ios directory
...
+ added darwin/aarch64 test object files
git-svn-id: trunk@45803 -
2020-07-18 13:44:03 +00:00
florian
a57f3ba396
* patch by Sergey Larin to handle Native(U)Int conversions from/to variants, resolves #37339
...
git-svn-id: trunk@45797 -
2020-07-16 20:44:30 +00:00
florian
0cb21e8338
+ test for last commit
...
git-svn-id: trunk@45773 -
2020-07-11 20:31:00 +00:00
Jonas Maebe
fb23834367
* regenerated Makefiles again
...
git-svn-id: trunk@45766 -
2020-07-11 09:51:28 +00:00
florian
f6f5cb45a3
+ strip leading zeros in numeric labels in iso/extended pascal mode also in label declarations, resolves #37323
...
git-svn-id: trunk@45764 -
2020-07-11 07:12:37 +00:00
Jonas Maebe
350d2d92f9
* regenerated Makesfiles
...
git-svn-id: trunk@45762 -
2020-07-10 22:08:30 +00:00
florian
392d66a9ce
* variables can have the same name as the main program in iso mode, resolves #37322
...
git-svn-id: trunk@45757 -
2020-07-10 21:05:59 +00:00
pierre
ed9f390320
Fix ShowHistory, by avoiding ordering by TR_ID which is not monotoneous anymore
...
git-svn-id: trunk@45741 -
2020-07-07 23:05:43 +00:00
florian
f65f1bd802
* fix test to check result properly as pointed out by Bi0T1N in the bug tracker
...
git-svn-id: trunk@45739 -
2020-07-07 20:22:00 +00:00
pierre
604b9fd1fd
Use FPCOPT variable instead of OPT, to also pass BINUTILSPREFIX as -XP option for createlst and gparmake compilation
...
git-svn-id: trunk@45737 -
2020-07-07 11:40:36 +00:00
florian
3caacc529a
* fix abs() intrinsic optimisation, resolves #37301
...
git-svn-id: trunk@45732 -
2020-07-05 09:19:14 +00:00
florian
ff295bf349
* delay setting of pd_body and pd_implement till the header of a generic
...
procedure is parsed, resolves #37261
git-svn-id: trunk@45717 -
2020-06-30 20:36:51 +00:00
florian
d41f4c7c4e
* correctly handle sign/zero extensions for optimization "var3", resolves #37254
...
git-svn-id: trunk@45713 -
2020-06-29 20:36:54 +00:00
svenbarth
52678562e3
* correctly handle selection between Single and Double overloads for Currency
...
+ added test
git-svn-id: trunk@45707 -
2020-06-27 22:33:36 +00:00
svenbarth
eaa2a2006c
* fix for Mantis #37272 : also allow the empty set for dynamic array parameters; Delphi probably started to allow that together with array constructors.
...
+ added tests
git-svn-id: trunk@45706 -
2020-06-27 22:33:31 +00:00
svenbarth
d401639b24
* fix for Mantis #37251 : apply patches by Bi0T1N to implement the IsConstValue() intrinsic
...
+ added tests
git-svn-id: trunk@45695 -
2020-06-25 20:42:47 +00:00
florian
cb11e2568d
+ Xtensa: patch by Christo Crause to add optional MAC16 registers, resolves #37130
...
git-svn-id: trunk@45679 -
2020-06-22 19:05:13 +00:00
yury
e63c03125a
* Reworked tprocdef.is_implemented to fix a bug with the parentfp optimization. The bug was detected when using the llvm backend.
...
+ Added a test.
git-svn-id: trunk@45675 -
2020-06-21 19:52:14 +00:00
Jonas Maebe
3cb341eabc
* ensure that dispose(managed_ptr) does not result in multiple evaluations of
...
the managed_ptr expression
git-svn-id: trunk@45673 -
2020-06-21 15:10:38 +00:00
florian
a7c0fa0def
o patch for Xtensa by Christo Crause, resolves #37099
...
+ Added postfix parsing in tattreader.GetToken
- Removed all postfixed versions of OpCodes from the instruction list
+ Added all missing OpCodes from Xtensa ISA
* Changed branch OpCode to A_B, similar to ARM
+ Added missing branch condition flags BCI and BSI
* Updated existing compiler code that referred to the old postfixed instructions
+ Added prefix and postfix handling in TxtensaInstrWriter.WriteInstruction
* Updated TCPUAddNode.second_addfloat to specify .S postfix
* Updated tcpuunaryminusnode.second_float to specify .S postfix
+ Implemented prefix and postfix identification in txtensaattreader.is_asmopcode
* Adapted branch condition extraction to respect postfixes
* Changed itcpugas to call findreg_by_name_table from raatt.pas (same as issue #0037121 , difficult to test these changes without including a fix for the register name search problem)
git-svn-id: trunk@45672 -
2020-06-21 14:51:40 +00:00
florian
80111a0a60
* make local variables in assembler blocks working again after r44933
...
* test for #37218
git-svn-id: trunk@45667 -
2020-06-20 20:17:53 +00:00
yury
c15b6f4516
* Fixed the parentfp optimization for some cases when nested procvars are used.
...
git-svn-id: trunk@45664 -
2020-06-20 18:28:07 +00:00
florian
62c417c8bf
* temporarily fix #37034 by disabling the problematic optimization until the real cause is fixed
...
git-svn-id: trunk@45655 -
2020-06-15 19:57:39 +00:00
svenbarth
febeef03e4
* for adding procdefs to forwarddefs check for the specialization flag instead of whether it's a full specialization; fixes implicit finalization handlers on x86_64-win64 not being found
...
+ added tests
git-svn-id: trunk@45646 -
2020-06-13 18:42:31 +00:00
florian
50c48349d5
* check properly for i/o errors in the iso read helpers, resolves #37154
...
* CheckRead checks if reading caused an I/O error and returns false in this case
git-svn-id: trunk@45635 -
2020-06-10 20:47:58 +00:00
florian
aafc22bd74
+ optimize real operations with 0 and 1 if fast math is turned on
...
git-svn-id: trunk@45627 -
2020-06-08 20:33:27 +00:00
svenbarth
b3ddd4e786
* regenerate Makefiles
...
git-svn-id: trunk@45601 -
2020-06-06 17:18:48 +00:00
svenbarth
1c5d0220fe
* enable tests for the Nullable unit
...
git-svn-id: trunk@45527 -
2020-05-29 13:04:37 +00:00
michael
e0c5ac1682
* Add nullable (bug ID 0037128)
...
git-svn-id: trunk@45520 -
2020-05-28 09:39:35 +00:00
florian
8f88112bfe
* allow in iso mode constants selecting the branch to dispose of a variant record (no functional effect though), resolves #37085
...
git-svn-id: trunk@45519 -
2020-05-27 21:10:55 +00:00
florian
b4de0b2e9c
* insert fwait after fcompp, resolves #37136
...
git-svn-id: trunk@45500 -
2020-05-25 20:38:19 +00:00
svenbarth
1d4bbcef75
+ add additional overloads for FindResource and FindResourceEx so that mixtures of AnsiString and MAKEINTRESOURCE types as well as names can be used
...
+ added test for ReadComponentRes (which called the wrong FindResource before)
git-svn-id: trunk@45479 -
2020-05-23 21:24:01 +00:00
florian
809fb83334
* adapt optimizer to handle push/pop for stack alignment
...
* adapt test
git-svn-id: trunk@45477 -
2020-05-23 17:50:14 +00:00
svenbarth
90c1bf2e12
* add tests\test\unit\types directory to list of tested directories
...
git-svn-id: trunk@45463 -
2020-05-22 12:45:20 +00:00
florian
51da470757
* constrained type parameters are not undefined defs, resolves #37107
...
git-svn-id: trunk@45457 -
2020-05-21 18:19:08 +00:00
Jonas Maebe
a88eee4080
* fixed unitdir directive for relative paths in case the current module's
...
path is not set, broken by r43312 (mantis #37095 )
git-svn-id: trunk@45410 -
2020-05-17 21:27:00 +00:00
svenbarth
6b548b9016
* fix for Mantis #37042 : apply patch and test (adjusted for Big Endian) by Bi0T1N to add support for TBitConverter
...
git-svn-id: trunk@45409 -
2020-05-17 20:59:57 +00:00
Jonas Maebe
6f165b6c01
* fixed tests
...
o fixed use of loop counter after end of loop
o fixed reliance on old behaviour for int -> real typecasts
git-svn-id: trunk@45379 -
2020-05-16 13:31:28 +00:00
michael
f432bd9307
* Patch from Noel Duffy to add TrySTrToHost* functions
...
git-svn-id: trunk@45376 -
2020-05-16 13:11:28 +00:00
svenbarth
f0e8d5dfa6
* fix for Mantis #37043 : apply patch by Bi0T1N (including test) to add additional overloads for IntToHex including a rerouting of the ordinal helpers' ToHexString to use these overloads
...
git-svn-id: trunk@45370 -
2020-05-15 15:14:19 +00:00
florian
7a60e044e3
* simplify constant expressions after re-ordering, resolves #37062
...
git-svn-id: trunk@45360 -
2020-05-13 20:26:04 +00:00
pierre
c77ef7d6dd
Regenerate all Makefile's after change in utils/fpcm/fpcmake.ini to better support use of i386 compiler on x86_64 machines
...
git-svn-id: trunk@45356 -
2020-05-13 13:53:15 +00:00
michael
71e322d058
* Patch from Noel Duffy to improve IPV6 address parsing (bug ID tw37013)
...
git-svn-id: trunk@45350 -
2020-05-13 07:19:03 +00:00
florian
7a6bd84bc0
* cast only the longint
...
git-svn-id: trunk@45325 -
2020-05-10 12:52:17 +00:00
florian
b48c8d8596
* fixed test for 32 Bit targets
...
git-svn-id: trunk@45324 -
2020-05-10 09:04:13 +00:00
yury
a316229ef6
* Always use parentfp for forward-declared nested procedures.
...
git-svn-id: trunk@45320 -
2020-05-09 17:52:17 +00:00
nickysn
56b79257a1
* fixed fpmake invokation when building an i386-linux snapshot on a x86_64-linux host
...
git-svn-id: trunk@45298 -
2020-05-06 20:41:01 +00:00
yury
40504a6f9d
* If a nested procedure does not access its parent's frame pointer, optimize it by removing the hidden $parentfp parameter.
...
* Improved the tisogoto1.pp test.
git-svn-id: trunk@45292 -
2020-05-06 14:43:49 +00:00