svenbarth
97c8464b11
* fix for Mantis #36738 : when copying a record using its copy operator we assume that we've copied the whole record; this way managed records inside non-managed records are handled correctly
...
+ added (adjusted) test
git-svn-id: trunk@44257 -
2020-03-02 22:04:45 +00:00
svenbarth
8003f675c5
+ add test for already fixed Mantis #24283
...
git-svn-id: trunk@44249 -
2020-02-28 16:29:14 +00:00
florian
af1a4c06c5
* fixed generic round(...) for large values based on a comment by Alexander Hofmann on fpc-devel
...
* extended test
git-svn-id: trunk@44235 -
2020-02-23 10:41:18 +00:00
florian
4dff373fef
* (modified) patch by J. Gareth Moreton: processor-aware MOVZX optimisation cleanup, resolves #36687
...
git-svn-id: trunk@44233 -
2020-02-22 18:37:38 +00:00
florian
c146aecc01
* throw an error if the forward interface type and the actual interface type do not match, resolves #36720
...
git-svn-id: trunk@44230 -
2020-02-21 20:35:27 +00:00
florian
66aa2e1416
* fixed tests for architectures with FPC_COMP_IS_INT64 defined
...
git-svn-id: trunk@44222 -
2020-02-20 20:51:46 +00:00
florian
bb6028a275
* AArch64: the PIC code needs also more registers, so use the same ifdefs as arm and sparc
...
git-svn-id: trunk@44217 -
2020-02-19 21:10:20 +00:00
florian
200de64085
* aarch64 suffers also from the limited tan precision of the softfpu
...
git-svn-id: trunk@44212 -
2020-02-18 21:37:06 +00:00
florian
2214677656
* tests need -CE
...
git-svn-id: trunk@44206 -
2020-02-17 20:36:35 +00:00
svenbarth
2ad3c6dd97
* fix global generic functions with constraints in mode Delphi by handling implementations with defines outside of parse_generic_parameters
...
+ added tests
git-svn-id: trunk@44189 -
2020-02-16 09:53:37 +00:00
florian
b7afb2431c
* do not allow constraints in headers of procedure implementations in delphi mode, resolves #36584
...
* better error message if a constraint is found at a wrong location
git-svn-id: trunk@44174 -
2020-02-14 20:56:55 +00:00
svenbarth
c4f3f7f453
* only resolve a dummy symbol if it is a type symbol (thus truly a dummy symbol)
...
+ added tests
git-svn-id: trunk@44172 -
2020-02-14 16:49:07 +00:00
svenbarth
147559349b
* fix for Mantis #36652 : gracefully handle the error if one tries to implement a method of a type from another unit
...
+ added test
git-svn-id: trunk@44170 -
2020-02-14 16:48:58 +00:00
yury
fc42953814
* Disabled range and overflow checks for the tw36587 test, since overflows are intended there.
...
git-svn-id: trunk@44168 -
2020-02-14 10:37:14 +00:00
florian
1e64133a08
* fix TVector.Reserve after IncreaseCapacity changes, resolves #36698
...
git-svn-id: trunk@44167 -
2020-02-13 21:29:23 +00:00
yury
39c48f0d01
* Fixed r43577 for cases when the size of the new result of a simplified node after typecheckpass is smaller than the size of the original node's result. This caused internal errors or invalid assembly in some cases. Issue #36587 .
...
git-svn-id: trunk@44151 -
2020-02-11 12:49:12 +00:00
florian
2d47013cd1
* patch by J. Gareth Moreton: fixes internal error 200405231 with inline, resolves #35590
...
git-svn-id: trunk@44119 -
2020-02-05 20:35:03 +00:00
pierre
b77cd3a3e7
Use TEST_USE_LONGLOG by default, but check TEST_DISABLE_LONGLOG before setting it to 1
...
git-svn-id: trunk@44114 -
2020-02-04 22:15:44 +00:00
florian
de213ba258
- test removed as it cannot work on all variants of currency support
...
git-svn-id: trunk@44107 -
2020-02-03 20:16:33 +00:00
florian
2b7447c78d
* EPoll_Event is packed only on x86-64, not other 64 Bit CPUs, resolves #34416
...
* epoll_pwait expects the SigSet size as sixth parameter (kernel syscall only)
+ simple epoll* test
git-svn-id: trunk@44093 -
2020-02-02 14:23:51 +00:00
florian
d479069f8c
* might_have_sideeffects takes care of absolute
...
git-svn-id: trunk@44083 -
2020-02-01 18:00:38 +00:00
svenbarth
1407aa2b4b
* fix for Mantis #36631 : it's an error if a POINT after an array is not followed by an identifier
...
+ added tests
git-svn-id: trunk@44082 -
2020-02-01 17:51:46 +00:00
florian
8f707903df
* test fixed
...
git-svn-id: trunk@44075 -
2020-01-31 21:27:46 +00:00
yury
4a756a2d30
* r42239 broke the tw13948b test for aarch64. Fixed this and improved the test.
...
git-svn-id: trunk@44052 -
2020-01-28 17:50:20 +00:00
yury
405b01f116
* Skip the test for android.
...
git-svn-id: trunk@44050 -
2020-01-27 18:12:16 +00:00
yury
797795e285
* Skip the test for aarch64.
...
git-svn-id: trunk@44049 -
2020-01-27 17:50:35 +00:00
yury
3a31391c39
* tests: When cross-testing, if possible, use the "ppc" native compiler to build fpmake. It solves PPU incompatibility errors.
...
git-svn-id: trunk@44048 -
2020-01-27 17:37:26 +00:00
florian
6c71fd461d
* avoid internalerror for dec/inc(...,v) with v>high(int64), resolves #35298
...
git-svn-id: trunk@44031 -
2020-01-24 21:39:07 +00:00
florian
d87a5cc9fb
* take care of m_duplicate_names when checking for duplicate locals, resolves #33221
...
git-svn-id: trunk@44028 -
2020-01-23 21:32:09 +00:00
pierre
bcf43724bf
Add more debug information when verbose is set
...
git-svn-id: trunk@44022 -
2020-01-23 14:49:59 +00:00
svenbarth
9a42625cfb
* also allow by-value open array parameters for the tail recursion optimization
...
* adjusted test
git-svn-id: trunk@44012 -
2020-01-21 21:30:10 +00:00
svenbarth
4fc02d3d09
* enable tail recursion optimization also for const and constref open arrays
...
+ added test
git-svn-id: trunk@44011 -
2020-01-21 21:29:56 +00:00
florian
01302bc47d
* subroutines working with an OS dependend time stamp use an int64 now, so the 2038 problem
...
on unixes can be tackled
git-svn-id: trunk@44010 -
2020-01-21 20:59:20 +00:00
florian
069e040e49
* do for-loop unrolling after for-loop simplification, resolves #36589
...
git-svn-id: trunk@43999 -
2020-01-19 18:21:12 +00:00
florian
007df5d0fa
* fix for #36554
...
git-svn-id: trunk@43913 -
2020-01-11 21:15:19 +00:00
svenbarth
7a0a1d9f36
* fix for Mantis #36544 : provide an overall exception handler for the library startup code in case of unhandled exceptions (the loading of the library is considered failed in that case) when SEH is active
...
+ added test
git-svn-id: trunk@43901 -
2020-01-10 15:39:20 +00:00
pierre
22806e31c3
Add possibility to set explicitly TEST_COMMENT variable, set as Comment field in dbdigest.cfg file (defaulting to TEST_OPT as before)
...
git-svn-id: trunk@43897 -
2020-01-09 14:40:44 +00:00
pierre
3eb14dd722
Avoid using <> for floating point values, check that abs of difference is small instead (fixes m68k 'pseudo-failure')
...
git-svn-id: trunk@43896 -
2020-01-09 14:38:58 +00:00
florian
d425a85f8d
+ Linux.fpstatx, resolves #36501
...
git-svn-id: trunk@43837 -
2020-01-02 14:10:31 +00:00
florian
f6c16323fa
* unified loadnf_load_self_pointer into loadnf_load_addr
...
+ var parameters are now allowed when doing tail recursion optimziation, resolves #32811
git-svn-id: trunk@43824 -
2019-12-30 22:43:10 +00:00
svenbarth
3e7dc25667
* fix for Mantis #36496 : correctly handle the function result alias variable inside generic functions
...
+ added tests
git-svn-id: trunk@43823 -
2019-12-30 21:35:26 +00:00
florian
00859420ab
* correctly handle reading of class/object pointers in combination with @, resolves #26326
...
git-svn-id: trunk@43804 -
2019-12-28 17:59:23 +00:00
florian
7032c80041
* accept #26 as eof in iso mode, resolves #35136
...
git-svn-id: trunk@43801 -
2019-12-28 10:35:46 +00:00
florian
94d222ba69
+ test for #26791 , meanwhile fixed
...
git-svn-id: trunk@43797 -
2019-12-26 21:10:34 +00:00
florian
fd0012deff
* when copying goto nodes take care if the label node is part of the copied tree
...
or not, resolves #35820
git-svn-id: trunk@43793 -
2019-12-25 17:10:14 +00:00
florian
4de6b3e6b9
* do not crash when an unsupported code page is encountered, resolves #35581
...
git-svn-id: trunk@43764 -
2019-12-23 21:44:50 +00:00
florian
2f374a37b7
* patch by Bart Broersma to allow to declare "LongInt = AnsiString" comparison
...
operator in non-macpas modes, resolves #29460
git-svn-id: trunk@43709 -
2019-12-22 22:06:26 +00:00
svenbarth
8111e92e1f
* rework syntax for cblocks: now a cblock directive is required
...
* additionally implicit calling conventions of cdecl or mwpascal now work as well
* adjusted tests
+ added tests
Note: the generator for packages/univint needs to be fixed, until then building on macOS will be broken
git-svn-id: trunk@43684 -
2019-12-14 16:45:38 +00:00
florian
f62fd437b1
* patch by J. Gareth Moreton: improve test and benchmark, resolves #35633
...
git-svn-id: trunk@43671 -
2019-12-10 21:31:42 +00:00
florian
ef7e4f6f62
* fix J. Gareth Moreton to resolve #36389
...
git-svn-id: trunk@43670 -
2019-12-09 22:00:45 +00:00
florian
ac6e4f59c6
* better error recovery, resolves #36397
...
git-svn-id: trunk@43653 -
2019-12-05 20:46:50 +00:00
florian
0cb85eef9b
* more currency fixes, should resolve #36176
...
git-svn-id: trunk@43635 -
2019-12-03 19:31:50 +00:00
svenbarth
927c91e093
* fix for Mantis #36388 : correctly handle generic constraints when looking for helpers
...
git-svn-id: trunk@43629 -
2019-12-02 22:29:34 +00:00
florian
86d8e79e86
* fix some currency issues, resolves #33963 and #36179
...
git-svn-id: trunk@43620 -
2019-12-01 20:24:00 +00:00
florian
f2a8b8ad6a
* adapt register if the size of the paraloc and the register differ, resolves #34409
...
git-svn-id: trunk@43617 -
2019-11-30 20:37:55 +00:00
florian
d8f1aacd78
* better error recovery, resolves #36377
...
git-svn-id: trunk@43612 -
2019-11-29 22:13:17 +00:00
Jonas Maebe
5800ac6213
* fix conversion from Objective-C class/protocol to tvarrec (store in
...
vPointer) (mantis #36362 )
git-svn-id: trunk@43594 -
2019-11-26 21:24:56 +00:00
florian
fb4b1cbf35
* warn only in delphi mode if an explicit enumeration value exceeds the range, relaxes r43191
...
git-svn-id: trunk@43590 -
2019-11-25 20:58:20 +00:00
svenbarth
ef6c9e930b
* correctly handle the genericdef being a procdef, otherwise no code will be generated (and no error either :/ )
...
+ added test
git-svn-id: trunk@43586 -
2019-11-25 20:28:23 +00:00
svenbarth
39f4b97ea5
+ add test for a problem reported by Michael van Canneyt which is fixed by the previous revision
...
git-svn-id: trunk@43569 -
2019-11-24 00:04:35 +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
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
pierre
a09e40945c
Regenerate all Makefile's after commit #43472
...
git-svn-id: trunk@43478 -
2019-11-15 14:47:02 +00:00
florian
e1433adc2e
* check in the internal assembler for references with incorrect use of RIP
...
+ test
git-svn-id: trunk@43461 -
2019-11-13 20:47:42 +00:00
Jonas Maebe
7bf50d261e
* fixed test for non-64 bit platforms
...
git-svn-id: trunk@43451 -
2019-11-11 09:26:55 +00:00
florian
9d0389aa53
+ readded accidently deleted file
...
git-svn-id: trunk@43448 -
2019-11-10 21:22:33 +00:00
florian
7747c5fc27
-- Zusammenführen von r43307 bis r43443 in ».«:
...
D tests/webtbs/tw32219.pp
U compiler/i386/i386att.inc
U compiler/i386/i386atts.inc
U compiler/i386/i386int.inc
U compiler/i386/i386nop.inc
U compiler/i386/i386op.inc
U compiler/i386/i386prop.inc
U compiler/i386/i386tab.inc
U compiler/i8086/i8086att.inc
U compiler/i8086/i8086atts.inc
U compiler/i8086/i8086int.inc
U compiler/i8086/i8086nop.inc
U compiler/i8086/i8086op.inc
U compiler/i8086/i8086prop.inc
U compiler/i8086/i8086tab.inc
U compiler/x86/x86ins.dat
U compiler/x86_64/x8664ats.inc
U compiler/x86_64/x8664att.inc
U compiler/x86_64/x8664int.inc
U compiler/x86_64/x8664nop.inc
U compiler/x86_64/x8664op.inc
U compiler/x86_64/x8664pro.inc
U compiler/x86_64/x8664tab.inc
U tests/utils/avx/avxopcodes.pas
-- Aufzeichnung der Informationen für Zusammenführung von r42706 bis r43443 in ».«:
U .
git-svn-id: trunk@43444 -
2019-11-10 16:44:34 +00:00
Jonas Maebe
af97c43bdc
+ tests for r43436
...
git-svn-id: trunk@43438 -
2019-11-10 13:13:57 +00:00
svenbarth
d813edef72
* also advance the error code in the case of success
...
git-svn-id: trunk@43419 -
2019-11-08 22:34:07 +00:00
svenbarth
b0ac0ddcc9
+ add support for the IsManagedType() intrinsics which reports for a type (or variable) whether it needs initialization/finalization
...
+ added tests
git-svn-id: trunk@43409 -
2019-11-06 23:04:52 +00:00
tg74
1454e8b29d
new avx512-opcodes VBMI2,VNNI,BITALG ...
...
git-svn-id: branches/tg74/avx512merge@43406 -
2019-11-06 19:51:01 +00:00
florian
fabe4cc067
* patch by Christo Crause: reg. allocation information if non-volatile registers
...
are used for parameter passing as it is might happen on avr, resolves #36079
git-svn-id: trunk@43390 -
2019-11-04 20:14:46 +00:00
florian
d3c5bd2a3e
* test for tw36212
...
git-svn-id: trunk@43385 -
2019-11-03 17:33:26 +00:00
florian
c6659d62f8
* do not join register deallocations/allocations as it makes no use and causes later on trouble in
...
the assembler optimizer as register allocations are not correct, resolves #33565
git-svn-id: trunk@43384 -
2019-11-03 17:13:59 +00:00
florian
b8f186dab2
* reverted r43366
...
git-svn-id: trunk@43382 -
2019-11-03 14:42:02 +00:00
florian
5ead23513d
* more overloads for Math.Min/Max, resolves #36161
...
git-svn-id: trunk@43366 -
2019-11-02 16:21:43 +00:00
svenbarth
fdeaacac21
* fix for Mantis #36223 : when parsing a helper type its extendeddef might be Nil
...
+ added test
git-svn-id: trunk@43346 -
2019-11-01 15:02:31 +00:00
florian
cb67577002
* fix length(<dyn. type>)=0 optimization, resolves #36215
...
git-svn-id: trunk@43343 -
2019-10-31 21:29:41 +00:00
florian
2bcf1b7f59
* fptime works now usefully on unix systems
...
+ support -n <number> to run the command <number> times
+ display average runtime when -n is passed
git-svn-id: trunk@43338 -
2019-10-30 20:07:28 +00:00
florian
fa9c7a92c7
-- Zusammenführen von r42725 bis r43306 in ».«:
...
A tests/webtbs/tw32219.pp
U tests/utils/avx/avxopcodes.pas
U tests/utils/avx/asmtestgenerator.pas
U compiler/i386/i386tab.inc
U compiler/i386/i386nop.inc
U compiler/i8086/i8086tab.inc
U compiler/i8086/i8086nop.inc
U compiler/x86_64/x8664tab.inc
U compiler/x86_64/x8664nop.inc
U compiler/x86/aasmcpu.pas
U compiler/x86/x86ins.dat
U compiler/x86/rax86.pas
-- Aufzeichnung der Informationen für Zusammenführung von r42706 bis r43306 in ».«:
U .
git-svn-id: trunk@43307 -
2019-10-23 18:17:50 +00:00
florian
99d44ce40e
+ test for the initial bug
...
git-svn-id: branches/tg74/avx512merge@43301 -
2019-10-21 20:14:46 +00:00
svenbarth
9dcd897ce6
* fix for Mantis #36196 : free a property's attributes when the property is destroyed
...
+ added test
git-svn-id: trunk@43299 -
2019-10-21 19:42:19 +00:00
svenbarth
6f74dd4207
* fix memory leak of tcustomattr13
...
git-svn-id: trunk@43298 -
2019-10-21 19:42:15 +00:00
florian
d3c898a96b
* properly round in ISO mode, resolves #35626
...
git-svn-id: trunk@43281 -
2019-10-20 21:11:40 +00:00
florian
e4b21cc6c8
* indention fixes
...
git-svn-id: branches/tg74/avx512merge@43278 -
2019-10-20 16:02:19 +00:00
florian
bb1c03b538
+ test movntss and movntsd
...
git-svn-id: branches/tg74/avx512merge@43277 -
2019-10-20 16:00:26 +00:00
florian
e02321029f
* test fixed for i386
...
git-svn-id: trunk@43193 -
2019-10-13 20:11:55 +00:00
florian
626ef4ae0c
* give an error if an explicit enumeration valid exceeds the valid range, resolves #34633
...
git-svn-id: trunk@43191 -
2019-10-13 15:48:21 +00:00
florian
6457846435
* sorted out tests
...
git-svn-id: trunk@43189 -
2019-10-13 11:42:33 +00:00
florian
b02470468b
* handle off by one in FilePos due to the filled buffer in iso mode, resolves #40850
...
git-svn-id: trunk@43188 -
2019-10-13 11:37:37 +00:00
Jonas Maebe
33c4a5dda7
* don't try to bitpack arrays of non-ordinals (mantis #36157 )
...
git-svn-id: trunk@43187 -
2019-10-13 11:11:28 +00:00
Jonas Maebe
51c6ebfe54
* work around broken x86 shifting in bitpacked value calculation
...
(mantis #36156 )
git-svn-id: trunk@43186 -
2019-10-13 10:47:31 +00:00
florian
fb91899457
* adapted 16 byte alignment handling on linux: it is now assumed that the callee tries to clear the stack, so in the caller, the stack is re-adjusted
...
git-svn-id: trunk@43176 -
2019-10-12 21:51:13 +00:00
tg74
87e7a823b6
bugfix 35700 - delete invalid opcodes
...
git-svn-id: branches/tg74/avx512merge@43153 -
2019-10-08 09:16:45 +00:00
svenbarth
beb606be13
* fix for Mantis #36114 : when converting a static class field to a global variable the varspez of the field needs to be respected
...
+ added test
git-svn-id: trunk@43116 -
2019-10-03 16:39:40 +00:00
svenbarth
b4e998b3f8
+ add tests to check for correct definition of the FPC_* mode defines
...
git-svn-id: trunk@43115 -
2019-10-03 12:34:42 +00:00
tg74
1d41faa5df
new test opcodes SSE scalar
...
git-svn-id: branches/tg74/avx512merge@43094 -
2019-09-29 20:05:29 +00:00
tg74
d721bedd56
new test opcodes SSE scalar
...
git-svn-id: branches/tg74/avx512merge@43093 -
2019-09-29 19:58:20 +00:00
tg74
72c6d6d909
add new testcode ADDSS,ADDSD
...
git-svn-id: branches/tg74/avx512merge@43092 -
2019-09-29 19:29:06 +00:00
florian
9f97e18aa2
* test properly (with fno-exceptions) compiled
...
git-svn-id: trunk@43083 -
2019-09-26 20:47:40 +00:00
florian
7837356954
+ extra test to test remap functionality with -gh
...
git-svn-id: trunk@43082 -
2019-09-26 20:33:12 +00:00
svenbarth
e4c275a349
* extend test so that it also covers the SetToString/StringToSet variants take/return Integer arguments
...
git-svn-id: trunk@43047 -
2019-09-21 14:36:16 +00:00
svenbarth
ad8de624b8
* make halt codes unique
...
git-svn-id: trunk@43046 -
2019-09-21 14:36:13 +00:00
pierre
0b2a6e5a74
* tests/Makefile.fpc: Add NATIVE_FPC=$(FPC) to tstunits rule make call.
...
* tests/Makefile: Regenerate.
* tests/tstunits/Makefile.fpc: Pass FPCFPMAKE=$(NATIVE_FPC) to rtl and packages
recompilation rules, to avoid truobles for cross-compilation.
* tests/tstunits/Makefile: Regenerate.
git-svn-id: trunk@43019 -
2019-09-16 07:41:37 +00:00
florian
49005d3948
* tests are not supposed to work anymore on linux with a fixed 16 byte aligned stack
...
git-svn-id: trunk@43007 -
2019-09-15 17:17:28 +00:00
florian
72391dc4b8
* fix tests for targets with fixed stack which must be 16 byte aligned
...
git-svn-id: trunk@43005 -
2019-09-15 17:17:26 +00:00
Jonas Maebe
9b70c7623d
* initialise local variable to prevent random failures
...
git-svn-id: trunk@42992 -
2019-09-14 07:30:38 +00:00
Jonas Maebe
ef6dde6de3
* fixed loading the address of a copied labelnode in a loadnode
...
(mantis #35877 )
git-svn-id: trunk@42987 -
2019-09-13 19:06:40 +00:00
tg74
a2c4d868f4
bugfix 35700 xmmrm - zmmrm, mem32/64
...
git-svn-id: branches/tg74/avx512merge@42968 -
2019-09-09 14:44:04 +00:00
tg74
dc41dcd3d8
bugfix 35700 xmmrm - zmmrm, mem32/64
...
git-svn-id: branches/tg74/avx512merge@42959 -
2019-09-08 19:24:14 +00:00
florian
9c00a8b616
+ FMA support for aaarch64
...
git-svn-id: trunk@42885 -
2019-08-31 19:37:17 +00:00
florian
fd20dc1086
* support unique copies of currencies which are handles by torddef, resolves #36013
...
git-svn-id: trunk@42837 -
2019-08-26 19:31:48 +00:00
Jonas Maebe
59b846a2ec
* fixed after implementation of Objective-C "related result type" convention
...
git-svn-id: trunk@42817 -
2019-08-25 15:23:56 +00:00
Jonas Maebe
956aab3be0
* implement support for the Objective-C "related result type" convention
...
as described on
http://releases.llvm.org/8.0.0/tools/clang/docs/LanguageExtensions.html#objective-c-features
(rest of mantis #35994 )
git-svn-id: trunk@42816 -
2019-08-25 15:23:53 +00:00
svenbarth
b0b2218cca
* fix for Mantis #35981 : ensure that the "specialize" token is only really used in non-Delphi modes
...
git-svn-id: trunk@42776 -
2019-08-23 14:59:20 +00:00
svenbarth
33f6adfab6
* fix for Mantis #35982 : free created attributes once the type is freed
...
+ added test
git-svn-id: trunk@42773 -
2019-08-23 14:59:13 +00:00
pierre
e45ad64d41
* Revert changes to tarray15.pp
...
* Modify treadonlydata.pp to not use dynamic array.
+ Add test treadonlydata2.pp that should fail at compile time.
git-svn-id: trunk@42752 -
2019-08-21 07:23:51 +00:00
pierre
5ed7bd35df
Update all trunk/fpcsrc Makefile's after commit 42749
...
git-svn-id: trunk@42750 -
2019-08-20 15:58:10 +00:00
pierre
c406d0121e
Move test for read-only data to new separate test source treadonlydata.pp
...
git-svn-id: trunk@42747 -
2019-08-20 14:15:06 +00:00
Jonas Maebe
27a4a3d446
* added error checking to the test
...
git-svn-id: trunk@42730 -
2019-08-18 15:55:11 +00:00
florian
4f38f12815
-- Zusammenführen von r42706 bis r42724 in ».«:
...
U tests/utils/avx/avxopcodes.pas
U compiler/x86/aasmcpu.pas
U compiler/x86/rax86.pas
-- Aufzeichnung der Informationen für Zusammenführung von r42706 bis r42724 in ».«:
U .
git-svn-id: trunk@42725 -
2019-08-18 11:18:41 +00:00
tg74
a5e158f8d6
cleanup
...
git-svn-id: branches/tg74/avx512merge@42724 -
2019-08-18 04:41:34 +00:00
florian
f0213a2c46
+ make use of the mremap syscall of linux to re-allocate large memory blocks faster
...
git-svn-id: trunk@42713 -
2019-08-16 20:47:37 +00:00
svenbarth
0e79bd2c70
+ add a test that ensures that the introduction of fullscale array constructors didn't mess with array constructors passed to an open array of Variant
...
git-svn-id: trunk@42701 -
2019-08-15 14:33:03 +00:00
svenbarth
44bfa98a30
* fix for Mantis #35955 : when the element of an array constructer requires an operator for conversion we don't let the caller of compare_defs_ext know that, instead we simply say that some conversion is required and let the typecheck handler deal with the element wise conversion
...
+ added test
git-svn-id: trunk@42700 -
2019-08-15 14:33:00 +00:00
svenbarth
10af6fe2fb
* fix for Mantis #35965 : correct alignment also for the class info used to retrieve the unit name
...
+ added test
git-svn-id: trunk@42697 -
2019-08-15 13:29:19 +00:00
Jonas Maebe
03cd0cce59
* change result of pi function from ansistring into dynamic array, so we
...
generate unique calls every time we write to it
* replace calls to high(ansistring/dynarray) in the inner body of the pi
function with a variable that gets assigned once
-> the FPC version is now just as fast as the C version
git-svn-id: trunk@42695 -
2019-08-15 10:32:36 +00:00
sergei
416c974d3f
* x86_64: Fixed code generation for try..finally blocks, so that exit label from inner try..finally stays within scope of procedure's implicit try..finally block if one is present. Mantis #34772 .
...
git-svn-id: trunk@42673 -
2019-08-13 08:29:28 +00:00
florian
5947143d8f
* intel asm reader: try to read avx512 extensions only if the instruction supports them
...
* cleanup
git-svn-id: trunk@42656 -
2019-08-12 10:46:19 +00:00
florian
f9cd4c158a
* improved readme.txt again
...
git-svn-id: branches/tg74/avx512@42649 -
2019-08-11 16:22:06 +00:00
florian
537c63bd83
* fixed a few merging issues
...
+ extended readme to explain avx tests can be run using GNU Parallel
git-svn-id: branches/tg74/avx512@42647 -
2019-08-11 16:05:19 +00:00
florian
bce70a5105
* test only a limited grid of surrogate pairs to avoid that tests run longer
...
than all other tests together when testing with -j
git-svn-id: branches/tg74/avx512@42646 -
2019-08-11 16:03:34 +00:00
florian
f883dd6dbb
Synchronized with trunk, part 2 (make all works, avx-512 support not yet tested, no regression testing yet)
...
git-svn-id: branches/tg74/avx512@42643 -
2019-08-10 19:38:35 +00:00
florian
746bfced25
Synchronized with trunk, part 1 (only make cycle tested, make all is broken, avx-512 support not yet tested
...
git-svn-id: branches/tg74/avx512@42642 -
2019-08-10 13:53:20 +00:00
pierre
008c1436d8
Fix bug report 35937 by simple assembly code change and add test
...
git-svn-id: trunk@42603 -
2019-08-08 14:10:21 +00:00
Jonas Maebe
6b9f2114f1
* test from mantis #35897 , already fixed
...
git-svn-id: trunk@42575 -
2019-08-03 13:52:46 +00:00
Jonas Maebe
46afcbb362
* an incomplete case statement is not an error in ISO Pascal (mantis #35910 )
...
* give a compile-time error in ISO/Extended Pascal if the compiler can prove
the case selector value is not handled, and a warning in other modes
(mantis #35915 )
o trigger the case node simplification at the end of the case node typecheck
pass, like for other nodes
git-svn-id: trunk@42574 -
2019-08-03 13:47:27 +00:00
Jonas Maebe
ce598c15ec
* factored out the conditions under which add nodes need to perform
...
overflow checks
o in particular ensure that cpu-specific overrides don't perform overflow
checks when nf_internal is set
git-svn-id: trunk@42573 -
2019-08-03 12:19:50 +00:00
svenbarth
6952ab5baf
* fix for Mantis #35918 : don't set the mangledname for the attribute's constructor function; let the compiler do its job instead
...
git-svn-id: trunk@42560 -
2019-08-02 14:07:17 +00:00
florian
bdd4b6691e
* fix test for arm
...
git-svn-id: trunk@42538 -
2019-07-30 21:04:30 +00:00
florian
9560d63e42
* test needs exception checking
...
git-svn-id: trunk@42537 -
2019-07-30 21:04:29 +00:00
florian
3ef319c0b0
* compilation of tests on 32 bit targets fixed, using while loops so keeping the type sizes
...
git-svn-id: trunk@42526 -
2019-07-28 21:06:37 +00:00
svenbarth
811d39d995
* correctly align the stream on targets that require proper alignment
...
git-svn-id: trunk@42522 -
2019-07-28 19:50:33 +00:00
svenbarth
8fc5c9edb2
* fix compilation of tests on 32-bit systems (doesn't (shouldn't?) change their behavior)
...
git-svn-id: trunk@42520 -
2019-07-28 19:26:51 +00:00
florian
1a67ffdd22
* fix alignment of ParamList
...
* fix test for architectures using aligned rtti
git-svn-id: trunk@42516 -
2019-07-28 12:43:15 +00:00
Jonas Maebe
3fb7c19482
- removed tests as modern Delphi versions behave differently (mantis #35886 )
...
git-svn-id: trunk@42512 -
2019-07-28 12:03:40 +00:00
florian
23585ded15
* fix access to ParamFlags of the tkMethod branch of type data for CPUs requiring proper alignment
...
git-svn-id: trunk@42511 -
2019-07-28 11:55:19 +00:00
Jonas Maebe
789f288771
* fixed distribution of random(int64) based on patch by Pangea
...
(mantis #35878 )
git-svn-id: trunk@42508 -
2019-07-28 11:14:58 +00:00
Jonas Maebe
1da43f67d4
* (non-ancient) Delphi versions that accept explicit ordinal -> floating
...
point typecasts behave the same as FPC (convert the value) rather than
as Turbo Pascal (reinterpret the bit pattern) (mantis #35886 )
git-svn-id: trunk@42507 -
2019-07-28 11:14:54 +00:00
svenbarth
5313f6e9af
* fix Currency comparison... again...
...
git-svn-id: trunk@42490 -
2019-07-24 20:32:22 +00:00
svenbarth
0c27ea83be
* we halt if the currency values are *not* equal, not if they're equal... m(
...
git-svn-id: trunk@42487 -
2019-07-23 20:53:50 +00:00
svenbarth
e97a2cb03e
* tests with Delphi showed that an attribute class must explicitely declare a parameterless constructor if it should be used, cause TCustomAttribute.Create is private
...
Note: this also means that TCustomAttribute itself can not be used as an attribute
* adjusted existing tests
+ added test
git-svn-id: trunk@42471 -
2019-07-20 20:03:38 +00:00
svenbarth
c282f21b1b
* don't bother finding the correct constructor if the attribute isn't a TCustomAttribute descendant anyway; simply skip the parameters in that case
...
+ added tests
git-svn-id: trunk@42470 -
2019-07-20 19:46:03 +00:00
svenbarth
6cde8ab4cb
* fix for Mantis #35866 : parse_paras does not check whether the expressions are really constant, so check that manually
...
+ added test
git-svn-id: trunk@42469 -
2019-07-20 19:45:59 +00:00
svenbarth
43b5dbf613
* fix for Mantis #23071 : also store local symtable in the PPU if the procdef is generic as we need it to resolve genericdefs to nested types
...
git-svn-id: trunk@42459 -
2019-07-19 15:55:28 +00:00
svenbarth
4d6844e731
* fix test on systems where Currency is calculated using floating point types
...
git-svn-id: trunk@42458 -
2019-07-19 15:55:25 +00:00
svenbarth
176a63b67b
* fix for Mantis #35862 : free the list of functions added with AddTerminateProc to avoid memory leaks
...
+ added test
git-svn-id: trunk@42457 -
2019-07-19 15:55:21 +00:00
svenbarth
87458a065c
* allow use of multiple, comma separated attributes as Delphi allows that as well
...
+ added test
git-svn-id: trunk@42409 -
2019-07-12 22:08:14 +00:00
svenbarth
404b465c33
* allow custom attributes for all type declarations that are not a simple alias
...
+ added tests
git-svn-id: trunk@42405 -
2019-07-12 22:08:00 +00:00
svenbarth
a72553eea2
* disable [...] syntax for procedure directives if modeswitch "prefixed attributes" is enabled; they conflict otherwise and it's not easily resolveable
...
+ added test
git-svn-id: trunk@42402 -
2019-07-12 22:07:50 +00:00
svenbarth
b945e66e28
* store attribute information in PPU; this is less important for the compiler, but more for e.g. Lazarus when dealing with binary only units
...
* increase ppu version
+ added test
* adjust ppudump to handle attributes as well
ToDo: output parameter nodes as well
git-svn-id: trunk@42401 -
2019-07-12 22:07:46 +00:00
svenbarth
71fa4d1fe2
* the RTTI of an attribute not only consists of the creation function, but also of the attribute's type, a pointer to the constructor and a data blob containing the constant parameters
...
+ added test
git-svn-id: trunk@42390 -
2019-07-12 22:07:05 +00:00
svenbarth
c214648224
+ add a test for overloaded attribute constructors
...
git-svn-id: trunk@42380 -
2019-07-12 22:06:28 +00:00
svenbarth
5532ac3355
* fix test
...
git-svn-id: trunk@42372 -
2019-07-12 22:05:58 +00:00
svenbarth
e060a43d70
* rename TAttributeData to the more appropriate TAttributeTable
...
git-svn-id: trunk@42371 -
2019-07-12 22:05:55 +00:00
svenbarth
38fad4b5cf
* also check for invalid attribute data in tests
...
git-svn-id: trunk@42364 -
2019-07-12 22:05:25 +00:00
svenbarth
24c4b90343
* instead of declaring another type with a 'attribute' suffix, *search* for another type with a 'ATTRIBUTE' suffix (Delphi allows declaring both a TFoo and TFooAttribute in the same unit)
...
+ added test
git-svn-id: trunk@42362 -
2019-07-12 22:05:18 +00:00
svenbarth
869664c6da
* rename custom attributes related tests to something more sensible
...
git-svn-id: trunk@42361 -
2019-07-12 22:05:12 +00:00
svenbarth
b2932393df
Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 1/3]
...
Implemented attributes for class types and properties (based on work by Joost van der Sluis). Added TCustomAttribute - a base class for attributes. Added TUnitInfo record to RTTI. It contains the unit name and unit options (for now only a flag which specifies if the unit contains attributes). Added several tests for attributes.
git-svn-id: trunk@42356 -
2019-07-12 22:04:48 +00:00
svenbarth
1607e15e48
* ensure that the toString constant is used instead of TObject's ToString method
...
git-svn-id: trunk@42352 -
2019-07-12 16:25:30 +00:00
Jonas Maebe
40082100e1
* fixed range test optimization for signed types and enabled it for them
...
git-svn-id: trunk@42332 -
2019-07-06 09:57:32 +00:00
svenbarth
433f07c407
* forgot to commit tests in r42329
...
git-svn-id: trunk@42330 -
2019-07-05 15:30:53 +00:00
svenbarth
d0eddbcbb9
* fix for Mantis #35735 : also handle "generic" keyword inside helper types
...
+ added test
git-svn-id: trunk@42328 -
2019-07-05 14:12:13 +00:00
Jonas Maebe
c038e4c3f2
* relaxation of r42272: again only show warnings rather than errors for
...
out-of-range constants, because of the comments mentioned in #35753
(except for enums, as apparently Delphi does the same)
* added range check warnings about explicit type casts that throw away
bits (e.g. byte($fff)), without giving warnings for most common cases
(like cardinal(-1))
* fixed masking/sign exting constant array indices (must be based on index
range type size/signedness rather than on array size/"signedness")
git-svn-id: trunk@42275 -
2019-06-23 14:12:33 +00:00
Jonas Maebe
3a2fe24f49
* report range errors for assigning out-of-range constants to enums in
...
Delphi mode (mantis #35671 )
* always give an error (rather than only a warning in case range checking
is disabled) when assigning an out-of-range constant to an ordinal variable
whose type does not span the entire range that its bits can hold (because
the result is undefined and FPC's optimisers rely on variables only
holding values that are valid for the type)
git-svn-id: trunk@42272 -
2019-06-22 17:30:42 +00:00
Jonas Maebe
fb387da807
* use variables of correct size with movd (test checks whether movd only
...
reads 32 bit even when destination is xmm register) (mantis #35701 ,
as noted by J. Gareth Moreton)
git-svn-id: trunk@42268 -
2019-06-22 13:31:02 +00:00
Jonas Maebe
c262c5dbc9
* synchronised with trunk till r42256
...
git-svn-id: branches/debug_eh@42257 -
2019-06-20 17:21:34 +00:00
svenbarth
89e454aca8
* rework/extend SetToString/StringToSet so that sets with a size > 4 can be converted as well (this is Delphi compatible)
...
+ added test
git-svn-id: trunk@42240 -
2019-06-16 21:36:25 +00:00
Jonas Maebe
faf75095cd
* synchronised with trunk till r42189
...
git-svn-id: branches/debug_eh@42190 -
2019-06-07 18:24:38 +00:00
pierre
471cb73c5f
Add {$goto on} if FPC macro is defined
...
git-svn-id: trunk@42186 -
2019-06-07 07:55:40 +00:00
nickysn
914426e703
* fixed an i8086 inline assembler bug, where 'call word ptr [label]' (an
...
indirect call) was assembled as 'call near label' (direct call) instead of
'call near [label]' and 'call dword ptr [label]' was assembled as
'call near label' instead of 'call far [label]'
git-svn-id: trunk@42176 -
2019-06-05 15:49:39 +00:00
Jonas Maebe
eab079c7bd
* fixed cbool "and" with full boolean evaluation, and cbool "xor"
...
(mantis #35272 )
git-svn-id: trunk@42167 -
2019-06-02 20:04:06 +00:00
olivier
353da84b74
+ Added test object files for x86_64-haiku.
...
git-svn-id: trunk@42145 -
2019-05-31 10:10:05 +00:00
Jonas Maebe
a0e35fd1bc
* synchronised with trunk till r42118
...
git-svn-id: branches/debug_eh@42119 -
2019-05-25 13:19:06 +00:00
Jonas Maebe
77658b925b
* disable regular array -> dynamic array type coversion support unless
...
{$modeswitch arraytodynarray} is active (mantis #35576 )
o changed compiler to compile without this modeswitch
o added the modeswitch to a test that depends on it
git-svn-id: trunk@42118 -
2019-05-25 12:31:32 +00:00
Jonas Maebe
0cd0e1614b
* synchronised with trunk till r42105
...
git-svn-id: branches/debug_eh@42106 -
2019-05-19 19:24:25 +00:00
Jonas Maebe
23428dbf4c
* replaced non-breaking space with space (patch by J. Gareth Moreton,
...
mantis #35602 )
git-svn-id: trunk@42105 -
2019-05-19 19:20:51 +00:00
Jonas Maebe
15532e5277
* disabled low-level hack test for LLVM
...
git-svn-id: trunk@42102 -
2019-05-19 19:20:38 +00:00
Jonas Maebe
eb0f02348d
* fixed loading parent frame pointer for nested procvars on targets that
...
that use explicit parentfp structs (fixes webtbs/tw17379 for llvm)
git-svn-id: trunk@42100 -
2019-05-19 19:20:29 +00:00
Jonas Maebe
9e9a982bfe
* synchronised with trunk till r42095
...
git-svn-id: branches/debug_eh@42096 -
2019-05-18 18:43:51 +00:00
Jonas Maebe
7e51c5e856
* DFA now takes case-completeness into account (mantis #35598 )
...
git-svn-id: trunk@42091 -
2019-05-18 12:01:41 +00:00
Jonas Maebe
6d597e1286
* synchronised with trunk till r42053
...
git-svn-id: branches/debug_eh@42054 -
2019-05-12 21:09:23 +00:00
Jonas Maebe
883d1f2a79
- removed test that shortstring is aligned to a multiple of pointer size,
...
as the compiler does not guarantee any such thing
git-svn-id: trunk@42053 -
2019-05-12 21:08:42 +00:00
Jonas Maebe
0227c55b53
- removed explicit linking of ptest.o, as that happens already automatically
...
due to the "uses ptest" and breaks LTO (then both ptest.o and ptest.bc
get linked, resulting in duplicate symbols)
git-svn-id: trunk@42052 -
2019-05-12 21:08:39 +00:00
Jonas Maebe
1b6425176b
* synchronised with trunk till r42049
...
git-svn-id: branches/debug_eh@42050 -
2019-05-12 18:44:05 +00:00
Jonas Maebe
ba1b4b1c92
+ support for verifying whether a case statements handles all possibilities
...
(based on patch by Martok)
o enabled by default in ISO and Extended Pascal: compile-time error if not
the case in ISO mode, warning and run-time error in Extended Pascal mode
o warning enabled by default in all other modes for boolean, enumeration and
subrange integer types with ranges different from the default ones
(i.e., different from 0..255, -128..127, 0..65536, etc)
o warnings for all ordinal types can be enabled in all modes with
-CC
git-svn-id: trunk@42047 -
2019-05-12 14:29:11 +00:00
svenbarth
251c559662
* fix for Mantis #35533 : when searching for helpers on types that usually don't support a point operator, don't use automatic dereferentiation
...
+ added tests
git-svn-id: trunk@42036 -
2019-05-10 20:56:41 +00:00
svenbarth
5a5b47fa24
+ add support for MultiHelpers modeswitch by Ryan Joseph for Mantis #35159
...
+ added tests
git-svn-id: trunk@42026 -
2019-05-10 14:04:45 +00:00
pierre
aa8a7f5130
Do not use BSD system tar option -I if TARPROG is gtar for OpenBSD
...
git-svn-id: trunk@42022 -
2019-05-08 09:38:43 +00:00