Commit Graph

1361 Commits

Author SHA1 Message Date
pierre
09e7570e57 * Avoid warning about unset variable in TestParents
+ Add check after moving current directory to root drive
    for Dos style pathes.

git-svn-id: trunk@18245 -
2011-08-17 11:55:32 +00:00
pierre
8dc1ce55c1 * Avoid infinite loop on Unix
git-svn-id: trunk@18242 -
2011-08-17 11:22:54 +00:00
florian
8833c1cfa3 * patch by Petr-K to fix 3*3 matrix inversion, resolves #19828
+ tests

git-svn-id: trunk@18213 -
2011-08-14 21:46:47 +00:00
Tomas Hajny
4230a33272 * MkDir and RmDir usually not allow trailing directory separator (except when running under Win32)
git-svn-id: trunk@18185 -
2011-08-12 23:50:00 +00:00
pierre
47b943d236 + Add traling separators tests
git-svn-id: trunk@18177 -
2011-08-12 09:01:29 +00:00
pierre
9fff19cda9 + DirectoryExists tests
git-svn-id: trunk@18175 -
2011-08-12 08:30:46 +00:00
pierre
7fd2f2b3ed * Skip go32v2 target has there is no thread support
git-svn-id: trunk@18170 -
2011-08-11 13:13:35 +00:00
sergei
4d0e8ca896 * Fixed compilation of the test after r16326
git-svn-id: trunk@18017 -
2011-07-25 05:29:51 +00:00
florian
570f3c4b39 * merges recent class helper fixes by Sven Barth
git-svn-id: trunk@17887 -
2011-06-30 18:54:46 +00:00
pierre
72f2d37bac Correct last wrong commit.
+ Use Get_Frame function instead of assmebler code.
  + Add a check for FPU stack on i386.

git-svn-id: trunk@17885 -
2011-06-30 14:48:20 +00:00
pierre
e98c62cb68 * Also check that there is no FPU stack overrun on i386 CPU
git-svn-id: trunk@17884 -
2011-06-30 14:12:21 +00:00
Jonas Maebe
b2c8088d1c * don't use assembler stack checking code if FPC_PIC is defined, because the
assembler code is not pic-safe

git-svn-id: trunk@17880 -
2011-06-29 20:41:58 +00:00
pierre
547b6bbecb * Add stack checking to test
git-svn-id: trunk@17878 -
2011-06-29 20:25:51 +00:00
pierre
75dde8ab46 * Restrict test to interactive
git-svn-id: trunk@17870 -
2011-06-29 14:38:54 +00:00
pierre
29ca78c6e3 * Check that two $WARN are OK
git-svn-id: trunk@17869 -
2011-06-29 14:31:10 +00:00
florian
990add9272 * fixed non short boolean evaluation of <64 bit bool> and/or <64 bit bool> on non-64 bit cpus
* extended test for new pas boolean types

git-svn-id: branches/pasboolxx@17841 -
2011-06-26 21:01:59 +00:00
pierre
a0f7356edc * New DLL overloading tests
git-svn-id: trunk@17812 -
2011-06-23 21:14:01 +00:00
florian
01f07ae466 + forgotten test for r17808
git-svn-id: trunk@17811 -
2011-06-23 21:03:17 +00:00
florian
8e7f39f176 * constant evaluation of ror/rol if they are internally handled, resolves #6300
* renamed rox_x_x to rox_x_y

git-svn-id: trunk@17810 -
2011-06-23 20:54:08 +00:00
pierre
0555757247 * Fix executable name import
git-svn-id: trunk@17790 -
2011-06-22 07:40:24 +00:00
pierre
3818ae0db2 + Added missing %norun or %needlibrary for libraries
git-svn-id: trunk@17789 -
2011-06-22 07:16:06 +00:00
pierre
c4d43cfd59 * Restrict all tests to win32 and win64 targets
* Rename executables so the DLL are generated before.

