Commit Graph

57711 Commits

Author SHA1 Message Date
florian
83a11c2a7d * patch by J. Gareth Moreton to clean up TX86AsmOptimizer.OptPass2Jcc, resolves #36295
git-svn-id: trunk@43452 -
2019-11-11 21:29:13 +00:00
Jonas Maebe
7bf50d261e * fixed test for non-64 bit platforms
git-svn-id: trunk@43451 -
2019-11-11 09:26:55 +00:00
Jonas Maebe
2f914ee2d8 * packed tabstractvarsym.addr_taken/different_scope fields into a set
git-svn-id: trunk@43450 -
2019-11-11 09:26:51 +00:00
florian
5f3050961f * load left properly into a register in tx86addnode.second_addordinal, resolves #36287
git-svn-id: trunk@43449 -
2019-11-10 21:45:57 +00:00
florian
9d0389aa53 + readded accidently deleted file
git-svn-id: trunk@43448 -
2019-11-10 21:22:33 +00:00
florian
7464c88003 * fix and improve MovImul2Imul: we cannot insert the move target into imul if the imul is 64 bit and the mov 32 bit as
we cannot ensure that the upper 32 bits of the move target are really clear

git-svn-id: trunk@43447 -
2019-11-10 21:09:06 +00:00
florian
4b455600b8 * swapped decrefs and StripLabelFast as proposed by Gareth on the mailing list
git-svn-id: trunk@43445 -
2019-11-10 18:23:50 +00:00
florian
7747c5fc27 -- Zusammenführen von r43307 bis r43443 in ».«:
D    tests/webtbs/tw32219.pp
U    compiler/i386/i386att.inc
U    compiler/i386/i386atts.inc
U    compiler/i386/i386int.inc
U    compiler/i386/i386nop.inc
U    compiler/i386/i386op.inc
U    compiler/i386/i386prop.inc
U    compiler/i386/i386tab.inc
U    compiler/i8086/i8086att.inc
U    compiler/i8086/i8086atts.inc
U    compiler/i8086/i8086int.inc
U    compiler/i8086/i8086nop.inc
U    compiler/i8086/i8086op.inc
U    compiler/i8086/i8086prop.inc
U    compiler/i8086/i8086tab.inc
U    compiler/x86/x86ins.dat
U    compiler/x86_64/x8664ats.inc
U    compiler/x86_64/x8664att.inc
U    compiler/x86_64/x8664int.inc
U    compiler/x86_64/x8664nop.inc
U    compiler/x86_64/x8664op.inc
U    compiler/x86_64/x8664pro.inc
U    compiler/x86_64/x8664tab.inc
U    tests/utils/avx/avxopcodes.pas
-- Aufzeichnung der Informationen für Zusammenführung von r42706 bis r43443 in ».«:
 U   .

git-svn-id: trunk@43444 -
2019-11-10 16:44:34 +00:00
florian
47bb71efc4 * unneeded changes reverted
git-svn-id: branches/tg74/avx512merge@43443 -
2019-11-10 16:41:53 +00:00
florian
e1e8986462 * patch by J. Gareth Moreton, issue #36271, part 3: support for the other architectures
git-svn-id: trunk@43441 -
2019-11-10 16:11:40 +00:00
florian
2d295a3816 * patch by J. Gareth Moreton, issue #36271, part 2: x86 specific rework of the jump optimizer
git-svn-id: trunk@43440 -
2019-11-10 16:11:39 +00:00
florian
47dcc5b05b * patch by J. Gareth Moreton, issue #36271, part 1: general rework of the jump optimizer
git-svn-id: trunk@43439 -
2019-11-10 16:11:38 +00:00
Jonas Maebe
af97c43bdc + tests for r43436
git-svn-id: trunk@43438 -
2019-11-10 13:13:57 +00:00
Jonas Maebe
d23c7980aa * properly perform (or not) range/overflow checking when performing constant
propagation into inlined routines, regardless of the range/overflow
    checking state at the caller site

