popcntb,2P,EXTRA3,d:RA,s:RS,,,RS,NONE,NONE,RA,NONE,NONE
prtyw,2P,EXTRA3,d:RA,s:RS,,,RS,NONE,NONE,RA,NONE,NONE
prtyd,2P,EXTRA3,d:RA,s:RS,,,RS,NONE,NONE,RA,NONE,NONE
-mfspr,2P,EXTRA3,TODO,,,,SPR,NONE,NONE,RT,NONE,NONE
+mfspr,2P,EXTRA3,d:RS,s:SPR,,,SPR,NONE,NONE,RT,NONE,NONE
popcntw,2P,EXTRA3,d:RA,s:RS,,,RS,NONE,NONE,RA,NONE,NONE
-mtspr,2P,EXTRA3,TODO,,,,RS,NONE,NONE,SPR,NONE,NONE
+mtspr,2P,EXTRA3,d:SPR,s:RS,,,RS,NONE,NONE,SPR,NONE,NONE
popcntd,2P,EXTRA3,d:RA,s:RS,,,RS,NONE,NONE,RA,NONE,NONE
nego,2P,EXTRA3,d:RT,s:RA,,,RA,NONE,NONE,RT,NONE,NONE
addic,2P,EXTRA3,d:RT,s:RA,,,RA,,NONE,RT,NONE,NONE
elif value == 'RM-2P-1S1D':
res['Etype'] = 'EXTRA3' # RM EXTRA3 type
- if name == 'CRio' and insn_name == 'mcrf':
+ if insn_name == 'mtspr':
+ res['0'] = 'd:SPR' # SPR: Rdest1_EXTRA3
+ res['1'] = 's:RS' # RS: Rsrc1_EXTRA3
+ elif insn_name == 'mfspr':
+ res['0'] = 'd:RS' # RS: Rdest1_EXTRA3
+ res['1'] = 's:SPR' # SPR: Rsrc1_EXTRA3
+ elif name == 'CRio' and insn_name == 'mcrf':
res['0'] = 'd:BF' # BFA: Rdest1_EXTRA3
res['1'] = 's:BFA' # BFA: Rsrc1_EXTRA3
elif 'mfcr' in insn_name or 'mfocrf' in insn_name: