dsrd.,NORMAL,,1P,EXTRA2,NO,d:RT;d:CR0,s:RA,s:RB,s:RC,RA,RB,RC,RT,0,CR0,0
pcdec,NORMAL,,1P,EXTRA2,NO,d:RT;d:CR0,s:RA,s:RB,s:RC,RA,RB,RC,RT,0,CR0,0
ternlogi,NORMAL,,1P,EXTRA2,NO,d:RT;d:CR0,s:RA,s:RB,s:RT,RA,RB,RT,RT,0,CR0,0
-ffmsubs,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRT,s:FRB,s:FRA,FRT,FRB,FRA,FRT,0,CR1,0
-ffmadds,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRT,s:FRB,s:FRA,FRT,FRB,FRA,FRT,0,CR1,0
-ffnmsubs,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRT,s:FRB,s:FRA,FRT,FRB,FRA,FRT,0,CR1,0
-ffnmadds,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRT,s:FRB,s:FRA,FRT,FRB,FRA,FRT,0,CR1,0
-fdmadds,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRT,s:FRB,s:FRA,FRT,FRB,FRA,FRT,0,CR1,0
+ffmsubs,NORMAL,,1P,EXTRA2,NO,s:FRT;d:FRT;d:CR1,s:FRB,s:FRA,0,FRT,FRB,FRA,FRT,0,CR1,0
+ffmadds,NORMAL,,1P,EXTRA2,NO,s:FRT;d:FRT;d:CR1,s:FRB,s:FRA,0,FRT,FRB,FRA,FRT,0,CR1,0
+ffnmsubs,NORMAL,,1P,EXTRA2,NO,s:FRT;d:FRT;d:CR1,s:FRB,s:FRA,0,FRT,FRB,FRA,FRT,0,CR1,0
+ffnmadds,NORMAL,,1P,EXTRA2,NO,s:FRT;d:FRT;d:CR1,s:FRB,s:FRA,0,FRT,FRB,FRA,FRT,0,CR1,0
+fdmadds,NORMAL,,1P,EXTRA2,NO,s:FRT;d:FRT;d:CR1,s:FRB,s:FRA,0,FRT,FRB,FRA,FRT,0,CR1,0
fmsubs,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRA,s:FRB,s:FRC,FRA,FRB,FRC,FRT,0,CR1,0
fmadds,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRA,s:FRB,s:FRC,FRA,FRB,FRC,FRT,0,CR1,0
fnmsubs,NORMAL,,1P,EXTRA2,NO,d:FRT;d:CR1,s:FRA,s:FRB,s:FRC,FRA,FRB,FRC,FRT,0,CR1,0
elif value == 'RM-1P-3S1D':
res['Etype'] = 'EXTRA2' # RM EXTRA2 type
if regs == ['FRT', 'FRB', 'FRA', 'FRT', '', 'CR1']: # ffmadds/fdmadds
- res['0'] = 'd:FRT;d:CR1' # FRT,CR1: Rdest1_EXTRA2
- res['1'] = 's:FRT' # FRT: Rsrc1_EXTRA2
- res['2'] = 's:FRB' # FRB: Rsrc2_EXTRA2
- res['3'] = 's:FRA' # FRA: Rsrc3_EXTRA2
+ res['0'] = 's:FRT;d:FRT;d:CR1' # FRT,CR1: Rdest1_EXTRA2
+ res['1'] = 's:FRB' # FRB: Rsrc1_EXTRA2
+ res['2'] = 's:FRA' # FRA: Rsrc2_EXTRA2
+ res['3'] = '' # empty
elif regs == ['RA', 'RB', 'RC', 'RT', '', '']: # madd*
res['0'] = 'd:RT' # RT,CR0: Rdest1_EXTRA2
res['1'] = 's:RA' # RA: Rsrc1_EXTRA2
res['2'] = 's:RB' # RT: Rsrc2_EXTRA2
res['3'] = 's:RC' # RT: Rsrc3_EXTRA2
elif regs == ['RA', 'RB', 'RT', 'RT', '', 'CR0']: # overwrite 3-in
- res['0'] = 'd:RT;d:CR0' # RT,CR0: Rdest1_EXTRA2
+ res['0'] = 's:RT;d:RT;d:CR0' # RT,CR0: Rdest1_EXTRA2
res['1'] = 's:RA' # RA: Rsrc1_EXTRA2
res['2'] = 's:RB' # RT: Rsrc2_EXTRA2
- res['3'] = 's:RT' # RT: Rsrc3_EXTRA2
+ res['3'] = '' # empty
elif regs == ['RA', 'RB', 'RT', 'RT', '', '']: # maddsubrs
- res['0'] = 'd:RT' # RT: Rdest1_EXTRA2
+ res['0'] = 's:RT;d:RT' # RT: Rdest1_EXTRA2
res['1'] = 's:RA' # RA: Rsrc1_EXTRA2
res['2'] = 's:RB' # RT: Rsrc2_EXTRA2
- res['3'] = 's:RT' # RT: Rsrc3_EXTRA2
+ res['3'] = '' # empty
elif insn_name == 'isel':
res['0'] = 'd:RT' # RT: Rdest1_EXTRA2
res['1'] = 's:RA' # RA: Rsrc1_EXTRA2