Home | History | Annotate | Download | only in ppc32
      1 PPC integer logical insns with two args:
      2          and 00000000, 00000000 => 00000000 (00000000 00000000)
      3          and 00000000, 000f423f => 00000000 (00000000 00000000)
      4          and 00000000, ffffffff => 00000000 (00000000 00000000)
      5          and 000f423f, 00000000 => 00000000 (00000000 00000000)
      6          and 000f423f, 000f423f => 000f423f (00000000 00000000)
      7          and 000f423f, ffffffff => 000f423f (00000000 00000000)
      8          and ffffffff, 00000000 => 00000000 (00000000 00000000)
      9          and ffffffff, 000f423f => 000f423f (00000000 00000000)
     10          and ffffffff, ffffffff => ffffffff (00000000 00000000)
     11 
     12         andc 00000000, 00000000 => 00000000 (00000000 00000000)
     13         andc 00000000, 000f423f => 00000000 (00000000 00000000)
     14         andc 00000000, ffffffff => 00000000 (00000000 00000000)
     15         andc 000f423f, 00000000 => 000f423f (00000000 00000000)
     16         andc 000f423f, 000f423f => 00000000 (00000000 00000000)
     17         andc 000f423f, ffffffff => 00000000 (00000000 00000000)
     18         andc ffffffff, 00000000 => ffffffff (00000000 00000000)
     19         andc ffffffff, 000f423f => fff0bdc0 (00000000 00000000)
     20         andc ffffffff, ffffffff => 00000000 (00000000 00000000)
     21 
     22          eqv 00000000, 00000000 => ffffffff (00000000 00000000)
     23          eqv 00000000, 000f423f => fff0bdc0 (00000000 00000000)
     24          eqv 00000000, ffffffff => 00000000 (00000000 00000000)
     25          eqv 000f423f, 00000000 => fff0bdc0 (00000000 00000000)
     26          eqv 000f423f, 000f423f => ffffffff (00000000 00000000)
     27          eqv 000f423f, ffffffff => 000f423f (00000000 00000000)
     28          eqv ffffffff, 00000000 => 00000000 (00000000 00000000)
     29          eqv ffffffff, 000f423f => 000f423f (00000000 00000000)
     30          eqv ffffffff, ffffffff => ffffffff (00000000 00000000)
     31 
     32         nand 00000000, 00000000 => ffffffff (00000000 00000000)
     33         nand 00000000, 000f423f => ffffffff (00000000 00000000)
     34         nand 00000000, ffffffff => ffffffff (00000000 00000000)
     35         nand 000f423f, 00000000 => ffffffff (00000000 00000000)
     36         nand 000f423f, 000f423f => fff0bdc0 (00000000 00000000)
     37         nand 000f423f, ffffffff => fff0bdc0 (00000000 00000000)
     38         nand ffffffff, 00000000 => ffffffff (00000000 00000000)
     39         nand ffffffff, 000f423f => fff0bdc0 (00000000 00000000)
     40         nand ffffffff, ffffffff => 00000000 (00000000 00000000)
     41 
     42          nor 00000000, 00000000 => ffffffff (00000000 00000000)
     43          nor 00000000, 000f423f => fff0bdc0 (00000000 00000000)
     44          nor 00000000, ffffffff => 00000000 (00000000 00000000)
     45          nor 000f423f, 00000000 => fff0bdc0 (00000000 00000000)
     46          nor 000f423f, 000f423f => fff0bdc0 (00000000 00000000)
     47          nor 000f423f, ffffffff => 00000000 (00000000 00000000)
     48          nor ffffffff, 00000000 => 00000000 (00000000 00000000)
     49          nor ffffffff, 000f423f => 00000000 (00000000 00000000)
     50          nor ffffffff, ffffffff => 00000000 (00000000 00000000)
     51 
     52           or 00000000, 00000000 => 00000000 (00000000 00000000)
     53           or 00000000, 000f423f => 000f423f (00000000 00000000)
     54           or 00000000, ffffffff => ffffffff (00000000 00000000)
     55           or 000f423f, 00000000 => 000f423f (00000000 00000000)
     56           or 000f423f, 000f423f => 000f423f (00000000 00000000)
     57           or 000f423f, ffffffff => ffffffff (00000000 00000000)
     58           or ffffffff, 00000000 => ffffffff (00000000 00000000)
     59           or ffffffff, 000f423f => ffffffff (00000000 00000000)
     60           or ffffffff, ffffffff => ffffffff (00000000 00000000)
     61 
     62          orc 00000000, 00000000 => ffffffff (00000000 00000000)
     63          orc 00000000, 000f423f => fff0bdc0 (00000000 00000000)
     64          orc 00000000, ffffffff => 00000000 (00000000 00000000)
     65          orc 000f423f, 00000000 => ffffffff (00000000 00000000)
     66          orc 000f423f, 000f423f => ffffffff (00000000 00000000)
     67          orc 000f423f, ffffffff => 000f423f (00000000 00000000)
     68          orc ffffffff, 00000000 => ffffffff (00000000 00000000)
     69          orc ffffffff, 000f423f => ffffffff (00000000 00000000)
     70          orc ffffffff, ffffffff => ffffffff (00000000 00000000)
     71 
     72          xor 00000000, 00000000 => 00000000 (00000000 00000000)
     73          xor 00000000, 000f423f => 000f423f (00000000 00000000)
     74          xor 00000000, ffffffff => ffffffff (00000000 00000000)
     75          xor 000f423f, 00000000 => 000f423f (00000000 00000000)
     76          xor 000f423f, 000f423f => 00000000 (00000000 00000000)
     77          xor 000f423f, ffffffff => fff0bdc0 (00000000 00000000)
     78          xor ffffffff, 00000000 => ffffffff (00000000 00000000)
     79          xor ffffffff, 000f423f => fff0bdc0 (00000000 00000000)
     80          xor ffffffff, ffffffff => 00000000 (00000000 00000000)
     81 
     82          slw 00000000, 00000000 => 00000000 (00000000 00000000)
     83          slw 00000000, 000f423f => 00000000 (00000000 00000000)
     84          slw 00000000, ffffffff => 00000000 (00000000 00000000)
     85          slw 000f423f, 00000000 => 000f423f (00000000 00000000)
     86          slw 000f423f, 000f423f => 00000000 (00000000 00000000)
     87          slw 000f423f, ffffffff => 00000000 (00000000 00000000)
     88          slw ffffffff, 00000000 => ffffffff (00000000 00000000)
     89          slw ffffffff, 000f423f => 00000000 (00000000 00000000)
     90          slw ffffffff, ffffffff => 00000000 (00000000 00000000)
     91 
     92         sraw 00000000, 00000000 => 00000000 (00000000 00000000)
     93         sraw 00000000, 000f423f => 00000000 (00000000 00000000)
     94         sraw 00000000, ffffffff => 00000000 (00000000 00000000)
     95         sraw 000f423f, 00000000 => 000f423f (00000000 00000000)
     96         sraw 000f423f, 000f423f => 00000000 (00000000 00000000)
     97         sraw 000f423f, ffffffff => 00000000 (00000000 00000000)
     98         sraw ffffffff, 00000000 => ffffffff (00000000 00000000)
     99         sraw ffffffff, 000f423f => ffffffff (00000000 20000000)
    100         sraw ffffffff, ffffffff => ffffffff (00000000 20000000)
    101 
    102          srw 00000000, 00000000 => 00000000 (00000000 00000000)
    103          srw 00000000, 000f423f => 00000000 (00000000 00000000)
    104          srw 00000000, ffffffff => 00000000 (00000000 00000000)
    105          srw 000f423f, 00000000 => 000f423f (00000000 00000000)
    106          srw 000f423f, 000f423f => 00000000 (00000000 00000000)
    107          srw 000f423f, ffffffff => 00000000 (00000000 00000000)
    108          srw ffffffff, 00000000 => ffffffff (00000000 00000000)
    109          srw ffffffff, 000f423f => 00000000 (00000000 00000000)
    110          srw ffffffff, ffffffff => 00000000 (00000000 00000000)
    111 
    112 PPC integer logical insns with two args with flags update:
    113         and. 00000000, 00000000 => 00000000 (20000000 00000000)
    114         and. 00000000, 000f423f => 00000000 (20000000 00000000)
    115         and. 00000000, ffffffff => 00000000 (20000000 00000000)
    116         and. 000f423f, 00000000 => 00000000 (20000000 00000000)
    117         and. 000f423f, 000f423f => 000f423f (40000000 00000000)
    118         and. 000f423f, ffffffff => 000f423f (40000000 00000000)
    119         and. ffffffff, 00000000 => 00000000 (20000000 00000000)
    120         and. ffffffff, 000f423f => 000f423f (40000000 00000000)
    121         and. ffffffff, ffffffff => ffffffff (80000000 00000000)
    122 
    123        andc. 00000000, 00000000 => 00000000 (20000000 00000000)
    124        andc. 00000000, 000f423f => 00000000 (20000000 00000000)
    125        andc. 00000000, ffffffff => 00000000 (20000000 00000000)
    126        andc. 000f423f, 00000000 => 000f423f (40000000 00000000)
    127        andc. 000f423f, 000f423f => 00000000 (20000000 00000000)
    128        andc. 000f423f, ffffffff => 00000000 (20000000 00000000)
    129        andc. ffffffff, 00000000 => ffffffff (80000000 00000000)
    130        andc. ffffffff, 000f423f => fff0bdc0 (80000000 00000000)
    131        andc. ffffffff, ffffffff => 00000000 (20000000 00000000)
    132 
    133         eqv. 00000000, 00000000 => ffffffff (80000000 00000000)
    134         eqv. 00000000, 000f423f => fff0bdc0 (80000000 00000000)
    135         eqv. 00000000, ffffffff => 00000000 (20000000 00000000)
    136         eqv. 000f423f, 00000000 => fff0bdc0 (80000000 00000000)
    137         eqv. 000f423f, 000f423f => ffffffff (80000000 00000000)
    138         eqv. 000f423f, ffffffff => 000f423f (40000000 00000000)
    139         eqv. ffffffff, 00000000 => 00000000 (20000000 00000000)
    140         eqv. ffffffff, 000f423f => 000f423f (40000000 00000000)
    141         eqv. ffffffff, ffffffff => ffffffff (80000000 00000000)
    142 
    143        nand. 00000000, 00000000 => ffffffff (80000000 00000000)
    144        nand. 00000000, 000f423f => ffffffff (80000000 00000000)
    145        nand. 00000000, ffffffff => ffffffff (80000000 00000000)
    146        nand. 000f423f, 00000000 => ffffffff (80000000 00000000)
    147        nand. 000f423f, 000f423f => fff0bdc0 (80000000 00000000)
    148        nand. 000f423f, ffffffff => fff0bdc0 (80000000 00000000)
    149        nand. ffffffff, 00000000 => ffffffff (80000000 00000000)
    150        nand. ffffffff, 000f423f => fff0bdc0 (80000000 00000000)
    151        nand. ffffffff, ffffffff => 00000000 (20000000 00000000)
    152 
    153         nor. 00000000, 00000000 => ffffffff (80000000 00000000)
    154         nor. 00000000, 000f423f => fff0bdc0 (80000000 00000000)
    155         nor. 00000000, ffffffff => 00000000 (20000000 00000000)
    156         nor. 000f423f, 00000000 => fff0bdc0 (80000000 00000000)
    157         nor. 000f423f, 000f423f => fff0bdc0 (80000000 00000000)
    158         nor. 000f423f, ffffffff => 00000000 (20000000 00000000)
    159         nor. ffffffff, 00000000 => 00000000 (20000000 00000000)
    160         nor. ffffffff, 000f423f => 00000000 (20000000 00000000)
    161         nor. ffffffff, ffffffff => 00000000 (20000000 00000000)
    162 
    163          or. 00000000, 00000000 => 00000000 (20000000 00000000)
    164          or. 00000000, 000f423f => 000f423f (40000000 00000000)
    165          or. 00000000, ffffffff => ffffffff (80000000 00000000)
    166          or. 000f423f, 00000000 => 000f423f (40000000 00000000)
    167          or. 000f423f, 000f423f => 000f423f (40000000 00000000)
    168          or. 000f423f, ffffffff => ffffffff (80000000 00000000)
    169          or. ffffffff, 00000000 => ffffffff (80000000 00000000)
    170          or. ffffffff, 000f423f => ffffffff (80000000 00000000)
    171          or. ffffffff, ffffffff => ffffffff (80000000 00000000)
    172 
    173         orc. 00000000, 00000000 => ffffffff (80000000 00000000)
    174         orc. 00000000, 000f423f => fff0bdc0 (80000000 00000000)
    175         orc. 00000000, ffffffff => 00000000 (20000000 00000000)
    176         orc. 000f423f, 00000000 => ffffffff (80000000 00000000)
    177         orc. 000f423f, 000f423f => ffffffff (80000000 00000000)
    178         orc. 000f423f, ffffffff => 000f423f (40000000 00000000)
    179         orc. ffffffff, 00000000 => ffffffff (80000000 00000000)
    180         orc. ffffffff, 000f423f => ffffffff (80000000 00000000)
    181         orc. ffffffff, ffffffff => ffffffff (80000000 00000000)
    182 
    183         xor. 00000000, 00000000 => 00000000 (20000000 00000000)
    184         xor. 00000000, 000f423f => 000f423f (40000000 00000000)
    185         xor. 00000000, ffffffff => ffffffff (80000000 00000000)
    186         xor. 000f423f, 00000000 => 000f423f (40000000 00000000)
    187         xor. 000f423f, 000f423f => 00000000 (20000000 00000000)
    188         xor. 000f423f, ffffffff => fff0bdc0 (80000000 00000000)
    189         xor. ffffffff, 00000000 => ffffffff (80000000 00000000)
    190         xor. ffffffff, 000f423f => fff0bdc0 (80000000 00000000)
    191         xor. ffffffff, ffffffff => 00000000 (20000000 00000000)
    192 
    193         slw. 00000000, 00000000 => 00000000 (20000000 00000000)
    194         slw. 00000000, 000f423f => 00000000 (20000000 00000000)
    195         slw. 00000000, ffffffff => 00000000 (20000000 00000000)
    196         slw. 000f423f, 00000000 => 000f423f (40000000 00000000)
    197         slw. 000f423f, 000f423f => 00000000 (20000000 00000000)
    198         slw. 000f423f, ffffffff => 00000000 (20000000 00000000)
    199         slw. ffffffff, 00000000 => ffffffff (80000000 00000000)
    200         slw. ffffffff, 000f423f => 00000000 (20000000 00000000)
    201         slw. ffffffff, ffffffff => 00000000 (20000000 00000000)
    202 
    203        sraw. 00000000, 00000000 => 00000000 (20000000 00000000)
    204        sraw. 00000000, 000f423f => 00000000 (20000000 00000000)
    205        sraw. 00000000, ffffffff => 00000000 (20000000 00000000)
    206        sraw. 000f423f, 00000000 => 000f423f (40000000 00000000)
    207        sraw. 000f423f, 000f423f => 00000000 (20000000 00000000)
    208        sraw. 000f423f, ffffffff => 00000000 (20000000 00000000)
    209        sraw. ffffffff, 00000000 => ffffffff (80000000 00000000)
    210        sraw. ffffffff, 000f423f => ffffffff (80000000 20000000)
    211        sraw. ffffffff, ffffffff => ffffffff (80000000 20000000)
    212 
    213         srw. 00000000, 00000000 => 00000000 (20000000 00000000)
    214         srw. 00000000, 000f423f => 00000000 (20000000 00000000)
    215         srw. 00000000, ffffffff => 00000000 (20000000 00000000)
    216         srw. 000f423f, 00000000 => 000f423f (40000000 00000000)
    217         srw. 000f423f, 000f423f => 00000000 (20000000 00000000)
    218         srw. 000f423f, ffffffff => 00000000 (20000000 00000000)
    219         srw. ffffffff, 00000000 => ffffffff (80000000 00000000)
    220         srw. ffffffff, 000f423f => 00000000 (20000000 00000000)
    221         srw. ffffffff, ffffffff => 00000000 (20000000 00000000)
    222 
    223 PPC integer compare insns (two args):
    224         cmpw 00000000, 00000000 => 00000000 (00200000 00000000)
    225         cmpw 00000000, 000f423f => 00000000 (00800000 00000000)
    226         cmpw 00000000, ffffffff => 00000000 (00400000 00000000)
    227         cmpw 000f423f, 00000000 => 00000000 (00400000 00000000)
    228         cmpw 000f423f, 000f423f => 00000000 (00200000 00000000)
    229         cmpw 000f423f, ffffffff => 00000000 (00400000 00000000)
    230         cmpw ffffffff, 00000000 => 00000000 (00800000 00000000)
    231         cmpw ffffffff, 000f423f => 00000000 (00800000 00000000)
    232         cmpw ffffffff, ffffffff => 00000000 (00200000 00000000)
    233 
    234        cmplw 00000000, 00000000 => 00000000 (00200000 00000000)
    235        cmplw 00000000, 000f423f => 00000000 (00800000 00000000)
    236        cmplw 00000000, ffffffff => 00000000 (00800000 00000000)
    237        cmplw 000f423f, 00000000 => 00000000 (00400000 00000000)
    238        cmplw 000f423f, 000f423f => 00000000 (00200000 00000000)
    239        cmplw 000f423f, ffffffff => 00000000 (00800000 00000000)
    240        cmplw ffffffff, 00000000 => 00000000 (00400000 00000000)
    241        cmplw ffffffff, 000f423f => 00000000 (00400000 00000000)
    242        cmplw ffffffff, ffffffff => 00000000 (00200000 00000000)
    243 
    244 PPC integer compare with immediate insns (two args):
    245        cmpwi 00000000, 00000000 => 00000000 (00200000 00000000)
    246        cmpwi 00000000, 000003e7 => 00000000 (00800000 00000000)
    247        cmpwi 00000000, 0000ffff => 00000000 (00400000 00000000)
    248        cmpwi 000f423f, 00000000 => 00000000 (00400000 00000000)
    249        cmpwi 000f423f, 000003e7 => 00000000 (00400000 00000000)
    250        cmpwi 000f423f, 0000ffff => 00000000 (00400000 00000000)
    251        cmpwi ffffffff, 00000000 => 00000000 (00800000 00000000)
    252        cmpwi ffffffff, 000003e7 => 00000000 (00800000 00000000)
    253        cmpwi ffffffff, 0000ffff => 00000000 (00200000 00000000)
    254 
    255       cmplwi 00000000, 00000000 => 00000000 (00200000 00000000)
    256       cmplwi 00000000, 000003e7 => 00000000 (00800000 00000000)
    257       cmplwi 00000000, 0000ffff => 00000000 (00800000 00000000)
    258       cmplwi 000f423f, 00000000 => 00000000 (00400000 00000000)
    259       cmplwi 000f423f, 000003e7 => 00000000 (00400000 00000000)
    260       cmplwi 000f423f, 0000ffff => 00000000 (00400000 00000000)
    261       cmplwi ffffffff, 00000000 => 00000000 (00400000 00000000)
    262       cmplwi ffffffff, 000003e7 => 00000000 (00400000 00000000)
    263       cmplwi ffffffff, 0000ffff => 00000000 (00400000 00000000)
    264 
    265 PPC integer logical insns
    266     with one register + one 16 bits immediate args:
    267          ori 00000000, 00000000 => 00000000 (00000000 00000000)
    268          ori 00000000, 000003e7 => 000003e7 (00000000 00000000)
    269          ori 00000000, 0000ffff => 0000ffff (00000000 00000000)
    270          ori 000f423f, 00000000 => 000f423f (00000000 00000000)
    271          ori 000f423f, 000003e7 => 000f43ff (00000000 00000000)
    272          ori 000f423f, 0000ffff => 000fffff (00000000 00000000)
    273          ori ffffffff, 00000000 => ffffffff (00000000 00000000)
    274          ori ffffffff, 000003e7 => ffffffff (00000000 00000000)
    275          ori ffffffff, 0000ffff => ffffffff (00000000 00000000)
    276 
    277         oris 00000000, 00000000 => 00000000 (00000000 00000000)
    278         oris 00000000, 000003e7 => 03e70000 (00000000 00000000)
    279         oris 00000000, 0000ffff => ffff0000 (00000000 00000000)
    280         oris 000f423f, 00000000 => 000f423f (00000000 00000000)
    281         oris 000f423f, 000003e7 => 03ef423f (00000000 00000000)
    282         oris 000f423f, 0000ffff => ffff423f (00000000 00000000)
    283         oris ffffffff, 00000000 => ffffffff (00000000 00000000)
    284         oris ffffffff, 000003e7 => ffffffff (00000000 00000000)
    285         oris ffffffff, 0000ffff => ffffffff (00000000 00000000)
    286 
    287         xori 00000000, 00000000 => 00000000 (00000000 00000000)
    288         xori 00000000, 000003e7 => 000003e7 (00000000 00000000)
    289         xori 00000000, 0000ffff => 0000ffff (00000000 00000000)
    290         xori 000f423f, 00000000 => 000f423f (00000000 00000000)
    291         xori 000f423f, 000003e7 => 000f41d8 (00000000 00000000)
    292         xori 000f423f, 0000ffff => 000fbdc0 (00000000 00000000)
    293         xori ffffffff, 00000000 => ffffffff (00000000 00000000)
    294         xori ffffffff, 000003e7 => fffffc18 (00000000 00000000)
    295         xori ffffffff, 0000ffff => ffff0000 (00000000 00000000)
    296 
    297        xoris 00000000, 00000000 => 00000000 (00000000 00000000)
    298        xoris 00000000, 000003e7 => 03e70000 (00000000 00000000)
    299        xoris 00000000, 0000ffff => ffff0000 (00000000 00000000)
    300        xoris 000f423f, 00000000 => 000f423f (00000000 00000000)
    301        xoris 000f423f, 000003e7 => 03e8423f (00000000 00000000)
    302        xoris 000f423f, 0000ffff => fff0423f (00000000 00000000)
    303        xoris ffffffff, 00000000 => ffffffff (00000000 00000000)
    304        xoris ffffffff, 000003e7 => fc18ffff (00000000 00000000)
    305        xoris ffffffff, 0000ffff => 0000ffff (00000000 00000000)
    306 
    307 PPC integer logical insns
    308     with one register + one 16 bits immediate args with flags update:
    309        andi. 00000000, 00000000 => 00000000 (20000000 00000000)
    310        andi. 00000000, 000003e7 => 00000000 (20000000 00000000)
    311        andi. 00000000, 0000ffff => 00000000 (20000000 00000000)
    312        andi. 000f423f, 00000000 => 00000000 (20000000 00000000)
    313        andi. 000f423f, 000003e7 => 00000227 (40000000 00000000)
    314        andi. 000f423f, 0000ffff => 0000423f (40000000 00000000)
    315        andi. ffffffff, 00000000 => 00000000 (20000000 00000000)
    316        andi. ffffffff, 000003e7 => 000003e7 (40000000 00000000)
    317        andi. ffffffff, 0000ffff => 0000ffff (40000000 00000000)
    318 
    319       andis. 00000000, 00000000 => 00000000 (20000000 00000000)
    320       andis. 00000000, 000003e7 => 00000000 (20000000 00000000)
    321       andis. 00000000, 0000ffff => 00000000 (20000000 00000000)
    322       andis. 000f423f, 00000000 => 00000000 (20000000 00000000)
    323       andis. 000f423f, 000003e7 => 00070000 (40000000 00000000)
    324       andis. 000f423f, 0000ffff => 000f0000 (40000000 00000000)
    325       andis. ffffffff, 00000000 => 00000000 (20000000 00000000)
    326       andis. ffffffff, 000003e7 => 03e70000 (40000000 00000000)
    327       andis. ffffffff, 0000ffff => ffff0000 (80000000 00000000)
    328 
    329 PPC condition register logical insns - two operands:
    330        crand 00000000, 00000000 => ffff0000 (00000000 00000000)
    331        crand 00000000, 000f423f => ffff0000 (00000000 00000000)
    332        crand 00000000, ffffffff => ffff0000 (00000000 00000000)
    333        crand 000f423f, 00000000 => ffff0000 (00000000 00000000)
    334        crand 000f423f, 000f423f => ffff0000 (00000000 00000000)
    335        crand 000f423f, ffffffff => ffff0000 (00000000 00000000)
    336        crand ffffffff, 00000000 => ffff0000 (00000000 00000000)
    337        crand ffffffff, 000f423f => ffff0000 (00000000 00000000)
    338        crand ffffffff, ffffffff => ffff0000 (00000000 00000000)
    339 
    340       crandc 00000000, 00000000 => ffff0000 (00000000 00000000)
    341       crandc 00000000, 000f423f => ffff0000 (00000000 00000000)
    342       crandc 00000000, ffffffff => ffff0000 (00000000 00000000)
    343       crandc 000f423f, 00000000 => ffff0000 (00000000 00000000)
    344       crandc 000f423f, 000f423f => ffff0000 (00000000 00000000)
    345       crandc 000f423f, ffffffff => ffff0000 (00000000 00000000)
    346       crandc ffffffff, 00000000 => ffff0000 (00000000 00000000)
    347       crandc ffffffff, 000f423f => ffff0000 (00000000 00000000)
    348       crandc ffffffff, ffffffff => ffff0000 (00000000 00000000)
    349 
    350        creqv 00000000, 00000000 => ffff0000 (00004000 00000000)
    351        creqv 00000000, 000f423f => ffff0000 (00004000 00000000)
    352        creqv 00000000, ffffffff => ffff0000 (00004000 00000000)
    353        creqv 000f423f, 00000000 => ffff0000 (00004000 00000000)
    354        creqv 000f423f, 000f423f => ffff0000 (00004000 00000000)
    355        creqv 000f423f, ffffffff => ffff0000 (00004000 00000000)
    356        creqv ffffffff, 00000000 => ffff0000 (00004000 00000000)
    357        creqv ffffffff, 000f423f => ffff0000 (00004000 00000000)
    358        creqv ffffffff, ffffffff => ffff0000 (00004000 00000000)
    359 
    360       crnand 00000000, 00000000 => ffff0000 (00004000 00000000)
    361       crnand 00000000, 000f423f => ffff0000 (00004000 00000000)
    362       crnand 00000000, ffffffff => ffff0000 (00004000 00000000)
    363       crnand 000f423f, 00000000 => ffff0000 (00004000 00000000)
    364       crnand 000f423f, 000f423f => ffff0000 (00004000 00000000)
    365       crnand 000f423f, ffffffff => ffff0000 (00004000 00000000)
    366       crnand ffffffff, 00000000 => ffff0000 (00004000 00000000)
    367       crnand ffffffff, 000f423f => ffff0000 (00004000 00000000)
    368       crnand ffffffff, ffffffff => ffff0000 (00004000 00000000)
    369 
    370        crnor 00000000, 00000000 => ffff0000 (00004000 00000000)
    371        crnor 00000000, 000f423f => ffff0000 (00004000 00000000)
    372        crnor 00000000, ffffffff => ffff0000 (00004000 00000000)
    373        crnor 000f423f, 00000000 => ffff0000 (00004000 00000000)
    374        crnor 000f423f, 000f423f => ffff0000 (00004000 00000000)
    375        crnor 000f423f, ffffffff => ffff0000 (00004000 00000000)
    376        crnor ffffffff, 00000000 => ffff0000 (00004000 00000000)
    377        crnor ffffffff, 000f423f => ffff0000 (00004000 00000000)
    378        crnor ffffffff, ffffffff => ffff0000 (00004000 00000000)
    379 
    380         cror 00000000, 00000000 => ffff0000 (00000000 00000000)
    381         cror 00000000, 000f423f => ffff0000 (00000000 00000000)
    382         cror 00000000, ffffffff => ffff0000 (00000000 00000000)
    383         cror 000f423f, 00000000 => ffff0000 (00000000 00000000)
    384         cror 000f423f, 000f423f => ffff0000 (00000000 00000000)
    385         cror 000f423f, ffffffff => ffff0000 (00000000 00000000)
    386         cror ffffffff, 00000000 => ffff0000 (00000000 00000000)
    387         cror ffffffff, 000f423f => ffff0000 (00000000 00000000)
    388         cror ffffffff, ffffffff => ffff0000 (00000000 00000000)
    389 
    390        crorc 00000000, 00000000 => ffff0000 (00004000 00000000)
    391        crorc 00000000, 000f423f => ffff0000 (00004000 00000000)
    392        crorc 00000000, ffffffff => ffff0000 (00004000 00000000)
    393        crorc 000f423f, 00000000 => ffff0000 (00004000 00000000)
    394        crorc 000f423f, 000f423f => ffff0000 (00004000 00000000)
    395        crorc 000f423f, ffffffff => ffff0000 (00004000 00000000)
    396        crorc ffffffff, 00000000 => ffff0000 (00004000 00000000)
    397        crorc ffffffff, 000f423f => ffff0000 (00004000 00000000)
    398        crorc ffffffff, ffffffff => ffff0000 (00004000 00000000)
    399 
    400        crxor 00000000, 00000000 => ffff0000 (00000000 00000000)
    401        crxor 00000000, 000f423f => ffff0000 (00000000 00000000)
    402        crxor 00000000, ffffffff => ffff0000 (00000000 00000000)
    403        crxor 000f423f, 00000000 => ffff0000 (00000000 00000000)
    404        crxor 000f423f, 000f423f => ffff0000 (00000000 00000000)
    405        crxor 000f423f, ffffffff => ffff0000 (00000000 00000000)
    406        crxor ffffffff, 00000000 => ffff0000 (00000000 00000000)
    407        crxor ffffffff, 000f423f => ffff0000 (00000000 00000000)
    408        crxor ffffffff, ffffffff => ffff0000 (00000000 00000000)
    409 
    410 PPC integer logical insns with one arg:
    411       cntlzw 00000000 => 00000020 (00000000 00000000)
    412       cntlzw 000f423f => 0000000c (00000000 00000000)
    413       cntlzw ffffffff => 00000000 (00000000 00000000)
    414 
    415        extsb 00000000 => 00000000 (00000000 00000000)
    416        extsb 000f423f => 0000003f (00000000 00000000)
    417        extsb ffffffff => ffffffff (00000000 00000000)
    418 
    419        extsh 00000000 => 00000000 (00000000 00000000)
    420        extsh 000f423f => 0000423f (00000000 00000000)
    421        extsh ffffffff => ffffffff (00000000 00000000)
    422 
    423          neg 00000000 => 00000000 (00000000 00000000)
    424          neg 000f423f => fff0bdc1 (00000000 00000000)
    425          neg ffffffff => 00000001 (00000000 00000000)
    426 
    427         nego 00000000 => 00000000 (00000000 00000000)
    428         nego 000f423f => fff0bdc1 (00000000 00000000)
    429         nego ffffffff => 00000001 (00000000 00000000)
    430 
    431 PPC integer logical insns with one arg with flags update:
    432      cntlzw. 00000000 => 00000020 (40000000 00000000)
    433      cntlzw. 000f423f => 0000000c (40000000 00000000)
    434      cntlzw. ffffffff => 00000000 (20000000 00000000)
    435 
    436       extsb. 00000000 => 00000000 (20000000 00000000)
    437       extsb. 000f423f => 0000003f (40000000 00000000)
    438       extsb. ffffffff => ffffffff (80000000 00000000)
    439 
    440       extsh. 00000000 => 00000000 (20000000 00000000)
    441       extsh. 000f423f => 0000423f (40000000 00000000)
    442       extsh. ffffffff => ffffffff (80000000 00000000)
    443 
    444         neg. 00000000 => 00000000 (20000000 00000000)
    445         neg. 000f423f => fff0bdc1 (80000000 00000000)
    446         neg. ffffffff => 00000001 (40000000 00000000)
    447 
    448        nego. 00000000 => 00000000 (20000000 00000000)
    449        nego. 000f423f => fff0bdc1 (80000000 00000000)
    450        nego. ffffffff => 00000001 (40000000 00000000)
    451 
    452 PPC logical insns with special forms:
    453       rlwimi 00000000,  0,  0,  0 => 00000000 (00000000 00000000)
    454       rlwimi 00000000,  0,  0, 31 => 00000000 (00000000 00000000)
    455       rlwimi 00000000,  0, 31,  0 => 00000000 (00000000 00000000)
    456       rlwimi 00000000,  0, 31, 31 => 00000000 (00000000 00000000)
    457       rlwimi 00000000, 31,  0,  0 => 00000000 (00000000 00000000)
    458       rlwimi 00000000, 31,  0, 31 => 00000000 (00000000 00000000)
    459       rlwimi 00000000, 31, 31,  0 => 00000000 (00000000 00000000)
    460       rlwimi 00000000, 31, 31, 31 => 00000000 (00000000 00000000)
    461       rlwimi 000f423f,  0,  0,  0 => 00000000 (00000000 00000000)
    462       rlwimi 000f423f,  0,  0, 31 => 000f423f (00000000 00000000)
    463       rlwimi 000f423f,  0, 31,  0 => 000f423f (00000000 00000000)
    464       rlwimi 000f423f,  0, 31, 31 => 000f423f (00000000 00000000)
    465       rlwimi 000f423f, 31,  0,  0 => 800f423f (00000000 00000000)
    466       rlwimi 000f423f, 31,  0, 31 => 8007a11f (00000000 00000000)
    467       rlwimi 000f423f, 31, 31,  0 => 8007a11f (00000000 00000000)
    468       rlwimi 000f423f, 31, 31, 31 => 8007a11f (00000000 00000000)
    469       rlwimi ffffffff,  0,  0,  0 => 8007a11f (00000000 00000000)
    470       rlwimi ffffffff,  0,  0, 31 => ffffffff (00000000 00000000)
    471       rlwimi ffffffff,  0, 31,  0 => ffffffff (00000000 00000000)
    472       rlwimi ffffffff,  0, 31, 31 => ffffffff (00000000 00000000)
    473       rlwimi ffffffff, 31,  0,  0 => ffffffff (00000000 00000000)
    474       rlwimi ffffffff, 31,  0, 31 => ffffffff (00000000 00000000)
    475       rlwimi ffffffff, 31, 31,  0 => ffffffff (00000000 00000000)
    476       rlwimi ffffffff, 31, 31, 31 => ffffffff (00000000 00000000)
    477 
    478       rlwinm 00000000,  0,  0,  0 => 00000000 (00000000 00000000)
    479       rlwinm 00000000,  0,  0, 31 => 00000000 (00000000 00000000)
    480       rlwinm 00000000,  0, 31,  0 => 00000000 (00000000 00000000)
    481       rlwinm 00000000,  0, 31, 31 => 00000000 (00000000 00000000)
    482       rlwinm 00000000, 31,  0,  0 => 00000000 (00000000 00000000)
    483       rlwinm 00000000, 31,  0, 31 => 00000000 (00000000 00000000)
    484       rlwinm 00000000, 31, 31,  0 => 00000000 (00000000 00000000)
    485       rlwinm 00000000, 31, 31, 31 => 00000000 (00000000 00000000)
    486       rlwinm 000f423f,  0,  0,  0 => 00000000 (00000000 00000000)
    487       rlwinm 000f423f,  0,  0, 31 => 000f423f (00000000 00000000)
    488       rlwinm 000f423f,  0, 31,  0 => 00000001 (00000000 00000000)
    489       rlwinm 000f423f,  0, 31, 31 => 00000001 (00000000 00000000)
    490       rlwinm 000f423f, 31,  0,  0 => 80000000 (00000000 00000000)
    491       rlwinm 000f423f, 31,  0, 31 => 8007a11f (00000000 00000000)
    492       rlwinm 000f423f, 31, 31,  0 => 80000001 (00000000 00000000)
    493       rlwinm 000f423f, 31, 31, 31 => 00000001 (00000000 00000000)
    494       rlwinm ffffffff,  0,  0,  0 => 80000000 (00000000 00000000)
    495       rlwinm ffffffff,  0,  0, 31 => ffffffff (00000000 00000000)
    496       rlwinm ffffffff,  0, 31,  0 => 80000001 (00000000 00000000)
    497       rlwinm ffffffff,  0, 31, 31 => 00000001 (00000000 00000000)
    498       rlwinm ffffffff, 31,  0,  0 => 80000000 (00000000 00000000)
    499       rlwinm ffffffff, 31,  0, 31 => ffffffff (00000000 00000000)
    500       rlwinm ffffffff, 31, 31,  0 => 80000001 (00000000 00000000)
    501       rlwinm ffffffff, 31, 31, 31 => 00000001 (00000000 00000000)
    502 
    503        rlwnm 00000000, 00000000,  0,  0 => 00000000 (00000000 00000000)
    504        rlwnm 00000000, 00000000,  0, 31 => 00000000 (00000000 00000000)
    505        rlwnm 00000000, 00000000, 31,  0 => 00000000 (00000000 00000000)
    506        rlwnm 00000000, 00000000, 31, 31 => 00000000 (00000000 00000000)
    507        rlwnm 00000000, 000f423f,  0,  0 => 00000000 (00000000 00000000)
    508        rlwnm 00000000, 000f423f,  0, 31 => 00000000 (00000000 00000000)
    509        rlwnm 00000000, 000f423f, 31,  0 => 00000000 (00000000 00000000)
    510        rlwnm 00000000, 000f423f, 31, 31 => 00000000 (00000000 00000000)
    511        rlwnm 00000000, ffffffff,  0,  0 => 00000000 (00000000 00000000)
    512        rlwnm 00000000, ffffffff,  0, 31 => 00000000 (00000000 00000000)
    513        rlwnm 00000000, ffffffff, 31,  0 => 00000000 (00000000 00000000)
    514        rlwnm 00000000, ffffffff, 31, 31 => 00000000 (00000000 00000000)
    515        rlwnm 000f423f, 00000000,  0,  0 => 00000000 (00000000 00000000)
    516        rlwnm 000f423f, 00000000,  0, 31 => 000f423f (00000000 00000000)
    517        rlwnm 000f423f, 00000000, 31,  0 => 00000001 (00000000 00000000)
    518        rlwnm 000f423f, 00000000, 31, 31 => 00000001 (00000000 00000000)
    519        rlwnm 000f423f, 000f423f,  0,  0 => 80000000 (00000000 00000000)
    520        rlwnm 000f423f, 000f423f,  0, 31 => 8007a11f (00000000 00000000)
    521        rlwnm 000f423f, 000f423f, 31,  0 => 80000001 (00000000 00000000)
    522        rlwnm 000f423f, 000f423f, 31, 31 => 00000001 (00000000 00000000)
    523        rlwnm 000f423f, ffffffff,  0,  0 => 80000000 (00000000 00000000)
    524        rlwnm 000f423f, ffffffff,  0, 31 => 8007a11f (00000000 00000000)
    525        rlwnm 000f423f, ffffffff, 31,  0 => 80000001 (00000000 00000000)
    526        rlwnm 000f423f, ffffffff, 31, 31 => 00000001 (00000000 00000000)
    527        rlwnm ffffffff, 00000000,  0,  0 => 80000000 (00000000 00000000)
    528        rlwnm ffffffff, 00000000,  0, 31 => ffffffff (00000000 00000000)
    529        rlwnm ffffffff, 00000000, 31,  0 => 80000001 (00000000 00000000)
    530        rlwnm ffffffff, 00000000, 31, 31 => 00000001 (00000000 00000000)
    531        rlwnm ffffffff, 000f423f,  0,  0 => 80000000 (00000000 00000000)
    532        rlwnm ffffffff, 000f423f,  0, 31 => ffffffff (00000000 00000000)
    533        rlwnm ffffffff, 000f423f, 31,  0 => 80000001 (00000000 00000000)
    534        rlwnm ffffffff, 000f423f, 31, 31 => 00000001 (00000000 00000000)
    535        rlwnm ffffffff, ffffffff,  0,  0 => 80000000 (00000000 00000000)
    536        rlwnm ffffffff, ffffffff,  0, 31 => ffffffff (00000000 00000000)
    537        rlwnm ffffffff, ffffffff, 31,  0 => 80000001 (00000000 00000000)
    538        rlwnm ffffffff, ffffffff, 31, 31 => 00000001 (00000000 00000000)
    539 
    540        srawi 00000000,  0 => 00000000 (00000000 00000000)
    541        srawi 00000000, 31 => 00000000 (00000000 00000000)
    542        srawi 000f423f,  0 => 000f423f (00000000 00000000)
    543        srawi 000f423f, 31 => 00000000 (00000000 00000000)
    544        srawi ffffffff,  0 => ffffffff (00000000 00000000)
    545        srawi ffffffff, 31 => ffffffff (00000000 20000000)
    546 
    547         mfcr (00000000) => 00000000 (00000000 00000000)
    548         mfcr (000f423f) => 000f423f (000f423f 00000000)
    549         mfcr (ffffffff) => ffffffff (ffffffff 00000000)
    550 
    551        mfspr 1 (00000000) -> mtxer -> mfxer => 00000000
    552        mfspr 1 (000f423f) -> mtxer -> mfxer => 0000003f
    553        mfspr 1 (ffffffff) -> mtxer -> mfxer => e000007f
    554        mfspr 8 (00000000) ->  mtlr ->  mflr => 00000000
    555        mfspr 8 (000f423f) ->  mtlr ->  mflr => 000f423f
    556        mfspr 8 (ffffffff) ->  mtlr ->  mflr => ffffffff
    557        mfspr 9 (00000000) -> mtctr -> mfctr => 00000000
    558        mfspr 9 (000f423f) -> mtctr -> mfctr => 000f423f
    559        mfspr 9 (ffffffff) -> mtctr -> mfctr => ffffffff
    560 
    561 
    562 PPC logical insns with special forms with flags update:
    563      rlwimi. 00000000,  0,  0,  0 => 00000000 (20000000 00000000)
    564      rlwimi. 00000000,  0,  0, 31 => 00000000 (20000000 00000000)
    565      rlwimi. 00000000,  0, 31,  0 => 00000000 (20000000 00000000)
    566      rlwimi. 00000000,  0, 31, 31 => 00000000 (20000000 00000000)
    567      rlwimi. 00000000, 31,  0,  0 => 00000000 (20000000 00000000)
    568      rlwimi. 00000000, 31,  0, 31 => 00000000 (20000000 00000000)
    569      rlwimi. 00000000, 31, 31,  0 => 00000000 (20000000 00000000)
    570      rlwimi. 00000000, 31, 31, 31 => 00000000 (20000000 00000000)
    571      rlwimi. 000f423f,  0,  0,  0 => 00000000 (20000000 00000000)
    572      rlwimi. 000f423f,  0,  0, 31 => 000f423f (40000000 00000000)
    573      rlwimi. 000f423f,  0, 31,  0 => 000f423f (40000000 00000000)
    574      rlwimi. 000f423f,  0, 31, 31 => 000f423f (40000000 00000000)
    575      rlwimi. 000f423f, 31,  0,  0 => 800f423f (80000000 00000000)
    576      rlwimi. 000f423f, 31,  0, 31 => 8007a11f (80000000 00000000)
    577      rlwimi. 000f423f, 31, 31,  0 => 8007a11f (80000000 00000000)
    578      rlwimi. 000f423f, 31, 31, 31 => 8007a11f (80000000 00000000)
    579      rlwimi. ffffffff,  0,  0,  0 => 8007a11f (80000000 00000000)
    580      rlwimi. ffffffff,  0,  0, 31 => ffffffff (80000000 00000000)
    581      rlwimi. ffffffff,  0, 31,  0 => ffffffff (80000000 00000000)
    582      rlwimi. ffffffff,  0, 31, 31 => ffffffff (80000000 00000000)
    583      rlwimi. ffffffff, 31,  0,  0 => ffffffff (80000000 00000000)
    584      rlwimi. ffffffff, 31,  0, 31 => ffffffff (80000000 00000000)
    585      rlwimi. ffffffff, 31, 31,  0 => ffffffff (80000000 00000000)
    586      rlwimi. ffffffff, 31, 31, 31 => ffffffff (80000000 00000000)
    587 
    588      rlwinm. 00000000,  0,  0,  0 => 00000000 (20000000 00000000)
    589      rlwinm. 00000000,  0,  0, 31 => 00000000 (20000000 00000000)
    590      rlwinm. 00000000,  0, 31,  0 => 00000000 (20000000 00000000)
    591      rlwinm. 00000000,  0, 31, 31 => 00000000 (20000000 00000000)
    592      rlwinm. 00000000, 31,  0,  0 => 00000000 (20000000 00000000)
    593      rlwinm. 00000000, 31,  0, 31 => 00000000 (20000000 00000000)
    594      rlwinm. 00000000, 31, 31,  0 => 00000000 (20000000 00000000)
    595      rlwinm. 00000000, 31, 31, 31 => 00000000 (20000000 00000000)
    596      rlwinm. 000f423f,  0,  0,  0 => 00000000 (20000000 00000000)
    597      rlwinm. 000f423f,  0,  0, 31 => 000f423f (40000000 00000000)
    598      rlwinm. 000f423f,  0, 31,  0 => 00000001 (40000000 00000000)
    599      rlwinm. 000f423f,  0, 31, 31 => 00000001 (40000000 00000000)
    600      rlwinm. 000f423f, 31,  0,  0 => 80000000 (80000000 00000000)
    601      rlwinm. 000f423f, 31,  0, 31 => 8007a11f (80000000 00000000)
    602      rlwinm. 000f423f, 31, 31,  0 => 80000001 (80000000 00000000)
    603      rlwinm. 000f423f, 31, 31, 31 => 00000001 (40000000 00000000)
    604      rlwinm. ffffffff,  0,  0,  0 => 80000000 (80000000 00000000)
    605      rlwinm. ffffffff,  0,  0, 31 => ffffffff (80000000 00000000)
    606      rlwinm. ffffffff,  0, 31,  0 => 80000001 (80000000 00000000)
    607      rlwinm. ffffffff,  0, 31, 31 => 00000001 (40000000 00000000)
    608      rlwinm. ffffffff, 31,  0,  0 => 80000000 (80000000 00000000)
    609      rlwinm. ffffffff, 31,  0, 31 => ffffffff (80000000 00000000)
    610      rlwinm. ffffffff, 31, 31,  0 => 80000001 (80000000 00000000)
    611      rlwinm. ffffffff, 31, 31, 31 => 00000001 (40000000 00000000)
    612 
    613       rlwnm. 00000000, 00000000,  0,  0 => 00000000 (20000000 00000000)
    614       rlwnm. 00000000, 00000000,  0, 31 => 00000000 (20000000 00000000)
    615       rlwnm. 00000000, 00000000, 31,  0 => 00000000 (20000000 00000000)
    616       rlwnm. 00000000, 00000000, 31, 31 => 00000000 (20000000 00000000)
    617       rlwnm. 00000000, 000f423f,  0,  0 => 00000000 (20000000 00000000)
    618       rlwnm. 00000000, 000f423f,  0, 31 => 00000000 (20000000 00000000)
    619       rlwnm. 00000000, 000f423f, 31,  0 => 00000000 (20000000 00000000)
    620       rlwnm. 00000000, 000f423f, 31, 31 => 00000000 (20000000 00000000)
    621       rlwnm. 00000000, ffffffff,  0,  0 => 00000000 (20000000 00000000)
    622       rlwnm. 00000000, ffffffff,  0, 31 => 00000000 (20000000 00000000)
    623       rlwnm. 00000000, ffffffff, 31,  0 => 00000000 (20000000 00000000)
    624       rlwnm. 00000000, ffffffff, 31, 31 => 00000000 (20000000 00000000)
    625       rlwnm. 000f423f, 00000000,  0,  0 => 00000000 (20000000 00000000)
    626       rlwnm. 000f423f, 00000000,  0, 31 => 000f423f (40000000 00000000)
    627       rlwnm. 000f423f, 00000000, 31,  0 => 00000001 (40000000 00000000)
    628       rlwnm. 000f423f, 00000000, 31, 31 => 00000001 (40000000 00000000)
    629       rlwnm. 000f423f, 000f423f,  0,  0 => 80000000 (80000000 00000000)
    630       rlwnm. 000f423f, 000f423f,  0, 31 => 8007a11f (80000000 00000000)
    631       rlwnm. 000f423f, 000f423f, 31,  0 => 80000001 (80000000 00000000)
    632       rlwnm. 000f423f, 000f423f, 31, 31 => 00000001 (40000000 00000000)
    633       rlwnm. 000f423f, ffffffff,  0,  0 => 80000000 (80000000 00000000)
    634       rlwnm. 000f423f, ffffffff,  0, 31 => 8007a11f (80000000 00000000)
    635       rlwnm. 000f423f, ffffffff, 31,  0 => 80000001 (80000000 00000000)
    636       rlwnm. 000f423f, ffffffff, 31, 31 => 00000001 (40000000 00000000)
    637       rlwnm. ffffffff, 00000000,  0,  0 => 80000000 (80000000 00000000)
    638       rlwnm. ffffffff, 00000000,  0, 31 => ffffffff (80000000 00000000)
    639       rlwnm. ffffffff, 00000000, 31,  0 => 80000001 (80000000 00000000)
    640       rlwnm. ffffffff, 00000000, 31, 31 => 00000001 (40000000 00000000)
    641       rlwnm. ffffffff, 000f423f,  0,  0 => 80000000 (80000000 00000000)
    642       rlwnm. ffffffff, 000f423f,  0, 31 => ffffffff (80000000 00000000)
    643       rlwnm. ffffffff, 000f423f, 31,  0 => 80000001 (80000000 00000000)
    644       rlwnm. ffffffff, 000f423f, 31, 31 => 00000001 (40000000 00000000)
    645       rlwnm. ffffffff, ffffffff,  0,  0 => 80000000 (80000000 00000000)
    646       rlwnm. ffffffff, ffffffff,  0, 31 => ffffffff (80000000 00000000)
    647       rlwnm. ffffffff, ffffffff, 31,  0 => 80000001 (80000000 00000000)
    648       rlwnm. ffffffff, ffffffff, 31, 31 => 00000001 (40000000 00000000)
    649 
    650       srawi. 00000000,  0 => 00000000 (20000000 00000000)
    651       srawi. 00000000, 31 => 00000000 (20000000 00000000)
    652       srawi. 000f423f,  0 => 000f423f (40000000 00000000)
    653       srawi. 000f423f, 31 => 00000000 (20000000 00000000)
    654       srawi. ffffffff,  0 => ffffffff (80000000 00000000)
    655       srawi. ffffffff, 31 => ffffffff (80000000 20000000)
    656 
    657         mcrf 0, 0 (00000000) => (00000000 00000000)
    658         mcrf 0, 7 (00000000) => (00000000 00000000)
    659         mcrf 7, 0 (00000000) => (00000000 00000000)
    660         mcrf 7, 7 (00000000) => (00000000 00000000)
    661         mcrf 0, 0 (000f423f) => (000f423f 00000000)
    662         mcrf 0, 7 (000f423f) => (f00f423f 00000000)
    663         mcrf 7, 0 (000f423f) => (000f4230 00000000)
    664         mcrf 7, 7 (000f423f) => (000f423f 00000000)
    665         mcrf 0, 0 (ffffffff) => (ffffffff 00000000)
    666         mcrf 0, 7 (ffffffff) => (ffffffff 00000000)
    667         mcrf 7, 0 (ffffffff) => (ffffffff 00000000)
    668         mcrf 7, 7 (ffffffff) => (ffffffff 00000000)
    669 
    670        mcrxr 0 (00000000) => (00000000 00000000)
    671        mcrxr 1 (00000000) => (00000000 00000000)
    672        mcrxr 2 (00000000) => (00000000 00000000)
    673        mcrxr 3 (00000000) => (00000000 00000000)
    674        mcrxr 4 (00000000) => (00000000 00000000)
    675        mcrxr 5 (00000000) => (00000000 00000000)
    676        mcrxr 6 (00000000) => (00000000 00000000)
    677        mcrxr 7 (00000000) => (00000000 00000000)
    678        mcrxr 0 (10000000) => (00000000 00000000)
    679        mcrxr 1 (10000000) => (00000000 00000000)
    680        mcrxr 2 (10000000) => (00000000 00000000)
    681        mcrxr 3 (10000000) => (00000000 00000000)
    682        mcrxr 4 (10000000) => (00000000 00000000)
    683        mcrxr 5 (10000000) => (00000000 00000000)
    684        mcrxr 6 (10000000) => (00000000 00000000)
    685        mcrxr 7 (10000000) => (00000000 00000000)
    686        mcrxr 0 (20000000) => (20000000 00000000)
    687        mcrxr 1 (20000000) => (02000000 00000000)
    688        mcrxr 2 (20000000) => (00200000 00000000)
    689        mcrxr 3 (20000000) => (00020000 00000000)
    690        mcrxr 4 (20000000) => (00002000 00000000)
    691        mcrxr 5 (20000000) => (00000200 00000000)
    692        mcrxr 6 (20000000) => (00000020 00000000)
    693        mcrxr 7 (20000000) => (00000002 00000000)
    694        mcrxr 0 (30000000) => (20000000 00000000)
    695        mcrxr 1 (30000000) => (02000000 00000000)
    696        mcrxr 2 (30000000) => (00200000 00000000)
    697        mcrxr 3 (30000000) => (00020000 00000000)
    698        mcrxr 4 (30000000) => (00002000 00000000)
    699        mcrxr 5 (30000000) => (00000200 00000000)
    700        mcrxr 6 (30000000) => (00000020 00000000)
    701        mcrxr 7 (30000000) => (00000002 00000000)
    702        mcrxr 0 (40000000) => (40000000 00000000)
    703        mcrxr 1 (40000000) => (04000000 00000000)
    704        mcrxr 2 (40000000) => (00400000 00000000)
    705        mcrxr 3 (40000000) => (00040000 00000000)
    706        mcrxr 4 (40000000) => (00004000 00000000)
    707        mcrxr 5 (40000000) => (00000400 00000000)
    708        mcrxr 6 (40000000) => (00000040 00000000)
    709        mcrxr 7 (40000000) => (00000004 00000000)
    710        mcrxr 0 (50000000) => (40000000 00000000)
    711        mcrxr 1 (50000000) => (04000000 00000000)
    712        mcrxr 2 (50000000) => (00400000 00000000)
    713        mcrxr 3 (50000000) => (00040000 00000000)
    714        mcrxr 4 (50000000) => (00004000 00000000)
    715        mcrxr 5 (50000000) => (00000400 00000000)
    716        mcrxr 6 (50000000) => (00000040 00000000)
    717        mcrxr 7 (50000000) => (00000004 00000000)
    718        mcrxr 0 (60000000) => (60000000 00000000)
    719        mcrxr 1 (60000000) => (06000000 00000000)
    720        mcrxr 2 (60000000) => (00600000 00000000)
    721        mcrxr 3 (60000000) => (00060000 00000000)
    722        mcrxr 4 (60000000) => (00006000 00000000)
    723        mcrxr 5 (60000000) => (00000600 00000000)
    724        mcrxr 6 (60000000) => (00000060 00000000)
    725        mcrxr 7 (60000000) => (00000006 00000000)
    726        mcrxr 0 (70000000) => (60000000 00000000)
    727        mcrxr 1 (70000000) => (06000000 00000000)
    728        mcrxr 2 (70000000) => (00600000 00000000)
    729        mcrxr 3 (70000000) => (00060000 00000000)
    730        mcrxr 4 (70000000) => (00006000 00000000)
    731        mcrxr 5 (70000000) => (00000600 00000000)
    732        mcrxr 6 (70000000) => (00000060 00000000)
    733        mcrxr 7 (70000000) => (00000006 00000000)
    734        mcrxr 0 (80000000) => (80000000 00000000)
    735        mcrxr 1 (80000000) => (08000000 00000000)
    736        mcrxr 2 (80000000) => (00800000 00000000)
    737        mcrxr 3 (80000000) => (00080000 00000000)
    738        mcrxr 4 (80000000) => (00008000 00000000)
    739        mcrxr 5 (80000000) => (00000800 00000000)
    740        mcrxr 6 (80000000) => (00000080 00000000)
    741        mcrxr 7 (80000000) => (00000008 00000000)
    742        mcrxr 0 (90000000) => (80000000 00000000)
    743        mcrxr 1 (90000000) => (08000000 00000000)
    744        mcrxr 2 (90000000) => (00800000 00000000)
    745        mcrxr 3 (90000000) => (00080000 00000000)
    746        mcrxr 4 (90000000) => (00008000 00000000)
    747        mcrxr 5 (90000000) => (00000800 00000000)
    748        mcrxr 6 (90000000) => (00000080 00000000)
    749        mcrxr 7 (90000000) => (00000008 00000000)
    750        mcrxr 0 (a0000000) => (a0000000 00000000)
    751        mcrxr 1 (a0000000) => (0a000000 00000000)
    752        mcrxr 2 (a0000000) => (00a00000 00000000)
    753        mcrxr 3 (a0000000) => (000a0000 00000000)
    754        mcrxr 4 (a0000000) => (0000a000 00000000)
    755        mcrxr 5 (a0000000) => (00000a00 00000000)
    756        mcrxr 6 (a0000000) => (000000a0 00000000)
    757        mcrxr 7 (a0000000) => (0000000a 00000000)
    758        mcrxr 0 (b0000000) => (a0000000 00000000)
    759        mcrxr 1 (b0000000) => (0a000000 00000000)
    760        mcrxr 2 (b0000000) => (00a00000 00000000)
    761        mcrxr 3 (b0000000) => (000a0000 00000000)
    762        mcrxr 4 (b0000000) => (0000a000 00000000)
    763        mcrxr 5 (b0000000) => (00000a00 00000000)
    764        mcrxr 6 (b0000000) => (000000a0 00000000)
    765        mcrxr 7 (b0000000) => (0000000a 00000000)
    766        mcrxr 0 (c0000000) => (c0000000 00000000)
    767        mcrxr 1 (c0000000) => (0c000000 00000000)
    768        mcrxr 2 (c0000000) => (00c00000 00000000)
    769        mcrxr 3 (c0000000) => (000c0000 00000000)
    770        mcrxr 4 (c0000000) => (0000c000 00000000)
    771        mcrxr 5 (c0000000) => (00000c00 00000000)
    772        mcrxr 6 (c0000000) => (000000c0 00000000)
    773        mcrxr 7 (c0000000) => (0000000c 00000000)
    774        mcrxr 0 (d0000000) => (c0000000 00000000)
    775        mcrxr 1 (d0000000) => (0c000000 00000000)
    776        mcrxr 2 (d0000000) => (00c00000 00000000)
    777        mcrxr 3 (d0000000) => (000c0000 00000000)
    778        mcrxr 4 (d0000000) => (0000c000 00000000)
    779        mcrxr 5 (d0000000) => (00000c00 00000000)
    780        mcrxr 6 (d0000000) => (000000c0 00000000)
    781        mcrxr 7 (d0000000) => (0000000c 00000000)
    782        mcrxr 0 (e0000000) => (e0000000 00000000)
    783        mcrxr 1 (e0000000) => (0e000000 00000000)
    784        mcrxr 2 (e0000000) => (00e00000 00000000)
    785        mcrxr 3 (e0000000) => (000e0000 00000000)
    786        mcrxr 4 (e0000000) => (0000e000 00000000)
    787        mcrxr 5 (e0000000) => (00000e00 00000000)
    788        mcrxr 6 (e0000000) => (000000e0 00000000)
    789        mcrxr 7 (e0000000) => (0000000e 00000000)
    790        mcrxr 0 (f0000000) => (e0000000 00000000)
    791        mcrxr 1 (f0000000) => (0e000000 00000000)
    792        mcrxr 2 (f0000000) => (00e00000 00000000)
    793        mcrxr 3 (f0000000) => (000e0000 00000000)
    794        mcrxr 4 (f0000000) => (0000e000 00000000)
    795        mcrxr 5 (f0000000) => (00000e00 00000000)
    796        mcrxr 6 (f0000000) => (000000e0 00000000)
    797        mcrxr 7 (f0000000) => (0000000e 00000000)
    798 
    799        mtcrf   0, 00000000 => (00000000 00000000)
    800        mtcrf  99, 00000000 => (00000000 00000000)
    801        mtcrf 198, 00000000 => (00000000 00000000)
    802        mtcrf   0, 000f423f => (00000000 00000000)
    803        mtcrf  99, 000f423f => (0000003f 00000000)
    804        mtcrf 198, 000f423f => (00000230 00000000)
    805        mtcrf   0, ffffffff => (00000000 00000000)
    806        mtcrf  99, ffffffff => (0ff000ff 00000000)
    807        mtcrf 198, ffffffff => (ff000ff0 00000000)
    808 
    809 PPC integer load insns
    810     with one register + one 16 bits immediate args with flags update:
    811          lbz  0, (00000000) => 00000000,  0 (00000000 00000000)
    812          lbz  3, (000f423f) => 00000000,  0 (00000000 00000000)
    813          lbz  7, (ffffffff) => 0000003f,  0 (00000000 00000000)
    814          lbz  1, (ffffffff) => 000000ff,  0 (00000000 00000000)
    815          lbz -3, (000f423f) => 0000000f,  0 (00000000 00000000)
    816          lbz -7, (00000000) => 00000000,  0 (00000000 00000000)
    817 
    818         lbzu  0, (00000000) => 00000000,  0 (00000000 00000000)
    819         lbzu  3, (000f423f) => 00000000,  3 (00000000 00000000)
    820         lbzu  7, (ffffffff) => 0000003f,  7 (00000000 00000000)
    821         lbzu  1, (ffffffff) => 000000ff,  1 (00000000 00000000)
    822         lbzu -3, (000f423f) => 0000000f, -3 (00000000 00000000)
    823         lbzu -7, (00000000) => 00000000, -7 (00000000 00000000)
    824 
    825          lha  0, (00000000) => 00000000,  0 (00000000 00000000)
    826          lha  3, (000f423f) => 00000000,  0 (00000000 00000000)
    827          lha  7, (ffffffff) => 00003fff,  0 (00000000 00000000)
    828          lha  1, (ffffffff) => ffffffff,  0 (00000000 00000000)
    829          lha -3, (000f423f) => 00000f42,  0 (00000000 00000000)
    830          lha -7, (00000000) => 00000000,  0 (00000000 00000000)
    831 
    832         lhau  0, (00000000) => 00000000,  0 (00000000 00000000)
    833         lhau  3, (000f423f) => 00000000,  3 (00000000 00000000)
    834         lhau  7, (ffffffff) => 00003fff,  7 (00000000 00000000)
    835         lhau  1, (ffffffff) => ffffffff,  1 (00000000 00000000)
    836         lhau -3, (000f423f) => 00000f42, -3 (00000000 00000000)
    837         lhau -7, (00000000) => 00000000, -7 (00000000 00000000)
    838 
    839          lhz  0, (00000000) => 00000000,  0 (00000000 00000000)
    840          lhz  3, (000f423f) => 00000000,  0 (00000000 00000000)
    841          lhz  7, (ffffffff) => 00003fff,  0 (00000000 00000000)
    842          lhz  1, (ffffffff) => 0000ffff,  0 (00000000 00000000)
    843          lhz -3, (000f423f) => 00000f42,  0 (00000000 00000000)
    844          lhz -7, (00000000) => 00000000,  0 (00000000 00000000)
    845 
    846         lhzu  0, (00000000) => 00000000,  0 (00000000 00000000)
    847         lhzu  3, (000f423f) => 00000000,  3 (00000000 00000000)
    848         lhzu  7, (ffffffff) => 00003fff,  7 (00000000 00000000)
    849         lhzu  1, (ffffffff) => 0000ffff,  1 (00000000 00000000)
    850         lhzu -3, (000f423f) => 00000f42, -3 (00000000 00000000)
    851         lhzu -7, (00000000) => 00000000, -7 (00000000 00000000)
    852 
    853          lwz  0, (00000000) => 00000000,  0 (00000000 00000000)
    854          lwz  3, (000f423f) => 00000f42,  0 (00000000 00000000)
    855          lwz  7, (ffffffff) => 3fffffff,  0 (00000000 00000000)
    856          lwz  1, (ffffffff) => ffffff00,  0 (00000000 00000000)
    857          lwz -3, (000f423f) => 0f423fff,  0 (00000000 00000000)
    858          lwz -7, (00000000) => 00000000,  0 (00000000 00000000)
    859 
    860         lwzu  0, (00000000) => 00000000,  0 (00000000 00000000)
    861         lwzu  3, (000f423f) => 00000f42,  3 (00000000 00000000)
    862         lwzu  7, (ffffffff) => 3fffffff,  7 (00000000 00000000)
    863         lwzu  1, (ffffffff) => ffffff00,  1 (00000000 00000000)
    864         lwzu -3, (000f423f) => 0f423fff, -3 (00000000 00000000)
    865         lwzu -7, (00000000) => 00000000, -7 (00000000 00000000)
    866 
    867 PPC integer load insns with two register args:
    868         lbzx 0 (00000000) => 00000000, 0 (00000000 00000000)
    869         lbzx 4 (000f423f) => 00000000, 0 (00000000 00000000)
    870         lbzx 8 (ffffffff) => 000000ff, 0 (00000000 00000000)
    871 
    872        lbzux 0 (00000000) => 00000000, 0 (00000000 00000000)
    873        lbzux 4 (000f423f) => 00000000, 4 (00000000 00000000)
    874        lbzux 8 (ffffffff) => 000000ff, 8 (00000000 00000000)
    875 
    876         lhax 0 (00000000) => 00000000, 0 (00000000 00000000)
    877         lhax 4 (000f423f) => 0000000f, 0 (00000000 00000000)
    878         lhax 8 (ffffffff) => ffffffff, 0 (00000000 00000000)
    879 
    880        lhaux 0 (00000000) => 00000000, 0 (00000000 00000000)
    881        lhaux 4 (000f423f) => 0000000f, 4 (00000000 00000000)
    882        lhaux 8 (ffffffff) => ffffffff, 8 (00000000 00000000)
    883 
    884         lhzx 0 (00000000) => 00000000, 0 (00000000 00000000)
    885         lhzx 4 (000f423f) => 0000000f, 0 (00000000 00000000)
    886         lhzx 8 (ffffffff) => 0000ffff, 0 (00000000 00000000)
    887 
    888        lhzux 0 (00000000) => 00000000, 0 (00000000 00000000)
    889        lhzux 4 (000f423f) => 0000000f, 4 (00000000 00000000)
    890        lhzux 8 (ffffffff) => 0000ffff, 8 (00000000 00000000)
    891 
    892         lwzx 0 (00000000) => 00000000, 0 (00000000 00000000)
    893         lwzx 4 (000f423f) => 000f423f, 0 (00000000 00000000)
    894         lwzx 8 (ffffffff) => ffffffff, 0 (00000000 00000000)
    895 
    896        lwzux 0 (00000000) => 00000000, 0 (00000000 00000000)
    897        lwzux 4 (000f423f) => 000f423f, 4 (00000000 00000000)
    898        lwzux 8 (ffffffff) => ffffffff, 8 (00000000 00000000)
    899 
    900 PPC integer store insns
    901     with one register + one 16 bits immediate args with flags update:
    902          stb 00000000,  0 => 00000000,  0 (00000000 00000000)
    903          stb 000f423f,  4 => 3f000000,  0 (00000000 00000000)
    904          stb ffffffff,  8 => ff000000,  0 (00000000 00000000)
    905          stb 00000000, -8 => 00000000,  0 (00000000 00000000)
    906          stb 000f423f, -4 => 3f000000,  0 (00000000 00000000)
    907          stb ffffffff,  0 => ff000000,  0 (00000000 00000000)
    908 
    909         stbu 00000000,  0 => 00000000,  0 (00000000 00000000)
    910         stbu 000f423f,  4 => 3f000000,  4 (00000000 00000000)
    911         stbu ffffffff,  8 => ff000000,  8 (00000000 00000000)
    912         stbu 00000000, -8 => 00000000, -8 (00000000 00000000)
    913         stbu 000f423f, -4 => 3f000000, -4 (00000000 00000000)
    914         stbu ffffffff,  0 => ff000000,  0 (00000000 00000000)
    915 
    916          sth 00000000,  0 => 00000000,  0 (00000000 00000000)
    917          sth 000f423f,  4 => 423f0000,  0 (00000000 00000000)
    918          sth ffffffff,  8 => ffff0000,  0 (00000000 00000000)
    919          sth 00000000, -8 => 00000000,  0 (00000000 00000000)
    920          sth 000f423f, -4 => 423f0000,  0 (00000000 00000000)
    921          sth ffffffff,  0 => ffff0000,  0 (00000000 00000000)
    922 
    923         sthu 00000000,  0 => 00000000,  0 (00000000 00000000)
    924         sthu 000f423f,  4 => 423f0000,  4 (00000000 00000000)
    925         sthu ffffffff,  8 => ffff0000,  8 (00000000 00000000)
    926         sthu 00000000, -8 => 00000000, -8 (00000000 00000000)
    927         sthu 000f423f, -4 => 423f0000, -4 (00000000 00000000)
    928         sthu ffffffff,  0 => ffff0000,  0 (00000000 00000000)
    929 
    930          stw 00000000,  0 => 00000000,  0 (00000000 00000000)
    931          stw 000f423f,  4 => 000f423f,  0 (00000000 00000000)
    932          stw ffffffff,  8 => ffffffff,  0 (00000000 00000000)
    933          stw 00000000, -8 => 00000000,  0 (00000000 00000000)
    934          stw 000f423f, -4 => 000f423f,  0 (00000000 00000000)
    935          stw ffffffff,  0 => ffffffff,  0 (00000000 00000000)
    936 
    937         stwu 00000000,  0 => 00000000,  0 (00000000 00000000)
    938         stwu 000f423f,  4 => 000f423f,  4 (00000000 00000000)
    939         stwu ffffffff,  8 => ffffffff,  8 (00000000 00000000)
    940         stwu 00000000, -8 => 00000000, -8 (00000000 00000000)
    941         stwu 000f423f, -4 => 000f423f, -4 (00000000 00000000)
    942         stwu ffffffff,  0 => ffffffff,  0 (00000000 00000000)
    943 
    944 PPC integer store insns with three register args:
    945         stbx 00000000, 0 => 00000000, 0 (00000000 00000000)
    946         stbx 000f423f, 4 => 3f000000, 0 (00000000 00000000)
    947         stbx ffffffff, 8 => ff000000, 0 (00000000 00000000)
    948 
    949        stbux 00000000, 0 => 00000000, 0 (00000000 00000000)
    950        stbux 000f423f, 4 => 3f000000, 4 (00000000 00000000)
    951        stbux ffffffff, 8 => ff000000, 8 (00000000 00000000)
    952 
    953         sthx 00000000, 0 => 00000000, 0 (00000000 00000000)
    954         sthx 000f423f, 4 => 423f0000, 0 (00000000 00000000)
    955         sthx ffffffff, 8 => ffff0000, 0 (00000000 00000000)
    956 
    957        sthux 00000000, 0 => 00000000, 0 (00000000 00000000)
    958        sthux 000f423f, 4 => 423f0000, 4 (00000000 00000000)
    959        sthux ffffffff, 8 => ffff0000, 8 (00000000 00000000)
    960 
    961         stwx 00000000, 0 => 00000000, 0 (00000000 00000000)
    962         stwx 000f423f, 4 => 000f423f, 0 (00000000 00000000)
    963         stwx ffffffff, 8 => ffffffff, 0 (00000000 00000000)
    964 
    965        stwux 00000000, 0 => 00000000, 0 (00000000 00000000)
    966        stwux 000f423f, 4 => 000f423f, 4 (00000000 00000000)
    967        stwux ffffffff, 8 => ffffffff, 8 (00000000 00000000)
    968 
    969 All done. Tested 92 different instructions
    970