pierre
74fed2a4cd
Regenerate Makefile's after fpcmake change in commit #41721
...
git-svn-id: trunk@41723 -
2019-03-17 14:45:03 +00:00
Jonas Maebe
d78dbd5d59
+ test from mantis #35224 (already works)
...
git-svn-id: trunk@41718 -
2019-03-16 20:01:57 +00:00
Jonas Maebe
fd42c3fb01
* only enable tw35187 for Windows and Linux, since it uses syscalls under unix
...
(which are not supported on all unix targets; feel free to re-enable for
specific unix targets if the test has been verified to compile there)
o also fixed placement of dotest directives: they have to come before any
part of the program code
git-svn-id: trunk@41717 -
2019-03-16 19:14:17 +00:00
Jonas Maebe
ed2ae508d0
* only add hidden parameters for objectdef methods after generating the vmt,
...
so that they take into account inherited calling conventions (mantis #35233 )
o don't needlessly calculate the paraloc info when generating a JVM mangled
name
git-svn-id: trunk@41716 -
2019-03-16 19:14:14 +00:00
nickysn
a32e69bf72
* the i386-openbsd C and C++ test modules recompiled with -fPIC
...
git-svn-id: trunk@41688 -
2019-03-12 16:04:57 +00:00
nickysn
dd41651e36
* recompiled OpenBSD x86_64 C external modules with -fPIC
...
git-svn-id: trunk@41673 -
2019-03-10 18:18:47 +00:00
nickysn
0d7ee960cc
* recompiled the OpenBSD x86_64 C and C++ .o test files; GCC version is the
...
same (so, no need to update readme.txt), but OpenBSD's default compile
settings have changed (PIC is enabled by default)
git-svn-id: trunk@41672 -
2019-03-10 17:38:07 +00:00
florian
d657373933
* patch by J. Gareth Moreton which avoids that the optimizer causes reads of invalid memory, resolves #35187
...
git-svn-id: trunk@41667 -
2019-03-10 10:48:50 +00:00
Jonas Maebe
cb5b407e89
* fixed taarch64abi.pp so it doens't rely on undefined behaviour between the
...
end of an inline assembly block and the end of a routine
git-svn-id: trunk@41651 -
2019-03-09 16:11:34 +00:00
pierre
a7d45c0ca0
Commit patch submitted by J. Gareth Moreton in bug report 35180
...
git-svn-id: trunk@41589 -
2019-03-04 21:53:22 +00:00
svenbarth
9a9c6a3ff4
* fix for Mantis #35150 : correctly convert Int64/QWord values to OleVariant (Delphi compatible)
...
+ added test
git-svn-id: trunk@41571 -
2019-03-03 14:50:09 +00:00
Jonas Maebe
aba3f8f162
* fixed over-eager rejection of tobjecttype.fieldname expression after r40785
...
(mantis #35149 )
git-svn-id: trunk@41474 -
2019-02-25 21:17:24 +00:00
florian
38a7f7c975
* casing fixed
...
git-svn-id: trunk@41428 -
2019-02-24 09:54:05 +00:00
pierre
c1e93bd2c2
+ compiler/symdef.pas: Add missing call to tderef.reset methods in all tdef constructors.
...
+ compiler/sysmsym.pas: Do the same for for all tsym constructors.
+ compiler/symtype.pas: Generate internalerror in tcompilerppufile.putderef
if a deref field has index -1, as this means that buildderef was not called
while it should have been called.
+ compiler/symtable.pas: Fix bug report itself by adding an extra local variable
CHANGED to add extra cycles in tstoredsymtable.buildderef_referenced method.
New tests for this bug report: tests/webtbs/tw35139.pp and tests/webtbs/tw35139a.pp
git-svn-id: trunk@41425 -
2019-02-23 23:03:29 +00:00
pierre
1a564de6e6
Add testing of use of variable of class
...
git-svn-id: trunk@41417 -
2019-02-23 15:37:39 +00:00
joost
42204977f8
* Patch from Bart Broersma to fix writing unicode strings in the Windows
...
registry + test (modified, bug #35060 )
git-svn-id: trunk@41415 -
2019-02-22 22:26:21 +00:00
yury
382d5060a0
* aarch64: According to ARM64 ABI, function's arguments and the result are not required to be sign/zero extended to a full register size. Obey this rule for all targets except iOS where sign/zero extension is required.
...
git-svn-id: trunk@41412 -
2019-02-22 17:59:54 +00:00
joost
cd03f5326d
* Fixed bug #35060 , proper unicode-handling of registry-keynames. With test
...
(modified) from Bart Broersma
git-svn-id: trunk@41325 -
2019-02-15 21:25:05 +00:00
svenbarth
7364cd59b5
* always enable threads on Unix-like targets
...
git-svn-id: trunk@41308 -
2019-02-11 20:33:29 +00:00
svenbarth
b810d8f32b
* fix for Mantis #35027 : ensure that the synchronize event entry is reset correctly in case of an exception
...
+ added test
git-svn-id: trunk@41281 -
2019-02-10 15:43:03 +00:00
svenbarth
1502a13e7c
* fix for Mantis #35028 : when the mainthread executes a queued ThreadMethod make sure that the queue entry is released even if an exception is raised
...
+ added test
git-svn-id: trunk@41280 -
2019-02-10 15:42:58 +00:00
svenbarth
b1ee29c836
* fix for Mantis #30205 : (adjusted) patch by Do-wan Kim to only use the default calling convention for exception handlers
...
+ added test
git-svn-id: trunk@41277 -
2019-02-10 11:26:46 +00:00
nickysn
b0ca862f32
+ implemented IntroSort (hybrid between QuickSort and HeapSort) in unit SortAlgs
...
git-svn-id: trunk@41258 -
2019-02-08 15:34:29 +00:00
nickysn
8b17af1f89
+ added test for unit sortalgs, that tests the heapsort and randomized quicksort algorithms
...
git-svn-id: trunk@41247 -
2019-02-07 14:41:33 +00:00
nickysn
5c4af27a7a
+ added test for the sortbase unit
...
git-svn-id: trunk@41195 -
2019-02-03 19:16:48 +00:00
nickysn
2a0eb54fd5
+ added a simple test that tests TList.Sort
...
git-svn-id: trunk@41181 -
2019-02-02 23:56:24 +00:00
Jonas Maebe
20c4992ac9
- removed data race test with mixed and writers, because the modifications
...
to the global variable in the read-locked sections could cause
false positives regarding detecting whether nothing got changed
during a write-locked section due to lack of read/write dependencies
git-svn-id: trunk@41165 -
2019-02-02 15:17:12 +00:00
Jonas Maebe
56fd8e1208
* fixed tinterlockedmt*.pp for architectures with weak memory consistency
...
models
git-svn-id: trunk@41164 -
2019-02-02 14:28:48 +00:00
Jonas Maebe
0db9ff5c39
* fixed packed bitsize calculation for types with a negative lower bound and
...
and upper bound just below the next power of two (mantis #34971 )
git-svn-id: trunk@41161 -
2019-02-01 17:31:53 +00:00
florian
4f0da5fcc3
+ patch by Marģers to support the x86 assembler instructions blsi, blsr, blsmsk, adcx, adox, movbe, pclmulqdq, resolves #34815 and #34799
...
+ avxopcodes tests also movbe and pclmulqdq
git-svn-id: trunk@40951 -
2019-01-20 18:50:12 +00:00
florian
8c66e9a2eb
+ support for 16 bit registers
...
git-svn-id: trunk@40950 -
2019-01-20 18:50:10 +00:00
florian
fc7ecf3206
* usage example for linux
...
git-svn-id: trunk@40949 -
2019-01-20 18:50:09 +00:00
florian
e24449bcfd
* if sub nodes of a commutative node contain conditionally executed nodes, these sub nodes might not be swapped
...
as this might result in some nodes not being executed, like temp. create nodes with init. code, see e.g. issue #34653 , resolves #34653
git-svn-id: trunk@40934 -
2019-01-20 12:55:20 +00:00
florian
925531b99c
* constrained generics are also compatible with formaldefs, resolves #34893
...
git-svn-id: trunk@40921 -
2019-01-19 21:23:36 +00:00
florian
644c47e121
* when deciding about the case code generation in case of size optimization, the number of labels is relevant, not the covered range, resolves #34818
...
git-svn-id: trunk@40851 -
2019-01-13 10:32:00 +00:00
florian
dd072ce76b
+ seek for typefiles in iso mode, resolves #34848
...
git-svn-id: trunk@40850 -
2019-01-12 23:29:20 +00:00
pierre
193df0204a
Add x86_64-haiku target to some Makefile's
...
git-svn-id: trunk@40820 -
2019-01-09 22:43:56 +00:00
Jonas Maebe
b2b34338e5
* give an error when trying to call an object instance method via a type node
...
(mantis #34821 )
git-svn-id: trunk@40785 -
2019-01-06 15:21:36 +00:00
Károly Balogh
078d8e9d2a
tarray15: the conditions added in r40779 should be or, instead of and (thanks Pierre)
...
git-svn-id: trunk@40784 -
2019-01-06 14:08:35 +00:00
Károly Balogh
cae98304f8
tarray15: no rodata support on a bunch of m68k platforms
...
git-svn-id: trunk@40779 -
2019-01-06 10:50:02 +00:00
Károly Balogh
59aef99f52
haiku-x86_64: regenerated all Makefiles
...
git-svn-id: trunk@40757 -
2019-01-04 03:17:19 +00:00
svenbarth
04bbfd1746
* fix for Mantis #27378 : save and (more importantly) restore verbosity when switching a unit
...
+ added test
git-svn-id: trunk@40750 -
2019-01-03 20:31:34 +00:00
florian
22365a1f57
+ test for #27543 which is fixed meanwhile
...
git-svn-id: trunk@40731 -
2019-01-01 16:16:54 +00:00
florian
1641585655
* updated bcase.pp benchmark by Gareth Moreton, now used also as test
...
git-svn-id: trunk@40710 -
2018-12-30 22:21:03 +00:00
svenbarth
dada756828
* also enable published for TObjA so that the test fails for the correct reason
...
git-svn-id: trunk@40704 -
2018-12-29 19:23:19 +00:00
Jonas Maebe
7b313a2c15
* stop searching for methods to implement interfaces in parent classes after
...
encountering a method with the correct name that does not have the
"overload" directive (same logic as when looking for a call candidate,
to avoid errors when using a Pascal-level wrapper to call interface
methods, and Delphi-compatible since it always required "overload" for
overloaded methods)
o also catches calling convention mismatches like in webtbs/tw27349
git-svn-id: trunk@40683 -
2018-12-28 18:25:58 +00:00
florian
7f5c2fa3aa
* (modified) patch by Gareth Moreton: Speed improvement in case blocks, resolves #0034762
...
This patch improves the compiler where "case" statements are concerned, using jump tables more often and creating more efficient machine code in some situations:
* If a case block only contains one branch (not including the else block), the initial range check is removed, since this becomes wasted effort.
* If the else block is empty, the else label is set to the end label - though this doesn't decrease the code size, it takes a bit of strain off the peephole optimizer.
* On -O2 and above, some node analysis is now done on the branch labels. Most of the time this just redirects it to the end
label for empty blocks, but if the block contains a goto statement, it will redirect it to its destination instead,
thus increasing performance by not having multiple jumps (this won't get picked up by the peephole optimiser if the label addresses are in a jump table).
* Some checks now use what I call the 'true count' rather than the 'label count'. The true count includes each
individual value in a range - for example, 0..2 counts as 3. This increases the chance that a jump table will be
utilised in situations where it is more efficient than a linear list.
* For jump tables, if the case block almost covers the entire range (32 entries or fewer from full coverage),
the initial range check is removed and the gaps included in the jump table (pointing to the else label).
git-svn-id: trunk@40676 -
2018-12-27 18:31:55 +00:00
svenbarth
0f83458513
* previous Invoke() related commit also correctly fixed Mantis #34509
...
git-svn-id: trunk@40670 -
2018-12-26 22:59:48 +00:00
svenbarth
93e0cd9e1a
* fix for Mantis #34496 : correctly align stack so that SSE operations work correctly
...
git-svn-id: trunk@40666 -
2018-12-26 22:59:36 +00:00
svenbarth
e28dff523a
* with the change regarding property access lists this test is no longer considered correct
...
git-svn-id: trunk@40658 -
2018-12-26 11:26:08 +00:00
svenbarth
60adebfe28
* Mantis #34691 is fixed by previous change regarding property access list
...
git-svn-id: trunk@40657 -
2018-12-26 11:26:04 +00:00
svenbarth
539ed761ba
* a property access list must only consist of record or object fields; classes are not allowed
...
git-svn-id: trunk@40656 -
2018-12-26 11:26:01 +00:00
Jonas Maebe
acfa2088ef
+ test for previous commit
...
git-svn-id: trunk@40646 -
2018-12-25 17:52:56 +00:00
Jonas Maebe
70cadc7694
* fixed string constant length when going from utf-8 to single-byte code page
...
(mantis #33666 , patch by engkin)
git-svn-id: trunk@40637 -
2018-12-24 22:21:40 +00:00
pierre
430ec7bbe4
Try to ix compilation failures in units/fpcunit directory
...
git-svn-id: trunk@40601 -
2018-12-20 22:39:40 +00:00
pierre
e9e5b05caa
Remove Unicode $180E (Mongolian Vowel Separator), as it is not anymore a whitespace character
...
git-svn-id: trunk@40600 -
2018-12-20 21:30:44 +00:00
Jonas Maebe
c6bb85eae9
* support for compiling the objects unit methods that expect local procedure/
...
function pointers using {$modeswitch nestedprocvars} functionality, activate
this for LLVM and also activate that modeswitch for a test that uses this
o also convert the IDE units to use this functionality
o requires extra typecasts because implicit type conversions from
procvar(p: psometype) to procvar(p: pointer) are not supported; on the
plus side, even those type conversions are checked for validity
o note: requires {$modeswitch nestedprocvars} in all programs/units
that rely on this functionality
git-svn-id: trunk@40598 -
2018-12-20 21:22:40 +00:00
pierre
0846456ce4
* Skip all surrogate values in for loops from low(word) to high(word)
...
git-svn-id: trunk@40560 -
2018-12-15 21:06:01 +00:00
pierre
0fafe640c5
Change tstringlistexchange test code to give different error values and check that sort is done properly instead of requiring a given number of exchanges
...
git-svn-id: trunk@40547 -
2018-12-14 09:51:45 +00:00
pierre
bf7af550c8
Add mode objfpc to units/character/tutf32convert test
...
git-svn-id: trunk@40546 -
2018-12-14 09:32:01 +00:00
nickysn
99528f9774
+ added all the missing test/units/* subdirectories: classes character dateutil fpcunit softfpu variants
...
git-svn-id: trunk@40538 -
2018-12-13 16:00:23 +00:00
pierre
f8563772c5
Always accept empty string as meaning zero is TryRomanToInt, fixes intermittent errors in tromantoint test
...
git-svn-id: trunk@40537 -
2018-12-13 10:21:58 +00:00
nickysn
da5868b668
+ added method TBits.CopyBits for fast copying
...
git-svn-id: trunk@40524 -
2018-12-11 15:52:09 +00:00
pierre
e7aadde92f
Modify tbs/tb0588.pp to check that a warning is issued about non-initialized return value, moved to tbf directory
...
git-svn-id: trunk@40521 -
2018-12-11 08:47:59 +00:00
Jonas Maebe
52fec8a94a
* when optimising subsetreg moves for aarch64, take into account the fact
...
that the subsetreg itself can be 32 or 64 bit (mantis #33607 )
git-svn-id: trunk@40512 -
2018-12-09 14:46:52 +00:00
Jonas Maebe
8846041b23
* use volatile() to prevent wrong optimizations by llvm
...
git-svn-id: trunk@40466 -
2018-12-04 19:53:23 +00:00
pierre
044fae62ea
Fix bug report 34605 and add corresponding test
...
git-svn-id: trunk@40377 -
2018-11-27 10:19:36 +00:00
Jonas Maebe
d1361ca6ed
* fixed adjustments of lower/upper bounds in range test optimization in case
...
of strictly smaller/greater comparisons (mantis #34385 )
git-svn-id: trunk@40344 -
2018-11-17 22:38:31 +00:00
pierre
122fd55564
+ Add TEST_PARALLEL, adds -L option to DOTESTOPT
...
git-svn-id: trunk@40308 -
2018-11-13 15:12:22 +00:00
svenbarth
251dfb6776
* don't allow constants of the record type that is currently being parsed; this would fail as soon as another field is added after the constant declaration
...
+ added tests
Note: unlike what bug report 27880 suggests Delphi also does *NOT* allow this (at least a current Delphi Tokyo) and fails with a "type is not completely defined" error, so this test belongs into the "failure" category
git-svn-id: trunk@40285 -
2018-11-11 22:08:29 +00:00
florian
c45806c84f
* made test more verbose
...
git-svn-id: trunk@40283 -
2018-11-11 17:32:21 +00:00
florian
95acf20544
* address output updated
...
git-svn-id: trunk@40273 -
2018-11-07 22:03:03 +00:00
yury
4682ac269d
* Further improvement for r40180:
...
An uninitialized function Result of a managed type needs special handling.
When passing it as a var parameter a warning need to be emitted, since a user
may expect Result to be empty (nil) by default as it happens with local vars
of a managed type. But this is not true for Result and may lead to serious issues.
The only exception is SetLength(Result, ?) for a string Result. A user always
expects undefined contents of the string after calling SetLength(). In such
case a hint need to be emitted.
+ Tests for this.
git-svn-id: trunk@40216 -
2018-11-04 15:37:52 +00:00
florian
34d11046e0
* wrapcomplexinlinepara takes care of function results which need different temp. handling, resolves #34438
...
* tw34438 failed with -O3, fixes also dfa for inline functions returning results as "complex" parameter
git-svn-id: trunk@40202 -
2018-11-03 17:31:10 +00:00
florian
47c9bca7f2
* number of cycles slightly increased for better measurements
...
git-svn-id: trunk@40161 -
2018-11-01 20:49:19 +00:00
pierre
89ee644919
Replace aint (which is a compiler specific type) by ptruint type, which is defined in system unit
...
git-svn-id: trunk@40102 -
2018-10-31 09:07:57 +00:00
florian
cd209cea53
* fix test for windows
...
git-svn-id: trunk@40091 -
2018-10-29 19:16:14 +00:00
Jonas Maebe
9bd931e931
* make "formal const/var" parameters the least preferred conversion
...
(mantis #32179 )
- removed code to handle conversion to formaldef parameters that are not by
reference (so the default conversion preference is kept)
git-svn-id: trunk@40012 -
2018-10-21 21:02:17 +00:00
Jonas Maebe
2a3eeab96d
* support for constant char/bool/enum indices in typed constant
...
index expressions (mantis #34055 )
* prevent all indirect structure indexing instead of only
ansi/wide/unicodestrings
git-svn-id: trunk@40010 -
2018-10-21 18:48:41 +00:00
Jonas Maebe
2c7c0d1144
* handle widechar constants directly in the scanner, instead of in the
...
overload selection (where you can't even know whether the string is
a valid widechar constant) (mantis #33875 )
git-svn-id: trunk@40009 -
2018-10-21 17:34:00 +00:00
Jonas Maebe
60277dda09
* fix crash when checking load nodes during inlining in case they don't
...
have a symtable set (happens for internally generated labels, like
$raiseaddr) (mantis #34442 )
git-svn-id: trunk@40008 -
2018-10-21 15:53:46 +00:00
pierre
92acd38f40
Fix for bug report #34380
...
git-svn-id: trunk@39986 -
2018-10-18 20:21:54 +00:00
yury
7b7e4e4f66
* Disabled the 'constant propagation' optimization ( -OoNOCONSTPROP ) for this test. Otherwise the compiler throws the overflow error during compilation with -O3 or better.
...
git-svn-id: trunk@39982 -
2018-10-18 17:07:37 +00:00
yury
a9972b4309
* Disabled some tests for android.
...
git-svn-id: trunk@39981 -
2018-10-18 16:42:05 +00:00
yury
bcf03a52d8
* Disabled some tests for android since they turn PIC off.
...
git-svn-id: trunk@39972 -
2018-10-18 13:05:45 +00:00
yury
aa6f6423b2
* tests: On x86_64-android long double is 128-bit. There is no support for 128-bit floats in FPC yet. So disable long double tests for x86_64-android for now.
...
git-svn-id: trunk@39970 -
2018-10-18 12:31:23 +00:00
svenbarth
c0c602f76d
* fix tests as depending on the platform the first parameter in the RTTI data might *not* be $self
...
git-svn-id: trunk@39965 -
2018-10-17 20:53:51 +00:00
yury
7b150102bf
+ Added test object files for x86_64-android.
...
git-svn-id: trunk@39964 -
2018-10-17 19:39:17 +00:00
yury
a29290202f
* Regenerated makefiles to support x86_64-android.
...
git-svn-id: trunk@39958 -
2018-10-17 17:12:20 +00:00
florian
eea088c5f5
* allow nil to be assigned to generic types, resolves #34037
...
* niln is also a constant node
git-svn-id: trunk@39934 -
2018-10-14 07:38:13 +00:00
yury
9ef7a17390
* Delete temp files after test.
...
git-svn-id: trunk@39918 -
2018-10-12 15:08:30 +00:00
yury
9f32b99ea6
* dotest: When executing a remote test, prevent overwrite of the test's result and log by final cleanup commands.
...
git-svn-id: trunk@39911 -
2018-10-11 18:58:19 +00:00
tg74
1ef9cc01e6
avx512 disp8*N
...
git-svn-id: branches/tg74/avx512@39909 -
2018-10-09 21:19:52 +00:00
yury
da39d06d80
+ Added test object files for aarch64-android.
...
git-svn-id: trunk@39902 -
2018-10-08 08:29:23 +00:00
svenbarth
2f6b15b1e2
* fix tests now that the RTTI of method pointer variables also contains the hidden parameters
...
git-svn-id: trunk@39901 -
2018-10-08 05:43:44 +00:00
svenbarth
a8b2ad31d1
* fix for Mantis #34355 : correctly check whether the array constructor is empty (aka []) or not
...
git-svn-id: trunk@39882 -
2018-10-07 12:25:24 +00:00
florian
40598944f8
+ support fpc include output in avx test generation code
...
git-svn-id: trunk@39876 -
2018-10-07 10:10:20 +00:00
florian
8943c0584e
+ patch by J. Gareth Moreton to support BMI2 instructions
...
+ extended avx test generator with the newly added BMI2 instructions
git-svn-id: trunk@39875 -
2018-10-07 10:10:19 +00:00
florian
172384fedd
* fix to write correct output file name
...
git-svn-id: trunk@39874 -
2018-10-07 10:10:17 +00:00
florian
5604e98b1c
+ lazarus project files for the avx assembler test generators
...
git-svn-id: trunk@39873 -
2018-10-07 10:10:16 +00:00
yury
ff3d7862d6
* Erase the temp file.
...
git-svn-id: trunk@39868 -
2018-10-06 15:10:24 +00:00
yury
ddb4e37104
* Define slowcpu for android.
...
git-svn-id: trunk@39867 -
2018-10-06 13:58:05 +00:00
yury
46b89f0ef9
* Modified test to not create sub-dirs outside the test's directory.
...
git-svn-id: trunk@39864 -
2018-10-06 10:03:36 +00:00
yury
8c59eb1ce5
* Regenerated makefiles to support aarch64-android.
...
git-svn-id: trunk@39863 -
2018-10-06 09:36:03 +00:00
Tomas Hajny
e147f6fb48
* additional tests added similarly to tfexpand.pp to test modified behaviour discussed in bug #34166
...
git-svn-id: trunk@39848 -
2018-09-30 20:49:24 +00:00
Tomas Hajny
62b57e81cd
* FExpand / ExpandFileName behaviour updated according to discussion in bug #34166
...
git-svn-id: trunk@39840 -
2018-09-28 22:57:57 +00:00
florian
352fb866ef
* is_range_test returns false if "lower" bound is greater than "upper" bound
...
git-svn-id: trunk@39837 -
2018-09-27 20:24:52 +00:00
pierre
d32494c3db
Update all tests Makefile's
...
git-svn-id: trunk@39829 -
2018-09-27 07:09:38 +00:00
florian
a34d4e715c
Merged riscv_new branch
...
git-svn-id: trunk@39813 -
2018-09-26 19:49:08 +00:00
svenbarth
bf91991bae
* fix for Mantis #34332 : allow 2 parameter form of Copy also for ShortString variables
...
+ added test
git-svn-id: trunk@39802 -
2018-09-25 19:10:06 +00:00
svenbarth
9a99ab9dda
* fix for Mantis #34287 : correctly handle "inherited method" calls if "method" is a generic (no matter if it's mode Delphi or not)
...
+ added test
git-svn-id: trunk@39787 -
2018-09-21 15:16:18 +00:00
svenbarth
06267006f3
* explicitely handle the boolean types to determine the bit size as all of them have the bit size 1
...
+ added test
git-svn-id: trunk@39786 -
2018-09-21 13:24:49 +00:00
tg74
f0b6b6782b
bugfix avx512 tests opcodes kmov...
...
git-svn-id: branches/tg74/avx512@39782 -
2018-09-21 05:24:59 +00:00
tg74
3dc25d8bee
bugfix avx512 broadcast for special opcodes vcvt... tests
...
git-svn-id: branches/tg74/avx512@39780 -
2018-09-19 21:30:43 +00:00
tg74
8a7cee6294
avx512 broadcast tests
...
git-svn-id: branches/tg74/avx512@39777 -
2018-09-19 15:27:06 +00:00
tg74
6cb9474309
minor bugfixes avx512 tests
...
git-svn-id: branches/tg74/avx512@39767 -
2018-09-19 06:24:36 +00:00
Jeppe Johansen
74a7963d58
Redo overflow checking code.
...
Fix shift operators in case of unsigned subreg operations. There should be no sign extension here.
Add some unittest implementations that test stack execution and writing to readonly constants.
git-svn-id: branches/laksen/riscv_new@39762 -
2018-09-16 18:37:59 +00:00
tg74
b2dca8692f
remove any gather/scatter opcodes tests
...
git-svn-id: branches/tg74/avx512@39746 -
2018-09-12 14:00:35 +00:00
tg74
608992ecf5
minor bugfixes avx512 tests
...
git-svn-id: branches/tg74/avx512@39740 -
2018-09-12 05:03:05 +00:00
tg74
c894768a65
bugfix avx512 tests
...
git-svn-id: branches/tg74/avx512@39738 -
2018-09-11 15:22:11 +00:00
pierre
afc25c8838
sparc64-linux objects recompiled with GCC 7.3.0
...
git-svn-id: trunk@39733 -
2018-09-11 08:16:56 +00:00
tg74
637d44fd7c
delete typecast for broadcast-operands
...
git-svn-id: branches/tg74/avx512@39730 -
2018-09-11 05:06:35 +00:00
tg74
9d17d3054e
use typecast for mememory-operands (any opcodes vcvt...)
...
git-svn-id: branches/tg74/avx512@39729 -
2018-09-11 04:28:29 +00:00
pierre
382ac9c00a
Add branches for 3.2.0, 3.2.1 and 3.3.1 versions
...
git-svn-id: trunk@39725 -
2018-09-10 13:28:33 +00:00
tg74
5224393bbb
testfilenames lowercase
...
git-svn-id: branches/tg74/avx512@39723 -
2018-09-10 08:14:22 +00:00
tg74
38ab34978b
new avx512 tests
...
git-svn-id: branches/tg74/avx512@39722 -
2018-09-10 07:58:47 +00:00
tg74
53e4b5451c
new avx512 tests
...
git-svn-id: branches/tg74/avx512@39721 -
2018-09-10 07:47:25 +00:00
Jeppe Johansen
fb0ef295f1
Fixed unittests that needed arch specific inline assembler.
...
git-svn-id: branches/laksen/riscv_new@39716 -
2018-09-09 09:18:58 +00:00
svenbarth
00663728b5
* fix for Mantis #34239 : the parent VMT is an indirect reference due to the changes for dynamic packages for quite some time already, so handle that accordingly
...
+ added test
git-svn-id: trunk@39715 -
2018-09-08 14:56:09 +00:00
svenbarth
c337575f69
* fix test 26481: it tests for something different than the incorrect type parameters and in fact the need to fix this highlights the need for the previous changes
...
git-svn-id: trunk@39704 -
2018-09-02 16:20:32 +00:00
svenbarth
46ef16ac11
* generate an error if the type parameters of a generic routine's definition does not match with its interface or forward declaration
...
+ added tests
git-svn-id: trunk@39703 -
2018-09-02 16:20:29 +00:00
svenbarth
50323043c1
* generate an error if the type parameters of the record, object or class do not match with its declaration
...
+ added test
git-svn-id: trunk@39702 -
2018-09-02 16:20:25 +00:00
svenbarth
072699d38a
* protect the destructors of tabstractrecordsymtable and twithsymtable against executing when called with a refcount > 1 (this fixes Mantis #34210 )
...
+ added simplified test
git-svn-id: trunk@39693 -
2018-08-31 19:16:45 +00:00
svenbarth
10886d8cef
* fix for Mantis #34206 : when specializing nested routines of a generic routine we don't need access to their genericdef (which isn't available anyway in other units when loading from PPU) as their definition is completely contained in the token stream
...
+ added simplified test for the problem
git-svn-id: trunk@39692 -
2018-08-31 16:11:05 +00:00
tg74
3bbb8ffc63
avxtestgenerator new testdata (vextract..)
...
git-svn-id: branches/tg74/avx512@39679 -
2018-08-28 15:12:44 +00:00
florian
6b9f52b4f2
+ couple of { %OPT=-CE } to tests added
...
git-svn-id: branches/laksen/riscv_new@39641 -
2018-08-19 12:42:26 +00:00
tg74
f14edb4d2e
new tests for avx512 instructions
...
git-svn-id: branches/tg74/avx512@39640 -
2018-08-19 11:06:20 +00:00
marco
98f00acb06
* trunk to 3.3.1
...
git-svn-id: trunk@39635 -
2018-08-18 15:47:44 +00:00
florian
9e9c2c02ed
* test fails now if it causes an exception
...
git-svn-id: trunk@39624 -
2018-08-17 19:49:40 +00:00
florian
a825a66d01
* IntPower inverts the base first for negative exponents and multiplies then, resolves #34124
...
git-svn-id: trunk@39621 -
2018-08-16 20:45:35 +00:00
svenbarth
38ffcff3aa
* fix program name of the test
...
git-svn-id: trunk@39606 -
2018-08-12 07:21:58 +00:00
svenbarth
32c307e9ce
* fix for Mantis #34021 : if one of the two operators is an array constructor try to use an operator overload for that first before converting it to a set
...
+ added tests
git-svn-id: trunk@39554 -
2018-08-03 15:24:59 +00:00
florian
14bfcbb0da
* compiled the calling convention test files by riscv64-linux-gnu-gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0
...
with -O3
git-svn-id: branches/laksen/riscv_new@39508 -
2018-07-24 21:11:52 +00:00
florian
269069f5db
* empty dummy object files
...
git-svn-id: branches/laksen/riscv_new@39488 -
2018-07-22 18:43:07 +00:00
Jeppe Johansen
dcb0f4fdb5
Fixed setjmp that overwrote a callee save register.
...
Disable relaxation for the gp load part of the prt0 code.
Fixed up some syscall definitions.
git-svn-id: branches/laksen/riscv_new@39478 -
2018-07-20 15:00:14 +00:00
florian
6a150cdd75
* disable optimizations for proper warning
...
git-svn-id: trunk@39448 -
2018-07-13 21:00:34 +00:00
florian
93c5eae528
* accept dereferences in generics definitions, resolves #33700 properly
...
git-svn-id: trunk@39447 -
2018-07-13 21:00:33 +00:00
florian
0c6cf12fbf
+ support for the directive $EXCESSPRECISION
...
git-svn-id: trunk@39443 -
2018-07-12 21:39:50 +00:00
florian
96e92527e9
* constant folding of not must check if the deftype is really an orddef, resolves #33696
...
git-svn-id: trunk@39406 -
2018-07-07 14:17:41 +00:00
svenbarth
8df686ed2e
* Mantis #33898 is fixed by the fix for String type helpers as well
...
git-svn-id: trunk@39401 -
2018-07-06 15:57:23 +00:00
svenbarth
ec374c196e
* Mantis #33840 is fixed by the fix for String type helpers
...
git-svn-id: trunk@39400 -
2018-07-06 15:57:17 +00:00
svenbarth
441fc2fab6
* also parse postfix operators after parsing a _STRING token (required for class functions on type helpers for String)
...
+ added tests
git-svn-id: trunk@39399 -
2018-07-06 15:57:11 +00:00
svenbarth
664724fb82
+ add static functions to check for the correct string helper
...
git-svn-id: trunk@39398 -
2018-07-06 15:57:03 +00:00
pierre
841a166847
Add explicit {$hugecode off} for tests that need it
...
git-svn-id: trunk@39391 -
2018-07-05 20:58:13 +00:00
pierre
f36ac3adbd
Use GetProcessId number for UniqueSuffix if -L is used without parameter
...
git-svn-id: trunk@39390 -
2018-07-05 11:11:15 +00:00
florian
b70fc52874
* patch by Ondrej Pokorny: the stored property modifier does not delete the inherited default value anymore, resolves #33564
...
git-svn-id: trunk@39357 -
2018-07-01 20:11:13 +00:00
florian
eb61923762
* patch by Ondrej Pokorny: The nodefault is now inherited from parent class, resolves #33563
...
git-svn-id: trunk@39356 -
2018-07-01 19:01:41 +00:00
svenbarth
05ac42766d
* fix test; it of course still fails, but now it fails with the expected warning instead of an error
...
git-svn-id: trunk@39351 -
2018-06-30 15:43:18 +00:00
florian
9af9658fa7
* first parameter of SetLength must be valid, as it is read
...
git-svn-id: trunk@39347 -
2018-06-30 11:25:43 +00:00
nickysn
e813a11e85
+ support TP7-compatible @proc^ (as in FillChar(@proc^,...))
...
git-svn-id: trunk@39343 -
2018-06-29 14:16:35 +00:00
svenbarth
a2b58b842b
+ add support for threadvars in records
...
+ added tests
git-svn-id: trunk@39289 -
2018-06-23 13:49:16 +00:00
svenbarth
c3ca96279a
+ add support for threadvars inside classes
...
+ added tests
git-svn-id: trunk@39288 -
2018-06-23 13:49:12 +00:00
svenbarth
ff407c56d9
* extend scanning of $modeswitch to support not only + and -, but also ON and OFF like other switches
...
+ added tests
git-svn-id: trunk@39280 -
2018-06-22 21:29:08 +00:00
pierre
ddf0aab494
Explicitly disabled overflow and range check
...
git-svn-id: trunk@39267 -
2018-06-21 04:56:32 +00:00
pierre
e518bd52ba
Explicitly disabled overflow and range check for these two tests
...
git-svn-id: trunk@39266 -
2018-06-21 04:52:37 +00:00
svenbarth
1c9ea4c120
* enable modeswitch arrayoperators for the tests
...
git-svn-id: trunk@39263 -
2018-06-20 19:54:09 +00:00
florian
400861a907
* fixed TBits.NotBits, it is just an Xor operation, resolves #33706
...
git-svn-id: trunk@39243 -
2018-06-19 20:38:15 +00:00
svenbarth
c495f10b29
+ added tests for Mantis #33839 which is now fixed with the recent changes
...
git-svn-id: trunk@39234 -
2018-06-15 13:49:33 +00:00
svenbarth
be0d51d64c
* allow $MinEnumSize, $PackSet and $PackRecords to be used with $Push and $Pop
...
+ added tests
git-svn-id: trunk@39215 -
2018-06-12 19:40:45 +00:00
michael
d08f06df22
* Test for bug ID #33795
...
git-svn-id: trunk@39200 -
2018-06-09 12:28:01 +00:00
pierre
cf8c5d2540
Report if ExitStatus of DosBox process is non-zero
...
git-svn-id: trunk@39197 -
2018-06-08 08:35:45 +00:00
pierre
be91b22d0f
Fix compilation of dbconfig program
...
git-svn-id: trunk@39181 -
2018-06-05 22:10:20 +00:00
pierre
5f62a2063c
Makefile regenerated
...
git-svn-id: trunk@39180 -
2018-06-05 21:40:32 +00:00
pierre
16963b7186
Add explict dependencies to used units
...
git-svn-id: trunk@39179 -
2018-06-05 21:39:44 +00:00
pierre
3d7d7a8b19
Change is_new local variable name to count_test, to reflect change in AddTestResult function
...
git-svn-id: trunk@39178 -
2018-06-05 21:38:50 +00:00
pierre
11c5f1f979
Change is_new parameter name to count_it, set it to true if new TestRes is different from previously in Database
...
git-svn-id: trunk@39177 -
2018-06-05 21:37:35 +00:00
pierre
b6e22a4757
Use old Copy procedure with 3 parameters
...
git-svn-id: trunk@39176 -
2018-06-05 21:36:12 +00:00
pierre
da8dc2b841
Correctly handle log files in root directory (from tests from packages directory)
...
git-svn-id: trunk@39175 -
2018-06-05 20:44:51 +00:00
pierre
7268c86602
Fix for msdos target: Use CodePointer where required
...
git-svn-id: trunk@39173 -
2018-06-05 11:31:42 +00:00
florian
21d785e41b
* do not unroll loops if the counter variable is accessed outside the current scope
...
git-svn-id: trunk@39163 -
2018-06-03 15:12:48 +00:00
florian
3b3e33d863
+ correctly set var state of addr and frame in raise statements, resolves #33818
...
git-svn-id: trunk@39162 -
2018-06-03 09:31:19 +00:00
nickysn
6ee483279c
+ added qword/tbyte ptr to tasm27a.pp - these are also supported by delphi
...
git-svn-id: trunk@39145 -
2018-05-29 16:48:49 +00:00
nickysn
d39699da94
+ added dword/qword/tbyte ptr to the tasm27.pp test (these are also supported by TP7)
...
git-svn-id: trunk@39144 -
2018-05-29 16:46:22 +00:00
nickysn
49b414ffee
+ support ugly constructs like 'DD BYTE PTR 5' in the x86 intel syntax inline
...
assembler; these are TP7 and Delphi compatible
git-svn-id: trunk@39143 -
2018-05-29 15:43:08 +00:00
svenbarth
ee2c573deb
* adjust test so that it tests all three floating point types
...
git-svn-id: trunk@39134 -
2018-05-28 15:36:14 +00:00
nickysn
58be30a0fd
+ added test tasm27a.pp - similar to tasm27.pp, but for i386 and checked against Delphi
...
git-svn-id: trunk@39133 -
2018-05-28 15:34:46 +00:00
svenbarth
e8153df7b7
* fix compilation
...
git-svn-id: trunk@39132 -
2018-05-28 15:16:37 +00:00
pierre
64dc9abbc2
Use small value of MAX_DISP also for i8086 CPU
...
git-svn-id: trunk@39130 -
2018-05-28 09:01:34 +00:00
pierre
48f06bef12
Add C objects linked with $L directive in %FILES to fix dosbox go32v2 tests
...
git-svn-id: trunk@39129 -
2018-05-28 08:11:42 +00:00
svenbarth
f077c7d950
+ add support for Unicode code point constants > $FFFF; they are converted to a surrogate pair so they are in
...
fact a UnicodeString constant
+ added tests
git-svn-id: trunk@39123 -
2018-05-27 14:06:19 +00:00
pierre
c64455cfd4
Do not assume that size of integer type is 4 (it's 2 for msdos)
...
git-svn-id: trunk@39122 -
2018-05-26 06:04:57 +00:00
svenbarth
199b5809a3
* optimize "dynarr := dynarr + [elem]" to "Insert(elem, dynarr, High(SizeInt))" and "dynarr := [elem] + dynarr" to "Insert(elem, dynarr, 0)" (we need to do this in the typecheck of taddnode as otherwise the array constructor is already converted)
...
+ added test
* adjusted test for Mantis #30463 as p1 triggers the optimization as well
git-svn-id: trunk@39119 -
2018-05-25 16:03:56 +00:00
pierre
4efb978858
Fix wrong preprocessor: $undefine is not accepted, must be $undef
...
git-svn-id: trunk@39116 -
2018-05-25 14:51:13 +00:00
svenbarth
b94a8c93a5
* test (for Mantis #5516 ; 3531 is the old bug ID) is valid now that we have dynamic array initializers
...
git-svn-id: trunk@39105 -
2018-05-24 19:56:35 +00:00
florian
8f472d5212
* check for more controll flow statements before doing loop unrolling
...
git-svn-id: trunk@39083 -
2018-05-21 15:46:02 +00:00
svenbarth
b7cc225149
* revert r39043 and r39045 which disallow static array constants inside dynamic constants for Delphi modes
...
git-svn-id: trunk@39078 -
2018-05-21 08:13:17 +00:00
svenbarth
dcdb151add
* prohibit static array constants inside dynamic array constants for Delphi modes
...
+ added test
git-svn-id: trunk@39045 -
2018-05-20 11:50:27 +00:00
svenbarth
a29a6abc55
+ add support for Delphi's dynamic array constant syntax ("[...]") in Delphi modes
...
git-svn-id: trunk@39042 -
2018-05-20 11:50:19 +00:00
svenbarth
08dd4e5445
+ add support for dynamic array constants
...
+ added test
git-svn-id: trunk@39041 -
2018-05-20 11:50:16 +00:00
svenbarth
7990b2e3f3
* apply patch from J. Gareth Moreton to implement Int() for SSE (currently only used on Win64)
...
+ added test
git-svn-id: trunk@38993 -
2018-05-14 21:08:04 +00:00