mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 13:49:39 +02:00
* fixed a few merging issues
+ extended readme to explain avx tests can be run using GNU Parallel git-svn-id: branches/tg74/avx512@42647 -
This commit is contained in:
parent
bce70a5105
commit
537c63bd83
@ -28,7 +28,7 @@ uses BaseList, Classes;
|
|||||||
|
|
||||||
type
|
type
|
||||||
TOpType = (otUnknown, otXMMReg, otXMMRM, otXMMRM16, otXMMRM8, otYMMReg, otYMMRM, otZMMReg, otZMMRM, otEAX, otRAX, otMem32,
|
TOpType = (otUnknown, otXMMReg, otXMMRM, otXMMRM16, otXMMRM8, otYMMReg, otYMMRM, otZMMReg, otZMMRM, otEAX, otRAX, otMem32,
|
||||||
otMem8, otMem16, otMem64, otMem128, otMem256, otMem512, otREG64, otREG32, otREG16, otRM32, otRM64, otIMM8,
|
otMem8, otMem16, otMem64, otMem128, otMem256, otMem512, otREG64, otREG32, otREG16, otREG8, otRM32, otRM64, otIMM8,
|
||||||
otXMEM32, otXMEM64, otYMEM32, otYMEM64, otZMEM32, otZMEM64,
|
otXMEM32, otXMEM64, otYMEM32, otYMEM64, otZMEM32, otZMEM64,
|
||||||
otB32, otB64, otKREG);
|
otB32, otB64, otKREG);
|
||||||
|
|
||||||
@ -150,11 +150,15 @@ type
|
|||||||
IF_SSSE3,
|
IF_SSSE3,
|
||||||
IF_SSE41,
|
IF_SSE41,
|
||||||
IF_SSE42,
|
IF_SSE42,
|
||||||
|
IF_MOVBE,
|
||||||
|
IF_CLMUL,
|
||||||
IF_AVX,
|
IF_AVX,
|
||||||
IF_AVX2,
|
IF_AVX2,
|
||||||
IF_AVX512,
|
IF_AVX512,
|
||||||
IF_BMI1,
|
IF_BMI1,
|
||||||
IF_BMI2,
|
IF_BMI2,
|
||||||
|
{ Intel ADX (Multi-Precision Add-Carry Instruction Extensions) }
|
||||||
|
IF_ADX,
|
||||||
IF_16BITONLY,
|
IF_16BITONLY,
|
||||||
IF_FMA,
|
IF_FMA,
|
||||||
IF_FMA4,
|
IF_FMA4,
|
||||||
@ -1147,7 +1151,6 @@ begin
|
|||||||
end
|
end
|
||||||
else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
|
else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
|
||||||
end
|
end
|
||||||
<<<<<<< .working
|
|
||||||
else if (AnsiSameText(sl_Operand, 'MEM512')) or
|
else if (AnsiSameText(sl_Operand, 'MEM512')) or
|
||||||
(AnsiSameText(sl_Operand, 'MEM512_M')) or
|
(AnsiSameText(sl_Operand, 'MEM512_M')) or
|
||||||
(AnsiSameText(sl_Operand, 'MEM512_MZ')) then
|
(AnsiSameText(sl_Operand, 'MEM512_MZ')) then
|
||||||
|
@ -57,7 +57,7 @@ begin
|
|||||||
'f': MakeTestFiles(tfFPC, x64, AVX512, false, Path);
|
'f': MakeTestFiles(tfFPC, x64, AVX512, false, Path);
|
||||||
'F': MakeTestFiles(tfFasm, x64, AVX512, false, Path);
|
'F': MakeTestFiles(tfFasm, x64, AVX512, false, Path);
|
||||||
'n': MakeTestFiles(tfNasm, x64, AVX512, false, Path);
|
'n': MakeTestFiles(tfNasm, x64, AVX512, false, Path);
|
||||||
'I': MakeTestFiles(tfFPCInc, x64, Path);
|
'I': MakeTestFiles(tfFPCInc, x64, AVX512, false, Path);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
finally
|
finally
|
||||||
|
@ -37,7 +37,9 @@ fpc avxtestfilecmp
|
|||||||
./avxtestgenerator -px8664 -fnasm -otmp
|
./avxtestgenerator -px8664 -fnasm -otmp
|
||||||
cd tmp
|
cd tmp
|
||||||
echo *.pp | xargs -n 1 fpc -Px86_64 -v0i
|
echo *.pp | xargs -n 1 fpc -Px86_64 -v0i
|
||||||
echo *.asm | xargs -n 1 nasm -fwin64
|
# echo *.asm | xargs -n 1 nasm -fwin64
|
||||||
|
# use GNU Parallel [1]
|
||||||
|
find . -name '*.asm' | parallel nasm -fwin64
|
||||||
cd ..
|
cd ..
|
||||||
./avxtestfilecmp -mtmp/*.o -dtmp -s
|
./avxtestfilecmp -mtmp/*.o -dtmp -s
|
||||||
|
|
||||||
@ -88,3 +90,4 @@ VMOVUPD
|
|||||||
VMOVUPS
|
VMOVUPS
|
||||||
|
|
||||||
|
|
||||||
|
[1] O. Tange (2011): GNU Parallel - The Command-Line Power Tool, ;login: The USENIX Magazine, February 2011:42-47.
|
||||||
|
Loading…
Reference in New Issue
Block a user