xoris,NORMAL,,2P,EXTRA3,d:RA,s:RS,0,0,RS,0,0,RA,0,0,0
subfic,NORMAL,,2P,EXTRA3,d:RT,s:RA,0,0,RA,0,0,RT,0,0,0
fishmv,NORMAL,,2P,EXTRA3,d:FRS,s:FRS,0,0,FRS,0,0,FRS,0,0,0
+setvl,NORMAL,,2P,EXTRA3,d:RT,s:RA,0,0,RA_OR_ZERO,0,0,RT_OR_ZERO,0,CR0,0
cntlzw,NORMAL,,2P,EXTRA3,d:RA;d:CR0,s:RS,0,0,RS,0,0,RA,0,CR0,0
cntlzd,NORMAL,,2P,EXTRA3,d:RA;d:CR0,s:RS,0,0,RS,0,0,RA,0,CR0,0
subfze,NORMAL,,2P,EXTRA3,d:RT;d:CR0,s:RA,0,0,RA,0,0,RT,0,CR0,0
continue
if 'addpcis' in insn_name: # skip for now
continue
- if insn_name in ['setvl', ]: # SVP64 opcodes
- continue
insns[(insn_name, condition)] = row # accumulate csv data
insn_to_csv[insn_name] = csvname_ # CSV file name by instruction
res['0'] = 'd:BI' # BI: Rdest1_EXTRA3
res['1'] = 's:BI' # BI: Rsrc1_EXTRA3
elif insn_name == 'fishmv':
- # an overwrite ibstruction
+ # an overwrite instruction
res['0'] = 'd:FRS' # FRS: Rdest1_EXTRA3
res['1'] = 's:FRS' # FRS: Rsrc1_EXTRA3
+ elif insn_name == 'setvl':
+ res['0'] = 'd:RT' # RT: Rdest1_EXTRA3
+ res['1'] = 's:RA' # RS: Rsrc1_EXTRA3
else:
res['0'] = 'TODO'
print("regs TODO", insn_name, regs)