git-svn-id: trunk@43436 -
2019-11-10 12:00:05 +00:00
michael
d29d9c672c * Fix compilation for windows
git-svn-id: trunk@43435 -
2019-11-10 10:12:05 +00:00
florian
88a8871c62 * read more types of references properly
git-svn-id: trunk@43433 -
2019-11-09 21:58:31 +00:00
florian
79dfd9fb51 + MIPS: take care of setnoat
git-svn-id: trunk@43432 -
2019-11-09 21:58:30 +00:00
michael
8b89a5cc51 * Remove testsuite again
git-svn-id: trunk@43431 -
2019-11-09 18:56:14 +00:00
florian
99ce957111 * fixed default value for progbits
git-svn-id: trunk@43430 -
2019-11-09 18:32:36 +00:00
florian
137f392c66 * parameters declared as out must be initialized
git-svn-id: trunk@43429 -
2019-11-09 18:29:14 +00:00
florian
40bbb28fd2 * do not write section flags/progbits for .data, .rodata .data.norel as the compiler will ignore them anyways and warn about it
git-svn-id: trunk@43428 -
2019-11-09 18:28:30 +00:00
florian
7e3acda739 * TIOCtlRequest is declared as unsigned long according to man 2 ioctl
git-svn-id: trunk@43427 -
2019-11-09 18:27:21 +00:00
florian
f20e6ff323 * update generic linker script
git-svn-id: trunk@43426 -
2019-11-09 16:58:58 +00:00
michael
1c3b41eb54 * Testsuite in punit format
git-svn-id: trunk@43425 -
2019-11-09 13:39:14 +00:00
svenbarth
9e7f16f912 * correctly declare the return value of TPKeyEnumerator.GetCurrent as PKey instead of TKey
git-svn-id: trunk@43420 -
2019-11-08 22:34:11 +00:00
svenbarth
d813edef72 * also advance the error code in the case of success
git-svn-id: trunk@43419 -
2019-11-08 22:34:07 +00:00
ondrej
9a9cd15ec4 TInterfacedObject.Destroy: fix case for correct auto-completion
git-svn-id: trunk@43418 -
2019-11-08 21:29:26 +00:00
michael
5f6f5cb864 * Bit helpers for ordinal functions, adapted from batch by Thaddy De Koning (bug ID 0036146)
git-svn-id: trunk@43417 -
2019-11-08 11:43:10 +00:00
michael
f622f58b04 * Observe doclear
git-svn-id: trunk@43416 -
2019-11-08 09:31:45 +00:00
michael
e578477334 * Refactor AddDelimitedText/SetDelimitedText
git-svn-id: trunk@43415 -
2019-11-08 09:21:08 +00:00
michael
d3ceede910 * Reduce use of Length(aValue) in setdelimitedtext
git-svn-id: trunk@43414 -
2019-11-08 08:36:31 +00:00
florian
d275e7a7e6 * removed accidently committed debug statement
git-svn-id: trunk@43413 -
2019-11-07 21:12:47 +00:00
florian
c8f746b881 * do not allocate an extra register for some integer operations if not needed
git-svn-id: trunk@43412 -
2019-11-07 21:08:08 +00:00
svenbarth
b0ac0ddcc9 + add support for the IsManagedType() intrinsics which reports for a type (or variable) whether it needs initialization/finalization
+ added tests

git-svn-id: trunk@43409 -
2019-11-06 23:04:52 +00:00
Jonas Maebe
490f057aa1 * replaced the arrays in the generic set helpers with arrays of 32 bytes
instead of high(cardinal), so LLVM doesn't get tricked into massively
    unrolling and parallelising those loops

git-svn-id: trunk@43408 -
2019-11-06 21:50:23 +00:00
Jonas Maebe
ac1e0f96bd * replaced tentryfile.get/putsmall/normalset() with a common tget/putset
that expects an open array of byte, and use it for all sets
   o since all sets need to be typecasted to an array type of the appropriate
     size, we'll get a compilation error in case this needs to be done and
     that also tells us at the same time that the ppu version will need to
     be increased
  * enabled {$packset 1} for the compiler, as this is now safe with the above
    changes

git-svn-id: trunk@43407 -
2019-11-06 21:50:19 +00:00
tg74
1454e8b29d new avx512-opcodes VBMI2,VNNI,BITALG ...
git-svn-id: branches/tg74/avx512merge@43406 -
2019-11-06 19:51:01 +00:00
michael
3b867da924 * Add AddDelimitedText,AddCommatext by Werner Pamler (bug ID 36249)
git-svn-id: trunk@43405 -
2019-11-06 10:51:34 +00:00
michael
2557c8e99b * Fix bug ID #0036268, more descriptive comment
git-svn-id: trunk@43404 -
2019-11-06 10:42:11 +00:00
pierre
fff3b67b7e Remove ALLOW_WARNINGS=1 for m68k compiler
git-svn-id: trunk@43392 -
2019-11-05 10:37:19 +00:00
pierre
7d12e8cc6d Avoid warnings for m68k compiler
git-svn-id: trunk@43391 -
2019-11-05 10:00:48 +00:00
florian
fabe4cc067 * patch by Christo Crause: reg. allocation information if non-volatile registers
are used for parameter passing as it is might happen on avr, resolves #36079

git-svn-id: trunk@43390 -
2019-11-04 20:14:46 +00:00
marco
ee5fe9ef79 * patch from Keith Bowes, mantis #23950
git-svn-id: trunk@43389 -
2019-11-04 15:43:12 +00:00
yury
937683ec8f * pas2jni: Filter out advanced methods and properties of RTL classes to prevent overbloated code.
git-svn-id: trunk@43386 -
2019-11-03 18:51:33 +00:00
florian
d3c5bd2a3e * test for tw36212
git-svn-id: trunk@43385 -
2019-11-03 17:33:26 +00:00
florian
c6659d62f8 * do not join register deallocations/allocations as it makes no use and causes later on trouble in
the assembler optimizer as register allocations are not correct, resolves #33565

git-svn-id: trunk@43384 -
2019-11-03 17:13:59 +00:00
yury
a09c0a6857 * pas2jni: Exclude TExtended80Rec by default.
git-svn-id: trunk@43383 -
2019-11-03 16:00:41 +00:00
florian
b8f186dab2 * reverted r43366
git-svn-id: trunk@43382 -
2019-11-03 14:42:02 +00:00
yury
b988837d1b * pas2jni: Skip var parameters of unsupported types.
git-svn-id: trunk@43381 -
2019-11-03 14:26:00 +00:00
yury
b4e0c72cbe * pas2jni: Fixed more case statement warnings.
git-svn-id: trunk@43376 -
2019-11-03 13:22:14 +00:00