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
yury
c1d124d497
* x86: Fixed peephole optimization introduced in r44233. tb0219 and tb0548 tests have failed with -O2 since then.
...
* Added variants of the tb0219 and tb0548 tests with forced -O2.
git-svn-id: trunk@45291 -
2020-05-06 14:18:44 +00:00
svenbarth
3d2945726a
* handle generic parameters in Ord()
...
+ added test
git-svn-id: trunk@45232 -
2020-05-03 15:08:31 +00:00
florian
b6097a0300
* correctly handle result type of string constant nodes for internally created
...
nodes
git-svn-id: trunk@45231 -
2020-05-03 12:41:17 +00:00
Jonas Maebe
722ad1ff7b
* support floating point parameters split over multiple locations, including
...
integer registers, for homogeneous records/arrays on ppc64le (related to
mantis #36934 )
git-svn-id: trunk@45205 -
2020-05-01 13:02:48 +00:00
Jonas Maebe
05923af386
* ppc64le: fix storing homogeneous 64 bit float parameters in case they are
...
split over just FPU registers and memory (related to mantis #36934 )
git-svn-id: trunk@45204 -
2020-05-01 13:02:45 +00:00
Jonas Maebe
d83232f881
* ELFv2: fixed homogeneous aggregate parameter passing when they should
...
overflow into integer registers (mantis #36934 )
git-svn-id: trunk@45199 -
2020-04-30 20:53:05 +00:00
nickysn
6f6598712f
* synchronized with trunk
...
git-svn-id: branches/z80@45131 -
2020-04-26 22:33:58 +00:00
svenbarth
a467332187
* fix for Mantis #36975 : arraydefs are not allowed for generic types (this is only used for type declarations; for specializing constant strings which are char arrays are still allowed)
...
+ added test
git-svn-id: trunk@45089 -
2020-04-26 11:46:10 +00:00
svenbarth
60345366f2
* fix for Mantis #35140 : apply patch by Ryan Joseph together with some further changes by me to add support for constant parameters in generics
...
+ added tests
git-svn-id: trunk@45080 -
2020-04-25 22:12:35 +00:00
nickysn
26ba399a66
* synchronized with trunk
...
git-svn-id: branches/z80@45056 -
2020-04-24 19:16:32 +00:00
svenbarth
bd01182ff0
* add support for AND, OR, XOR and NOT of integer values in preprocessor directives (Delphi allows that as well)
...
+ added test
git-svn-id: trunk@45053 -
2020-04-24 14:09:04 +00:00
nickysn
a189ea4b0b
* synchronized with trunk
...
git-svn-id: branches/z80@45010 -
2020-04-22 22:43:31 +00:00
svenbarth
5ef9a78f5f
* fix for Mantis #36951 : B and BL can take immediate literals as well
...
+ added test
git-svn-id: trunk@44999 -
2020-04-22 20:19:14 +00:00
nickysn
86643f8a34
* synchronized with trunk
...
git-svn-id: branches/z80@44981 -
2020-04-21 23:36:44 +00:00
svenbarth
184d6d61ed
* regenerate makefiles
...
git-svn-id: trunk@44958 -
2020-04-21 06:09:20 +00:00