git-svn-id: trunk@17788 -
2011-06-22 07:05:54 +00:00
pierre
3874bc7d74 + Check that dll imports in units also works
git-svn-id: trunk@17785 -
2011-06-21 19:56:55 +00:00
pierre
e4a16a8225 + Two new windows DLL tests added
git-svn-id: trunk@17783 -
2011-06-21 11:52:02 +00:00
pierre
ede0a5a929 * Restrict test to Windows OS
git-svn-id: trunk@17778 -
2011-06-20 21:07:23 +00:00
pierre
18f5b6c2a6 * Be more descriptive in test output
git-svn-id: trunk@17777 -
2011-06-20 15:50:54 +00:00
pierre
c2b9bec684 * Added test for double library entry with same name
git-svn-id: trunk@17776 -
2011-06-20 15:45:44 +00:00
joost
45bc3fcae0 * Enabled safecall on x86_64-linux
git-svn-id: trunk@17629 -
2011-06-02 10:43:18 +00:00
sergei
e3050439a8 * Reverted r17556 and replaced it with more generic handling of 'rela'-styled relocations. Resolves #19416.
+ Test case added to existing test/ulib2a.pp.

git-svn-id: trunk@17580 -
2011-05-27 18:19:08 +00:00
sergei
d5a221f6e8 * Forgot to set proper compilation options
git-svn-id: trunk@17566 -
2011-05-26 22:24:39 +00:00
sergei
9c27a802a0 * When relocating local symbols on x86_64, put symbol address into addend field of the relocation, resolves #13671.
+ test

git-svn-id: trunk@17556 -
2011-05-25 16:18:04 +00:00
sergei
504e0c6816 x86 assembler fixes:
* mkx86ins.pp: 'regmem' operand type in x86ins.dat must be converted to OT_RM_GPR, not OT_REGMEM. The latter does not restrict register type, allowing to use e.g. xmm registers in place of regular ones. 
* Finished 'movd' and 'movq', added some tests for them to tasm2.pp.

