[qfcc] Correct handling of 64-bit comparisons

While the progs engine itself implements the instructions correctly, the
opcode specs (and thus qfcc) treated the results as 32-bit (which was,
really, a hidden fixme, it seems).
This commit is contained in:
Bill Currie 2023-08-26 22:57:11 +09:00
parent 8a0246c910
commit 29a57b7128
6 changed files with 62 additions and 52 deletions

View file

@ -155,11 +155,12 @@ compare_formats = {
"mnemonic": "{op_cmp[ccc]}.{cmp_type[tt]}",
"opname": "{op_cmp[ccc]}",
"widths": "{ss+1}, {ss+1}, {ss+1}",
"types": "{cmp_types[tt]}, {cmp_types[tt]}, ev_int",
"types": "{cmp_types[tt]}, {cmp_types[tt]}, {res_types[tt & 2]}",
"args": {
"op_cmp": compare_ccc,
"cmp_type": type_tt,
"cmp_types": etype_tt,
"res_types": etype_tt,
},
}
compare2_formats = {