Jonas Maebe
acaae2bf3c
* fixed test so it does not use uninitialised floating point values (that
...
could trigger exceptions)
git-svn-id: trunk@34947 -
2016-11-21 07:39:17 +00:00
sergei
ebe134febc
* Fixed memory reference size for MOVSS instruction, Mantis #29954 .
...
git-svn-id: trunk@34943 -
2016-11-21 03:31:25 +00:00
florian
0dbcd5daa9
* do not run test, if no stack checking is available
...
git-svn-id: trunk@34932 -
2016-11-20 16:02:37 +00:00
florian
13de8c6808
* -Or => -Ooregvar
...
git-svn-id: trunk@34931 -
2016-11-20 15:45:01 +00:00
florian
baa33d7e2f
* pass enabled features to the compiler when running tests on the embedded target, so tests can depend on the features
...
git-svn-id: trunk@34929 -
2016-11-20 15:43:27 +00:00
Jonas Maebe
a89a4d905f
+ test for already fixed mantis #30948
...
git-svn-id: trunk@34928 -
2016-11-20 11:44:25 +00:00
florian
10132bfafa
* removed accidently committed file
...
git-svn-id: trunk@34927 -
2016-11-20 11:26:48 +00:00
sergei
edf943a4f6
* Changed memory operand size for VMOVSS instruction to 32 bits, Mantis #29957 .
...
git-svn-id: trunk@34918 -
2016-11-18 23:37:01 +00:00
florian
56252d59f0
+ support for the PREFETCHTW1 instruction based on a patch by Emelyanov Roman, resolves #30933
...
git-svn-id: trunk@34917 -
2016-11-18 20:19:39 +00:00
svenbarth
63b0024e4c
* fix for Mantis #30626 : unset current_procinfo so that further specializations don't use a symtable to specialize themselves in that they shouldn't use (cause current_procinfo takes precedence)
...
git-svn-id: trunk@34916 -
2016-11-18 16:17:09 +00:00
svenbarth
0e7a9ad375
* partial fix for Mantis #30831 (partial, because no exception has been encountered yet): when checking whether the left node of a vmtaddrnode is a generic, don't rely on df_generic, but instead use is_generic which checks for a true generic (the other will also be true if it's merely a structured type declared (or specialized) inside another generic)
...
+ added test
git-svn-id: trunk@34915 -
2016-11-18 14:43:45 +00:00
svenbarth
fc5ce63134
* fix for Mantis #30832 : instead of checking a procdef's struct for df_generic check the procdef itself, this way global generic methods or generic methods that are part of non-generic classes or records are caught as well.
...
+ added test
git-svn-id: trunk@34914 -
2016-11-18 14:01:03 +00:00
florian
67570a6262
+ patch to support assigning class procedures to procedure variables by Ondrej Pokorny, resolves #30936
...
+ additional tests
git-svn-id: trunk@34909 -
2016-11-17 19:40:42 +00:00
pierre
a4f361ad50
Fix error in header line used by dotest, use %target instead of %os
...
git-svn-id: trunk@34906 -
2016-11-16 09:29:21 +00:00
florian
3f072b3e29
* workaround for issue #30348 , FPC allowes now 65535 sections in coff object files, but as the section index is normally signed, this is only a dirty workaround
...
git-svn-id: trunk@34904 -
2016-11-15 22:06:00 +00:00
sergei
b4904deea8
* MIPS: Fixed code generation for PIC global symbols with large offset, resolves #30552 .
...
git-svn-id: trunk@34902 -
2016-11-15 20:04:27 +00:00
florian
6d6a45c034
* add/sub nodes with nf_internal set should not do overflow checking, resolves #30889
...
* do not convert succ/pred into add/sub nodes if nf_internal is set
git-svn-id: trunk@34896 -
2016-11-13 21:18:39 +00:00
florian
9bff3ac624
* copy also pushedparasize when copying call nodes, resolves #30923
...
git-svn-id: trunk@34885 -
2016-11-13 14:46:55 +00:00
Tomas Hajny
ff02b2dfb5
+ added test based on bug #24504
...
git-svn-id: trunk@34850 -
2016-11-08 22:24:22 +00:00
florian
a27b07b342
+ more restrictions on pred/succ to dec/inc optimization
...
o check if the argument can be used as a call by reference parameter
o check if the argument has no side-effects
+ tests
git-svn-id: trunk@34816 -
2016-11-06 16:36:02 +00:00
florian
96858dd64d
+ additional tests which ensure that constant propagation is off
...
as the compiler optimizes the original tests too much with constant propagation
to keep them useful
git-svn-id: trunk@34796 -
2016-11-05 23:05:57 +00:00
florian
8bbd2e4030
+ test for issue #27744
...
git-svn-id: trunk@34790 -
2016-11-05 23:05:46 +00:00
florian
9c81e90e08
+ extension to iso mode: reset/rewrite can take a file name as a second parameter
...
git-svn-id: trunk@34726 -
2016-10-16 07:55:08 +00:00
svenbarth
d4e573c1e3
* fix for Mantis #27349 : nested classes might also reside inside records
...
+ added test
git-svn-id: trunk@34714 -
2016-10-13 20:40:47 +00:00
svenbarth
254be82c43
* revert r34712: the behavior with the class constructors is indeed Delphi compatible. However only one class constructor/destructor per class is allowed no matter how it's named.
...
git-svn-id: trunk@34713 -
2016-10-13 20:11:35 +00:00
svenbarth
4e5ed5b0e2
Fix for Mantis #30729 : don't allow other names for class constructors or destructors than Create and Destroy respectively.
...
+ added tests
git-svn-id: trunk@34712 -
2016-10-13 19:24:07 +00:00
Jonas Maebe
5efb32285a
* fixed alignment for interface RTTI (patch by Alfred, mantis #30182 )
...
git-svn-id: trunk@34695 -
2016-10-09 12:34:01 +00:00
Jonas Maebe
265923a2ee
* several fixes for TMultiReadExclusiveWriteSynchronizer, based on patch by
...
Derek (mantis #28830 )
o ability for a thread to acquire a readlock when it already holds a
write lock, or vice versa
o detect when thread1 releases a lock while it hadn't acquired one
o correct result of beginwrite (return true only when another thread
held/acquired a write lock before the current thread got it)
o extra compared to Derek's patch: replaced some additional
(mostly pre-existing) interlocked*() hacks with proper memory
barriers, made formatting consistent, fixed compilation on platforms
where tthreadid is not an integer type, improved tthreadid hashing
function for 64 bit platforms, fixed some comments
git-svn-id: trunk@34678 -
2016-10-08 20:45:45 +00:00
Jonas Maebe
233622157c
* don't attempt to load the VMT of a niln when taking the address of a
...
class method (mantis #30706 )
git-svn-id: trunk@34641 -
2016-10-07 16:41:32 +00:00
Jonas Maebe
a3afefc6cb
+ test for mantis #27522 (fixed in r29811)
...
git-svn-id: trunk@34601 -
2016-10-02 21:51:31 +00:00
Jonas Maebe
868370d727
+ InterlockedCompareExchangePointer() alias for InterlockedCompareExchange(pointer)
...
(mantis #29964 )
git-svn-id: trunk@34599 -
2016-10-02 12:57:07 +00:00
Jonas Maebe
e5a1231931
* updated FSF address (mantis #30198 , patch by Paul Gevers)
...
git-svn-id: trunk@34598 -
2016-10-02 12:56:59 +00:00
Jonas Maebe
94d7a7274b
* compare floating point default parameter values bytewise instead of as
...
floating point values, so that NaNs can also be compared (mantis #30299 )
git-svn-id: trunk@34597 -
2016-10-02 12:56:49 +00:00
Jonas Maebe
de60bfab9c
* make the string data of pchar constants read-only (mantis #30666 )
...
git-svn-id: trunk@34594 -
2016-10-02 12:56:40 +00:00
svenbarth
246de84ef3
* ensure that a finalization section is parsed before the generation of specializations as otherwise specializations in such sections would result in unresolved forward declarations
...
git-svn-id: trunk@34582 -
2016-09-30 15:41:35 +00:00
Jonas Maebe
ec53fdf45a
* don't try to write using standard I/O from a thread while the program is
...
shutting down, that can fail
o the test will still fail because the tthread shutdown code itself in
the classes unit cannot handle running while a program is quitting,
and that should be fixed (exposed by r34456)
git-svn-id: trunk@34554 -
2016-09-22 07:50:08 +00:00
svenbarth
386b7ac154
* fix for Mantis #28753 : don't return generic dummys from single_type(); ensures that parameters correctly evaluate to error defs should generic dummies be used
...
git-svn-id: trunk@34534 -
2016-09-16 20:40:19 +00:00
svenbarth
ce18b10c81
* fix for Mantis #30530 : when the global/static symtable is reached defowner is Nil, so respect that in the loop condition
...
+ added test
git-svn-id: trunk@34532 -
2016-09-16 15:39:03 +00:00
svenbarth
50f2aab0ef
* fix for Mantis #22192 : handle the case that a specialization has the same name as the generic it's based on as in that case the typedef of the symbol is an errordef; therefor we need to use the symbol's real name
...
+ added test
git-svn-id: trunk@34530 -
2016-09-16 15:13:27 +00:00
svenbarth
2ea587f746
* fix for Mantis #30537 : also allow the parasymtable as a parent symtable when generating the mangled name as that is needed for generic functions
...
+ added test
git-svn-id: trunk@34527 -
2016-09-16 14:10:53 +00:00
svenbarth
0500c678e5
* fix for Mantis #30534 : don't consider all types with generic constraints as equal, but at least ensure that they have the same basetype (Note: this still needs a bit more improvement)
...
+ added test
git-svn-id: trunk@34526 -
2016-09-16 13:24:28 +00:00
Jonas Maebe
775f86d216
* made cthreads the first unit, as the initialisation code of sysutils now
...
apparently already triggers threading-related code
git-svn-id: trunk@34516 -
2016-09-11 18:17:41 +00:00
Jonas Maebe
98020a9b57
* fixed test compilation
...
git-svn-id: trunk@34508 -
2016-09-11 09:42:15 +00:00
Jonas Maebe
d19bf787a0
* added -gh option required to test correctness
...
git-svn-id: trunk@34491 -
2016-09-10 18:28:10 +00:00
michael
e3076da0a1
* Testcase for bug #30310
...
git-svn-id: trunk@34488 -
2016-09-10 18:07:07 +00:00
svenbarth
6b93f09567
* fix test
...
git-svn-id: trunk@34458 -
2016-09-08 17:43:04 +00:00
svenbarth
26a2ddd3d6
+ extend Delete() intrinsics with Delphi compatible support for dynamic arrays. Also fixes Mantis #30306
...
git-svn-id: trunk@34455 -
2016-09-08 17:15:10 +00:00
Jonas Maebe
1e506ce1d5
* call beforedestruction if an exception happens in afterconstruction
...
(mantis #30570 )
git-svn-id: trunk@34453 -
2016-09-08 14:18:59 +00:00
Jonas Maebe
5ffd06392d
* don't optimize "x:=f(x)" whereby the function result of f() is passed
...
by reference in case x is a temp (mantis #30572 )
git-svn-id: trunk@34445 -
2016-09-07 19:37:35 +00:00
Jonas Maebe
2d051f89f7
* don't increase refcounts for variants assigned to (ti_)const nodes, fixes
...
memory leak after r34288 and should have been done as part of r34287
(mantis #30546 )
git-svn-id: trunk@34440 -
2016-09-06 21:28:34 +00:00
pierre
f216c359bd
Always consider Compilation raised exception internally as an Internal Error
...
git-svn-id: trunk@34419 -
2016-09-03 10:08:39 +00:00
pierre
a0713632a9
Consider a 'Compilation raised exception internally' without Fatal nor Error message as an InternalError
...
git-svn-id: trunk@34415 -
2016-09-02 21:25:46 +00:00
Jonas Maebe
f64556c125
* when taking the address of a class method via an instance, create a procvar
...
with the VMT of the instance as self instead of the self instance pointer
(mantis #29491 )
git-svn-id: trunk@34395 -
2016-08-30 07:25:16 +00:00
svenbarth
aaceb5518f
* fix Mantis #30494 by applying patch from Maciej Izak
...
+ added test
git-svn-id: trunk@34381 -
2016-08-26 14:23:23 +00:00
Jonas Maebe
3669419bb3
* fixed tcasenode.simplify() in case we have to pass via a "less" branch of
...
of a tcaselabel that also has a valid "greater" branch to arrive at the
correct entry (mantis #30522 )
git-svn-id: trunk@34379 -
2016-08-26 13:02:10 +00:00
svenbarth
8b853571c6
* don't generate a warning if a "generic" token follows while parsing procedure directives (let's hope we'll never have to add a "generic" directive :/ )
...
+ added test
git-svn-id: trunk@34343 -
2016-08-19 14:07:36 +00:00
pierre
ef05e4cb49
Ensure '/' is used as directory separator to get same output as before
...
git-svn-id: trunk@34331 -
2016-08-18 11:43:56 +00:00
pierre
2b250bc0ab
Makefile regeneration after:
...
Fix failure for windows make, related to the use of redirection,
which on mingw32 make generate the use of a batch file, incompatible with
forward slashes usd for createlst and gparmake.
* utils/createlst.pp:
Modify to add a first parameter with the name of the output file.
Makefile.fpc: Adapt to new parameter of createlst.
Change list name for directory TEST from TESTfilelist.lst to filelistTEST.lst
to avoid generating files that start as the directory.
git-svn-id: trunk@34330 -
2016-08-18 07:08:28 +00:00
pierre
92c1190ace
Reintroduce $(Q)
...
git-svn-id: trunk@34329 -
2016-08-18 07:08:20 +00:00
pierre
05542fbed9
Fix failure for windows make, related to the use of redirection,
...
which on mingw32 make generate the use of a batch file, incompatible with
forward slashes usd for createlst and gparmake.
* utils/createlst.pp:
Modify to add a first parameter with the name of the output file.
Makefile.fpc: Adapt to new parameter of createlst.
Change list name for directory TEST from TESTfilelist.lst to filelistTEST.lst
to avoid generating files that start as the directory.
git-svn-id: trunk@34328 -
2016-08-18 07:06:19 +00:00
pierre
6a3466e81a
+ Also write 'Terminate requested...' to output, so that the
...
information gets into log files if output is redirected.
* Add 1000 to ExitStatus if TerminateSentCount is > 0
to allow better discrimination between inferior exitcode and
stop due to Terminate use.
git-svn-id: trunk@34326 -
2016-08-17 09:52:02 +00:00
pierre
876fd4aa5f
Renegerate Makefile after:
...
Fix infinite loop problem that appear on gcc112 linux machine using GNU make 4.0.
* Never put destination directory in the dependency list, as it gets modified when
the target file is created and led to infinite recursion.
We cannot use $(MKDIRTREE) unconditionally as this generates make error
at least on Windows OS.
Instead, create an explicit target for $(TEST_OUTPUTDIR), and add a:
$(MAKE) $dir
line on gparmake, createlst and $(MAKEINC) targets explicitly.
git-svn-id: trunk@34325 -
2016-08-17 05:37:17 +00:00
pierre
bf652e79ed
Fix infinite loop problem that appear on gcc112 linux machine using GNU make 4.0.
...
* Never put destination directory in the dependency list, as it gets modified when
the target file is created and led to infinite recursion.
We cannot use $(MKDIRTREE) unconditionally as this generates make error
at least on Windows OS.
Instead, create an explicit target for $(TEST_OUTPUTDIR), and add a:
$(MAKE) $dir
line on gparmake, createlst and $(MAKEINC) targets explicitly.
git-svn-id: trunk@34324 -
2016-08-17 05:36:23 +00:00
Jonas Maebe
68088cd1da
* regenerated after r34322
...
git-svn-id: trunk@34323 -
2016-08-16 16:33:24 +00:00
Jonas Maebe
b3419ef06e
* add $(CREATELST) to the dependencies of $(GPARMAKE), so that both binaries
...
are not compiled at the same time (because otherwise the compiler may
trip over itself in case it performs linking via an external script or
using a response file)
git-svn-id: trunk@34322 -
2016-08-16 16:33:21 +00:00
svenbarth
cdda4da2d3
* sort the paths alphabetically
...
git-svn-id: trunk@34319 -
2016-08-15 15:58:16 +00:00
marco
690f784c4d
* enable 40+ tests for Haiku as per mantis #30470
...
git-svn-id: trunk@34312 -
2016-08-14 14:09:24 +00:00
svenbarth
e2652d8a56
* regenerate after r34310
...
git-svn-id: trunk@34311 -
2016-08-14 11:25:30 +00:00
svenbarth
e0fd432c9d
* use a Pascal tool instead of a Makefile to generate the list of test files; this way the testsuite works again with older versions of make that don't support $(info ...) (e.g. 3.80 and earlier)
...
git-svn-id: trunk@34310 -
2016-08-14 11:25:10 +00:00
Jonas Maebe
051317e82e
* load the function result from the parentfpstruct to its original location
...
in exit nodes, because the wrapping code added in
tnodeutils.wrap_proc_body() gets inserted before the exit label to which
the exit node jumps
git-svn-id: trunk@34305 -
2016-08-13 14:47:50 +00:00
Jonas Maebe
20cbdf75ea
+ test for mantis #24189 (already works in trunk, still broken in 3.0)
...
git-svn-id: trunk@34290 -
2016-08-12 13:40:19 +00:00
Jonas Maebe
8e0ee6599c
* store parameters to inline routines that are already in a temp into a new
...
temp if the original temp was marked as ti_const, and the new parameter
gets modified (mantis #30015 )
git-svn-id: trunk@34289 -
2016-08-12 13:35:56 +00:00
Jonas Maebe
b17f90d183
* test for mantis #26402 (already fixed in 3.1.1, still broken in 3.0)
...
git-svn-id: trunk@34282 -
2016-08-12 13:35:37 +00:00
Jonas Maebe
c752050728
* don't print "parameter not used" hints for abstract methods (mantis #30431 )
...
git-svn-id: trunk@34281 -
2016-08-12 13:35:34 +00:00
pierre
358eb38ef2
* fix test for msdos compact mode
...
git-svn-id: trunk@34268 -
2016-08-10 16:25:42 +00:00
pierre
d957595842
Fix for msdos, local variable SaveExit must be a CodePointer
...
git-svn-id: trunk@34267 -
2016-08-10 16:16:17 +00:00
pierre
4b17961dd4
* Skip some tests for msdos
...
git-svn-id: trunk@34266 -
2016-08-10 16:10:25 +00:00
pierre
5abbe42115
Add fpwidestring and unicodeducet units for go32v2 OS for wide string tests
...
git-svn-id: trunk@34259 -
2016-08-10 06:24:20 +00:00
pierre
ee3d204b72
* Files added in %FILES need to be copied to destination directory even if UniqueSuffix is empty, as execution directory is different from source directory
...
git-svn-id: trunk@34257 -
2016-08-08 14:49:36 +00:00
Jonas Maebe
de97285393
* fixed conformsToProtocol() declaration (the protocol is not a changeable
...
parameter, and it's already declared as a pointer type)
git-svn-id: trunk@34246 -
2016-08-03 14:35:32 +00:00
yury
f08d136290
* Fixed test for non-Windows targets.
...
git-svn-id: trunk@34236 -
2016-07-30 16:37:47 +00:00
yury
980c4741ac
* Fixed conversion from PWideChar to ansistring.
...
+ test.
git-svn-id: trunk@34219 -
2016-07-29 09:43:05 +00:00
svenbarth
685f820622
* switch class'/object's parent reference in the VMT to an indirect reference
...
(this also requires the adjustment of a test)
git-svn-id: trunk@34172 -
2016-07-22 12:53:51 +00:00
pierre
e9a1ed9446
Add fpwidestring and unicodeducet units for go32v2 tests related to unicode support
...
git-svn-id: trunk@34168 -
2016-07-22 06:26:17 +00:00
pierre
b3f1596a1d
Also output parameters of called program when calling Terminate, useful when using emulator, to know which test does not finish
...
git-svn-id: trunk@34159 -
2016-07-19 17:22:39 +00:00
pierre
d4945f4fd0
Avoid range check error for Win64 by correcting type of parameters for GetModuleFileNameA WinAPI function
...
git-svn-id: trunk@34148 -
2016-07-19 11:35:21 +00:00
pierre
d1a610a2fc
Avoid range check error on win64 target in comparison of THandle to -1
...
git-svn-id: trunk@34147 -
2016-07-19 09:48:34 +00:00
pierre
1e58b6d944
Use %skiptarget=$nothread for tests using thread capabilities
...
git-svn-id: trunk@34105 -
2016-07-13 15:21:23 +00:00
pierre
2b3ef31505
Correct previous commit: %skiptarget needs equal sign
...
git-svn-id: trunk@34104 -
2016-07-13 15:20:31 +00:00
pierre
f8cdabfadb
Skip test tw3157 for go32v2 target as it genrates problems on ntvdm.exe under windows
...
git-svn-id: trunk@34100 -
2016-07-12 14:43:06 +00:00
svenbarth
54b6cacf36
Fix for Mantis #30357 .
...
Reset tstoredsymtable.init_final_check_done when a symbol is added or removed as otherwise property getters in a record *before* any managed field would trigger it, thus leading to the record being considered as "non-managed".
git-svn-id: trunk@34088 -
2016-07-08 18:20:47 +00:00
Jonas Maebe
630033c9fa
* fixed compilation on platforms where comp=int64 (should maybe fix the
...
compiler to support assigning integral floating point constants to
comp on all platforms)
git-svn-id: trunk@34082 -
2016-07-06 17:28:08 +00:00
pierre
bf97137be4
Add aliases $nosharedlib,$nounicode,$nothread to SkipTarget TConfig field
...
git-svn-id: trunk@34075 -
2016-07-06 05:52:23 +00:00
pierre
b238b3cb8d
Fix test for compact and medium i8086 memory model
...
git-svn-id: trunk@34074 -
2016-07-05 22:42:38 +00:00
pierre
ffe2940b01
Fix test for compact and medium i8086 memory model
...
git-svn-id: trunk@34073 -
2016-07-05 22:32:19 +00:00
pierre
bc839068de
Fix test for compact and medium i8086 memory model
...
git-svn-id: trunk@34072 -
2016-07-05 22:30:12 +00:00
pierre
c8b1ca59d5
Fix test for compact and medium i8086 memory model
...
git-svn-id: trunk@34071 -
2016-07-05 22:11:28 +00:00
pierre
360f2734eb
Improve targ1a and targ1b to really check content of args passed to called executable
...
git-svn-id: trunk@34067 -
2016-07-04 21:03:40 +00:00
Károly Balogh
0e54f616b5
merged i386 int64 mod helper fix by Max Nazhalov (Mantis 30240)
...
git-svn-id: trunk@34059 -
2016-07-03 21:20:07 +00:00
Jonas Maebe
db77aad2cc
* support LOC_MMREGISTER for paralocs when loading 128 bit function results
...
into integer registers (a record that consists of 4 32 bit floats is
returned in 2 xmm registers on x86_64) (mantis #30329 )
git-svn-id: trunk@34058 -
2016-07-03 21:18:23 +00:00
pierre
1cbc526501
Reduce NumIterations for I8086 cpu to avoid timeout
...
git-svn-id: trunk@34052 -
2016-07-03 07:45:45 +00:00
Jonas Maebe
8df1d1f9b8
* fixed compilation of tw15391 with range checking enabled after r34034:
...
support maybe_call_procvar() on internal block nodes, which return
their result via the last statement
git-svn-id: trunk@34051 -
2016-07-02 21:09:59 +00:00
pierre
16477c598d
Fix huge memory model failure by adding nostackframe modifier needed to avoid DS reloading at proc entry
...
git-svn-id: trunk@34049 -
2016-07-02 15:12:18 +00:00
pierre
ef6a8009cf
Add {$goto on} for FPC to avoid compile time error
...
git-svn-id: trunk@34048 -
2016-07-02 15:10:51 +00:00
pierre
2ca06538d6
Limit alignment requirement for I8086 CPU to 2 even if pointer is 4 byte long
...
git-svn-id: trunk@34047 -
2016-07-02 14:58:49 +00:00
pierre
fd4e42abaa
Regenerate after 34044: Use createlst.mak also to generate tbs/tbf/webtbs/webtbf directory lsitings to avoid hitting parameter length limitation
...
git-svn-id: trunk@34045 -
2016-07-01 16:41:21 +00:00
pierre
7dcd7393e8
Use createlst.mak also to generate tbs/tbf/webtbs/webtbf directory lsitings to avoid hitting parameter length limitation
...
git-svn-id: trunk@34044 -
2016-07-01 16:40:40 +00:00
Jonas Maebe
ec5dea1092
* don't perform the "/ const" to "* (1/const)" transformation for comp-typed
...
expressions, since comp cannot represent fractions (bug reported at
http://lists.freepascal.org/pipermail/fpc-pascal/2016-June/048234.html )
git-svn-id: trunk@34035 -
2016-06-30 15:33:51 +00:00
Jonas Maebe
996e325175
* converted range checking for open arrays/array of const from the code
...
generator to the typecheck pass, so that it also works for platforms
that use the parentfpstruct way to handle accesses to nested frames
in case the array has been migrated to such a parentfpstruct
o additionally, the number of comparisons for such range checks
has been reduced from 3 (for signed indices) or 2 (for unsigned
indices) to 1 in all cases
o the range checking code is disabled for the JVM target, as the
JVM automatically range checks all array accesses itself anyway
git-svn-id: trunk@34034 -
2016-06-30 15:33:47 +00:00
pierre
8058f6b301
Use SizeInt type for DoMem variable argument, as it might be different from PtrInt, for instance for some msdos memory models
...
git-svn-id: trunk@34022 -
2016-06-28 16:13:24 +00:00
pierre
d2113f5ead
Use SizeInt type for DoMem variable argument, as it might be different from PtrInt, for instance for some msdos memory models
...
git-svn-id: trunk@34021 -
2016-06-28 15:59:09 +00:00
pierre
dfeadf89e9
Modify test to take into account the specific prologue for Huge model
...
git-svn-id: trunk@34016 -
2016-06-24 15:13:37 +00:00
pierre
3253711e95
Disable expliccitly overlfow and range checks
...
git-svn-id: trunk@34014 -
2016-06-21 09:21:18 +00:00
pierre
544d33bf48
Range and overflow check explicitly disabled
...
git-svn-id: trunk@34013 -
2016-06-21 08:18:22 +00:00
pierre
40292a476f
Expicitly disable range check on old test and add new test with and changes
...
git-svn-id: trunk@34012 -
2016-06-21 08:14:43 +00:00
pierre
f079701302
Also disable range check error that can happen on 64-bit processors
...
git-svn-id: trunk@34011 -
2016-06-21 08:02:19 +00:00
pierre
df7e562d94
Add explicit $R- or $Q- to avoid different results if -Criot option is used
...
git-svn-id: trunk@34010 -
2016-06-20 15:55:10 +00:00
pierre
27119cad3c
Disable range checks explicitly as THandle is unsigned at least for win32 OS
...
git-svn-id: trunk@34009 -
2016-06-20 15:26:50 +00:00
nickysn
5306ee552b
* regenerated makefiles with latest fpcmake
...
git-svn-id: trunk@34008 -
2016-06-18 01:00:45 +00:00
nickysn
a58dd988a4
* regenerate makefiles after the fpcmake update
...
git-svn-id: trunk@34002 -
2016-06-17 22:05:59 +00:00
Jonas Maebe
580cf73e64
* align the variables passed to InterlockedCompareExchange128() to a
...
multiple of 16 bytes
git-svn-id: trunk@33962 -
2016-06-12 09:21:08 +00:00
Jonas Maebe
b8ed0fac5d
* give an error when trying to get the address of an element of a dynamic
...
string in a typed constant, like Delphi (instead of generating a bogus
address)
git-svn-id: trunk@33958 -
2016-06-12 09:20:57 +00:00
Jonas Maebe
5af40f22e8
* handle enums with a packenum setting that is larger than necessary to store
...
all of their values, when kept in a bitpacked array, properly via
pass_typecheck rather than hacking location.size in pass_generate_code:
o the old fix was incomplete (it didn't handle non-constant indices)
o the old fix didn't work for llvm (since it uses defs rather than
location.size)
git-svn-id: trunk@33943 -
2016-06-09 22:00:14 +00:00
Jonas Maebe
0ed6c3d80e
* also use the last floating point parameter register on AArch64 in case of
...
a HFA type (which in practice also applies to plain floating point types)
(patch by Alfred, mantis #30207 )
git-svn-id: trunk@33922 -
2016-06-05 20:18:24 +00:00
florian
49f63d67b2
* correctly check left.location instead of left.expectloc when generating
...
code for not nodes, resolves #30208
git-svn-id: trunk@33906 -
2016-06-04 15:54:17 +00:00
svenbarth
aaff6d0b97
Allow Delete() and Insert() to be used with generic types as arguments.
...
+ added test
git-svn-id: trunk@33897 -
2016-06-03 21:45:23 +00:00
svenbarth
9fb2a8bba9
+ added simple test to check whether Delete() and Insert() still work correctly (though a mistake there would probably have broken the cycling totally anyway...)
...
git-svn-id: trunk@33896 -
2016-06-03 21:38:29 +00:00
svenbarth
8c96fbed8f
Fix for Mantis #28832
...
ninl.pas, tinlinenode:
* pass_typecheck: let code pass on to simplify() for undefineddefs in Low() and High()
* simplify: create a constant 0 as fallback
+ added test
git-svn-id: trunk@33884 -
2016-06-03 12:14:30 +00:00
svenbarth
04adcf2a12
Fix for Mantis #30179 and #30203 .
...
pexpr.pas:
* handle_factor_typenode: rework code for records and objects so that Delphi style specializations are handled as well
* sub_expr.generate_inline_specialization: also do a typecheck pass on pload to be sure that we have a resultdef
+ added tests
git-svn-id: trunk@33876 -
2016-06-01 20:06:40 +00:00
svenbarth
c3c345d569
Fix for Mantis #30202 .
...
pexpr.pas, sub_expr.generate_inline_specialization:
* do_member_read() needs to happen independently of whether we're calling a method of the same object (was incorrectly copypasted code... :/ )
+ added test
git-svn-id: trunk@33875 -
2016-06-01 20:03:59 +00:00
pierre
3ba2d44101
Regenerated after previous commit
...
git-svn-id: trunk@33832 -
2016-05-28 07:28:49 +00:00
pierre
806890df40
Avoid line longer than 255, to be able to edit Makefile.fpc with fp IDE
...
git-svn-id: trunk@33831 -
2016-05-28 07:27:24 +00:00
pierre
433da1b199
Add msdos and win16 to the list of target OS for which TargetHasDosStylesDirectories
...
git-svn-id: trunk@33830 -
2016-05-28 07:26:10 +00:00
svenbarth
f27ce0b159
Rework the way the method bodies for specializations are generated: instead of walking the global and local symboltable all pending specializations are kept in a list of the current module which is (for now) walked at the end of a unit/program to generate the method bodies as before.
...
fmodule.pas, tmodule:
+ new list pendingspecializations which keeps track of all pending specializations of the current module
psub.pas:
* move generate_specialization_procs and related routines to pgenutil
+ new procedure read_proc_body to read a routine's body, cause generate_specialization_procs needs it (unlike the already existing overload in the implementation section, this one can only handle bodies of non-nested routines)
pgenutil.pas:
* generate_specialization_phase2: add the newly specialized generic to the current module's pending specializations
* generate_specialization_procs: reworked so that it uses the new pendingspecializations field instead of walking the global and local symboltable of the current unit
pmodules.pas:
+ add pgenutil to uses due to the moved generate_specialization_procs
+ added test
git-svn-id: trunk@33826 -
2016-05-26 18:56:16 +00:00
pierre
345361beef
Revert commit 33771 and directly replace cpu8086 by cpui8086 which is always defined by ppc8086 compiler
...
git-svn-id: trunk@33773 -
2016-05-24 06:52:17 +00:00
pierre
ba509152b8
Also define CPUSMALL macro if CPUI8086 is defined
...
git-svn-id: trunk@33771 -
2016-05-23 21:07:11 +00:00
pierre
6646a0d29f
Correct tseg.pp test for i8086 CPPU for which seg/cseg/dseg/sseg should NOT return zero values
...
git-svn-id: trunk@33770 -
2016-05-23 20:58:37 +00:00
pierre
74b3481918
Use small number for Blocks constant for i8086 CPU also
...
git-svn-id: trunk@33769 -
2016-05-23 20:51:07 +00:00
nickysn
0a9bcf0369
+ added the new test/units/windows directory to the list of dirs, searched for tests by the makefile
...
git-svn-id: trunk@33763 -
2016-05-23 17:22:07 +00:00
florian
57f93ed40d
* correctly generate accesses to jump tables if it contains negative entries, resolves issue #30119
...
git-svn-id: trunk@33760 -
2016-05-22 21:02:49 +00:00
Károly Balogh
963c4aa1f8
* fixed the sign handling of i386 fpc_div_int64 helper (Mantis 30166)
...
git-svn-id: trunk@33753 -
2016-05-22 16:57:30 +00:00
nickysn
bffe9480f4
+ added the winapi functions, structures and constants for raw keyboard and mouse input
...
git-svn-id: trunk@33746 -
2016-05-22 01:59:27 +00:00
Jonas Maebe
f0753d85ad
* fix the Upgrade to Unicode version 7 and CLDR 27 from r32814
...
(mantis #29659 , fixes tuca* tests)
git-svn-id: trunk@33708 -
2016-05-19 15:44:22 +00:00
michael
8e75ac64f1
* Patch from Graeme GeldenHuys to implement UnicodeString versions of MatchStr() and IndexStr() (bug ID 30113)
...
git-svn-id: trunk@33700 -
2016-05-16 16:40:27 +00:00
Jonas Maebe
14bab6c85d
* fixed ppc jump table generation in case a jump table has cases for the
...
lowest and highest element of the type of the case expression, and the
lowest element <> 0 (mantis #29906 )
git-svn-id: trunk@33630 -
2016-05-03 09:00:52 +00:00
Jonas Maebe
eabcabe329
* fixed test in case a widestringmanager is installed
...
git-svn-id: trunk@33611 -
2016-05-02 08:23:14 +00:00
Jonas Maebe
2bbab60c92
* when simplifying a constant string concatenation that gets assigned to a
...
rawbytestring, ensure the resulting constant string does not get CP_NONE
as codepage, but the default system code page (mantis #30082 )
git-svn-id: trunk@33597 -
2016-05-01 13:16:02 +00:00
Jonas Maebe
130d9fee91
* don't take the address of element 0 of a dynamic array in
...
tcallparanode.copy_value_by_ref_para() if the array is empty
(mantis #30007 )
git-svn-id: trunk@33595 -
2016-05-01 12:35:09 +00:00
Jonas Maebe
44682f9f4d
* ensure that if we create a temp for the funcretnode in a call node,
...
the funcretnode field keeps a reference to this temp even after we
assign it to the call-by-reference return parameter if it is deleted
by changing it into a normal temp (after which it will be freed when
the result of the call node is used), because in that case getcopy
for the callnode must copy this reference after copying the
tempdeletenode in order to reset tempinfo^.hookoncopy (mantis #29891 )
git-svn-id: trunk@33569 -
2016-04-28 20:33:12 +00:00
svenbarth
d07b49270f
Fix for Mantis #30030 .
...
pgenutil.pas:
* parse_generic_specialization_types_internal: ignore the parasymtable of procvars (as before the addition of generic routines) and instead use the type's hierarchy name
* generate_specialization_phase2: specialize types of procvars into the parameter symtable as they don't have a local one
+ added test
git-svn-id: trunk@33544 -
2016-04-22 13:07:48 +00:00
Jonas Maebe
1850cb4ccc
* don't look at the resultdef, but at the defs of the operands to decide
...
whether a multiplication needs to be signed or unsigned (can be different
in case of a 32x32->64 multiplication) (mantis #30035 )
git-svn-id: trunk@33539 -
2016-04-20 22:17:15 +00:00
Jonas Maebe
f50dec5202
* don't allow implicit type conversions from pointers to c-style blocks in
...
Delphi mode, because unlike for procvars we need full type information
to be able to generate a block (mantis #30022 )
git-svn-id: trunk@33529 -
2016-04-17 19:07:26 +00:00
Jonas Maebe
2a1f2b9fd9
* fixed a_load_regconst_subsetreg_intern() when loading a 32 bit register
...
to a non-zero bit offset in a subsetreg (mantis #29933 )
git-svn-id: trunk@33498 -
2016-04-13 17:09:31 +00:00
yury
511f5b5ded
* trwsync test: Increased timeout to 60 seconds. Trying to fix random failures due to the timeout on busy machines.
...
git-svn-id: trunk@33487 -
2016-04-12 08:38:18 +00:00
Jonas Maebe
08d63e3408
* allow default parameters for constref (mantis #29992 )
...
git-svn-id: trunk@33480 -
2016-04-10 21:27:29 +00:00
florian
406e3c4ac1
+ support xgetbv instruction, resolves issue #29958
...
git-svn-id: trunk@33418 -
2016-04-03 20:53:10 +00:00
Jonas Maebe
1e1b36515e
* don't narrow expressions that contain a mod/div followed by an "and",
...
since the mod/div get a different result if calculated using fewer
bits (mantis #29930 )
git-svn-id: trunk@33413 -
2016-04-02 22:09:34 +00:00
Jonas Maebe
8c0d9b581c
* don't write the destination register in a_load_ref_reg_unaligned() before
...
the reference has been used for the last time, as the destination
register could be the base or index register of the reference
git-svn-id: trunk@33393 -
2016-03-30 20:04:31 +00:00
pierre
78da04f8d5
+ Add verbose boolean variable, set to false by default,
...
set to true by setting environment variable DOSBOX_VERBOSE.
Most output generated by the wrapper is now only given if
verbose is true.
+ New constant SkipUntilText, default value 'Drive C is mounted as ',
allow to discard output generated by dosbox program up to the line
containing this string.
git-svn-id: trunk@33385 -
2016-03-30 07:42:35 +00:00
Jonas Maebe
a5dba44fd3
* fixed sign extension for unaligned loads (mantis #29891 , although that
...
code shouldn't use unaligned loads in the first place)
git-svn-id: trunk@33382 -
2016-03-29 14:52:27 +00:00
Jonas Maebe
322493c195
* fixed overflow checking on AArch64 for signed multiplications with zero
...
(mantis #29912 )
git-svn-id: trunk@33380 -
2016-03-29 09:50:42 +00:00
florian
8d5cc3dfa4
* (extended and modified) patch by Emelyanov Roman to add suport of RDRAND, RDSEED and TSX instructions set, resolves issue #29893 .
...
In comparison with the original patch, support for a i386 has been added as well as a test program.
Further, a small issue with xbegin has been fixed
git-svn-id: trunk@33375 -
2016-03-28 19:08:13 +00:00
yury
d4d70d3865
* Evaluate currency constant expressions when the currency type is 64-bit integer. Issue #28749 .
...
git-svn-id: trunk@33334 -
2016-03-26 17:48:50 +00:00
svenbarth
9f2defcb7e
Adjust the test I committed yesterday so that we treat the warning we don't want to reappear as an error.
...
git-svn-id: trunk@33325 -
2016-03-25 08:35:34 +00:00
svenbarth
35f8d5427f
Revert r31262. Not doing type checking on generics leads to strange warnings (e.g. because variables are not considered as written). I better deal with the compile time errors one at a time than the warnings.
...
The added test shows such a bogus warning (sadly the test suite can handle the occurence or absense of certain messages yet :/ )
git-svn-id: trunk@33324 -
2016-03-24 20:58:04 +00:00
yury
a37cd66a87
* trwsync test: Increased timeout to 30 seconds. Should prevent failures on busy machines.
...
git-svn-id: trunk@33313 -
2016-03-22 10:16:25 +00:00
yury
d7cc0064d3
* Disabled test for android.
...
git-svn-id: trunk@33304 -
2016-03-20 22:09:45 +00:00
yury
3a5412a931
* Disabled tests which force the -Cg- option for Android since they can not be run on Android 5+ where PIE is required.
...
git-svn-id: trunk@33303 -
2016-03-20 21:52:05 +00:00
yury
d43e5dcab8
* tests: Fixed string comparison.
...
git-svn-id: trunk@33302 -
2016-03-20 21:25:18 +00:00
yury
a1b8c0f9e3
* Improved FPC version check when to use WaitOnExit().
...
git-svn-id: trunk@33301 -
2016-03-20 20:03:45 +00:00
nickysn
759a4f8258
* don't try to build lnfodwrf on i8086-msdos, because it causes internal error
...
200309041 and thus breaks building i8086-msdos snapshots entirely. Added test
that reproduces the bug in a small program, so it can be fixed eventually.
git-svn-id: trunk@33276 -
2016-03-18 19:56:37 +00:00
svenbarth
e9fab1bfee
Fix for Mantis #29080 .
...
psub.pas, tcgprocinfo.parse_body:
* ensure that parse_generic and current_genericdef are set correctly when parsing a generic routine
pgenutil.pas, generate_specialization_phase2:
* when we're specializing inside a generic we don't want to have the routine definitions, so let the compiler assume that the routine is no longer a forward definition
+ added test
git-svn-id: trunk@33275 -
2016-03-18 16:31:23 +00:00
Jonas Maebe
2b210335a1
* fixed pointer arithmetic errors in WideStrAlloc/StrBufSize/StrDispose
...
(patch by Iks, mantis #29710 )
git-svn-id: trunk@33271 -
2016-03-18 13:12:11 +00:00
Jonas Maebe
697aed738c
* replaced test directory names with ones that doesn't contain decomposable
...
characters, so the test's success doesn't depend on getdir returning a
string using the same composition as the used name (fixes test on
OS X 10.11)
git-svn-id: trunk@33270 -
2016-03-18 12:43:47 +00:00
Jonas Maebe
5919ca84bb
* fixed string code page after setstring(rawbytestring,..) (mantis #29833 )
...
git-svn-id: trunk@33268 -
2016-03-18 12:43:42 +00:00
florian
45807056c5
* factored out SymbolCandidateForWarningOrHint
...
* do not issue a hint if a normal parameter is passed to another procedure by var
+ test
git-svn-id: trunk@33248 -
2016-03-13 19:14:26 +00:00
florian
bb1f2b8062
* make NativeInt and NativeUInt unique types, resolves #29444
...
git-svn-id: trunk@33234 -
2016-03-13 15:30:38 +00:00
florian
f780872069
+ return exit code of executed program
...
git-svn-id: trunk@33219 -
2016-03-11 20:44:44 +00:00
svenbarth
27ab1c61c5
Fix for Mantis #29745 .
...
symdef.pas, getansistringdef:
* use a temporary, non-defaware symtablestack to create the ansistringdef
+ added test
git-svn-id: trunk@33214 -
2016-03-10 19:43:45 +00:00
svenbarth
e58488dc3e
Fix for Mantis #29792 .
...
htypechk.pas, tcallcandidates:
* create_candidate_list: check the correct tableoptions for sto_has_overload flag
+ added test
git-svn-id: trunk@33211 -
2016-03-09 20:45:26 +00:00
Jonas Maebe
c93e8a51cd
* fixed test result after r33201
...
git-svn-id: trunk@33204 -
2016-03-07 19:59:05 +00:00
Jonas Maebe
70cd8f6e59
- removed overflow, so the test also works with constant propagation and -Co
...
git-svn-id: trunk@33201 -
2016-03-07 14:40:52 +00:00
Jonas Maebe
0e97811b50
+ initialise managed string function results with an error string when
...
compiling with -gt (mantis #28948 )
git-svn-id: trunk@33198 -
2016-03-06 17:22:11 +00:00
Jonas Maebe
315b32918e
+ Tconstexprint-version of ispowerof2() to correctly deal with constants
...
> high(int64) (mantis #29620 )
git-svn-id: trunk@33191 -
2016-03-06 14:16:47 +00:00
florian
234990b73c
+ fma test program extended to support arm
...
git-svn-id: trunk@33185 -
2016-03-06 13:33:22 +00:00
Jonas Maebe
096e1c45d6
* don't keep records in registers if they contain a field that spans the
...
boundary between two awords, as our subscript code does not handle
them correctly (second part of mantis #29669 )
git-svn-id: trunk@33180 -
2016-03-06 13:20:25 +00:00
Jonas Maebe
9788bb1316
* fixed check regarding whether a field is in the first or second word of
...
of 2*sizeof(aword) bitpacked record that's kept in registers
(mantis #29669 )
git-svn-id: trunk@33177 -
2016-03-06 13:20:16 +00:00
Jonas Maebe
4039c1835c
+ test from mantis #29547 , fixed in r30168 as mantis #27580
...
git-svn-id: trunk@33164 -
2016-03-05 19:01:47 +00:00
Jonas Maebe
87f46dcafd
* updated pos() for Java with an offset parameter (equivalent of r31464 etc)
...
(mantis #29626 )
git-svn-id: trunk@33160 -
2016-03-05 15:32:25 +00:00
Jonas Maebe
a100309350
* made utf8tostring() Delphi-compatible (mantis #29585 ):
...
o removed utf8string overload
o always ignore any code page information from the input, and interpret the
contents of the input directly as utf8-encoded bytes
* made utf8tostring() compatible with the JVM backend (mantis #29497 )
git-svn-id: trunk@33159 -
2016-03-05 15:32:22 +00:00
svenbarth
25744dd3f1
Fix for Mantis #29609 .
...
pexpr.pas, factor.factor_read_id:
* don't use a cloadvmtaddrnode for accessing class properties in records
+ added test
git-svn-id: trunk@33110 -
2016-02-19 21:37:02 +00:00
Jonas Maebe
f3df3a7a67
+ test for mantis #28668
...
git-svn-id: trunk@33104 -
2016-02-18 22:03:46 +00:00
Jonas Maebe
001417bb47
+ test from mantis #28667
...
git-svn-id: trunk@33103 -
2016-02-18 21:58:34 +00:00
svenbarth
8775897621
* fix copy & paste error (didn't influence the test as str3 isn't changed, but at least it's consistent that way...)
...
git-svn-id: trunk@33090 -
2016-02-12 16:09:32 +00:00
sergei
2861362780
* Reuse binary search routine from rgbase.pas to look up AT&T register names, removes need in regnumber_count_bsstart constant. Resolves #29471 .
...
git-svn-id: trunk@33076 -
2016-02-09 16:48:32 +00:00
svenbarth
8287773b16
Reverted revision 33036. This feature is too controverse to be left in.
...
git-svn-id: trunk@33048 -
2016-02-04 19:26:51 +00:00
svenbarth
05174f3e67
Fix for Mantis #29546 .
...
htypechk.pas, tcallcandidates:
* create_candidate_list: don't check whether the pd is a specialization if the owner is valid; happens if a generic method is used more than once (which should happen here and then :P )
+ added test
git-svn-id: trunk@33037 -
2016-01-31 17:14:44 +00:00
svenbarth
ed94ca4b24
Add support for IfThen() instrinsic that works like the if-statement in that it evaluates only the expression that is indeed executed.
...
The result type of the intrinsic is determined by the Then-expression to provide a bit of control. There might however be some situations in which this fails, for this exceptions need to be added (e.g. a constant string needs to be converted to a normal string).
compinnr.inc:
+ add new constant in_ifthen_x_y_z for the IfThen() intrinsic
psystem.pas:
+ create_intern_symbols: add symbol for IfThen() intrinsic
pexpr.pas:
* statement_syssym: parse parameters of IfThen() intrinsic and return corresponding inline node
ninl.pas, tinlinenode:
+ new method handle_ifthen() which converts the inline node to an if-node which assigns the expressions to a temp node that is returned
* pass_typecheck: handle in_ifthen_x_y_z using handle_ifthen()
* pass_1: in_ifthen_x_y_z does not need a first pass as it's already converted after the typecheck pass
+ added tests
git-svn-id: trunk@33036 -
2016-01-31 14:29:12 +00:00
florian
1cb91cc7bb
* forgotten commit to redir.ExecuteProcess
...
git-svn-id: trunk@33001 -
2016-01-24 15:25:59 +00:00
florian
2e506ec4ac
* Redir.ExecuteProcess uses TProcess.WaitFor with timeout for FPC > 3.0
...
git-svn-id: trunk@32992 -
2016-01-24 09:39:23 +00:00
svenbarth
d2a7f17d8c
Fix for Mantis #29372 .
...
compiler/ncgcal.pas:
* tchcallnode.release_para_temps: don't release temps of a constructor's self parameter
+ added test
git-svn-id: trunk@32990 -
2016-01-23 22:19:00 +00:00
pierre
7f0b676af1
Use Florian's suggestion to avoid IOStatus 5 errors in ExecuteProcess using process unit
...
git-svn-id: trunk@32975 -
2016-01-22 15:14:11 +00:00
Jonas Maebe
a65ab73e8b
* support unicodestring constants in "case string of" (mantis #29353 )
...
git-svn-id: trunk@32970 -
2016-01-20 21:11:26 +00:00
svenbarth
82788b4995
tw20821.pp:
...
* test program attached to the bug report was incorrectly transformed to a test for the test suite
git-svn-id: trunk@32962 -
2016-01-17 12:14:54 +00:00
pierre
3300f51ed6
* Adjust test for win64
...
git-svn-id: trunk@32957 -
2016-01-16 01:15:40 +00:00
pierre
238040afdd
* Fix compilation for JVM cpu
...
git-svn-id: trunk@32956 -
2016-01-16 01:15:12 +00:00
pierre
4c979994ff
Regenerated after: Use BASEFPCDIR instead of ../..
...
git-svn-id: trunk@32955 -
2016-01-16 01:13:56 +00:00
pierre
d076552751
Use BASEFPCDIR instead of ../..
...
git-svn-id: trunk@32954 -
2016-01-16 01:13:15 +00:00
pierre
5f87ff9205
Fix compilation for JVM cpu
...
git-svn-id: trunk@32953 -
2016-01-16 01:09:49 +00:00
pierre
8c5adb86cd
* Add waiting time in case of access error on windows OS
...
git-svn-id: trunk@32952 -
2016-01-16 01:08:12 +00:00
pierre
c638559dc1
Add use of process unit for windows OS, allows to add a timeout for that host
...
git-svn-id: trunk@32951 -
2016-01-16 01:06:33 +00:00
pierre
57b3f31d92
cpu, os and version lists start at index 0
...
git-svn-id: trunk@32950 -
2016-01-16 01:04:30 +00:00
Jonas Maebe
cc197a5593
* extended test
...
git-svn-id: trunk@32900 -
2016-01-10 14:01:32 +00:00
pierre
de7a79f497
Use SizeInt type for GlobalStartMem and StartMem variables to avoid compilation error for msdos compact memory model
...
git-svn-id: trunk@32874 -
2016-01-07 17:33:36 +00:00
pierre
80a7b909e4
Add $goto on for FPC compilation to avoid compile time error
...
git-svn-id: trunk@32873 -
2016-01-07 17:12:13 +00:00
florian
df82921cd8
* fix test after r32820
...
git-svn-id: trunk@32855 -
2016-01-05 13:46:06 +00:00
florian
a4d2f71d3d
* better estimation of compatibility of array constructors with open arrays, resolves issue #29244
...
git-svn-id: trunk@32846 -
2016-01-04 23:10:45 +00:00
svenbarth
61b12af82b
Fix for Mantis #29321 .
...
pexpr.pas, postfixoperators:
* also handle type helpers for static arrays
+ added test
git-svn-id: trunk@32845 -
2016-01-04 22:02:24 +00:00
florian
37cb35d780
+ support for the .code directive in arm inline assembler
...
git-svn-id: trunk@32840 -
2016-01-03 22:08:25 +00:00
florian
c3a293b727
* test name properly
...
git-svn-id: trunk@32839 -
2016-01-03 22:05:00 +00:00
nickysn
77229a3cdf
* dosbox timeout increased to 100 seconds
...
git-svn-id: trunk@32834 -
2016-01-03 11:54:45 +00:00
florian
b7786d0849
* fix test parameter
...
git-svn-id: trunk@32793 -
2015-12-29 21:12:28 +00:00
florian
a03d992cc0
* doing fastmath is not useful when testing currency calculation accuracy (test fails with fastmath enabled on some targets)
...
git-svn-id: trunk@32790 -
2015-12-29 15:22:55 +00:00
nickysn
283fd540da
* increased the default dosbox timeout to 90 seconds
...
git-svn-id: trunk@32761 -
2015-12-27 12:43:01 +00:00
michael
464e40bfd9
* Applies patch from Laco (bug ID 29113)
...
git-svn-id: trunk@32723 -
2015-12-26 11:27:13 +00:00
florian
a7f1ce2e98
* patch by Dmitry Boyarintsev: initialize dyn. arrays more cleverly in a setlength call with ref. count>1, resolves issue #29250
...
git-svn-id: trunk@32721 -
2015-12-26 08:53:56 +00:00
nickysn
55a38bf895
* increased the default dosbox timeout to 60 seconds
...
git-svn-id: trunk@32697 -
2015-12-22 10:01:13 +00:00
nickysn
61d76e837f
+ support specifying the dosbox timeout (the maximal amount of time a test is
...
allowed to run, before dosbox is killed) via the DOSBOX_TIMEOUT environment
variable
git-svn-id: trunk@32696 -
2015-12-22 00:05:39 +00:00
Jonas Maebe
0df558af36
* disabled pic
...
* mark eax as used in assembler block in main program
git-svn-id: trunk@32689 -
2015-12-20 20:56:13 +00:00
Jonas Maebe
b4e857e9c4
* skip for darwin because it always requires/expects a 16 byte aligned stack
...
* mark ebx as modified in the assembler blocks
git-svn-id: trunk@32688 -
2015-12-20 20:56:11 +00:00
nickysn
52402032ae
* handle exceptions when opening the exitcode.txt file as well, so that we write
...
a nicer message to stdout in case the file does not exist (which happens often
when we kill dosbox, due to a timeout)
git-svn-id: trunk@32679 -
2015-12-18 01:43:24 +00:00
nickysn
6f490cc6b3
* write a message to stdout if dosbox is killed due to a timeout
...
git-svn-id: trunk@32678 -
2015-12-18 01:40:22 +00:00
sergei
272e3db1db
* Fixed test on x86_64 ('nostackframe' modifier ensures that no prologue/epilogue code is added on fixed-stack targets).
...
git-svn-id: trunk@32673 -
2015-12-16 16:46:23 +00:00
sergei
31623565cb
* Skip test for Win64, since *nix-style PIC is not supported on that system.
...
git-svn-id: trunk@32672 -
2015-12-16 16:37:41 +00:00
florian
a3964d9ee0
+ support for RDTSCP, resolves issue #28916
...
git-svn-id: trunk@32652 -
2015-12-13 13:28:51 +00:00
florian
faec3936d7
* take care of SUBARCH when running tests
...
git-svn-id: trunk@32646 -
2015-12-12 19:13:36 +00:00
Jonas Maebe
092a0af0ec
* removed special-purpose code for constant chars while parsing typed string
...
constants: it did not properly handle ansistring code pages, and was just a
hack to speed things up a bit (mantis #29153 )
git-svn-id: trunk@32636 -
2015-12-11 15:33:28 +00:00
nickysn
1d015b9620
* fixed dosbox_wrapper compilation under windows
...
git-svn-id: trunk@32628 -
2015-12-10 14:47:31 +00:00
pierre
d3d78e6367
Regenerate after: Add dosbox/dosbox_wrapper to list of programs if EMULATOR variable contains dosbox_wrapper string pattern
...
git-svn-id: trunk@32626 -
2015-12-10 01:51:37 +00:00
pierre
f6133d4417
Add dosbox/dosbox_wrapper to list of programs if EMULATOR variable contains dosbox_wrapper string pattern
...
git-svn-id: trunk@32625 -
2015-12-10 01:51:15 +00:00
pierre
0bf3b2201d
Change 'exit' to '' to allow to avoid exit at the end of test run
...
git-svn-id: trunk@32624 -
2015-12-10 01:49:37 +00:00
pierre
1e38631cbe
+ (OutputFileName variable): Add possibility to use output duplicated to a file by a modified dosbox
...
version, using an entry in [dos] section of dosbox.conf cinfig file.
copy_con_to_file=/path/to/file/that/will/get/the/copy
+ (EchoOutput procedure) Write to ouput the content of this file so that it ends up into XXXX.elg file
when checking test file XXXX.
* Add use_temp_dir boolean variable, set to true by default, can be set to false by
setting DOSBOX_NO_TEMPDIR env. variable.
+ Add hide_execution boolean variable (might only work on Windows),
which sets SWOHide to Process.ShowWindow property if true.
hide_execution defaults to true, but can be set to true by setting
DOSBOX_NO_HIDE to set to false.
+ Add do_exit boolean variable (defaulting to true), which adds
'exit' as last line into autoexec section in dosbox.conf.
Use DOSBOX_NO_EXIT to avoid automatic closing of DosBox at the end of test
execution (can bbe useful for debugging purposes).
git-svn-id: trunk@32623 -
2015-12-10 01:48:18 +00:00
nickysn
9f79eeff0e
* on Windows, run dosbox with the swoHIDE option to prevent the annoying focus
...
stealing dosbox consoles from appearing
git-svn-id: trunk@32622 -
2015-12-09 15:56:23 +00:00
Jonas Maebe
ed03286be5
* simplify "div -1" to unaryminusn, not just for performance reasons but
...
also because "div -1" is not handled correctly by the div-to-mul/shift
transformation on x86 (mantis #28702 )
git-svn-id: trunk@32619 -
2015-12-08 15:57:07 +00:00
Jonas Maebe
0b4f3f01b3
* fixed another case of endless recursion in
...
tabstractrecordsymtable.has_single_field(), due to always looking in the
symlist of the original record rather than properly recursing into those
of nested ones (mantis #28641 )
git-svn-id: trunk@32618 -
2015-12-08 15:35:19 +00:00
Jonas Maebe
01d93b61c3
* save/restore the type (and hence code page) of ansistring constsyms in/from
...
the ppu (mantis #28964 )
* also save/restore the type of constnil, constresourcestring and constguid
in/from the ppu
git-svn-id: trunk@32617 -
2015-12-08 14:27:23 +00:00
pierre
11d5f6a88b
Add explicit rule to compile dosbox_wrapper, executable is put in utils/dosbox directory
...
git-svn-id: trunk@32614 -
2015-12-07 22:54:02 +00:00
florian
19a7bc0aee
* fix test for 64 bit targets
...
git-svn-id: trunk@32613 -
2015-12-07 21:48:19 +00:00
florian
cad29a4e19
* set nf_write flag correctly for subscript nodes, resolves issue #28713
...
git-svn-id: trunk@32602 -
2015-12-06 19:17:50 +00:00
nickysn
47475c775f
* fixed testsuite after r32548 for certain GNU Make versions, where "-s" is not
...
enough to suppress the "entering directory" and "leaving directory" messages
(GNU Make 4.0 under Fedora 23 happens to be one that needed that fix)
git-svn-id: trunk@32585 -
2015-12-04 23:58:08 +00:00