git-svn-id: trunk@17515 -
2011-05-20 20:39:35 +00:00
sergei
9e8a31193b x86 assembler:
* Optimized the opcode representation of movq and remaining 3DNow instructions
* Disallow immediates not fitting in 32 bits (Mantis #14685) + test
* Disallow push/pop with 32-bit operands in x86_64 + test

git-svn-id: trunk@17490 -
2011-05-17 20:06:12 +00:00
sergei
d908fb42f7 x86 assembler fixes:
* Factored repeating REX operations into a separate function.
* Fixed instruction matching bug which was preventing compilation of 3-operand SIMD instructions with RIP-relative operand + test.
* Do not adjust offset of RIP-relative reference if it is a literal number, this was causing 0x123(%rip) to assemble as 0x122(%rip) in 3-operand instructions. Now tasm2.pp is the same with and without -Aas. Also fixed the expected result, improved verbosity of diagnostic and removed %norun, so it is actually executed.
+ Disallow high-byte registers in instructions requiring REX + test.

git-svn-id: trunk@17478 -
2011-05-16 20:18:03 +00:00
florian
2d754c5ff3 * check assembling result
git-svn-id: trunk@17461 -
2011-05-14 19:25:53 +00:00
sergei
c28197bac3 * PSADBW second operand is xmmrm, not xmmreg
+ A couple of tests related to the recent assembler changes

git-svn-id: trunk@17460 -
2011-05-14 18:59:06 +00:00
sergei
6739cec2b9 * Flagged with NOX86_64 instructions/encodings that are invalid in 64-bit mode.
* AESKEYGENASSIST is not ATT-specific name, it is used by Intel-style assemblers as well. Also updated tests/test/taes1.pp to reflect the change.
+ Added SCASQ, resolves #16730 (other opcodes mentioned in that report were added/fixed earlier)

git-svn-id: trunk@17431 -
2011-05-11 15:50:59 +00:00
Jonas Maebe
a08989a76b * zero/sign extend parameter values and return values < 32 bit to 32 bit on
x86_64 (mantis #19269)
  * this is also required for darwin/i386 and was already done there for
    parameters, but not yet for return values

git-svn-id: trunk@17388 -
2011-05-01 11:33:29 +00:00
sergei
f97f223de6 x86_64 assembler reader improvements:
+ Added new value TAttSuffix.attsufINTdual, assigned it to movsX and movzX instructions
* Moved suffix-to-size translation tables from rax86att.pas to itcpugas.pas
+ Added x86_64 specific suffix-to-size translation, enabling BQ and WQ suffixes (LQ seems unnecessary at the moment)
* Fixed logic of tx86attreader.is_asmopcode so it only assigns dual suffix to instructions that explicitly allow it. This disambiguates cases like movsbq=movs+bq vs. cmovbq=cmovb+q
* As a net result: movz[bw]q and movs[bw]q now compile for x86_64; cmovbw and cmovbl which were incorrectly handled for i386 are now fixed.
+ Test for correct assembling of cmov.

git-svn-id: trunk@17353 -
2011-04-20 11:18:13 +00:00
paul
f904f41664 compiler: don't allow local or anonymous records to have types (the second part of issue #0019099)
git-svn-id: trunk@17336 -
2011-04-18 06:10:56 +00:00
paul
550ad700c3 compiler: allow class declarations inside records (1 part of issue #0019099)
git-svn-id: trunk@17335 -
2011-04-18 03:26:46 +00:00
paul
56cd7b3450 compiler: allow use of default properties for records (issue #0019098)
git-svn-id: trunk@17334 -
2011-04-18 03:15:58 +00:00
sergei
62e11742bf * Reverted STD_xxx_HANDLE constants back to DWORD type (issue introduced in r15824). These are not handles, and are 32-bit even in Win64. See http://msdn.microsoft.com/en-us/library/ms683231.aspx
+ added a test to help detecting this happening again.

git-svn-id: trunk@17333 -
2011-04-17 22:27:56 +00:00
florian
ee54a8b879 * Merged helper branch made by Sven Barth
-- Zusammenführen der Unterschiede zwischen Projektarchiv-URLs in ».«:
 U   rtl/inc/objc1.inc
U    rtl/inc/system.inc
U    rtl/objpas/typinfo.pp
A    tests/test/tchlp30.pp
A    tests/test/thlp35.pp
A    tests/test/tchlp3.pp
A    tests/test/thlp7.pp
A    tests/test/trhlp24.pp
A    tests/test/tchlp13.pp
A    tests/test/thlp44.pp
A    tests/test/thlp18.pp
A    tests/test/trhlp33.pp
A    tests/test/tchlp22.pp
A    tests/test/thlp27.pp
A    tests/test/trhlp16.pp
A    tests/test/tchlp31.pp
A    tests/test/thlp36.pp
A    tests/test/tchlp4.pp
A    tests/test/thlp8.pp
A    tests/test/trhlp25.pp
A    tests/test/trhlp1.pp
A    tests/test/uhlp41a.pp
A    tests/test/tchlp40.pp
A    tests/test/tchlp14.pp
A    tests/test/thlp19.pp
A    tests/test/trhlp34.pp
 U   tests/test/ttpara1.pp
A    tests/test/tchlp23.pp
A    tests/test/thlp28.pp
A    tests/test/urhlp14.pp
A    tests/test/trhlp17.pp
A    tests/test/tchlp32.pp
A    tests/test/uhlp43.pp
A    tests/test/thlp37.pp
A    tests/test/tchlp5.pp
A    tests/test/thlp9.pp
A    tests/test/trhlp26.pp
A    tests/test/trhlp2.pp
A    tests/test/uchlp12.pp
A    tests/test/tchlp41.pp
A    tests/test/uhlp41b.pp
A    tests/test/tchlp15.pp
A    tests/test/trhlp35.pp
 U   tests/test/ttpara2.pp
A    tests/test/tchlp50.pp
A    tests/test/tchlp24.pp
A    tests/test/thlp29.pp
A    tests/test/trhlp18.pp
A    tests/test/thlp10.pp
 U   tests/test/cg/ttincdec.pp
A    tests/test/tchlp33.pp
A    tests/test/thlp38.pp
A    tests/test/tchlp6.pp
A    tests/test/trhlp27.pp
A    tests/test/trhlp3.pp
A    tests/test/tchlp42.pp
A    tests/test/tchlp16.pp
A    tests/test/trhlp36.pp
A    tests/test/tchlp51.pp
A    tests/test/tchlp25.pp
A    tests/test/trhlp19.pp
A    tests/test/thlp11.pp
A    tests/test/tchlp34.pp
A    tests/test/thlp39.pp
A    tests/test/tchlp7.pp
A    tests/test/trhlp28.pp
A    tests/test/thlp20.pp
A    tests/test/trhlp4.pp
A    tests/test/tchlp43.pp
A    tests/test/tchlp17.pp
A    tests/test/trhlp37.pp
A    tests/test/tchlp52.pp
A    tests/test/tchlp26.pp
A    tests/test/thlp1.pp
A    tests/test/urhlp17.pp
A    tests/test/thlp12.pp
A    tests/test/tchlp35.pp
A    tests/test/tchlp8.pp
A    tests/test/trhlp29.pp
A    tests/test/thlp21.pp
A    tests/test/trhlp5.pp
A    tests/test/tchlp44.pp
A    tests/test/tchlp18.pp
A    tests/test/trhlp10.pp
A    tests/test/trhlp38.pp
A    tests/test/thlp30.pp
A    tests/test/tchlp53.pp
A    tests/test/tchlp27.pp
A    tests/test/thlp2.pp
A    tests/test/thlp13.pp
A    tests/test/tchlp36.pp
A    tests/test/tchlp9.pp
A    tests/test/thlp22.pp
A    tests/test/trhlp6.pp
A    tests/test/tchlp45.pp
A    tests/test/tchlp19.pp
A    tests/test/trhlp11.pp
A    tests/test/trhlp39.pp
A    tests/test/thlp31.pp
A    tests/test/tchlp54.pp
A    tests/test/tchlp28.pp
A    tests/test/uhlp39.pp
A    tests/test/thlp3.pp
A    tests/test/trhlp20.pp
A    tests/test/thlp40.pp
A    tests/test/thlp14.pp
A    tests/test/tchlp37.pp
A    tests/test/thlp23.pp
A    tests/test/trhlp7.pp
A    tests/test/tchlp46.pp
A    tests/test/trhlp12.pp
A    tests/test/thlp32.pp
A    tests/test/tchlp29.pp
A    tests/test/thlp4.pp
A    tests/test/trhlp21.pp
A    tests/test/tchlp10.pp
A    tests/test/thlp41.pp
A    tests/test/thlp15.pp
A    tests/test/tchlp38.pp
U    tests/test/trtti1.pp
A    tests/test/trhlp30.pp
A    tests/test/thlp24.pp
A    tests/test/trhlp8.pp
A    tests/test/uchlp18.pp
A    tests/test/tchlp47.pp
A    tests/test/trhlp13.pp
A    tests/test/thlp33.pp
A    tests/test/tchlp1.pp
A    tests/test/thlp5.pp
A    tests/test/trhlp22.pp
A    tests/test/tchlp11.pp
A    tests/test/thlp42.pp
A    tests/test/thlp16.pp
A    tests/test/tchlp39.pp
A    tests/test/uhlp3.pp
A    tests/test/trhlp31.pp
A    tests/test/tchlp20.pp
A    tests/test/uhlp31.pp
A    tests/test/thlp25.pp
A    tests/test/trhlp9.pp
A    tests/test/tchlp48.pp
A    tests/test/trhlp40.pp
A    tests/test/trhlp14.pp
A    tests/test/thlp34.pp
A    tests/test/tchlp2.pp
A    tests/test/thlp6.pp
A    tests/test/trhlp23.pp
A    tests/test/tchlp12.pp
A    tests/test/thlp43.pp
A    tests/test/thlp17.pp
A    tests/test/trhlp32.pp
A    tests/test/tchlp21.pp
A    tests/test/thlp26.pp
A    tests/test/tchlp49.pp
A    tests/test/trhlp41.pp
A    tests/test/trhlp15.pp
 U   tests/webtbf/tw13815.pp
 U   tests/tbf/tb0216.pp
U    compiler/msgtxt.inc
U    compiler/nld.pas
U    compiler/dbgdwarf.pas
U    compiler/sparc/cgcpu.pas
U    compiler/fmodule.pas
U    compiler/i386/cgcpu.pas
U    compiler/msgidx.inc
U    compiler/pdecsub.pas
U    compiler/ncgld.pas
U    compiler/symdef.pas
U    compiler/nobj.pas
U    compiler/nflw.pas
U    compiler/pdecobj.pas
U    compiler/objcdef.pas
U    compiler/pinline.pas
U    compiler/pexpr.pas
U    compiler/ncgrtti.pas
U    compiler/x86_64/cgcpu.pas
U    compiler/htypechk.pas
U    compiler/parser.pas
U    compiler/tokens.pas
U    compiler/symbase.pas
U    compiler/ncal.pas
U    compiler/symtable.pas
U    compiler/pp.lpi
U    compiler/m68k/cgcpu.pas
U    compiler/ppu.pas
U    compiler/rautils.pas
U    compiler/arm/cgcpu.pas
U    compiler/ptype.pas
U    compiler/symconst.pas
U    compiler/mips/cgcpu.pas
U    compiler/msg/errore.msg
U    compiler/psub.pas
U    compiler/utils/ppudump.pp
 U   compiler/utils
U    compiler/pdecvar.pas
U    compiler/ncgcal.pas
U    compiler/pdecl.pas
U    compiler/dbgstabs.pas
U    compiler/ppcgen/cgppc.pas
 U   packages/fcl-xml/tests/README_DOM.txt
 U   packages/unzip/src/unzip51g.pp
 U   packages/winunits-base/src/dwmapi.pp
 U   .

git-svn-id: trunk@17328 -
2011-04-16 14:01:44 +00:00
sergei
30f7bff09d * Did a clean rewrite of IndexByte and IndexWord, resulting in somewhat less instructions.
+ IndexWord for the case of unaligned buffer: implemented using aligned reads.
+ tindex.pp: Added testing correctness of IndexWord with unlimited length.

git-svn-id: trunk@17317 -
2011-04-14 17:12:04 +00:00
svenbarth
35b47e491c Rebase to revision 17306
git-svn-id: branches/svenbarth/classhelpers@17314 -
2011-04-13 10:04:14 +00:00
svenbarth
798cc01ffe Corrected two tests ("modeswitch" => "mode")
git-svn-id: branches/svenbarth/classhelpers@17307 -
2011-04-12 07:02:57 +00:00
florian
c97869bd89 * merge user sections support branch
git-svn-id: trunk@17285 -
2011-04-10 18:08:59 +00:00
sergei
c5e7902e4b + x86_64 optimized assembler functions IndexByte and IndexWord
+ Extended tests of IndexByte with checks to verify correct operation when passed length is -1.

git-svn-id: trunk@17281 -
2011-04-10 17:05:18 +00:00
florian
9279c6955e * support for SSSE3, SSE4,1, SSE4.2, AES instructions set by Emelyanov Roman, resolves #18527
+ test for aes support

git-svn-id: trunk@17256 -
2011-04-05 20:22:57 +00:00