working on new testmethods avx512-memref-operands - 'compressed disp8*N'

git-svn-id: branches/tg74/avx512-0037785@48927 -
This commit is contained in:
tg74 2021-03-09 16:31:02 +00:00
parent ad753c0bbd
commit b4a002e3e7
2 changed files with 29 additions and 8 deletions

View File

@ -3776,14 +3776,29 @@ var
Add(format('%20s%6s', [' pop', sReg]));
case aComparemode of
cmKORTESTNC: begin
Add(format('%20s%6s, %s', ['ktestb', 'K2', 'K1']));
Add(format('%20s %6s', [' jnc', '@@CHECKRESULT']));
end;
cmXORTestNZ: begin
Add(format('%20s%6s, %s', ['kortestq', 'K2', 'K2']));
Add(format('%20s %6s', [' jnz', '@@CHECKRESULT']));
end;
//cmKORTESTNC: begin
// Add(format('%20s%6s, %s', ['ktestb', 'K2', 'K1']));
// Add(format('%20s %6s', [' jnc', '@@CHECKRESULT']));
// end;
//cmXORTestNZ: begin
// Add(format('%20s%6s, %s', ['kortestq', 'K2', 'K2']));
// Add(format('%20s %6s', [' jnz', '@@CHECKRESULT']));
// end;
cmKORTESTNC: begin
Add(format('%20s%6s, %s', ['ktestb', 'K2', 'K1']));
Add(format('%20s%6s, %s', [' kmovq', 'R10', 'K6']));
Add(format('%20s%6s, @@%d[RIP]', ['cmovc', 'R10', aAsmCounter]));
Add(format('%20s %6s', [' jmp', 'R10']));
Add(format(' @@%d%s', [aAsmCounter, ':']));
end;
cmXORTestNZ: begin
Add(format('%20s%6s, %s', ['kortestq', 'K2', 'K2']));
Add(format('%20s%6s, %s', [' kmovq', 'R10', 'K6']));
Add(format('%20s%6s, @@%d[RIP]', ['cmovz', 'R10', aAsmCounter]));
Add(format('%20s %6s', [' jmp', 'R10']));
Add(format(' @@%d%s', [aAsmCounter, ':']));
end;
end;
result := Text;

View File

@ -3734,11 +3734,17 @@ begin
if aX64 then
begin
slHeader.Add(' lea rax, @@CHECKRESULT');
slHeader.Add(' kmovq k6, rax');
slHeader.Add(' lea rax, DataBlock');
slHeader.Add(' push rax');
end
else
begin
slHeader.Add(' lea eax, @@CHECKRESULT');
slHeader.Add(' kmovd k6, eax');
slHeader.Add(' lea eax, DataBlock');
slHeader.Add(' push eax');
end;