diff options
-rw-r--r-- | avx512-0037785/tests/utils/avx/asmtestgenerator.pas | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/avx512-0037785/tests/utils/avx/asmtestgenerator.pas b/avx512-0037785/tests/utils/avx/asmtestgenerator.pas index 055aa37c72..21423df5ff 100644 --- a/avx512-0037785/tests/utils/avx/asmtestgenerator.pas +++ b/avx512-0037785/tests/utils/avx/asmtestgenerator.pas @@ -108,6 +108,7 @@ uses SysUtils, Dialogs, typinfo; type TAsmOp={$i ../../../compiler/x86_64/x8664op.inc} + TAttSuffix = (AttSufNONE,AttSufINT,AttSufFPU,AttSufFPUint,AttSufINTdual,AttSufMM,AttSufMMX,AttSufMMS); TMemRefSizeInfo = (msiUnknown, msiUnsupported, msiNoSize, msiNoMemRef, msiMultiple, msiMultipleMinSize8, msiMultipleMinSize16, msiMultipleMinSize32, @@ -148,6 +149,7 @@ type const instabentries = {$i ../../../compiler/x86_64/x8664nop.inc} + gas_needsuffix:array[tasmop] of TAttSuffix={$i ../../../compiler/x86_64/x8664ats.inc} MemRefMultiples: set of TMemRefSizeInfo = [msiMultiple, msiMultipleMinSize8, msiMultipleMinSize16, msiMultipleMinSize32, @@ -4072,6 +4074,7 @@ end; class procedure TAsmTestGenerator.ListMemRefState; var i: integer; + sGasSufffix: string; mrsize: TMemRefSizeInfo; opcode: tasmop; sl: TStringList; @@ -4090,7 +4093,13 @@ begin for opcode:=low(tasmop) to high(tasmop) do begin if InsTabMemRefSizeInfoCache^[opcode].MemRefSize = mrsize then - sl.add(format('%-25s: %s', [GetEnumName(Typeinfo(TMemRefSizeInfo), ord(mrsize)), std_op2str[opcode]])); + begin + sGasSufffix:=''; + if gas_needsuffix[opcode] <> AttSufNone then + sGasSufffix:=GetEnumName(Typeinfo(TAttSuffix), ord(gas_needsuffix[opcode])); + + sl.add(format('%-25s: %s: %s', [GetEnumName(Typeinfo(TMemRefSizeInfo), ord(mrsize)), std_op2str[opcode], sGasSufffix])); + end; end; sl.Sort; |