Commit Graph

328 Commits

Author SHA1 Message Date
florian
ce1f115b2d * use str(...) instead of typinfo unit
git-svn-id: branches/tg74/avx512-0037785@48085 -
2021-09-01 09:29:48 +02:00
tg74
b6cf482fcf internal assembler-reader x86 (local/global var) - validate asm-opcode-attsuffix and memrefsize
git-svn-id: branches/tg74/avx512-0037785@47984 -
2021-09-01 09:29:48 +02:00
tg74
195c8b599c internal assembler-reader x86 opsize local/global var - cleanup
git-svn-id: branches/tg74/avx512-0037785@47899 -
2021-09-01 09:26:38 +02:00
tg74
b7ade3e566 internal assembler-reader x86 opsize local/global var - cleanup
git-svn-id: branches/tg74/avx512-0037785@47885 -
2021-09-01 09:26:38 +02:00
tg74
96fcd2e760 bugfix internal assembler-reader x86 opsize local va
git-svn-id: branches/tg74/avx512-0037785@47681 -
2021-09-01 09:24:32 +02:00
tg74
0530a2f6e7 working on new testmethods and bug-fixing size of (memref-operands | global and local variable
git-svn-id: branches/tg74/avx512-0037785@47678 -
2021-09-01 09:24:32 +02:00
florian
ce1f9cce01 * throw an error if esp/rsp are used as index register
git-svn-id: trunk@49568 -
2021-06-27 21:21:19 +00:00
pierre
17e3c31b7e Fix gotpcrel relocation for TESTQ x86_64 instruction
git-svn-id: trunk@49252 -
2021-04-23 21:52:24 +00:00
yury
221efd7a80 * Commented out some unused (yet?) local variables.
git-svn-id: trunk@48386 -
2021-01-24 13:04:17 +00:00
yury
64c586b86d * Removed/ifdefed lots of unused variables.
git-svn-id: trunk@48384 -
2021-01-24 12:24:01 +00:00
florian
9c7cb3dbd7 * fix spilling of avx(512) registers
* get_scalar_mm_op fixed for M256

git-svn-id: trunk@47524 -
2020-11-21 22:30:34 +00:00
pierre
f0b22a1569 Revert commit #47257, Disable use of cmov instructions in alignment patterns for some i386 targets (it prevents use of some emulators)
Replace it by a new set of i386 targets, for which the default cpu is set to i80486 instead of pentium2
  to avoid (for default configuration) use of CMOVxx or PREFETCHyyy instructions, not supported by some emulators.

git-svn-id: trunk@47433 -
2020-11-16 17:04:46 +00:00
florian
fc960879de -- Zusammenführen von r47033 bis r47401 in ».«:
C    compiler/i386/i386nop.inc
U    compiler/i386/i386tab.inc
U    compiler/i386/i386atts.inc
U    compiler/i386/i386att.inc
C    compiler/i8086/i8086nop.inc
U    compiler/i8086/i8086tab.inc
U    compiler/i8086/i8086atts.inc
U    compiler/i8086/i8086att.inc
U    compiler/x86/x86ins.dat
C    compiler/x86/rax86.pas
U    compiler/x86/aasmcpu.pas
U    compiler/x86/cpubase.pas
U    compiler/x86/agx86att.pas
U    compiler/x86/itcpugas.pas
U    compiler/x86/rax86att.pas
C    compiler/x86_64/x8664nop.inc
U    compiler/x86_64/x8664tab.inc
U    compiler/x86_64/x8664ats.inc
U    compiler/x86_64/x8664att.inc
U    compiler/utils/mkx86ins.pp
U    tests/utils/avx/asmtestgenerator.pas
U    tests/utils/avx/avxopcodes.pas
-- Aufzeichnung der Informationen für Zusammenführung von r47033 bis r47401 in ».«:
 U   .
Konfliktübersicht:
  Textkonflikte: 4
Konfliktübersicht:
  Textkonflikte: 4

git-svn-id: trunk@47402 -
2020-11-12 20:31:29 +00:00
tg74
7eb20b88a9 cleanup
git-svn-id: branches/tg74/avx512-0037785@47352 -
2020-11-08 22:16:55 +00:00
pierre
f674ed0324 Disable use of cmov instructions in alignment patterns for some i386 targets (it prevents use of some emulators)
git-svn-id: trunk@47257 -
2020-10-30 16:12:47 +00:00
tg74
673a113c0f bugfix disp8*N global variable
git-svn-id: branches/tg74/avx512-0037785@47215 -
2020-10-27 05:16:06 +00:00
tg74
ab22f9b3fb bugfix internal assembler - disp8 T1S (vpcompressb,vpcompressw)
git-svn-id: branches/tg74/avx512-0037785@47161 -
2020-10-23 15:20:39 +00:00
florian
637976e83f * patch by Marģers to unify internal error numbers, resolves #37888
git-svn-id: trunk@47103 -
2020-10-13 19:59:01 +00:00
florian
cb11e2568d + Xtensa: patch by Christo Crause to add optional MAC16 registers, resolves #37130
git-svn-id: trunk@45679 -
2020-06-22 19:05:13 +00:00
florian
84a1f614d9 * fix several double ;
git-svn-id: trunk@45488 -
2020-05-24 17:52:09 +00:00
Jeppe Johansen
135a88c888 movhlps/movlhps only take xmm registers.
Handle spilling of SSE registers.

git-svn-id: trunk@44272 -
2020-03-06 17:19:51 +00:00
yury
1b3a3a7983 * Removed lot of unused local vars. It is useful to turn on the notes in options. :)
git-svn-id: trunk@44053 -
2020-01-28 18:45:33 +00:00
Jonas Maebe
9bd33f7a45 + support for LLVM metadata constant string parameters
o they are implemented as a new metadata register class, whereby the
     subregister indicates the metadata type (currently always a string)
     and the superregister is an index in the metadata array (which
     contains the strings). LLVM metadata can only be passed as parameters
     to intrinsics in bitcode, so moves of metadata into other registers
     triggers internal errors and when moving them into parameters, we
     replace the parameter's register with the metadata register (and look
     up the corresponding string when writing out the bitcode)

git-svn-id: trunk@43816 -
2019-12-30 15:04:57 +00:00
florian
e1433adc2e * check in the internal assembler for references with incorrect use of RIP
+ test

git-svn-id: trunk@43461 -
2019-11-13 20:47:42 +00:00
pierre
7e5bf5a9fb Fix compilation error for i8086 cpu target
git-svn-id: trunk@43308 -
2019-10-24 07:03:14 +00:00
florian
fa9c7a92c7 -- Zusammenführen von r42725 bis r43306 in ».«:
A    tests/webtbs/tw32219.pp
U    tests/utils/avx/avxopcodes.pas
U    tests/utils/avx/asmtestgenerator.pas
U    compiler/i386/i386tab.inc
U    compiler/i386/i386nop.inc
U    compiler/i8086/i8086tab.inc
U    compiler/i8086/i8086nop.inc
U    compiler/x86_64/x8664tab.inc
U    compiler/x86_64/x8664nop.inc
U    compiler/x86/aasmcpu.pas
U    compiler/x86/x86ins.dat
U    compiler/x86/rax86.pas
-- Aufzeichnung der Informationen für Zusammenführung von r42706 bis r43306 in ».«:
 U   .

git-svn-id: trunk@43307 -
2019-10-23 18:17:50 +00:00
tg74
e019d810b0 bugfix movntsd, movntss
git-svn-id: branches/tg74/avx512merge@43284 -
2019-10-21 09:39:53 +00:00
florian
85ca3248bf * clean up overlefts from "SCL" based approach
git-svn-id: branches/tg74/avx512merge@43275 -
2019-10-20 14:43:16 +00:00
tg74
05429fc4c2 bugfix 35700 - replace x86insdat-opcodeflags SCL_32,SCL_64 with \336\,\337\)
git-svn-id: branches/tg74/avx512merge@43152 -
2019-10-08 09:13:43 +00:00
tg74
f0002fe644 bugfix 35700 without opcode flags
git-svn-id: branches/tg74/avx512merge@43106 -
2019-10-02 20:39:41 +00:00
florian
56d91b4ca7 + support tls threadvars with the internal assembler
git-svn-id: trunk@43070 -
2019-09-25 21:19:03 +00:00
florian
14b7eaa46f + x86-64: implemented support for relocation needed by tls threadvars in the binary elf writer
git-svn-id: trunk@43067 -
2019-09-25 21:18:59 +00:00
tg74
df199fbe23 bugfix 35700 xmmrm - zmmrm, mem32/64
git-svn-id: branches/tg74/avx512merge@42956 -
2019-09-08 19:13:42 +00:00
tg74
6a9e48c904 preparing for bugfix 35700 and cleanup
git-svn-id: branches/tg74/avx512merge@42834 -
2019-08-26 19:25:13 +00:00
tg74
9baf452681 Bugfix GATHER/SCATTER memref
git-svn-id: branches/tg74/avx512merge@42723 -
2019-08-18 04:39:36 +00:00
florian
46b4f91175 * compilation on i386-linux fixed
git-svn-id: trunk@42675 -
2019-08-13 09:45:13 +00:00
florian
413beee9ae -- Zusammenführen von r42652 bis r42673 in ».«:
U    compiler/x86/aasmcpu.pas
-- Aufzeichnung der Informationen für Zusammenführung von r42652 bis r42673 in ».«:
 U   .

git-svn-id: trunk@42674 -
2019-08-13 08:54:47 +00:00
tg74
ad791e8e34 bugfix error with avx-memory-parameter OT_MEM128,OT_MEM256,OT_MEM512
git-svn-id: branches/tg74/avx512@42667 -
2019-08-12 20:59:53 +00:00
florian
5947143d8f * intel asm reader: try to read avx512 extensions only if the instruction supports them
* cleanup

git-svn-id: trunk@42656 -
2019-08-12 10:46:19 +00:00
florian
4c9a0403f4 * compilation on i386 fixed
git-svn-id: trunk@42655 -
2019-08-11 19:35:34 +00:00
florian
f883dd6dbb Synchronized with trunk, part 2 (make all works, avx-512 support not yet tested, no regression testing yet)
git-svn-id: branches/tg74/avx512@42643 -
2019-08-10 19:38:35 +00:00
florian
746bfced25 Synchronized with trunk, part 1 (only make cycle tested, make all is broken, avx-512 support not yet tested
git-svn-id: branches/tg74/avx512@42642 -
2019-08-10 13:53:20 +00:00
Jonas Maebe
281b3ad276 * fix case completeness and unreachable code warnings in compiler that would
be introduced by the next commit

git-svn-id: trunk@42046 -
2019-05-12 14:29:03 +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
72416edcc4 + support for tlsm_general on i386-linux
git-svn-id: trunk@40281 -
2018-11-11 17:32:20 +00:00
yury
4357caaad8 * Removed unused local vars.
git-svn-id: trunk@40183 -
2018-11-02 18:44:29 +00:00
florian
cdce68451a - x86 align does not use a register anymore, code removed
git-svn-id: trunk@40157 -
2018-11-01 20:49:15 +00:00
tg74
60a75a2277 delete testcode
git-svn-id: branches/tg74/avx512@39936 -
2018-10-15 10:46:41 +00:00
tg74
1ef9cc01e6 avx512 disp8*N
git-svn-id: branches/tg74/avx512@39909 -
2018-10-09 21:19:52 +00:00
tg74
fba72b280b avx512 broadcast vcvt...,vfpclass...
git-svn-id: branches/tg74/avx512@39778 -
2018-09-19 15:28:15 +00:00