Home | History | Annotate | Line # | Download | only in opcodes
aarch64-dis-2.c revision 1.1
      1  1.1  christos /* This file is automatically generated by aarch64-gen.  Do not edit!  */
      2  1.1  christos /* Copyright 2012, 2013  Free Software Foundation, Inc.
      3  1.1  christos    Contributed by ARM Ltd.
      4  1.1  christos 
      5  1.1  christos    This file is part of the GNU opcodes library.
      6  1.1  christos 
      7  1.1  christos    This library is free software; you can redistribute it and/or modify
      8  1.1  christos    it under the terms of the GNU General Public License as published by
      9  1.1  christos    the Free Software Foundation; either version 3, or (at your option)
     10  1.1  christos    any later version.
     11  1.1  christos 
     12  1.1  christos    It is distributed in the hope that it will be useful, but WITHOUT
     13  1.1  christos    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
     14  1.1  christos    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
     15  1.1  christos    License for more details.
     16  1.1  christos 
     17  1.1  christos    You should have received a copy of the GNU General Public License
     18  1.1  christos    along with this program; see the file COPYING3. If not,
     19  1.1  christos    see <http://www.gnu.org/licenses/>.  */
     20  1.1  christos 
     21  1.1  christos #include "sysdep.h"
     22  1.1  christos #include "aarch64-dis.h"
     23  1.1  christos 
     24  1.1  christos /* Called by aarch64_opcode_lookup.  */
     25  1.1  christos 
     26  1.1  christos static int
     27  1.1  christos aarch64_opcode_lookup_1 (uint32_t word)
     28  1.1  christos {
     29  1.1  christos   if (((word >> 26) & 0x1) == 0)
     30  1.1  christos     {
     31  1.1  christos       if (((word >> 25) & 0x1) == 0)
     32  1.1  christos         {
     33  1.1  christos           if (((word >> 27) & 0x1) == 0)
     34  1.1  christos             {
     35  1.1  christos               if (((word >> 24) & 0x1) == 0)
     36  1.1  christos                 {
     37  1.1  christos                   if (((word >> 31) & 0x1) == 0)
     38  1.1  christos                     {
     39  1.1  christos                       /* 33222222222211111111110000000000
     40  1.1  christos                          10987654321098765432109876543210
     41  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxx0000xxx0
     42  1.1  christos                          adr.  */
     43  1.1  christos                       return 781;
     44  1.1  christos                     }
     45  1.1  christos                   else
     46  1.1  christos                     {
     47  1.1  christos                       /* 33222222222211111111110000000000
     48  1.1  christos                          10987654321098765432109876543210
     49  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxx0000xxx1
     50  1.1  christos                          adrp.  */
     51  1.1  christos                       return 782;
     52  1.1  christos                     }
     53  1.1  christos                 }
     54  1.1  christos               else
     55  1.1  christos                 {
     56  1.1  christos                   if (((word >> 29) & 0x1) == 0)
     57  1.1  christos                     {
     58  1.1  christos                       if (((word >> 30) & 0x1) == 0)
     59  1.1  christos                         {
     60  1.1  christos                           /* 33222222222211111111110000000000
     61  1.1  christos                              10987654321098765432109876543210
     62  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxxx1000x00x
     63  1.1  christos                              add.  */
     64  1.1  christos                           return 12;
     65  1.1  christos                         }
     66  1.1  christos                       else
     67  1.1  christos                         {
     68  1.1  christos                           /* 33222222222211111111110000000000
     69  1.1  christos                              10987654321098765432109876543210
     70  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxxx1000x01x
     71  1.1  christos                              sub.  */
     72  1.1  christos                           return 16;
     73  1.1  christos                         }
     74  1.1  christos                     }
     75  1.1  christos                   else
     76  1.1  christos                     {
     77  1.1  christos                       if (((word >> 30) & 0x1) == 0)
     78  1.1  christos                         {
     79  1.1  christos                           /* 33222222222211111111110000000000
     80  1.1  christos                              10987654321098765432109876543210
     81  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxxx1000x10x
     82  1.1  christos                              adds.  */
     83  1.1  christos                           return 14;
     84  1.1  christos                         }
     85  1.1  christos                       else
     86  1.1  christos                         {
     87  1.1  christos                           /* 33222222222211111111110000000000
     88  1.1  christos                              10987654321098765432109876543210
     89  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxxx1000x11x
     90  1.1  christos                              subs.  */
     91  1.1  christos                           return 17;
     92  1.1  christos                         }
     93  1.1  christos                     }
     94  1.1  christos                 }
     95  1.1  christos             }
     96  1.1  christos           else
     97  1.1  christos             {
     98  1.1  christos               if (((word >> 28) & 0x1) == 0)
     99  1.1  christos                 {
    100  1.1  christos                   if (((word >> 22) & 0x1) == 0)
    101  1.1  christos                     {
    102  1.1  christos                       if (((word >> 23) & 0x1) == 0)
    103  1.1  christos                         {
    104  1.1  christos                           if (((word >> 29) & 0x1) == 0)
    105  1.1  christos                             {
    106  1.1  christos                               if (((word >> 15) & 0x1) == 0)
    107  1.1  christos                                 {
    108  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
    109  1.1  christos                                     {
    110  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    111  1.1  christos                                         {
    112  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    113  1.1  christos                                             {
    114  1.1  christos                                               /* 33222222222211111111110000000000
    115  1.1  christos                                                  10987654321098765432109876543210
    116  1.1  christos                                                  xxxxxxxxxxxxxxx0xxxxx000x0010000
    117  1.1  christos                                                  stxrb.  */
    118  1.1  christos                                               return 717;
    119  1.1  christos                                             }
    120  1.1  christos                                           else
    121  1.1  christos                                             {
    122  1.1  christos                                               /* 33222222222211111111110000000000
    123  1.1  christos                                                  10987654321098765432109876543210
    124  1.1  christos                                                  xxxxxxxxxxxxxxx0xxxxx000x0010010
    125  1.1  christos                                                  stxrh.  */
    126  1.1  christos                                               return 723;
    127  1.1  christos                                             }
    128  1.1  christos                                         }
    129  1.1  christos                                       else
    130  1.1  christos                                         {
    131  1.1  christos                                           /* 33222222222211111111110000000000
    132  1.1  christos                                              10987654321098765432109876543210
    133  1.1  christos                                              xxxxxxxxxxxxxxx0xxxxx000x00100x1
    134  1.1  christos                                              stxr.  */
    135  1.1  christos                                           return 729;
    136  1.1  christos                                         }
    137  1.1  christos                                     }
    138  1.1  christos                                   else
    139  1.1  christos                                     {
    140  1.1  christos                                       /* 33222222222211111111110000000000
    141  1.1  christos                                          10987654321098765432109876543210
    142  1.1  christos                                          xxxxxxxxxxxxxxx0xxxxx100x00100xx
    143  1.1  christos                                          stxp.  */
    144  1.1  christos                                       return 731;
    145  1.1  christos                                     }
    146  1.1  christos                                 }
    147  1.1  christos                               else
    148  1.1  christos                                 {
    149  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
    150  1.1  christos                                     {
    151  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    152  1.1  christos                                         {
    153  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    154  1.1  christos                                             {
    155  1.1  christos                                               /* 33222222222211111111110000000000
    156  1.1  christos                                                  10987654321098765432109876543210
    157  1.1  christos                                                  xxxxxxxxxxxxxxx1xxxxx000x0010000
    158  1.1  christos                                                  stlxrb.  */
    159  1.1  christos                                               return 718;
    160  1.1  christos                                             }
    161  1.1  christos                                           else
    162  1.1  christos                                             {
    163  1.1  christos                                               /* 33222222222211111111110000000000
    164  1.1  christos                                                  10987654321098765432109876543210
    165  1.1  christos                                                  xxxxxxxxxxxxxxx1xxxxx000x0010010
    166  1.1  christos                                                  stlxrh.  */
    167  1.1  christos                                               return 724;
    168  1.1  christos                                             }
    169  1.1  christos                                         }
    170  1.1  christos                                       else
    171  1.1  christos                                         {
    172  1.1  christos                                           /* 33222222222211111111110000000000
    173  1.1  christos                                              10987654321098765432109876543210
    174  1.1  christos                                              xxxxxxxxxxxxxxx1xxxxx000x00100x1
    175  1.1  christos                                              stlxr.  */
    176  1.1  christos                                           return 730;
    177  1.1  christos                                         }
    178  1.1  christos                                     }
    179  1.1  christos                                   else
    180  1.1  christos                                     {
    181  1.1  christos                                       /* 33222222222211111111110000000000
    182  1.1  christos                                          10987654321098765432109876543210
    183  1.1  christos                                          xxxxxxxxxxxxxxx1xxxxx100x00100xx
    184  1.1  christos                                          stlxp.  */
    185  1.1  christos                                       return 732;
    186  1.1  christos                                     }
    187  1.1  christos                                 }
    188  1.1  christos                             }
    189  1.1  christos                           else
    190  1.1  christos                             {
    191  1.1  christos                               /* 33222222222211111111110000000000
    192  1.1  christos                                  10987654321098765432109876543210
    193  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxx00x00101xx
    194  1.1  christos                                  stnp.  */
    195  1.1  christos                               return 739;
    196  1.1  christos                             }
    197  1.1  christos                         }
    198  1.1  christos                       else
    199  1.1  christos                         {
    200  1.1  christos                           if (((word >> 29) & 0x1) == 0)
    201  1.1  christos                             {
    202  1.1  christos                               if (((word >> 31) & 0x1) == 0)
    203  1.1  christos                                 {
    204  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
    205  1.1  christos                                     {
    206  1.1  christos                                       /* 33222222222211111111110000000000
    207  1.1  christos                                          10987654321098765432109876543210
    208  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx01x0010000
    209  1.1  christos                                          stlrb.  */
    210  1.1  christos                                       return 721;
    211  1.1  christos                                     }
    212  1.1  christos                                   else
    213  1.1  christos                                     {
    214  1.1  christos                                       /* 33222222222211111111110000000000
    215  1.1  christos                                          10987654321098765432109876543210
    216  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx01x0010010
    217  1.1  christos                                          stlrh.  */
    218  1.1  christos                                       return 727;
    219  1.1  christos                                     }
    220  1.1  christos                                 }
    221  1.1  christos                               else
    222  1.1  christos                                 {
    223  1.1  christos                                   /* 33222222222211111111110000000000
    224  1.1  christos                                      10987654321098765432109876543210
    225  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx01x00100x1
    226  1.1  christos                                      stlr.  */
    227  1.1  christos                                   return 737;
    228  1.1  christos                                 }
    229  1.1  christos                             }
    230  1.1  christos                           else
    231  1.1  christos                             {
    232  1.1  christos                               /* 33222222222211111111110000000000
    233  1.1  christos                                  10987654321098765432109876543210
    234  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxx01x00101xx
    235  1.1  christos                                  stp.  */
    236  1.1  christos                               return 748;
    237  1.1  christos                             }
    238  1.1  christos                         }
    239  1.1  christos                     }
    240  1.1  christos                   else
    241  1.1  christos                     {
    242  1.1  christos                       if (((word >> 23) & 0x1) == 0)
    243  1.1  christos                         {
    244  1.1  christos                           if (((word >> 29) & 0x1) == 0)
    245  1.1  christos                             {
    246  1.1  christos                               if (((word >> 15) & 0x1) == 0)
    247  1.1  christos                                 {
    248  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
    249  1.1  christos                                     {
    250  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    251  1.1  christos                                         {
    252  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    253  1.1  christos                                             {
    254  1.1  christos                                               /* 33222222222211111111110000000000
    255  1.1  christos                                                  10987654321098765432109876543210
    256  1.1  christos                                                  xxxxxxxxxxxxxxx0xxxxx010x0010000
    257  1.1  christos                                                  ldxrb.  */
    258  1.1  christos                                               return 719;
    259  1.1  christos                                             }
    260  1.1  christos                                           else
    261  1.1  christos                                             {
    262  1.1  christos                                               /* 33222222222211111111110000000000
    263  1.1  christos                                                  10987654321098765432109876543210
    264  1.1  christos                                                  xxxxxxxxxxxxxxx0xxxxx010x0010010
    265  1.1  christos                                                  ldxrh.  */
    266  1.1  christos                                               return 725;
    267  1.1  christos                                             }
    268  1.1  christos                                         }
    269  1.1  christos                                       else
    270  1.1  christos                                         {
    271  1.1  christos                                           /* 33222222222211111111110000000000
    272  1.1  christos                                              10987654321098765432109876543210
    273  1.1  christos                                              xxxxxxxxxxxxxxx0xxxxx010x00100x1
    274  1.1  christos                                              ldxr.  */
    275  1.1  christos                                           return 733;
    276  1.1  christos                                         }
    277  1.1  christos                                     }
    278  1.1  christos                                   else
    279  1.1  christos                                     {
    280  1.1  christos                                       /* 33222222222211111111110000000000
    281  1.1  christos                                          10987654321098765432109876543210
    282  1.1  christos                                          xxxxxxxxxxxxxxx0xxxxx110x00100xx
    283  1.1  christos                                          ldxp.  */
    284  1.1  christos                                       return 735;
    285  1.1  christos                                     }
    286  1.1  christos                                 }
    287  1.1  christos                               else
    288  1.1  christos                                 {
    289  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
    290  1.1  christos                                     {
    291  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    292  1.1  christos                                         {
    293  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    294  1.1  christos                                             {
    295  1.1  christos                                               /* 33222222222211111111110000000000
    296  1.1  christos                                                  10987654321098765432109876543210
    297  1.1  christos                                                  xxxxxxxxxxxxxxx1xxxxx010x0010000
    298  1.1  christos                                                  ldaxrb.  */
    299  1.1  christos                                               return 720;
    300  1.1  christos                                             }
    301  1.1  christos                                           else
    302  1.1  christos                                             {
    303  1.1  christos                                               /* 33222222222211111111110000000000
    304  1.1  christos                                                  10987654321098765432109876543210
    305  1.1  christos                                                  xxxxxxxxxxxxxxx1xxxxx010x0010010
    306  1.1  christos                                                  ldaxrh.  */
    307  1.1  christos                                               return 726;
    308  1.1  christos                                             }
    309  1.1  christos                                         }
    310  1.1  christos                                       else
    311  1.1  christos                                         {
    312  1.1  christos                                           /* 33222222222211111111110000000000
    313  1.1  christos                                              10987654321098765432109876543210
    314  1.1  christos                                              xxxxxxxxxxxxxxx1xxxxx010x00100x1
    315  1.1  christos                                              ldaxr.  */
    316  1.1  christos                                           return 734;
    317  1.1  christos                                         }
    318  1.1  christos                                     }
    319  1.1  christos                                   else
    320  1.1  christos                                     {
    321  1.1  christos                                       /* 33222222222211111111110000000000
    322  1.1  christos                                          10987654321098765432109876543210
    323  1.1  christos                                          xxxxxxxxxxxxxxx1xxxxx110x00100xx
    324  1.1  christos                                          ldaxp.  */
    325  1.1  christos                                       return 736;
    326  1.1  christos                                     }
    327  1.1  christos                                 }
    328  1.1  christos                             }
    329  1.1  christos                           else
    330  1.1  christos                             {
    331  1.1  christos                               if (((word >> 30) & 0x1) == 0)
    332  1.1  christos                                 {
    333  1.1  christos                                   /* 33222222222211111111110000000000
    334  1.1  christos                                      10987654321098765432109876543210
    335  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx10x001010x
    336  1.1  christos                                      ldnp.  */
    337  1.1  christos                                   return 740;
    338  1.1  christos                                 }
    339  1.1  christos                               else
    340  1.1  christos                                 {
    341  1.1  christos                                   /* 33222222222211111111110000000000
    342  1.1  christos                                      10987654321098765432109876543210
    343  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx10x001011x
    344  1.1  christos                                      ldpsw.  */
    345  1.1  christos                                   return 747;
    346  1.1  christos                                 }
    347  1.1  christos                             }
    348  1.1  christos                         }
    349  1.1  christos                       else
    350  1.1  christos                         {
    351  1.1  christos                           if (((word >> 29) & 0x1) == 0)
    352  1.1  christos                             {
    353  1.1  christos                               if (((word >> 31) & 0x1) == 0)
    354  1.1  christos                                 {
    355  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
    356  1.1  christos                                     {
    357  1.1  christos                                       /* 33222222222211111111110000000000
    358  1.1  christos                                          10987654321098765432109876543210
    359  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx11x0010000
    360  1.1  christos                                          ldarb.  */
    361  1.1  christos                                       return 722;
    362  1.1  christos                                     }
    363  1.1  christos                                   else
    364  1.1  christos                                     {
    365  1.1  christos                                       /* 33222222222211111111110000000000
    366  1.1  christos                                          10987654321098765432109876543210
    367  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx11x0010010
    368  1.1  christos                                          ldarh.  */
    369  1.1  christos                                       return 728;
    370  1.1  christos                                     }
    371  1.1  christos                                 }
    372  1.1  christos                               else
    373  1.1  christos                                 {
    374  1.1  christos                                   /* 33222222222211111111110000000000
    375  1.1  christos                                      10987654321098765432109876543210
    376  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx11x00100x1
    377  1.1  christos                                      ldar.  */
    378  1.1  christos                                   return 738;
    379  1.1  christos                                 }
    380  1.1  christos                             }
    381  1.1  christos                           else
    382  1.1  christos                             {
    383  1.1  christos                               if (((word >> 30) & 0x1) == 0)
    384  1.1  christos                                 {
    385  1.1  christos                                   /* 33222222222211111111110000000000
    386  1.1  christos                                      10987654321098765432109876543210
    387  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx11x001010x
    388  1.1  christos                                      ldp.  */
    389  1.1  christos                                   return 749;
    390  1.1  christos                                 }
    391  1.1  christos                               else
    392  1.1  christos                                 {
    393  1.1  christos                                   /* 33222222222211111111110000000000
    394  1.1  christos                                      10987654321098765432109876543210
    395  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx11x001011x
    396  1.1  christos                                      ldpsw.  */
    397  1.1  christos                                   return 752;
    398  1.1  christos                                 }
    399  1.1  christos                             }
    400  1.1  christos                         }
    401  1.1  christos                     }
    402  1.1  christos                 }
    403  1.1  christos               else
    404  1.1  christos                 {
    405  1.1  christos                   if (((word >> 24) & 0x1) == 0)
    406  1.1  christos                     {
    407  1.1  christos                       if (((word >> 29) & 0x1) == 0)
    408  1.1  christos                         {
    409  1.1  christos                           if (((word >> 31) & 0x1) == 0)
    410  1.1  christos                             {
    411  1.1  christos                               /* 33222222222211111111110000000000
    412  1.1  christos                                  10987654321098765432109876543210
    413  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxxx000110x0
    414  1.1  christos                                  ldr.  */
    415  1.1  christos                               return 753;
    416  1.1  christos                             }
    417  1.1  christos                           else
    418  1.1  christos                             {
    419  1.1  christos                               if (((word >> 30) & 0x1) == 0)
    420  1.1  christos                                 {
    421  1.1  christos                                   /* 33222222222211111111110000000000
    422  1.1  christos                                      10987654321098765432109876543210
    423  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxxxx00011001
    424  1.1  christos                                      ldrsw.  */
    425  1.1  christos                                   return 755;
    426  1.1  christos                                 }
    427  1.1  christos                               else
    428  1.1  christos                                 {
    429  1.1  christos                                   /* 33222222222211111111110000000000
    430  1.1  christos                                      10987654321098765432109876543210
    431  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxxxx00011011
    432  1.1  christos                                      prfm.  */
    433  1.1  christos                                   return 756;
    434  1.1  christos                                 }
    435  1.1  christos                             }
    436  1.1  christos                         }
    437  1.1  christos                       else
    438  1.1  christos                         {
    439  1.1  christos                           if (((word >> 10) & 0x1) == 0)
    440  1.1  christos                             {
    441  1.1  christos                               if (((word >> 11) & 0x1) == 0)
    442  1.1  christos                                 {
    443  1.1  christos                                   if (((word >> 23) & 0x1) == 0)
    444  1.1  christos                                     {
    445  1.1  christos                                       if (((word >> 22) & 0x1) == 0)
    446  1.1  christos                                         {
    447  1.1  christos                                           if (((word >> 31) & 0x1) == 0)
    448  1.1  christos                                             {
    449  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
    450  1.1  christos                                                 {
    451  1.1  christos                                                   /* 33222222222211111111110000000000
    452  1.1  christos                                                      10987654321098765432109876543210
    453  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxxx0000011100
    454  1.1  christos                                                      sturb.  */
    455  1.1  christos                                                   return 693;
    456  1.1  christos                                                 }
    457  1.1  christos                                               else
    458  1.1  christos                                                 {
    459  1.1  christos                                                   /* 33222222222211111111110000000000
    460  1.1  christos                                                      10987654321098765432109876543210
    461  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxxx0000011110
    462  1.1  christos                                                      sturh.  */
    463  1.1  christos                                                   return 703;
    464  1.1  christos                                                 }
    465  1.1  christos                                             }
    466  1.1  christos                                           else
    467  1.1  christos                                             {
    468  1.1  christos                                               /* 33222222222211111111110000000000
    469  1.1  christos                                                  10987654321098765432109876543210
    470  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxxx00000111x1
    471  1.1  christos                                                  stur.  */
    472  1.1  christos                                               return 709;
    473  1.1  christos                                             }
    474  1.1  christos                                         }
    475  1.1  christos                                       else
    476  1.1  christos                                         {
    477  1.1  christos                                           if (((word >> 31) & 0x1) == 0)
    478  1.1  christos                                             {
    479  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
    480  1.1  christos                                                 {
    481  1.1  christos                                                   /* 33222222222211111111110000000000
    482  1.1  christos                                                      10987654321098765432109876543210
    483  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxxx1000011100
    484  1.1  christos                                                      ldurb.  */
    485  1.1  christos                                                   return 694;
    486  1.1  christos                                                 }
    487  1.1  christos                                               else
    488  1.1  christos                                                 {
    489  1.1  christos                                                   /* 33222222222211111111110000000000
    490  1.1  christos                                                      10987654321098765432109876543210
    491  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxxx1000011110
    492  1.1  christos                                                      ldurh.  */
    493  1.1  christos                                                   return 704;
    494  1.1  christos                                                 }
    495  1.1  christos                                             }
    496  1.1  christos                                           else
    497  1.1  christos                                             {
    498  1.1  christos                                               /* 33222222222211111111110000000000
    499  1.1  christos                                                  10987654321098765432109876543210
    500  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxxx10000111x1
    501  1.1  christos                                                  ldur.  */
    502  1.1  christos                                               return 710;
    503  1.1  christos                                             }
    504  1.1  christos                                         }
    505  1.1  christos                                     }
    506  1.1  christos                                   else
    507  1.1  christos                                     {
    508  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
    509  1.1  christos                                         {
    510  1.1  christos                                           if (((word >> 31) & 0x1) == 0)
    511  1.1  christos                                             {
    512  1.1  christos                                               /* 33222222222211111111110000000000
    513  1.1  christos                                                  10987654321098765432109876543210
    514  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxxxx100011100
    515  1.1  christos                                                  ldursb.  */
    516  1.1  christos                                               return 697;
    517  1.1  christos                                             }
    518  1.1  christos                                           else
    519  1.1  christos                                             {
    520  1.1  christos                                               /* 33222222222211111111110000000000
    521  1.1  christos                                                  10987654321098765432109876543210
    522  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxxxx100011101
    523  1.1  christos                                                  ldursw.  */
    524  1.1  christos                                               return 713;
    525  1.1  christos                                             }
    526  1.1  christos                                         }
    527  1.1  christos                                       else
    528  1.1  christos                                         {
    529  1.1  christos                                           if (((word >> 31) & 0x1) == 0)
    530  1.1  christos                                             {
    531  1.1  christos                                               /* 33222222222211111111110000000000
    532  1.1  christos                                                  10987654321098765432109876543210
    533  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxxxx100011110
    534  1.1  christos                                                  ldursh.  */
    535  1.1  christos                                               return 707;
    536  1.1  christos                                             }
    537  1.1  christos                                           else
    538  1.1  christos                                             {
    539  1.1  christos                                               /* 33222222222211111111110000000000
    540  1.1  christos                                                  10987654321098765432109876543210
    541  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxxxx100011111
    542  1.1  christos                                                  prfum.  */
    543  1.1  christos                                               return 715;
    544  1.1  christos                                             }
    545  1.1  christos                                         }
    546  1.1  christos                                     }
    547  1.1  christos                                 }
    548  1.1  christos                               else
    549  1.1  christos                                 {
    550  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
    551  1.1  christos                                     {
    552  1.1  christos                                       if (((word >> 23) & 0x1) == 0)
    553  1.1  christos                                         {
    554  1.1  christos                                           if (((word >> 22) & 0x1) == 0)
    555  1.1  christos                                             {
    556  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    557  1.1  christos                                                 {
    558  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
    559  1.1  christos                                                     {
    560  1.1  christos                                                       /* 33222222222211111111110000000000
    561  1.1  christos                                                          10987654321098765432109876543210
    562  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx00000011100
    563  1.1  christos                                                          sttrb.  */
    564  1.1  christos                                                       return 684;
    565  1.1  christos                                                     }
    566  1.1  christos                                                   else
    567  1.1  christos                                                     {
    568  1.1  christos                                                       /* 33222222222211111111110000000000
    569  1.1  christos                                                          10987654321098765432109876543210
    570  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx00000011110
    571  1.1  christos                                                          sttrh.  */
    572  1.1  christos                                                       return 687;
    573  1.1  christos                                                     }
    574  1.1  christos                                                 }
    575  1.1  christos                                               else
    576  1.1  christos                                                 {
    577  1.1  christos                                                   /* 33222222222211111111110000000000
    578  1.1  christos                                                      10987654321098765432109876543210
    579  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx000000111x1
    580  1.1  christos                                                      sttr.  */
    581  1.1  christos                                                   return 690;
    582  1.1  christos                                                 }
    583  1.1  christos                                             }
    584  1.1  christos                                           else
    585  1.1  christos                                             {
    586  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    587  1.1  christos                                                 {
    588  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
    589  1.1  christos                                                     {
    590  1.1  christos                                                       /* 33222222222211111111110000000000
    591  1.1  christos                                                          10987654321098765432109876543210
    592  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx01000011100
    593  1.1  christos                                                          ldtrb.  */
    594  1.1  christos                                                       return 685;
    595  1.1  christos                                                     }
    596  1.1  christos                                                   else
    597  1.1  christos                                                     {
    598  1.1  christos                                                       /* 33222222222211111111110000000000
    599  1.1  christos                                                          10987654321098765432109876543210
    600  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx01000011110
    601  1.1  christos                                                          ldtrh.  */
    602  1.1  christos                                                       return 688;
    603  1.1  christos                                                     }
    604  1.1  christos                                                 }
    605  1.1  christos                                               else
    606  1.1  christos                                                 {
    607  1.1  christos                                                   /* 33222222222211111111110000000000
    608  1.1  christos                                                      10987654321098765432109876543210
    609  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx010000111x1
    610  1.1  christos                                                      ldtr.  */
    611  1.1  christos                                                   return 691;
    612  1.1  christos                                                 }
    613  1.1  christos                                             }
    614  1.1  christos                                         }
    615  1.1  christos                                       else
    616  1.1  christos                                         {
    617  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    618  1.1  christos                                             {
    619  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    620  1.1  christos                                                 {
    621  1.1  christos                                                   /* 33222222222211111111110000000000
    622  1.1  christos                                                      10987654321098765432109876543210
    623  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx0x100011100
    624  1.1  christos                                                      ldtrsb.  */
    625  1.1  christos                                                   return 686;
    626  1.1  christos                                                 }
    627  1.1  christos                                               else
    628  1.1  christos                                                 {
    629  1.1  christos                                                   /* 33222222222211111111110000000000
    630  1.1  christos                                                      10987654321098765432109876543210
    631  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx0x100011101
    632  1.1  christos                                                      ldtrsw.  */
    633  1.1  christos                                                   return 692;
    634  1.1  christos                                                 }
    635  1.1  christos                                             }
    636  1.1  christos                                           else
    637  1.1  christos                                             {
    638  1.1  christos                                               /* 33222222222211111111110000000000
    639  1.1  christos                                                  10987654321098765432109876543210
    640  1.1  christos                                                  xxxxxxxxxx01xxxxxxxxx0x10001111x
    641  1.1  christos                                                  ldtrsh.  */
    642  1.1  christos                                               return 689;
    643  1.1  christos                                             }
    644  1.1  christos                                         }
    645  1.1  christos                                     }
    646  1.1  christos                                   else
    647  1.1  christos                                     {
    648  1.1  christos                                       if (((word >> 23) & 0x1) == 0)
    649  1.1  christos                                         {
    650  1.1  christos                                           if (((word >> 22) & 0x1) == 0)
    651  1.1  christos                                             {
    652  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    653  1.1  christos                                                 {
    654  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
    655  1.1  christos                                                     {
    656  1.1  christos                                                       /* 33222222222211111111110000000000
    657  1.1  christos                                                          10987654321098765432109876543210
    658  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx10000011100
    659  1.1  christos                                                          strb.  */
    660  1.1  christos                                                       return 672;
    661  1.1  christos                                                     }
    662  1.1  christos                                                   else
    663  1.1  christos                                                     {
    664  1.1  christos                                                       /* 33222222222211111111110000000000
    665  1.1  christos                                                          10987654321098765432109876543210
    666  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx10000011110
    667  1.1  christos                                                          strh.  */
    668  1.1  christos                                                       return 677;
    669  1.1  christos                                                     }
    670  1.1  christos                                                 }
    671  1.1  christos                                               else
    672  1.1  christos                                                 {
    673  1.1  christos                                                   /* 33222222222211111111110000000000
    674  1.1  christos                                                      10987654321098765432109876543210
    675  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx100000111x1
    676  1.1  christos                                                      str.  */
    677  1.1  christos                                                   return 680;
    678  1.1  christos                                                 }
    679  1.1  christos                                             }
    680  1.1  christos                                           else
    681  1.1  christos                                             {
    682  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    683  1.1  christos                                                 {
    684  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
    685  1.1  christos                                                     {
    686  1.1  christos                                                       /* 33222222222211111111110000000000
    687  1.1  christos                                                          10987654321098765432109876543210
    688  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx11000011100
    689  1.1  christos                                                          ldrb.  */
    690  1.1  christos                                                       return 673;
    691  1.1  christos                                                     }
    692  1.1  christos                                                   else
    693  1.1  christos                                                     {
    694  1.1  christos                                                       /* 33222222222211111111110000000000
    695  1.1  christos                                                          10987654321098765432109876543210
    696  1.1  christos                                                          xxxxxxxxxx01xxxxxxxxx11000011110
    697  1.1  christos                                                          ldrh.  */
    698  1.1  christos                                                       return 678;
    699  1.1  christos                                                     }
    700  1.1  christos                                                 }
    701  1.1  christos                                               else
    702  1.1  christos                                                 {
    703  1.1  christos                                                   /* 33222222222211111111110000000000
    704  1.1  christos                                                      10987654321098765432109876543210
    705  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx110000111x1
    706  1.1  christos                                                      ldr.  */
    707  1.1  christos                                                   return 681;
    708  1.1  christos                                                 }
    709  1.1  christos                                             }
    710  1.1  christos                                         }
    711  1.1  christos                                       else
    712  1.1  christos                                         {
    713  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    714  1.1  christos                                             {
    715  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    716  1.1  christos                                                 {
    717  1.1  christos                                                   /* 33222222222211111111110000000000
    718  1.1  christos                                                      10987654321098765432109876543210
    719  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx1x100011100
    720  1.1  christos                                                      ldrsb.  */
    721  1.1  christos                                                   return 674;
    722  1.1  christos                                                 }
    723  1.1  christos                                               else
    724  1.1  christos                                                 {
    725  1.1  christos                                                   /* 33222222222211111111110000000000
    726  1.1  christos                                                      10987654321098765432109876543210
    727  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx1x100011101
    728  1.1  christos                                                      ldrsw.  */
    729  1.1  christos                                                   return 682;
    730  1.1  christos                                                 }
    731  1.1  christos                                             }
    732  1.1  christos                                           else
    733  1.1  christos                                             {
    734  1.1  christos                                               if (((word >> 31) & 0x1) == 0)
    735  1.1  christos                                                 {
    736  1.1  christos                                                   /* 33222222222211111111110000000000
    737  1.1  christos                                                      10987654321098765432109876543210
    738  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx1x100011110
    739  1.1  christos                                                      ldrsh.  */
    740  1.1  christos                                                   return 679;
    741  1.1  christos                                                 }
    742  1.1  christos                                               else
    743  1.1  christos                                                 {
    744  1.1  christos                                                   /* 33222222222211111111110000000000
    745  1.1  christos                                                      10987654321098765432109876543210
    746  1.1  christos                                                      xxxxxxxxxx01xxxxxxxxx1x100011111
    747  1.1  christos                                                      prfm.  */
    748  1.1  christos                                                   return 683;
    749  1.1  christos                                                 }
    750  1.1  christos                                             }
    751  1.1  christos                                         }
    752  1.1  christos                                     }
    753  1.1  christos                                 }
    754  1.1  christos                             }
    755  1.1  christos                           else
    756  1.1  christos                             {
    757  1.1  christos                               if (((word >> 23) & 0x1) == 0)
    758  1.1  christos                                 {
    759  1.1  christos                                   if (((word >> 22) & 0x1) == 0)
    760  1.1  christos                                     {
    761  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    762  1.1  christos                                         {
    763  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    764  1.1  christos                                             {
    765  1.1  christos                                               /* 33222222222211111111110000000000
    766  1.1  christos                                                  10987654321098765432109876543210
    767  1.1  christos                                                  xxxxxxxxxx1xxxxxxxxxxx0000011100
    768  1.1  christos                                                  strb.  */
    769  1.1  christos                                               return 649;
    770  1.1  christos                                             }
    771  1.1  christos                                           else
    772  1.1  christos                                             {
    773  1.1  christos                                               /* 33222222222211111111110000000000
    774  1.1  christos                                                  10987654321098765432109876543210
    775  1.1  christos                                                  xxxxxxxxxx1xxxxxxxxxxx0000011110
    776  1.1  christos                                                  strh.  */
    777  1.1  christos                                               return 654;
    778  1.1  christos                                             }
    779  1.1  christos                                         }
    780  1.1  christos                                       else
    781  1.1  christos                                         {
    782  1.1  christos                                           /* 33222222222211111111110000000000
    783  1.1  christos                                              10987654321098765432109876543210
    784  1.1  christos                                              xxxxxxxxxx1xxxxxxxxxxx00000111x1
    785  1.1  christos                                              str.  */
    786  1.1  christos                                           return 657;
    787  1.1  christos                                         }
    788  1.1  christos                                     }
    789  1.1  christos                                   else
    790  1.1  christos                                     {
    791  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    792  1.1  christos                                         {
    793  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
    794  1.1  christos                                             {
    795  1.1  christos                                               /* 33222222222211111111110000000000
    796  1.1  christos                                                  10987654321098765432109876543210
    797  1.1  christos                                                  xxxxxxxxxx1xxxxxxxxxxx1000011100
    798  1.1  christos                                                  ldrb.  */
    799  1.1  christos                                               return 650;
    800  1.1  christos                                             }
    801  1.1  christos                                           else
    802  1.1  christos                                             {
    803  1.1  christos                                               /* 33222222222211111111110000000000
    804  1.1  christos                                                  10987654321098765432109876543210
    805  1.1  christos                                                  xxxxxxxxxx1xxxxxxxxxxx1000011110
    806  1.1  christos                                                  ldrh.  */
    807  1.1  christos                                               return 655;
    808  1.1  christos                                             }
    809  1.1  christos                                         }
    810  1.1  christos                                       else
    811  1.1  christos                                         {
    812  1.1  christos                                           /* 33222222222211111111110000000000
    813  1.1  christos                                              10987654321098765432109876543210
    814  1.1  christos                                              xxxxxxxxxx1xxxxxxxxxxx10000111x1
    815  1.1  christos                                              ldr.  */
    816  1.1  christos                                           return 658;
    817  1.1  christos                                         }
    818  1.1  christos                                     }
    819  1.1  christos                                 }
    820  1.1  christos                               else
    821  1.1  christos                                 {
    822  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
    823  1.1  christos                                     {
    824  1.1  christos                                       if (((word >> 31) & 0x1) == 0)
    825  1.1  christos                                         {
    826  1.1  christos                                           /* 33222222222211111111110000000000
    827  1.1  christos                                              10987654321098765432109876543210
    828  1.1  christos                                              xxxxxxxxxx1xxxxxxxxxxxx100011100
    829  1.1  christos                                              ldrsb.  */
    830  1.1  christos                                           return 651;
    831  1.1  christos                                         }
    832  1.1  christos                                       else
    833  1.1  christos                                         {
    834  1.1  christos                                           /* 33222222222211111111110000000000
    835  1.1  christos                                              10987654321098765432109876543210
    836  1.1  christos                                              xxxxxxxxxx1xxxxxxxxxxxx100011101
    837  1.1  christos                                              ldrsw.  */
    838  1.1  christos                                           return 659;
    839  1.1  christos                                         }
    840  1.1  christos                                     }
    841  1.1  christos                                   else
    842  1.1  christos                                     {
    843  1.1  christos                                       /* 33222222222211111111110000000000
    844  1.1  christos                                          10987654321098765432109876543210
    845  1.1  christos                                          xxxxxxxxxx1xxxxxxxxxxxx10001111x
    846  1.1  christos                                          ldrsh.  */
    847  1.1  christos                                       return 656;
    848  1.1  christos                                     }
    849  1.1  christos                                 }
    850  1.1  christos                             }
    851  1.1  christos                         }
    852  1.1  christos                     }
    853  1.1  christos                   else
    854  1.1  christos                     {
    855  1.1  christos                       if (((word >> 23) & 0x1) == 0)
    856  1.1  christos                         {
    857  1.1  christos                           if (((word >> 22) & 0x1) == 0)
    858  1.1  christos                             {
    859  1.1  christos                               if (((word >> 31) & 0x1) == 0)
    860  1.1  christos                                 {
    861  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
    862  1.1  christos                                     {
    863  1.1  christos                                       /* 33222222222211111111110000000000
    864  1.1  christos                                          10987654321098765432109876543210
    865  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx0010011x00
    866  1.1  christos                                          strb.  */
    867  1.1  christos                                       return 660;
    868  1.1  christos                                     }
    869  1.1  christos                                   else
    870  1.1  christos                                     {
    871  1.1  christos                                       /* 33222222222211111111110000000000
    872  1.1  christos                                          10987654321098765432109876543210
    873  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx0010011x10
    874  1.1  christos                                          strh.  */
    875  1.1  christos                                       return 665;
    876  1.1  christos                                     }
    877  1.1  christos                                 }
    878  1.1  christos                               else
    879  1.1  christos                                 {
    880  1.1  christos                                   /* 33222222222211111111110000000000
    881  1.1  christos                                      10987654321098765432109876543210
    882  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx0010011xx1
    883  1.1  christos                                      str.  */
    884  1.1  christos                                   return 668;
    885  1.1  christos                                 }
    886  1.1  christos                             }
    887  1.1  christos                           else
    888  1.1  christos                             {
    889  1.1  christos                               if (((word >> 31) & 0x1) == 0)
    890  1.1  christos                                 {
    891  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
    892  1.1  christos                                     {
    893  1.1  christos                                       /* 33222222222211111111110000000000
    894  1.1  christos                                          10987654321098765432109876543210
    895  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx1010011x00
    896  1.1  christos                                          ldrb.  */
    897  1.1  christos                                       return 661;
    898  1.1  christos                                     }
    899  1.1  christos                                   else
    900  1.1  christos                                     {
    901  1.1  christos                                       /* 33222222222211111111110000000000
    902  1.1  christos                                          10987654321098765432109876543210
    903  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxxx1010011x10
    904  1.1  christos                                          ldrh.  */
    905  1.1  christos                                       return 666;
    906  1.1  christos                                     }
    907  1.1  christos                                 }
    908  1.1  christos                               else
    909  1.1  christos                                 {
    910  1.1  christos                                   /* 33222222222211111111110000000000
    911  1.1  christos                                      10987654321098765432109876543210
    912  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx1010011xx1
    913  1.1  christos                                      ldr.  */
    914  1.1  christos                                   return 669;
    915  1.1  christos                                 }
    916  1.1  christos                             }
    917  1.1  christos                         }
    918  1.1  christos                       else
    919  1.1  christos                         {
    920  1.1  christos                           if (((word >> 30) & 0x1) == 0)
    921  1.1  christos                             {
    922  1.1  christos                               if (((word >> 31) & 0x1) == 0)
    923  1.1  christos                                 {
    924  1.1  christos                                   /* 33222222222211111111110000000000
    925  1.1  christos                                      10987654321098765432109876543210
    926  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxxx110011x00
    927  1.1  christos                                      ldrsb.  */
    928  1.1  christos                                   return 662;
    929  1.1  christos                                 }
    930  1.1  christos                               else
    931  1.1  christos                                 {
    932  1.1  christos                                   /* 33222222222211111111110000000000
    933  1.1  christos                                      10987654321098765432109876543210
    934  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxxx110011x01
    935  1.1  christos                                      ldrsw.  */
    936  1.1  christos                                   return 670;
    937  1.1  christos                                 }
    938  1.1  christos                             }
    939  1.1  christos                           else
    940  1.1  christos                             {
    941  1.1  christos                               if (((word >> 31) & 0x1) == 0)
    942  1.1  christos                                 {
    943  1.1  christos                                   /* 33222222222211111111110000000000
    944  1.1  christos                                      10987654321098765432109876543210
    945  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxxx110011x10
    946  1.1  christos                                      ldrsh.  */
    947  1.1  christos                                   return 667;
    948  1.1  christos                                 }
    949  1.1  christos                               else
    950  1.1  christos                                 {
    951  1.1  christos                                   /* 33222222222211111111110000000000
    952  1.1  christos                                      10987654321098765432109876543210
    953  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxxx110011x11
    954  1.1  christos                                      prfm.  */
    955  1.1  christos                                   return 671;
    956  1.1  christos                                 }
    957  1.1  christos                             }
    958  1.1  christos                         }
    959  1.1  christos                     }
    960  1.1  christos                 }
    961  1.1  christos             }
    962  1.1  christos         }
    963  1.1  christos       else
    964  1.1  christos         {
    965  1.1  christos           if (((word >> 24) & 0x1) == 0)
    966  1.1  christos             {
    967  1.1  christos               if (((word >> 27) & 0x1) == 0)
    968  1.1  christos                 {
    969  1.1  christos                   if (((word >> 23) & 0x1) == 0)
    970  1.1  christos                     {
    971  1.1  christos                       if (((word >> 29) & 0x1) == 0)
    972  1.1  christos                         {
    973  1.1  christos                           if (((word >> 30) & 0x1) == 0)
    974  1.1  christos                             {
    975  1.1  christos                               /* 33222222222211111111110000000000
    976  1.1  christos                                  10987654321098765432109876543210
    977  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx00100x00x
    978  1.1  christos                                  and.  */
    979  1.1  christos                               return 757;
    980  1.1  christos                             }
    981  1.1  christos                           else
    982  1.1  christos                             {
    983  1.1  christos                               /* 33222222222211111111110000000000
    984  1.1  christos                                  10987654321098765432109876543210
    985  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx00100x01x
    986  1.1  christos                                  eor.  */
    987  1.1  christos                               return 761;
    988  1.1  christos                             }
    989  1.1  christos                         }
    990  1.1  christos                       else
    991  1.1  christos                         {
    992  1.1  christos                           if (((word >> 30) & 0x1) == 0)
    993  1.1  christos                             {
    994  1.1  christos                               /* 33222222222211111111110000000000
    995  1.1  christos                                  10987654321098765432109876543210
    996  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx00100x10x
    997  1.1  christos                                  orr.  */
    998  1.1  christos                               return 759;
    999  1.1  christos                             }
   1000  1.1  christos                           else
   1001  1.1  christos                             {
   1002  1.1  christos                               /* 33222222222211111111110000000000
   1003  1.1  christos                                  10987654321098765432109876543210
   1004  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx00100x11x
   1005  1.1  christos                                  ands.  */
   1006  1.1  christos                               return 762;
   1007  1.1  christos                             }
   1008  1.1  christos                         }
   1009  1.1  christos                     }
   1010  1.1  christos                   else
   1011  1.1  christos                     {
   1012  1.1  christos                       if (((word >> 29) & 0x1) == 0)
   1013  1.1  christos                         {
   1014  1.1  christos                           if (((word >> 30) & 0x1) == 0)
   1015  1.1  christos                             {
   1016  1.1  christos                               /* 33222222222211111111110000000000
   1017  1.1  christos                                  10987654321098765432109876543210
   1018  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx10100x00x
   1019  1.1  christos                                  movn.  */
   1020  1.1  christos                               return 776;
   1021  1.1  christos                             }
   1022  1.1  christos                           else
   1023  1.1  christos                             {
   1024  1.1  christos                               /* 33222222222211111111110000000000
   1025  1.1  christos                                  10987654321098765432109876543210
   1026  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx10100x01x
   1027  1.1  christos                                  movz.  */
   1028  1.1  christos                               return 778;
   1029  1.1  christos                             }
   1030  1.1  christos                         }
   1031  1.1  christos                       else
   1032  1.1  christos                         {
   1033  1.1  christos                           /* 33222222222211111111110000000000
   1034  1.1  christos                              10987654321098765432109876543210
   1035  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxx10100x1xx
   1036  1.1  christos                              movk.  */
   1037  1.1  christos                           return 780;
   1038  1.1  christos                         }
   1039  1.1  christos                     }
   1040  1.1  christos                 }
   1041  1.1  christos               else
   1042  1.1  christos                 {
   1043  1.1  christos                   if (((word >> 21) & 0x1) == 0)
   1044  1.1  christos                     {
   1045  1.1  christos                       if (((word >> 28) & 0x1) == 0)
   1046  1.1  christos                         {
   1047  1.1  christos                           if (((word >> 29) & 0x1) == 0)
   1048  1.1  christos                             {
   1049  1.1  christos                               if (((word >> 30) & 0x1) == 0)
   1050  1.1  christos                                 {
   1051  1.1  christos                                   /* 33222222222211111111110000000000
   1052  1.1  christos                                      10987654321098765432109876543210
   1053  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx0101000x
   1054  1.1  christos                                      and.  */
   1055  1.1  christos                                   return 764;
   1056  1.1  christos                                 }
   1057  1.1  christos                               else
   1058  1.1  christos                                 {
   1059  1.1  christos                                   /* 33222222222211111111110000000000
   1060  1.1  christos                                      10987654321098765432109876543210
   1061  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx0101001x
   1062  1.1  christos                                      eor.  */
   1063  1.1  christos                                   return 771;
   1064  1.1  christos                                 }
   1065  1.1  christos                             }
   1066  1.1  christos                           else
   1067  1.1  christos                             {
   1068  1.1  christos                               if (((word >> 30) & 0x1) == 0)
   1069  1.1  christos                                 {
   1070  1.1  christos                                   /* 33222222222211111111110000000000
   1071  1.1  christos                                      10987654321098765432109876543210
   1072  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx0101010x
   1073  1.1  christos                                      orr.  */
   1074  1.1  christos                                   return 766;
   1075  1.1  christos                                 }
   1076  1.1  christos                               else
   1077  1.1  christos                                 {
   1078  1.1  christos                                   /* 33222222222211111111110000000000
   1079  1.1  christos                                      10987654321098765432109876543210
   1080  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx0101011x
   1081  1.1  christos                                      ands.  */
   1082  1.1  christos                                   return 773;
   1083  1.1  christos                                 }
   1084  1.1  christos                             }
   1085  1.1  christos                         }
   1086  1.1  christos                       else
   1087  1.1  christos                         {
   1088  1.1  christos                           if (((word >> 10) & 0x1) == 0)
   1089  1.1  christos                             {
   1090  1.1  christos                               if (((word >> 11) & 0x1) == 0)
   1091  1.1  christos                                 {
   1092  1.1  christos                                   if (((word >> 22) & 0x1) == 0)
   1093  1.1  christos                                     {
   1094  1.1  christos                                       if (((word >> 23) & 0x1) == 0)
   1095  1.1  christos                                         {
   1096  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   1097  1.1  christos                                             {
   1098  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   1099  1.1  christos                                                 {
   1100  1.1  christos                                                   /* 33222222222211111111110000000000
   1101  1.1  christos                                                      10987654321098765432109876543210
   1102  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxx0000101100x
   1103  1.1  christos                                                      adc.  */
   1104  1.1  christos                                                   return 0;
   1105  1.1  christos                                                 }
   1106  1.1  christos                                               else
   1107  1.1  christos                                                 {
   1108  1.1  christos                                                   /* 33222222222211111111110000000000
   1109  1.1  christos                                                      10987654321098765432109876543210
   1110  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxx0000101101x
   1111  1.1  christos                                                      sbc.  */
   1112  1.1  christos                                                   return 2;
   1113  1.1  christos                                                 }
   1114  1.1  christos                                             }
   1115  1.1  christos                                           else
   1116  1.1  christos                                             {
   1117  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   1118  1.1  christos                                                 {
   1119  1.1  christos                                                   /* 33222222222211111111110000000000
   1120  1.1  christos                                                      10987654321098765432109876543210
   1121  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxx0000101110x
   1122  1.1  christos                                                      adcs.  */
   1123  1.1  christos                                                   return 1;
   1124  1.1  christos                                                 }
   1125  1.1  christos                                               else
   1126  1.1  christos                                                 {
   1127  1.1  christos                                                   /* 33222222222211111111110000000000
   1128  1.1  christos                                                      10987654321098765432109876543210
   1129  1.1  christos                                                      xxxxxxxxxx00xxxxxxxxx0000101111x
   1130  1.1  christos                                                      sbcs.  */
   1131  1.1  christos                                                   return 4;
   1132  1.1  christos                                                 }
   1133  1.1  christos                                             }
   1134  1.1  christos                                         }
   1135  1.1  christos                                       else
   1136  1.1  christos                                         {
   1137  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   1138  1.1  christos                                             {
   1139  1.1  christos                                               /* 33222222222211111111110000000000
   1140  1.1  christos                                                  10987654321098765432109876543210
   1141  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxx00101011x0x
   1142  1.1  christos                                                  csel.  */
   1143  1.1  christos                                               return 524;
   1144  1.1  christos                                             }
   1145  1.1  christos                                           else
   1146  1.1  christos                                             {
   1147  1.1  christos                                               /* 33222222222211111111110000000000
   1148  1.1  christos                                                  10987654321098765432109876543210
   1149  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxx00101011x1x
   1150  1.1  christos                                                  csinv.  */
   1151  1.1  christos                                               return 528;
   1152  1.1  christos                                             }
   1153  1.1  christos                                         }
   1154  1.1  christos                                     }
   1155  1.1  christos                                   else
   1156  1.1  christos                                     {
   1157  1.1  christos                                       if (((word >> 23) & 0x1) == 0)
   1158  1.1  christos                                         {
   1159  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   1160  1.1  christos                                             {
   1161  1.1  christos                                               /* 33222222222211111111110000000000
   1162  1.1  christos                                                  10987654321098765432109876543210
   1163  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxx01001011x0x
   1164  1.1  christos                                                  ccmn.  */
   1165  1.1  christos                                               return 522;
   1166  1.1  christos                                             }
   1167  1.1  christos                                           else
   1168  1.1  christos                                             {
   1169  1.1  christos                                               /* 33222222222211111111110000000000
   1170  1.1  christos                                                  10987654321098765432109876543210
   1171  1.1  christos                                                  xxxxxxxxxx00xxxxxxxxx01001011x1x
   1172  1.1  christos                                                  ccmp.  */
   1173  1.1  christos                                               return 523;
   1174  1.1  christos                                             }
   1175  1.1  christos                                         }
   1176  1.1  christos                                       else
   1177  1.1  christos                                         {
   1178  1.1  christos                                           if (((word >> 12) & 0x1) == 0)
   1179  1.1  christos                                             {
   1180  1.1  christos                                               if (((word >> 13) & 0x1) == 0)
   1181  1.1  christos                                                 {
   1182  1.1  christos                                                   if (((word >> 14) & 0x1) == 0)
   1183  1.1  christos                                                     {
   1184  1.1  christos                                                       /* 33222222222211111111110000000000
   1185  1.1  christos                                                          10987654321098765432109876543210
   1186  1.1  christos                                                          xxxxxxxxxx00000xxxxxx01101011xxx
   1187  1.1  christos                                                          rbit.  */
   1188  1.1  christos                                                       return 547;
   1189  1.1  christos                                                     }
   1190  1.1  christos                                                   else
   1191  1.1  christos                                                     {
   1192  1.1  christos                                                       /* 33222222222211111111110000000000
   1193  1.1  christos                                                          10987654321098765432109876543210
   1194  1.1  christos                                                          xxxxxxxxxx00001xxxxxx01101011xxx
   1195  1.1  christos                                                          crc32b.  */
   1196  1.1  christos                                                       return 564;
   1197  1.1  christos                                                     }
   1198  1.1  christos                                                 }
   1199  1.1  christos                                               else
   1200  1.1  christos                                                 {
   1201  1.1  christos                                                   /* 33222222222211111111110000000000
   1202  1.1  christos                                                      10987654321098765432109876543210
   1203  1.1  christos                                                      xxxxxxxxxx0001xxxxxxx01101011xxx
   1204  1.1  christos                                                      lslv.  */
   1205  1.1  christos                                                   return 556;
   1206  1.1  christos                                                 }
   1207  1.1  christos                                             }
   1208  1.1  christos                                           else
   1209  1.1  christos                                             {
   1210  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   1211  1.1  christos                                                 {
   1212  1.1  christos                                                   /* 33222222222211111111110000000000
   1213  1.1  christos                                                      10987654321098765432109876543210
   1214  1.1  christos                                                      xxxxxxxxxx001x0xxxxxx01101011xxx
   1215  1.1  christos                                                      clz.  */
   1216  1.1  christos                                                   return 551;
   1217  1.1  christos                                                 }
   1218  1.1  christos                                               else
   1219  1.1  christos                                                 {
   1220  1.1  christos                                                   /* 33222222222211111111110000000000
   1221  1.1  christos                                                      10987654321098765432109876543210
   1222  1.1  christos                                                      xxxxxxxxxx001x1xxxxxx01101011xxx
   1223  1.1  christos                                                      crc32cb.  */
   1224  1.1  christos                                                   return 568;
   1225  1.1  christos                                                 }
   1226  1.1  christos                                             }
   1227  1.1  christos                                         }
   1228  1.1  christos                                     }
   1229  1.1  christos                                 }
   1230  1.1  christos                               else
   1231  1.1  christos                                 {
   1232  1.1  christos                                   if (((word >> 23) & 0x1) == 0)
   1233  1.1  christos                                     {
   1234  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
   1235  1.1  christos                                         {
   1236  1.1  christos                                           /* 33222222222211111111110000000000
   1237  1.1  christos                                              10987654321098765432109876543210
   1238  1.1  christos                                              xxxxxxxxxx01xxxxxxxxx0x001011x0x
   1239  1.1  christos                                              ccmn.  */
   1240  1.1  christos                                           return 520;
   1241  1.1  christos                                         }
   1242  1.1  christos                                       else
   1243  1.1  christos                                         {
   1244  1.1  christos                                           /* 33222222222211111111110000000000
   1245  1.1  christos                                              10987654321098765432109876543210
   1246  1.1  christos                                              xxxxxxxxxx01xxxxxxxxx0x001011x1x
   1247  1.1  christos                                              ccmp.  */
   1248  1.1  christos                                           return 521;
   1249  1.1  christos                                         }
   1250  1.1  christos                                     }
   1251  1.1  christos                                   else
   1252  1.1  christos                                     {
   1253  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   1254  1.1  christos                                         {
   1255  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   1256  1.1  christos                                             {
   1257  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   1258  1.1  christos                                                 {
   1259  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   1260  1.1  christos                                                     {
   1261  1.1  christos                                                       /* 33222222222211111111110000000000
   1262  1.1  christos                                                          10987654321098765432109876543210
   1263  1.1  christos                                                          xxxxxxxxxx01000xxxxxx0x101011x0x
   1264  1.1  christos                                                          udiv.  */
   1265  1.1  christos                                                       return 554;
   1266  1.1  christos                                                     }
   1267  1.1  christos                                                   else
   1268  1.1  christos                                                     {
   1269  1.1  christos                                                       if (((word >> 31) & 0x1) == 0)
   1270  1.1  christos                                                         {
   1271  1.1  christos                                                           /* 33222222222211111111110000000000
   1272  1.1  christos                                                              10987654321098765432109876543210
   1273  1.1  christos                                                              xxxxxxxxxx01000xxxxxx0x101011x10
   1274  1.1  christos                                                              rev.  */
   1275  1.1  christos                                                           return 549;
   1276  1.1  christos                                                         }
   1277  1.1  christos                                                       else
   1278  1.1  christos                                                         {
   1279  1.1  christos                                                           /* 33222222222211111111110000000000
   1280  1.1  christos                                                              10987654321098765432109876543210
   1281  1.1  christos                                                              xxxxxxxxxx01000xxxxxx0x101011x11
   1282  1.1  christos                                                              rev32.  */
   1283  1.1  christos                                                           return 553;
   1284  1.1  christos                                                         }
   1285  1.1  christos                                                     }
   1286  1.1  christos                                                 }
   1287  1.1  christos                                               else
   1288  1.1  christos                                                 {
   1289  1.1  christos                                                   /* 33222222222211111111110000000000
   1290  1.1  christos                                                      10987654321098765432109876543210
   1291  1.1  christos                                                      xxxxxxxxxx01001xxxxxx0x101011xxx
   1292  1.1  christos                                                      crc32w.  */
   1293  1.1  christos                                                   return 566;
   1294  1.1  christos                                                 }
   1295  1.1  christos                                             }
   1296  1.1  christos                                           else
   1297  1.1  christos                                             {
   1298  1.1  christos                                               /* 33222222222211111111110000000000
   1299  1.1  christos                                                  10987654321098765432109876543210
   1300  1.1  christos                                                  xxxxxxxxxx0101xxxxxxx0x101011xxx
   1301  1.1  christos                                                  asrv.  */
   1302  1.1  christos                                               return 560;
   1303  1.1  christos                                             }
   1304  1.1  christos                                         }
   1305  1.1  christos                                       else
   1306  1.1  christos                                         {
   1307  1.1  christos                                           /* 33222222222211111111110000000000
   1308  1.1  christos                                              10987654321098765432109876543210
   1309  1.1  christos                                              xxxxxxxxxx011xxxxxxxx0x101011xxx
   1310  1.1  christos                                              crc32cw.  */
   1311  1.1  christos                                           return 570;
   1312  1.1  christos                                         }
   1313  1.1  christos                                     }
   1314  1.1  christos                                 }
   1315  1.1  christos                             }
   1316  1.1  christos                           else
   1317  1.1  christos                             {
   1318  1.1  christos                               if (((word >> 11) & 0x1) == 0)
   1319  1.1  christos                                 {
   1320  1.1  christos                                   if (((word >> 22) & 0x1) == 0)
   1321  1.1  christos                                     {
   1322  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
   1323  1.1  christos                                         {
   1324  1.1  christos                                           /* 33222222222211111111110000000000
   1325  1.1  christos                                              10987654321098765432109876543210
   1326  1.1  christos                                              xxxxxxxxxx10xxxxxxxxx00x01011x0x
   1327  1.1  christos                                              csinc.  */
   1328  1.1  christos                                           return 525;
   1329  1.1  christos                                         }
   1330  1.1  christos                                       else
   1331  1.1  christos                                         {
   1332  1.1  christos                                           /* 33222222222211111111110000000000
   1333  1.1  christos                                              10987654321098765432109876543210
   1334  1.1  christos                                              xxxxxxxxxx10xxxxxxxxx00x01011x1x
   1335  1.1  christos                                              csneg.  */
   1336  1.1  christos                                           return 531;
   1337  1.1  christos                                         }
   1338  1.1  christos                                     }
   1339  1.1  christos                                   else
   1340  1.1  christos                                     {
   1341  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   1342  1.1  christos                                         {
   1343  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   1344  1.1  christos                                             {
   1345  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   1346  1.1  christos                                                 {
   1347  1.1  christos                                                   /* 33222222222211111111110000000000
   1348  1.1  christos                                                      10987654321098765432109876543210
   1349  1.1  christos                                                      xxxxxxxxxx10000xxxxxx01x01011xxx
   1350  1.1  christos                                                      rev16.  */
   1351  1.1  christos                                                   return 548;
   1352  1.1  christos                                                 }
   1353  1.1  christos                                               else
   1354  1.1  christos                                                 {
   1355  1.1  christos                                                   /* 33222222222211111111110000000000
   1356  1.1  christos                                                      10987654321098765432109876543210
   1357  1.1  christos                                                      xxxxxxxxxx10001xxxxxx01x01011xxx
   1358  1.1  christos                                                      crc32h.  */
   1359  1.1  christos                                                   return 565;
   1360  1.1  christos                                                 }
   1361  1.1  christos                                             }
   1362  1.1  christos                                           else
   1363  1.1  christos                                             {
   1364  1.1  christos                                               /* 33222222222211111111110000000000
   1365  1.1  christos                                                  10987654321098765432109876543210
   1366  1.1  christos                                                  xxxxxxxxxx1001xxxxxxx01x01011xxx
   1367  1.1  christos                                                  lsrv.  */
   1368  1.1  christos                                               return 558;
   1369  1.1  christos                                             }
   1370  1.1  christos                                         }
   1371  1.1  christos                                       else
   1372  1.1  christos                                         {
   1373  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   1374  1.1  christos                                             {
   1375  1.1  christos                                               /* 33222222222211111111110000000000
   1376  1.1  christos                                                  10987654321098765432109876543210
   1377  1.1  christos                                                  xxxxxxxxxx101x0xxxxxx01x01011xxx
   1378  1.1  christos                                                  cls.  */
   1379  1.1  christos                                               return 552;
   1380  1.1  christos                                             }
   1381  1.1  christos                                           else
   1382  1.1  christos                                             {
   1383  1.1  christos                                               /* 33222222222211111111110000000000
   1384  1.1  christos                                                  10987654321098765432109876543210
   1385  1.1  christos                                                  xxxxxxxxxx101x1xxxxxx01x01011xxx
   1386  1.1  christos                                                  crc32ch.  */
   1387  1.1  christos                                               return 569;
   1388  1.1  christos                                             }
   1389  1.1  christos                                         }
   1390  1.1  christos                                     }
   1391  1.1  christos                                 }
   1392  1.1  christos                               else
   1393  1.1  christos                                 {
   1394  1.1  christos                                   if (((word >> 12) & 0x1) == 0)
   1395  1.1  christos                                     {
   1396  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   1397  1.1  christos                                         {
   1398  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   1399  1.1  christos                                             {
   1400  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   1401  1.1  christos                                                 {
   1402  1.1  christos                                                   /* 33222222222211111111110000000000
   1403  1.1  christos                                                      10987654321098765432109876543210
   1404  1.1  christos                                                      xxxxxxxxxx11000xxxxxx0xx01011x0x
   1405  1.1  christos                                                      sdiv.  */
   1406  1.1  christos                                                   return 555;
   1407  1.1  christos                                                 }
   1408  1.1  christos                                               else
   1409  1.1  christos                                                 {
   1410  1.1  christos                                                   /* 33222222222211111111110000000000
   1411  1.1  christos                                                      10987654321098765432109876543210
   1412  1.1  christos                                                      xxxxxxxxxx11000xxxxxx0xx01011x1x
   1413  1.1  christos                                                      rev.  */
   1414  1.1  christos                                                   return 550;
   1415  1.1  christos                                                 }
   1416  1.1  christos                                             }
   1417  1.1  christos                                           else
   1418  1.1  christos                                             {
   1419  1.1  christos                                               /* 33222222222211111111110000000000
   1420  1.1  christos                                                  10987654321098765432109876543210
   1421  1.1  christos                                                  xxxxxxxxxx11001xxxxxx0xx01011xxx
   1422  1.1  christos                                                  crc32x.  */
   1423  1.1  christos                                               return 567;
   1424  1.1  christos                                             }
   1425  1.1  christos                                         }
   1426  1.1  christos                                       else
   1427  1.1  christos                                         {
   1428  1.1  christos                                           /* 33222222222211111111110000000000
   1429  1.1  christos                                              10987654321098765432109876543210
   1430  1.1  christos                                              xxxxxxxxxx1101xxxxxxx0xx01011xxx
   1431  1.1  christos                                              rorv.  */
   1432  1.1  christos                                           return 562;
   1433  1.1  christos                                         }
   1434  1.1  christos                                     }
   1435  1.1  christos                                   else
   1436  1.1  christos                                     {
   1437  1.1  christos                                       /* 33222222222211111111110000000000
   1438  1.1  christos                                          10987654321098765432109876543210
   1439  1.1  christos                                          xxxxxxxxxx111xxxxxxxx0xx01011xxx
   1440  1.1  christos                                          crc32cx.  */
   1441  1.1  christos                                       return 571;
   1442  1.1  christos                                     }
   1443  1.1  christos                                 }
   1444  1.1  christos                             }
   1445  1.1  christos                         }
   1446  1.1  christos                     }
   1447  1.1  christos                   else
   1448  1.1  christos                     {
   1449  1.1  christos                       if (((word >> 29) & 0x1) == 0)
   1450  1.1  christos                         {
   1451  1.1  christos                           if (((word >> 30) & 0x1) == 0)
   1452  1.1  christos                             {
   1453  1.1  christos                               /* 33222222222211111111110000000000
   1454  1.1  christos                                  10987654321098765432109876543210
   1455  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxx1xx0101x00x
   1456  1.1  christos                                  bic.  */
   1457  1.1  christos                               return 765;
   1458  1.1  christos                             }
   1459  1.1  christos                           else
   1460  1.1  christos                             {
   1461  1.1  christos                               /* 33222222222211111111110000000000
   1462  1.1  christos                                  10987654321098765432109876543210
   1463  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxx1xx0101x01x
   1464  1.1  christos                                  eon.  */
   1465  1.1  christos                               return 772;
   1466  1.1  christos                             }
   1467  1.1  christos                         }
   1468  1.1  christos                       else
   1469  1.1  christos                         {
   1470  1.1  christos                           if (((word >> 30) & 0x1) == 0)
   1471  1.1  christos                             {
   1472  1.1  christos                               /* 33222222222211111111110000000000
   1473  1.1  christos                                  10987654321098765432109876543210
   1474  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxx1xx0101x10x
   1475  1.1  christos                                  orn.  */
   1476  1.1  christos                               return 769;
   1477  1.1  christos                             }
   1478  1.1  christos                           else
   1479  1.1  christos                             {
   1480  1.1  christos                               /* 33222222222211111111110000000000
   1481  1.1  christos                                  10987654321098765432109876543210
   1482  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxx1xx0101x11x
   1483  1.1  christos                                  bics.  */
   1484  1.1  christos                               return 775;
   1485  1.1  christos                             }
   1486  1.1  christos                         }
   1487  1.1  christos                     }
   1488  1.1  christos                 }
   1489  1.1  christos             }
   1490  1.1  christos           else
   1491  1.1  christos             {
   1492  1.1  christos               if (((word >> 27) & 0x1) == 0)
   1493  1.1  christos                 {
   1494  1.1  christos                   if (((word >> 23) & 0x1) == 0)
   1495  1.1  christos                     {
   1496  1.1  christos                       if (((word >> 29) & 0x1) == 0)
   1497  1.1  christos                         {
   1498  1.1  christos                           if (((word >> 30) & 0x1) == 0)
   1499  1.1  christos                             {
   1500  1.1  christos                               /* 33222222222211111111110000000000
   1501  1.1  christos                                  10987654321098765432109876543210
   1502  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx01100x00x
   1503  1.1  christos                                  sbfm.  */
   1504  1.1  christos                               return 493;
   1505  1.1  christos                             }
   1506  1.1  christos                           else
   1507  1.1  christos                             {
   1508  1.1  christos                               /* 33222222222211111111110000000000
   1509  1.1  christos                                  10987654321098765432109876543210
   1510  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxx01100x01x
   1511  1.1  christos                                  ubfm.  */
   1512  1.1  christos                               return 503;
   1513  1.1  christos                             }
   1514  1.1  christos                         }
   1515  1.1  christos                       else
   1516  1.1  christos                         {
   1517  1.1  christos                           /* 33222222222211111111110000000000
   1518  1.1  christos                              10987654321098765432109876543210
   1519  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxx01100x1xx
   1520  1.1  christos                              bfm.  */
   1521  1.1  christos                           return 500;
   1522  1.1  christos                         }
   1523  1.1  christos                     }
   1524  1.1  christos                   else
   1525  1.1  christos                     {
   1526  1.1  christos                       /* 33222222222211111111110000000000
   1527  1.1  christos                          10987654321098765432109876543210
   1528  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxx11100xxxx
   1529  1.1  christos                          extr.  */
   1530  1.1  christos                       return 594;
   1531  1.1  christos                     }
   1532  1.1  christos                 }
   1533  1.1  christos               else
   1534  1.1  christos                 {
   1535  1.1  christos                   if (((word >> 21) & 0x1) == 0)
   1536  1.1  christos                     {
   1537  1.1  christos                       if (((word >> 28) & 0x1) == 0)
   1538  1.1  christos                         {
   1539  1.1  christos                           if (((word >> 29) & 0x1) == 0)
   1540  1.1  christos                             {
   1541  1.1  christos                               if (((word >> 30) & 0x1) == 0)
   1542  1.1  christos                                 {
   1543  1.1  christos                                   /* 33222222222211111111110000000000
   1544  1.1  christos                                      10987654321098765432109876543210
   1545  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx1101000x
   1546  1.1  christos                                      add.  */
   1547  1.1  christos                                   return 19;
   1548  1.1  christos                                 }
   1549  1.1  christos                               else
   1550  1.1  christos                                 {
   1551  1.1  christos                                   /* 33222222222211111111110000000000
   1552  1.1  christos                                      10987654321098765432109876543210
   1553  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx1101001x
   1554  1.1  christos                                      sub.  */
   1555  1.1  christos                                   return 22;
   1556  1.1  christos                                 }
   1557  1.1  christos                             }
   1558  1.1  christos                           else
   1559  1.1  christos                             {
   1560  1.1  christos                               if (((word >> 30) & 0x1) == 0)
   1561  1.1  christos                                 {
   1562  1.1  christos                                   /* 33222222222211111111110000000000
   1563  1.1  christos                                      10987654321098765432109876543210
   1564  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx1101010x
   1565  1.1  christos                                      adds.  */
   1566  1.1  christos                                   return 20;
   1567  1.1  christos                                 }
   1568  1.1  christos                               else
   1569  1.1  christos                                 {
   1570  1.1  christos                                   /* 33222222222211111111110000000000
   1571  1.1  christos                                      10987654321098765432109876543210
   1572  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx0xx1101011x
   1573  1.1  christos                                      subs.  */
   1574  1.1  christos                                   return 24;
   1575  1.1  christos                                 }
   1576  1.1  christos                             }
   1577  1.1  christos                         }
   1578  1.1  christos                       else
   1579  1.1  christos                         {
   1580  1.1  christos                           if (((word >> 15) & 0x1) == 0)
   1581  1.1  christos                             {
   1582  1.1  christos                               if (((word >> 22) & 0x1) == 0)
   1583  1.1  christos                                 {
   1584  1.1  christos                                   /* 33222222222211111111110000000000
   1585  1.1  christos                                      10987654321098765432109876543210
   1586  1.1  christos                                      xxxxxxxxxxxxxxx0xxxxx00x11011xxx
   1587  1.1  christos                                      madd.  */
   1588  1.1  christos                                   return 572;
   1589  1.1  christos                                 }
   1590  1.1  christos                               else
   1591  1.1  christos                                 {
   1592  1.1  christos                                   if (((word >> 23) & 0x1) == 0)
   1593  1.1  christos                                     {
   1594  1.1  christos                                       /* 33222222222211111111110000000000
   1595  1.1  christos                                          10987654321098765432109876543210
   1596  1.1  christos                                          xxxxxxxxxxxxxxx0xxxxx01011011xxx
   1597  1.1  christos                                          smulh.  */
   1598  1.1  christos                                       return 580;
   1599  1.1  christos                                     }
   1600  1.1  christos                                   else
   1601  1.1  christos                                     {
   1602  1.1  christos                                       /* 33222222222211111111110000000000
   1603  1.1  christos                                          10987654321098765432109876543210
   1604  1.1  christos                                          xxxxxxxxxxxxxxx0xxxxx01111011xxx
   1605  1.1  christos                                          umulh.  */
   1606  1.1  christos                                       return 585;
   1607  1.1  christos                                     }
   1608  1.1  christos                                 }
   1609  1.1  christos                             }
   1610  1.1  christos                           else
   1611  1.1  christos                             {
   1612  1.1  christos                               /* 33222222222211111111110000000000
   1613  1.1  christos                                  10987654321098765432109876543210
   1614  1.1  christos                                  xxxxxxxxxxxxxxx1xxxxx0xx11011xxx
   1615  1.1  christos                                  msub.  */
   1616  1.1  christos                               return 574;
   1617  1.1  christos                             }
   1618  1.1  christos                         }
   1619  1.1  christos                     }
   1620  1.1  christos                   else
   1621  1.1  christos                     {
   1622  1.1  christos                       if (((word >> 23) & 0x1) == 0)
   1623  1.1  christos                         {
   1624  1.1  christos                           if (((word >> 28) & 0x1) == 0)
   1625  1.1  christos                             {
   1626  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   1627  1.1  christos                                 {
   1628  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
   1629  1.1  christos                                     {
   1630  1.1  christos                                       /* 33222222222211111111110000000000
   1631  1.1  christos                                          10987654321098765432109876543210
   1632  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx1x01101000x
   1633  1.1  christos                                          add.  */
   1634  1.1  christos                                       return 6;
   1635  1.1  christos                                     }
   1636  1.1  christos                                   else
   1637  1.1  christos                                     {
   1638  1.1  christos                                       /* 33222222222211111111110000000000
   1639  1.1  christos                                          10987654321098765432109876543210
   1640  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx1x01101001x
   1641  1.1  christos                                          sub.  */
   1642  1.1  christos                                       return 9;
   1643  1.1  christos                                     }
   1644  1.1  christos                                 }
   1645  1.1  christos                               else
   1646  1.1  christos                                 {
   1647  1.1  christos                                   if (((word >> 30) & 0x1) == 0)
   1648  1.1  christos                                     {
   1649  1.1  christos                                       /* 33222222222211111111110000000000
   1650  1.1  christos                                          10987654321098765432109876543210
   1651  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx1x01101010x
   1652  1.1  christos                                          adds.  */
   1653  1.1  christos                                       return 7;
   1654  1.1  christos                                     }
   1655  1.1  christos                                   else
   1656  1.1  christos                                     {
   1657  1.1  christos                                       /* 33222222222211111111110000000000
   1658  1.1  christos                                          10987654321098765432109876543210
   1659  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx1x01101011x
   1660  1.1  christos                                          subs.  */
   1661  1.1  christos                                       return 10;
   1662  1.1  christos                                     }
   1663  1.1  christos                                 }
   1664  1.1  christos                             }
   1665  1.1  christos                           else
   1666  1.1  christos                             {
   1667  1.1  christos                               if (((word >> 15) & 0x1) == 0)
   1668  1.1  christos                                 {
   1669  1.1  christos                                   /* 33222222222211111111110000000000
   1670  1.1  christos                                      10987654321098765432109876543210
   1671  1.1  christos                                      xxxxxxxxxxxxxxx0xxxxx1x011011xxx
   1672  1.1  christos                                      smaddl.  */
   1673  1.1  christos                                   return 576;
   1674  1.1  christos                                 }
   1675  1.1  christos                               else
   1676  1.1  christos                                 {
   1677  1.1  christos                                   /* 33222222222211111111110000000000
   1678  1.1  christos                                      10987654321098765432109876543210
   1679  1.1  christos                                      xxxxxxxxxxxxxxx1xxxxx1x011011xxx
   1680  1.1  christos                                      smsubl.  */
   1681  1.1  christos                                   return 578;
   1682  1.1  christos                                 }
   1683  1.1  christos                             }
   1684  1.1  christos                         }
   1685  1.1  christos                       else
   1686  1.1  christos                         {
   1687  1.1  christos                           if (((word >> 15) & 0x1) == 0)
   1688  1.1  christos                             {
   1689  1.1  christos                               /* 33222222222211111111110000000000
   1690  1.1  christos                                  10987654321098765432109876543210
   1691  1.1  christos                                  xxxxxxxxxxxxxxx0xxxxx1x11101xxxx
   1692  1.1  christos                                  umaddl.  */
   1693  1.1  christos                               return 581;
   1694  1.1  christos                             }
   1695  1.1  christos                           else
   1696  1.1  christos                             {
   1697  1.1  christos                               /* 33222222222211111111110000000000
   1698  1.1  christos                                  10987654321098765432109876543210
   1699  1.1  christos                                  xxxxxxxxxxxxxxx1xxxxx1x11101xxxx
   1700  1.1  christos                                  umsubl.  */
   1701  1.1  christos                               return 583;
   1702  1.1  christos                             }
   1703  1.1  christos                         }
   1704  1.1  christos                     }
   1705  1.1  christos                 }
   1706  1.1  christos             }
   1707  1.1  christos         }
   1708  1.1  christos     }
   1709  1.1  christos   else
   1710  1.1  christos     {
   1711  1.1  christos       if (((word >> 27) & 0x1) == 0)
   1712  1.1  christos         {
   1713  1.1  christos           if (((word >> 29) & 0x1) == 0)
   1714  1.1  christos             {
   1715  1.1  christos               if (((word >> 30) & 0x1) == 0)
   1716  1.1  christos                 {
   1717  1.1  christos                   if (((word >> 31) & 0x1) == 0)
   1718  1.1  christos                     {
   1719  1.1  christos                       /* 33222222222211111111110000000000
   1720  1.1  christos                          10987654321098765432109876543210
   1721  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxxxx10x000
   1722  1.1  christos                          b.  */
   1723  1.1  christos                       return 510;
   1724  1.1  christos                     }
   1725  1.1  christos                   else
   1726  1.1  christos                     {
   1727  1.1  christos                       /* 33222222222211111111110000000000
   1728  1.1  christos                          10987654321098765432109876543210
   1729  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxxxx10x001
   1730  1.1  christos                          bl.  */
   1731  1.1  christos                       return 511;
   1732  1.1  christos                     }
   1733  1.1  christos                 }
   1734  1.1  christos               else
   1735  1.1  christos                 {
   1736  1.1  christos                   if (((word >> 24) & 0x1) == 0)
   1737  1.1  christos                     {
   1738  1.1  christos                       if (((word >> 25) & 0x1) == 0)
   1739  1.1  christos                         {
   1740  1.1  christos                           if (((word >> 31) & 0x1) == 0)
   1741  1.1  christos                             {
   1742  1.1  christos                               /* 33222222222211111111110000000000
   1743  1.1  christos                                  10987654321098765432109876543210
   1744  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxxxx0010x010
   1745  1.1  christos                                  b.c.  */
   1746  1.1  christos                               return 519;
   1747  1.1  christos                             }
   1748  1.1  christos                           else
   1749  1.1  christos                             {
   1750  1.1  christos                               if (((word >> 0) & 0x1) == 0)
   1751  1.1  christos                                 {
   1752  1.1  christos                                   if (((word >> 1) & 0x1) == 0)
   1753  1.1  christos                                     {
   1754  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   1755  1.1  christos                                         {
   1756  1.1  christos                                           /* 33222222222211111111110000000000
   1757  1.1  christos                                              10987654321098765432109876543210
   1758  1.1  christos                                              00xxxxxxxxxxxxxxxxxxx0xx0010x011
   1759  1.1  christos                                              hlt.  */
   1760  1.1  christos                                           return 590;
   1761  1.1  christos                                         }
   1762  1.1  christos                                       else
   1763  1.1  christos                                         {
   1764  1.1  christos                                           /* 33222222222211111111110000000000
   1765  1.1  christos                                              10987654321098765432109876543210
   1766  1.1  christos                                              00xxxxxxxxxxxxxxxxxxx1xx0010x011
   1767  1.1  christos                                              brk.  */
   1768  1.1  christos                                           return 589;
   1769  1.1  christos                                         }
   1770  1.1  christos                                     }
   1771  1.1  christos                                   else
   1772  1.1  christos                                     {
   1773  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   1774  1.1  christos                                         {
   1775  1.1  christos                                           /* 33222222222211111111110000000000
   1776  1.1  christos                                              10987654321098765432109876543210
   1777  1.1  christos                                              01xxxxxxxxxxxxxxxxxxx0xx0010x011
   1778  1.1  christos                                              hvc.  */
   1779  1.1  christos                                           return 587;
   1780  1.1  christos                                         }
   1781  1.1  christos                                       else
   1782  1.1  christos                                         {
   1783  1.1  christos                                           /* 33222222222211111111110000000000
   1784  1.1  christos                                              10987654321098765432109876543210
   1785  1.1  christos                                              01xxxxxxxxxxxxxxxxxxx1xx0010x011
   1786  1.1  christos                                              dcps2.  */
   1787  1.1  christos                                           return 592;
   1788  1.1  christos                                         }
   1789  1.1  christos                                     }
   1790  1.1  christos                                 }
   1791  1.1  christos                               else
   1792  1.1  christos                                 {
   1793  1.1  christos                                   if (((word >> 1) & 0x1) == 0)
   1794  1.1  christos                                     {
   1795  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   1796  1.1  christos                                         {
   1797  1.1  christos                                           /* 33222222222211111111110000000000
   1798  1.1  christos                                              10987654321098765432109876543210
   1799  1.1  christos                                              10xxxxxxxxxxxxxxxxxxx0xx0010x011
   1800  1.1  christos                                              svc.  */
   1801  1.1  christos                                           return 586;
   1802  1.1  christos                                         }
   1803  1.1  christos                                       else
   1804  1.1  christos                                         {
   1805  1.1  christos                                           /* 33222222222211111111110000000000
   1806  1.1  christos                                              10987654321098765432109876543210
   1807  1.1  christos                                              10xxxxxxxxxxxxxxxxxxx1xx0010x011
   1808  1.1  christos                                              dcps1.  */
   1809  1.1  christos                                           return 591;
   1810  1.1  christos                                         }
   1811  1.1  christos                                     }
   1812  1.1  christos                                   else
   1813  1.1  christos                                     {
   1814  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   1815  1.1  christos                                         {
   1816  1.1  christos                                           /* 33222222222211111111110000000000
   1817  1.1  christos                                              10987654321098765432109876543210
   1818  1.1  christos                                              11xxxxxxxxxxxxxxxxxxx0xx0010x011
   1819  1.1  christos                                              smc.  */
   1820  1.1  christos                                           return 588;
   1821  1.1  christos                                         }
   1822  1.1  christos                                       else
   1823  1.1  christos                                         {
   1824  1.1  christos                                           /* 33222222222211111111110000000000
   1825  1.1  christos                                              10987654321098765432109876543210
   1826  1.1  christos                                              11xxxxxxxxxxxxxxxxxxx1xx0010x011
   1827  1.1  christos                                              dcps3.  */
   1828  1.1  christos                                           return 593;
   1829  1.1  christos                                         }
   1830  1.1  christos                                     }
   1831  1.1  christos                                 }
   1832  1.1  christos                             }
   1833  1.1  christos                         }
   1834  1.1  christos                       else
   1835  1.1  christos                         {
   1836  1.1  christos                           if (((word >> 21) & 0x1) == 0)
   1837  1.1  christos                             {
   1838  1.1  christos                               if (((word >> 22) & 0x1) == 0)
   1839  1.1  christos                                 {
   1840  1.1  christos                                   if (((word >> 23) & 0x1) == 0)
   1841  1.1  christos                                     {
   1842  1.1  christos                                       /* 33222222222211111111110000000000
   1843  1.1  christos                                          10987654321098765432109876543210
   1844  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx0000110x01x
   1845  1.1  christos                                          br.  */
   1846  1.1  christos                                       return 512;
   1847  1.1  christos                                     }
   1848  1.1  christos                                   else
   1849  1.1  christos                                     {
   1850  1.1  christos                                       /* 33222222222211111111110000000000
   1851  1.1  christos                                          10987654321098765432109876543210
   1852  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx0010110x01x
   1853  1.1  christos                                          eret.  */
   1854  1.1  christos                                       return 515;
   1855  1.1  christos                                     }
   1856  1.1  christos                                 }
   1857  1.1  christos                               else
   1858  1.1  christos                                 {
   1859  1.1  christos                                   /* 33222222222211111111110000000000
   1860  1.1  christos                                      10987654321098765432109876543210
   1861  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx01x0110x01x
   1862  1.1  christos                                      ret.  */
   1863  1.1  christos                                   return 514;
   1864  1.1  christos                                 }
   1865  1.1  christos                             }
   1866  1.1  christos                           else
   1867  1.1  christos                             {
   1868  1.1  christos                               if (((word >> 23) & 0x1) == 0)
   1869  1.1  christos                                 {
   1870  1.1  christos                                   /* 33222222222211111111110000000000
   1871  1.1  christos                                      10987654321098765432109876543210
   1872  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx1x00110x01x
   1873  1.1  christos                                      blr.  */
   1874  1.1  christos                                   return 513;
   1875  1.1  christos                                 }
   1876  1.1  christos                               else
   1877  1.1  christos                                 {
   1878  1.1  christos                                   /* 33222222222211111111110000000000
   1879  1.1  christos                                      10987654321098765432109876543210
   1880  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxx1x10110x01x
   1881  1.1  christos                                      drps.  */
   1882  1.1  christos                                   return 516;
   1883  1.1  christos                                 }
   1884  1.1  christos                             }
   1885  1.1  christos                         }
   1886  1.1  christos                     }
   1887  1.1  christos                   else
   1888  1.1  christos                     {
   1889  1.1  christos                       if (((word >> 20) & 0x1) == 0)
   1890  1.1  christos                         {
   1891  1.1  christos                           if (((word >> 19) & 0x1) == 0)
   1892  1.1  christos                             {
   1893  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   1894  1.1  christos                                 {
   1895  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   1896  1.1  christos                                     {
   1897  1.1  christos                                       /* 33222222222211111111110000000000
   1898  1.1  christos                                          10987654321098765432109876543210
   1899  1.1  christos                                          xxxxxxxxxxxx00xxxxx00xxx1x10x01x
   1900  1.1  christos                                          msr.  */
   1901  1.1  christos                                       return 783;
   1902  1.1  christos                                     }
   1903  1.1  christos                                   else
   1904  1.1  christos                                     {
   1905  1.1  christos                                       /* 33222222222211111111110000000000
   1906  1.1  christos                                          10987654321098765432109876543210
   1907  1.1  christos                                          xxxxxxxxxxxx01xxxxx00xxx1x10x01x
   1908  1.1  christos                                          hint.  */
   1909  1.1  christos                                       return 784;
   1910  1.1  christos                                     }
   1911  1.1  christos                                 }
   1912  1.1  christos                               else
   1913  1.1  christos                                 {
   1914  1.1  christos                                   if (((word >> 5) & 0x1) == 0)
   1915  1.1  christos                                     {
   1916  1.1  christos                                       if (((word >> 6) & 0x1) == 0)
   1917  1.1  christos                                         {
   1918  1.1  christos                                           /* 33222222222211111111110000000000
   1919  1.1  christos                                              10987654321098765432109876543210
   1920  1.1  christos                                              xxxxx00xxxxx1xxxxxx00xxx1x10x01x
   1921  1.1  christos                                              dsb.  */
   1922  1.1  christos                                           return 792;
   1923  1.1  christos                                         }
   1924  1.1  christos                                       else
   1925  1.1  christos                                         {
   1926  1.1  christos                                           if (((word >> 7) & 0x1) == 0)
   1927  1.1  christos                                             {
   1928  1.1  christos                                               /* 33222222222211111111110000000000
   1929  1.1  christos                                                  10987654321098765432109876543210
   1930  1.1  christos                                                  xxxxx010xxxx1xxxxxx00xxx1x10x01x
   1931  1.1  christos                                                  clrex.  */
   1932  1.1  christos                                               return 791;
   1933  1.1  christos                                             }
   1934  1.1  christos                                           else
   1935  1.1  christos                                             {
   1936  1.1  christos                                               /* 33222222222211111111110000000000
   1937  1.1  christos                                                  10987654321098765432109876543210
   1938  1.1  christos                                                  xxxxx011xxxx1xxxxxx00xxx1x10x01x
   1939  1.1  christos                                                  isb.  */
   1940  1.1  christos                                               return 794;
   1941  1.1  christos                                             }
   1942  1.1  christos                                         }
   1943  1.1  christos                                     }
   1944  1.1  christos                                   else
   1945  1.1  christos                                     {
   1946  1.1  christos                                       /* 33222222222211111111110000000000
   1947  1.1  christos                                          10987654321098765432109876543210
   1948  1.1  christos                                          xxxxx1xxxxxx1xxxxxx00xxx1x10x01x
   1949  1.1  christos                                          dmb.  */
   1950  1.1  christos                                       return 793;
   1951  1.1  christos                                     }
   1952  1.1  christos                                 }
   1953  1.1  christos                             }
   1954  1.1  christos                           else
   1955  1.1  christos                             {
   1956  1.1  christos                               if (((word >> 21) & 0x1) == 0)
   1957  1.1  christos                                 {
   1958  1.1  christos                                   /* 33222222222211111111110000000000
   1959  1.1  christos                                      10987654321098765432109876543210
   1960  1.1  christos                                      xxxxxxxxxxxxxxxxxxx100xx1x10x01x
   1961  1.1  christos                                      sys.  */
   1962  1.1  christos                                   return 795;
   1963  1.1  christos                                 }
   1964  1.1  christos                               else
   1965  1.1  christos                                 {
   1966  1.1  christos                                   /* 33222222222211111111110000000000
   1967  1.1  christos                                      10987654321098765432109876543210
   1968  1.1  christos                                      xxxxxxxxxxxxxxxxxxx101xx1x10x01x
   1969  1.1  christos                                      sysl.  */
   1970  1.1  christos                                   return 801;
   1971  1.1  christos                                 }
   1972  1.1  christos                             }
   1973  1.1  christos                         }
   1974  1.1  christos                       else
   1975  1.1  christos                         {
   1976  1.1  christos                           if (((word >> 21) & 0x1) == 0)
   1977  1.1  christos                             {
   1978  1.1  christos                               /* 33222222222211111111110000000000
   1979  1.1  christos                                  10987654321098765432109876543210
   1980  1.1  christos                                  xxxxxxxxxxxxxxxxxxxx10xx1x10x01x
   1981  1.1  christos                                  msr.  */
   1982  1.1  christos                               return 800;
   1983  1.1  christos                             }
   1984  1.1  christos                           else
   1985  1.1  christos                             {
   1986  1.1  christos                               /* 33222222222211111111110000000000
   1987  1.1  christos                                  10987654321098765432109876543210
   1988  1.1  christos                                  xxxxxxxxxxxxxxxxxxxx11xx1x10x01x
   1989  1.1  christos                                  mrs.  */
   1990  1.1  christos                               return 802;
   1991  1.1  christos                             }
   1992  1.1  christos                         }
   1993  1.1  christos                     }
   1994  1.1  christos                 }
   1995  1.1  christos             }
   1996  1.1  christos           else
   1997  1.1  christos             {
   1998  1.1  christos               if (((word >> 24) & 0x1) == 0)
   1999  1.1  christos                 {
   2000  1.1  christos                   if (((word >> 25) & 0x1) == 0)
   2001  1.1  christos                     {
   2002  1.1  christos                       /* 33222222222211111111110000000000
   2003  1.1  christos                          10987654321098765432109876543210
   2004  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxx0010x1xx
   2005  1.1  christos                          cbz.  */
   2006  1.1  christos                       return 517;
   2007  1.1  christos                     }
   2008  1.1  christos                   else
   2009  1.1  christos                     {
   2010  1.1  christos                       /* 33222222222211111111110000000000
   2011  1.1  christos                          10987654321098765432109876543210
   2012  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxx0110x1xx
   2013  1.1  christos                          tbz.  */
   2014  1.1  christos                       return 803;
   2015  1.1  christos                     }
   2016  1.1  christos                 }
   2017  1.1  christos               else
   2018  1.1  christos                 {
   2019  1.1  christos                   if (((word >> 25) & 0x1) == 0)
   2020  1.1  christos                     {
   2021  1.1  christos                       /* 33222222222211111111110000000000
   2022  1.1  christos                          10987654321098765432109876543210
   2023  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxx1010x1xx
   2024  1.1  christos                          cbnz.  */
   2025  1.1  christos                       return 518;
   2026  1.1  christos                     }
   2027  1.1  christos                   else
   2028  1.1  christos                     {
   2029  1.1  christos                       /* 33222222222211111111110000000000
   2030  1.1  christos                          10987654321098765432109876543210
   2031  1.1  christos                          xxxxxxxxxxxxxxxxxxxxxxxx1110x1xx
   2032  1.1  christos                          tbnz.  */
   2033  1.1  christos                       return 804;
   2034  1.1  christos                     }
   2035  1.1  christos                 }
   2036  1.1  christos             }
   2037  1.1  christos         }
   2038  1.1  christos       else
   2039  1.1  christos         {
   2040  1.1  christos           if (((word >> 25) & 0x1) == 0)
   2041  1.1  christos             {
   2042  1.1  christos               if (((word >> 28) & 0x1) == 0)
   2043  1.1  christos                 {
   2044  1.1  christos                   if (((word >> 22) & 0x1) == 0)
   2045  1.1  christos                     {
   2046  1.1  christos                       if (((word >> 23) & 0x1) == 0)
   2047  1.1  christos                         {
   2048  1.1  christos                           if (((word >> 24) & 0x1) == 0)
   2049  1.1  christos                             {
   2050  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   2051  1.1  christos                                 {
   2052  1.1  christos                                   /* 33222222222211111111110000000000
   2053  1.1  christos                                      10987654321098765432109876543210
   2054  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx00001100xx
   2055  1.1  christos                                      st4.  */
   2056  1.1  christos                                   return 355;
   2057  1.1  christos                                 }
   2058  1.1  christos                               else
   2059  1.1  christos                                 {
   2060  1.1  christos                                   /* 33222222222211111111110000000000
   2061  1.1  christos                                      10987654321098765432109876543210
   2062  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx00001101xx
   2063  1.1  christos                                      stnp.  */
   2064  1.1  christos                                   return 741;
   2065  1.1  christos                                 }
   2066  1.1  christos                             }
   2067  1.1  christos                           else
   2068  1.1  christos                             {
   2069  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   2070  1.1  christos                                 {
   2071  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   2072  1.1  christos                                     {
   2073  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   2074  1.1  christos                                         {
   2075  1.1  christos                                           /* 33222222222211111111110000000000
   2076  1.1  christos                                              10987654321098765432109876543210
   2077  1.1  christos                                              xxxxxxxxxxxxx0xxxxxxx000101100xx
   2078  1.1  christos                                              st1.  */
   2079  1.1  christos                                           return 371;
   2080  1.1  christos                                         }
   2081  1.1  christos                                       else
   2082  1.1  christos                                         {
   2083  1.1  christos                                           /* 33222222222211111111110000000000
   2084  1.1  christos                                              10987654321098765432109876543210
   2085  1.1  christos                                              xxxxxxxxxxxxx0xxxxxxx100101100xx
   2086  1.1  christos                                              st2.  */
   2087  1.1  christos                                           return 373;
   2088  1.1  christos                                         }
   2089  1.1  christos                                     }
   2090  1.1  christos                                   else
   2091  1.1  christos                                     {
   2092  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   2093  1.1  christos                                         {
   2094  1.1  christos                                           /* 33222222222211111111110000000000
   2095  1.1  christos                                              10987654321098765432109876543210
   2096  1.1  christos                                              xxxxxxxxxxxxx1xxxxxxx000101100xx
   2097  1.1  christos                                              st3.  */
   2098  1.1  christos                                           return 372;
   2099  1.1  christos                                         }
   2100  1.1  christos                                       else
   2101  1.1  christos                                         {
   2102  1.1  christos                                           /* 33222222222211111111110000000000
   2103  1.1  christos                                              10987654321098765432109876543210
   2104  1.1  christos                                              xxxxxxxxxxxxx1xxxxxxx100101100xx
   2105  1.1  christos                                              st4.  */
   2106  1.1  christos                                           return 374;
   2107  1.1  christos                                         }
   2108  1.1  christos                                     }
   2109  1.1  christos                                 }
   2110  1.1  christos                               else
   2111  1.1  christos                                 {
   2112  1.1  christos                                   /* 33222222222211111111110000000000
   2113  1.1  christos                                      10987654321098765432109876543210
   2114  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx00101101xx
   2115  1.1  christos                                      stp.  */
   2116  1.1  christos                                   return 745;
   2117  1.1  christos                                 }
   2118  1.1  christos                             }
   2119  1.1  christos                         }
   2120  1.1  christos                       else
   2121  1.1  christos                         {
   2122  1.1  christos                           if (((word >> 29) & 0x1) == 0)
   2123  1.1  christos                             {
   2124  1.1  christos                               if (((word >> 21) & 0x1) == 0)
   2125  1.1  christos                                 {
   2126  1.1  christos                                   if (((word >> 24) & 0x1) == 0)
   2127  1.1  christos                                     {
   2128  1.1  christos                                       /* 33222222222211111111110000000000
   2129  1.1  christos                                          10987654321098765432109876543210
   2130  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx001001100xx
   2131  1.1  christos                                          st4.  */
   2132  1.1  christos                                       return 363;
   2133  1.1  christos                                     }
   2134  1.1  christos                                   else
   2135  1.1  christos                                     {
   2136  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   2137  1.1  christos                                         {
   2138  1.1  christos                                           /* 33222222222211111111110000000000
   2139  1.1  christos                                              10987654321098765432109876543210
   2140  1.1  christos                                              xxxxxxxxxxxxx0xxxxxxx001101100xx
   2141  1.1  christos                                              st1.  */
   2142  1.1  christos                                           return 383;
   2143  1.1  christos                                         }
   2144  1.1  christos                                       else
   2145  1.1  christos                                         {
   2146  1.1  christos                                           /* 33222222222211111111110000000000
   2147  1.1  christos                                              10987654321098765432109876543210
   2148  1.1  christos                                              xxxxxxxxxxxxx1xxxxxxx001101100xx
   2149  1.1  christos                                              st3.  */
   2150  1.1  christos                                           return 384;
   2151  1.1  christos                                         }
   2152  1.1  christos                                     }
   2153  1.1  christos                                 }
   2154  1.1  christos                               else
   2155  1.1  christos                                 {
   2156  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   2157  1.1  christos                                     {
   2158  1.1  christos                                       /* 33222222222211111111110000000000
   2159  1.1  christos                                          10987654321098765432109876543210
   2160  1.1  christos                                          xxxxxxxxxxxxx0xxxxxxx101x01100xx
   2161  1.1  christos                                          st2.  */
   2162  1.1  christos                                       return 385;
   2163  1.1  christos                                     }
   2164  1.1  christos                                   else
   2165  1.1  christos                                     {
   2166  1.1  christos                                       /* 33222222222211111111110000000000
   2167  1.1  christos                                          10987654321098765432109876543210
   2168  1.1  christos                                          xxxxxxxxxxxxx1xxxxxxx101x01100xx
   2169  1.1  christos                                          st4.  */
   2170  1.1  christos                                       return 386;
   2171  1.1  christos                                     }
   2172  1.1  christos                                 }
   2173  1.1  christos                             }
   2174  1.1  christos                           else
   2175  1.1  christos                             {
   2176  1.1  christos                               /* 33222222222211111111110000000000
   2177  1.1  christos                                  10987654321098765432109876543210
   2178  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxx01x01101xx
   2179  1.1  christos                                  stp.  */
   2180  1.1  christos                               return 750;
   2181  1.1  christos                             }
   2182  1.1  christos                         }
   2183  1.1  christos                     }
   2184  1.1  christos                   else
   2185  1.1  christos                     {
   2186  1.1  christos                       if (((word >> 23) & 0x1) == 0)
   2187  1.1  christos                         {
   2188  1.1  christos                           if (((word >> 24) & 0x1) == 0)
   2189  1.1  christos                             {
   2190  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   2191  1.1  christos                                 {
   2192  1.1  christos                                   /* 33222222222211111111110000000000
   2193  1.1  christos                                      10987654321098765432109876543210
   2194  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx10001100xx
   2195  1.1  christos                                      ld4.  */
   2196  1.1  christos                                   return 359;
   2197  1.1  christos                                 }
   2198  1.1  christos                               else
   2199  1.1  christos                                 {
   2200  1.1  christos                                   /* 33222222222211111111110000000000
   2201  1.1  christos                                      10987654321098765432109876543210
   2202  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx10001101xx
   2203  1.1  christos                                      ldnp.  */
   2204  1.1  christos                                   return 742;
   2205  1.1  christos                                 }
   2206  1.1  christos                             }
   2207  1.1  christos                           else
   2208  1.1  christos                             {
   2209  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   2210  1.1  christos                                 {
   2211  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   2212  1.1  christos                                     {
   2213  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   2214  1.1  christos                                         {
   2215  1.1  christos                                           /* 33222222222211111111110000000000
   2216  1.1  christos                                              10987654321098765432109876543210
   2217  1.1  christos                                              xxxxxxxxxxxxx0xxxxxxx010101100xx
   2218  1.1  christos                                              ld1.  */
   2219  1.1  christos                                           return 375;
   2220  1.1  christos                                         }
   2221  1.1  christos                                       else
   2222  1.1  christos                                         {
   2223  1.1  christos                                           /* 33222222222211111111110000000000
   2224  1.1  christos                                              10987654321098765432109876543210
   2225  1.1  christos                                              xxxxxxxxxxxxx0xxxxxxx110101100xx
   2226  1.1  christos                                              ld2.  */
   2227  1.1  christos                                           return 379;
   2228  1.1  christos                                         }
   2229  1.1  christos                                     }
   2230  1.1  christos                                   else
   2231  1.1  christos                                     {
   2232  1.1  christos                                       if (((word >> 21) & 0x1) == 0)
   2233  1.1  christos                                         {
   2234  1.1  christos                                           /* 33222222222211111111110000000000
   2235  1.1  christos                                              10987654321098765432109876543210
   2236  1.1  christos                                              xxxxxxxxxxxxx1xxxxxxx010101100xx
   2237  1.1  christos                                              ld3.  */
   2238  1.1  christos                                           return 376;
   2239  1.1  christos                                         }
   2240  1.1  christos                                       else
   2241  1.1  christos                                         {
   2242  1.1  christos                                           /* 33222222222211111111110000000000
   2243  1.1  christos                                              10987654321098765432109876543210
   2244  1.1  christos                                              xxxxxxxxxxxxx1xxxxxxx110101100xx
   2245  1.1  christos                                              ld4.  */
   2246  1.1  christos                                           return 380;
   2247  1.1  christos                                         }
   2248  1.1  christos                                     }
   2249  1.1  christos                                 }
   2250  1.1  christos                               else
   2251  1.1  christos                                 {
   2252  1.1  christos                                   /* 33222222222211111111110000000000
   2253  1.1  christos                                      10987654321098765432109876543210
   2254  1.1  christos                                      xxxxxxxxxxxxxxxxxxxxxx10101101xx
   2255  1.1  christos                                      ldp.  */
   2256  1.1  christos                                   return 746;
   2257  1.1  christos                                 }
   2258  1.1  christos                             }
   2259  1.1  christos                         }
   2260  1.1  christos                       else
   2261  1.1  christos                         {
   2262  1.1  christos                           if (((word >> 29) & 0x1) == 0)
   2263  1.1  christos                             {
   2264  1.1  christos                               if (((word >> 21) & 0x1) == 0)
   2265  1.1  christos                                 {
   2266  1.1  christos                                   if (((word >> 24) & 0x1) == 0)
   2267  1.1  christos                                     {
   2268  1.1  christos                                       /* 33222222222211111111110000000000
   2269  1.1  christos                                          10987654321098765432109876543210
   2270  1.1  christos                                          xxxxxxxxxxxxxxxxxxxxx011001100xx
   2271  1.1  christos                                          ld4.  */
   2272  1.1  christos                                       return 367;
   2273  1.1  christos                                     }
   2274  1.1  christos                                   else
   2275  1.1  christos                                     {
   2276  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   2277  1.1  christos                                         {
   2278  1.1  christos                                           /* 33222222222211111111110000000000
   2279  1.1  christos                                              10987654321098765432109876543210
   2280  1.1  christos                                              xxxxxxxxxxxxx0xxxxxxx011101100xx
   2281  1.1  christos                                              ld1.  */
   2282  1.1  christos                                           return 387;
   2283  1.1  christos                                         }
   2284  1.1  christos                                       else
   2285  1.1  christos                                         {
   2286  1.1  christos                                           /* 33222222222211111111110000000000
   2287  1.1  christos                                              10987654321098765432109876543210
   2288  1.1  christos                                              xxxxxxxxxxxxx1xxxxxxx011101100xx
   2289  1.1  christos                                              ld3.  */
   2290  1.1  christos                                           return 388;
   2291  1.1  christos                                         }
   2292  1.1  christos                                     }
   2293  1.1  christos                                 }
   2294  1.1  christos                               else
   2295  1.1  christos                                 {
   2296  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   2297  1.1  christos                                     {
   2298  1.1  christos                                       /* 33222222222211111111110000000000
   2299  1.1  christos                                          10987654321098765432109876543210
   2300  1.1  christos                                          xxxxxxxxxxxxx0xxxxxxx111x01100xx
   2301  1.1  christos                                          ld2.  */
   2302  1.1  christos                                       return 391;
   2303  1.1  christos                                     }
   2304  1.1  christos                                   else
   2305  1.1  christos                                     {
   2306  1.1  christos                                       /* 33222222222211111111110000000000
   2307  1.1  christos                                          10987654321098765432109876543210
   2308  1.1  christos                                          xxxxxxxxxxxxx1xxxxxxx111x01100xx
   2309  1.1  christos                                          ld4.  */
   2310  1.1  christos                                       return 392;
   2311  1.1  christos                                     }
   2312  1.1  christos                                 }
   2313  1.1  christos                             }
   2314  1.1  christos                           else
   2315  1.1  christos                             {
   2316  1.1  christos                               /* 33222222222211111111110000000000
   2317  1.1  christos                                  10987654321098765432109876543210
   2318  1.1  christos                                  xxxxxxxxxxxxxxxxxxxxxx11x01101xx
   2319  1.1  christos                                  ldp.  */
   2320  1.1  christos                               return 751;
   2321  1.1  christos                             }
   2322  1.1  christos                         }
   2323  1.1  christos                     }
   2324  1.1  christos                 }
   2325  1.1  christos               else
   2326  1.1  christos                 {
   2327  1.1  christos                   if (((word >> 24) & 0x1) == 0)
   2328  1.1  christos                     {
   2329  1.1  christos                       if (((word >> 29) & 0x1) == 0)
   2330  1.1  christos                         {
   2331  1.1  christos                           /* 33222222222211111111110000000000
   2332  1.1  christos                              10987654321098765432109876543210
   2333  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxxxx001110xx
   2334  1.1  christos                              ldr.  */
   2335  1.1  christos                           return 754;
   2336  1.1  christos                         }
   2337  1.1  christos                       else
   2338  1.1  christos                         {
   2339  1.1  christos                           if (((word >> 10) & 0x1) == 0)
   2340  1.1  christos                             {
   2341  1.1  christos                               if (((word >> 11) & 0x1) == 0)
   2342  1.1  christos                                 {
   2343  1.1  christos                                   if (((word >> 22) & 0x1) == 0)
   2344  1.1  christos                                     {
   2345  1.1  christos                                       /* 33222222222211111111110000000000
   2346  1.1  christos                                          10987654321098765432109876543210
   2347  1.1  christos                                          xxxxxxxxxx00xxxxxxxxxx0x001111xx
   2348  1.1  christos                                          stur.  */
   2349  1.1  christos                                       return 699;
   2350  1.1  christos                                     }
   2351  1.1  christos                                   else
   2352  1.1  christos                                     {
   2353  1.1  christos                                       /* 33222222222211111111110000000000
   2354  1.1  christos                                          10987654321098765432109876543210
   2355  1.1  christos                                          xxxxxxxxxx00xxxxxxxxxx1x001111xx
   2356  1.1  christos                                          ldur.  */
   2357  1.1  christos                                       return 700;
   2358  1.1  christos                                     }
   2359  1.1  christos                                 }
   2360  1.1  christos                               else
   2361  1.1  christos                                 {
   2362  1.1  christos                                   if (((word >> 22) & 0x1) == 0)
   2363  1.1  christos                                     {
   2364  1.1  christos                                       /* 33222222222211111111110000000000
   2365  1.1  christos                                          10987654321098765432109876543210
   2366  1.1  christos                                          xxxxxxxxxx01xxxxxxxxxx0x001111xx
   2367  1.1  christos                                          str.  */
   2368  1.1  christos                                       return 675;
   2369  1.1  christos                                     }
   2370  1.1  christos                                   else
   2371  1.1  christos                                     {
   2372  1.1  christos                                       /* 33222222222211111111110000000000
   2373  1.1  christos                                          10987654321098765432109876543210
   2374  1.1  christos                                          xxxxxxxxxx01xxxxxxxxxx1x001111xx
   2375  1.1  christos                                          ldr.  */
   2376  1.1  christos                                       return 676;
   2377  1.1  christos                                     }
   2378  1.1  christos                                 }
   2379  1.1  christos                             }
   2380  1.1  christos                           else
   2381  1.1  christos                             {
   2382  1.1  christos                               if (((word >> 22) & 0x1) == 0)
   2383  1.1  christos                                 {
   2384  1.1  christos                                   /* 33222222222211111111110000000000
   2385  1.1  christos                                      10987654321098765432109876543210
   2386  1.1  christos                                      xxxxxxxxxx1xxxxxxxxxxx0x001111xx
   2387  1.1  christos                                      str.  */
   2388  1.1  christos                                   return 652;
   2389  1.1  christos                                 }
   2390  1.1  christos                               else
   2391  1.1  christos                                 {
   2392  1.1  christos                                   /* 33222222222211111111110000000000
   2393  1.1  christos                                      10987654321098765432109876543210
   2394  1.1  christos                                      xxxxxxxxxx1xxxxxxxxxxx1x001111xx
   2395  1.1  christos                                      ldr.  */
   2396  1.1  christos                                   return 653;
   2397  1.1  christos                                 }
   2398  1.1  christos                             }
   2399  1.1  christos                         }
   2400  1.1  christos                     }
   2401  1.1  christos                   else
   2402  1.1  christos                     {
   2403  1.1  christos                       if (((word >> 22) & 0x1) == 0)
   2404  1.1  christos                         {
   2405  1.1  christos                           /* 33222222222211111111110000000000
   2406  1.1  christos                              10987654321098765432109876543210
   2407  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxx0x10111xxx
   2408  1.1  christos                              str.  */
   2409  1.1  christos                           return 663;
   2410  1.1  christos                         }
   2411  1.1  christos                       else
   2412  1.1  christos                         {
   2413  1.1  christos                           /* 33222222222211111111110000000000
   2414  1.1  christos                              10987654321098765432109876543210
   2415  1.1  christos                              xxxxxxxxxxxxxxxxxxxxxx1x10111xxx
   2416  1.1  christos                              ldr.  */
   2417  1.1  christos                           return 664;
   2418  1.1  christos                         }
   2419  1.1  christos                     }
   2420  1.1  christos                 }
   2421  1.1  christos             }
   2422  1.1  christos           else
   2423  1.1  christos             {
   2424  1.1  christos               if (((word >> 24) & 0x1) == 0)
   2425  1.1  christos                 {
   2426  1.1  christos                   if (((word >> 21) & 0x1) == 0)
   2427  1.1  christos                     {
   2428  1.1  christos                       if (((word >> 28) & 0x1) == 0)
   2429  1.1  christos                         {
   2430  1.1  christos                           if (((word >> 10) & 0x1) == 0)
   2431  1.1  christos                             {
   2432  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   2433  1.1  christos                                 {
   2434  1.1  christos                                   if (((word >> 11) & 0x1) == 0)
   2435  1.1  christos                                     {
   2436  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   2437  1.1  christos                                         {
   2438  1.1  christos                                           /* 33222222222211111111110000000000
   2439  1.1  christos                                              10987654321098765432109876543210
   2440  1.1  christos                                              xxxxxxxxxx000xxxxxxxx0xx011100xx
   2441  1.1  christos                                              tbl.  */
   2442  1.1  christos                                           return 341;
   2443  1.1  christos                                         }
   2444  1.1  christos                                       else
   2445  1.1  christos                                         {
   2446  1.1  christos                                           /* 33222222222211111111110000000000
   2447  1.1  christos                                              10987654321098765432109876543210
   2448  1.1  christos                                              xxxxxxxxxx001xxxxxxxx0xx011100xx
   2449  1.1  christos                                              tbx.  */
   2450  1.1  christos                                           return 342;
   2451  1.1  christos                                         }
   2452  1.1  christos                                     }
   2453  1.1  christos                                   else
   2454  1.1  christos                                     {
   2455  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   2456  1.1  christos                                         {
   2457  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   2458  1.1  christos                                             {
   2459  1.1  christos                                               /* 33222222222211111111110000000000
   2460  1.1  christos                                                  10987654321098765432109876543210
   2461  1.1  christos                                                  xxxxxxxxxx010x0xxxxxx0xx011100xx
   2462  1.1  christos                                                  trn1.  */
   2463  1.1  christos                                               return 216;
   2464  1.1  christos                                             }
   2465  1.1  christos                                           else
   2466  1.1  christos                                             {
   2467  1.1  christos                                               /* 33222222222211111111110000000000
   2468  1.1  christos                                                  10987654321098765432109876543210
   2469  1.1  christos                                                  xxxxxxxxxx010x1xxxxxx0xx011100xx
   2470  1.1  christos                                                  trn2.  */
   2471  1.1  christos                                               return 219;
   2472  1.1  christos                                             }
   2473  1.1  christos                                         }
   2474  1.1  christos                                       else
   2475  1.1  christos                                         {
   2476  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   2477  1.1  christos                                             {
   2478  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   2479  1.1  christos                                                 {
   2480  1.1  christos                                                   /* 33222222222211111111110000000000
   2481  1.1  christos                                                      10987654321098765432109876543210
   2482  1.1  christos                                                      xxxxxxxxxx01100xxxxxx0xx011100xx
   2483  1.1  christos                                                      uzp1.  */
   2484  1.1  christos                                                   return 215;
   2485  1.1  christos                                                 }
   2486  1.1  christos                                               else
   2487  1.1  christos                                                 {
   2488  1.1  christos                                                   /* 33222222222211111111110000000000
   2489  1.1  christos                                                      10987654321098765432109876543210
   2490  1.1  christos                                                      xxxxxxxxxx01101xxxxxx0xx011100xx
   2491  1.1  christos                                                      uzp2.  */
   2492  1.1  christos                                                   return 218;
   2493  1.1  christos                                                 }
   2494  1.1  christos                                             }
   2495  1.1  christos                                           else
   2496  1.1  christos                                             {
   2497  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   2498  1.1  christos                                                 {
   2499  1.1  christos                                                   /* 33222222222211111111110000000000
   2500  1.1  christos                                                      10987654321098765432109876543210
   2501  1.1  christos                                                      xxxxxxxxxx01110xxxxxx0xx011100xx
   2502  1.1  christos                                                      zip1.  */
   2503  1.1  christos                                                   return 217;
   2504  1.1  christos                                                 }
   2505  1.1  christos                                               else
   2506  1.1  christos                                                 {
   2507  1.1  christos                                                   /* 33222222222211111111110000000000
   2508  1.1  christos                                                      10987654321098765432109876543210
   2509  1.1  christos                                                      xxxxxxxxxx01111xxxxxx0xx011100xx
   2510  1.1  christos                                                      zip2.  */
   2511  1.1  christos                                                   return 220;
   2512  1.1  christos                                                 }
   2513  1.1  christos                                             }
   2514  1.1  christos                                         }
   2515  1.1  christos                                     }
   2516  1.1  christos                                 }
   2517  1.1  christos                               else
   2518  1.1  christos                                 {
   2519  1.1  christos                                   /* 33222222222211111111110000000000
   2520  1.1  christos                                      10987654321098765432109876543210
   2521  1.1  christos                                      xxxxxxxxxx0xxxxxxxxxx0xx011101xx
   2522  1.1  christos                                      ext.  */
   2523  1.1  christos                                   return 119;
   2524  1.1  christos                                 }
   2525  1.1  christos                             }
   2526  1.1  christos                           else
   2527  1.1  christos                             {
   2528  1.1  christos                               if (((word >> 29) & 0x1) == 0)
   2529  1.1  christos                                 {
   2530  1.1  christos                                   if (((word >> 11) & 0x1) == 0)
   2531  1.1  christos                                     {
   2532  1.1  christos                                       /* 33222222222211111111110000000000
   2533  1.1  christos                                          10987654321098765432109876543210
   2534  1.1  christos                                          xxxxxxxxxx10xxxxxxxxx0xx011100xx
   2535  1.1  christos                                          dup.  */
   2536  1.1  christos                                       return 135;
   2537  1.1  christos                                     }
   2538  1.1  christos                                   else
   2539  1.1  christos                                     {
   2540  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   2541  1.1  christos                                         {
   2542  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   2543  1.1  christos                                             {
   2544  1.1  christos                                               /* 33222222222211111111110000000000
   2545  1.1  christos                                                  10987654321098765432109876543210
   2546  1.1  christos                                                  xxxxxxxxxx1100xxxxxxx0xx011100xx
   2547  1.1  christos                                                  dup.  */
   2548  1.1  christos                                               return 136;
   2549  1.1  christos                                             }
   2550  1.1  christos                                           else
   2551  1.1  christos                                             {
   2552  1.1  christos                                               /* 33222222222211111111110000000000
   2553  1.1  christos                                                  10987654321098765432109876543210
   2554  1.1  christos                                                  xxxxxxxxxx1101xxxxxxx0xx011100xx
   2555  1.1  christos                                                  smov.  */
   2556  1.1  christos                                               return 137;
   2557  1.1  christos                                             }
   2558  1.1  christos                                         }
   2559  1.1  christos                                       else
   2560  1.1  christos                                         {
   2561  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   2562  1.1  christos                                             {
   2563  1.1  christos                                               /* 33222222222211111111110000000000
   2564  1.1  christos                                                  10987654321098765432109876543210
   2565  1.1  christos                                                  xxxxxxxxxx1110xxxxxxx0xx011100xx
   2566  1.1  christos                                                  ins.  */
   2567  1.1  christos                                               return 140;
   2568  1.1  christos                                             }
   2569  1.1  christos                                           else
   2570  1.1  christos                                             {
   2571  1.1  christos                                               /* 33222222222211111111110000000000
   2572  1.1  christos                                                  10987654321098765432109876543210
   2573  1.1  christos                                                  xxxxxxxxxx1111xxxxxxx0xx011100xx
   2574  1.1  christos                                                  umov.  */
   2575  1.1  christos                                               return 138;
   2576  1.1  christos                                             }
   2577  1.1  christos                                         }
   2578  1.1  christos                                     }
   2579  1.1  christos                                 }
   2580  1.1  christos                               else
   2581  1.1  christos                                 {
   2582  1.1  christos                                   /* 33222222222211111111110000000000
   2583  1.1  christos                                      10987654321098765432109876543210
   2584  1.1  christos                                      xxxxxxxxxx1xxxxxxxxxx0xx011101xx
   2585  1.1  christos                                      ins.  */
   2586  1.1  christos                                   return 142;
   2587  1.1  christos                                 }
   2588  1.1  christos                             }
   2589  1.1  christos                         }
   2590  1.1  christos                       else
   2591  1.1  christos                         {
   2592  1.1  christos                           if (((word >> 30) & 0x1) == 0)
   2593  1.1  christos                             {
   2594  1.1  christos                               if (((word >> 16) & 0x1) == 0)
   2595  1.1  christos                                 {
   2596  1.1  christos                                   if (((word >> 17) & 0x1) == 0)
   2597  1.1  christos                                     {
   2598  1.1  christos                                       /* 33222222222211111111110000000000
   2599  1.1  christos                                          10987654321098765432109876543210
   2600  1.1  christos                                          xxxxxxxxxxxxxxxx00xxx0xx01111x0x
   2601  1.1  christos                                          fcvtzs.  */
   2602  1.1  christos                                       return 598;
   2603  1.1  christos                                     }
   2604  1.1  christos                                   else
   2605  1.1  christos                                     {
   2606  1.1  christos                                       /* 33222222222211111111110000000000
   2607  1.1  christos                                          10987654321098765432109876543210
   2608  1.1  christos                                          xxxxxxxxxxxxxxxx01xxx0xx01111x0x
   2609  1.1  christos                                          scvtf.  */
   2610  1.1  christos                                       return 596;
   2611  1.1  christos                                     }
   2612  1.1  christos                                 }
   2613  1.1  christos                               else
   2614  1.1  christos                                 {
   2615  1.1  christos                                   if (((word >> 17) & 0x1) == 0)
   2616  1.1  christos                                     {
   2617  1.1  christos                                       /* 33222222222211111111110000000000
   2618  1.1  christos                                          10987654321098765432109876543210
   2619  1.1  christos                                          xxxxxxxxxxxxxxxx10xxx0xx01111x0x
   2620  1.1  christos                                          fcvtzu.  */
   2621  1.1  christos                                       return 599;
   2622  1.1  christos                                     }
   2623  1.1  christos                                   else
   2624  1.1  christos                                     {
   2625  1.1  christos                                       /* 33222222222211111111110000000000
   2626  1.1  christos                                          10987654321098765432109876543210
   2627  1.1  christos                                          xxxxxxxxxxxxxxxx11xxx0xx01111x0x
   2628  1.1  christos                                          ucvtf.  */
   2629  1.1  christos                                       return 597;
   2630  1.1  christos                                     }
   2631  1.1  christos                                 }
   2632  1.1  christos                             }
   2633  1.1  christos                           else
   2634  1.1  christos                             {
   2635  1.1  christos                               if (((word >> 10) & 0x1) == 0)
   2636  1.1  christos                                 {
   2637  1.1  christos                                   if (((word >> 12) & 0x1) == 0)
   2638  1.1  christos                                     {
   2639  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   2640  1.1  christos                                         {
   2641  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   2642  1.1  christos                                             {
   2643  1.1  christos                                               /* 33222222222211111111110000000000
   2644  1.1  christos                                                  10987654321098765432109876543210
   2645  1.1  christos                                                  xxxxxxxxxx0x000xxxxxx0xx01111x1x
   2646  1.1  christos                                                  sha1c.  */
   2647  1.1  christos                                               return 540;
   2648  1.1  christos                                             }
   2649  1.1  christos                                           else
   2650  1.1  christos                                             {
   2651  1.1  christos                                               /* 33222222222211111111110000000000
   2652  1.1  christos                                                  10987654321098765432109876543210
   2653  1.1  christos                                                  xxxxxxxxxx0x001xxxxxx0xx01111x1x
   2654  1.1  christos                                                  sha256h.  */
   2655  1.1  christos                                               return 544;
   2656  1.1  christos                                             }
   2657  1.1  christos                                         }
   2658  1.1  christos                                       else
   2659  1.1  christos                                         {
   2660  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   2661  1.1  christos                                             {
   2662  1.1  christos                                               /* 33222222222211111111110000000000
   2663  1.1  christos                                                  10987654321098765432109876543210
   2664  1.1  christos                                                  xxxxxxxxxx0x010xxxxxx0xx01111x1x
   2665  1.1  christos                                                  sha1m.  */
   2666  1.1  christos                                               return 542;
   2667  1.1  christos                                             }
   2668  1.1  christos                                           else
   2669  1.1  christos                                             {
   2670  1.1  christos                                               /* 33222222222211111111110000000000
   2671  1.1  christos                                                  10987654321098765432109876543210
   2672  1.1  christos                                                  xxxxxxxxxx0x011xxxxxx0xx01111x1x
   2673  1.1  christos                                                  sha256su1.  */
   2674  1.1  christos                                               return 546;
   2675  1.1  christos                                             }
   2676  1.1  christos                                         }
   2677  1.1  christos                                     }
   2678  1.1  christos                                   else
   2679  1.1  christos                                     {
   2680  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   2681  1.1  christos                                         {
   2682  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   2683  1.1  christos                                             {
   2684  1.1  christos                                               /* 33222222222211111111110000000000
   2685  1.1  christos                                                  10987654321098765432109876543210
   2686  1.1  christos                                                  xxxxxxxxxx0x100xxxxxx0xx01111x1x
   2687  1.1  christos                                                  sha1p.  */
   2688  1.1  christos                                               return 541;
   2689  1.1  christos                                             }
   2690  1.1  christos                                           else
   2691  1.1  christos                                             {
   2692  1.1  christos                                               /* 33222222222211111111110000000000
   2693  1.1  christos                                                  10987654321098765432109876543210
   2694  1.1  christos                                                  xxxxxxxxxx0x101xxxxxx0xx01111x1x
   2695  1.1  christos                                                  sha256h2.  */
   2696  1.1  christos                                               return 545;
   2697  1.1  christos                                             }
   2698  1.1  christos                                         }
   2699  1.1  christos                                       else
   2700  1.1  christos                                         {
   2701  1.1  christos                                           /* 33222222222211111111110000000000
   2702  1.1  christos                                              10987654321098765432109876543210
   2703  1.1  christos                                              xxxxxxxxxx0x11xxxxxxx0xx01111x1x
   2704  1.1  christos                                              sha1su0.  */
   2705  1.1  christos                                           return 543;
   2706  1.1  christos                                         }
   2707  1.1  christos                                     }
   2708  1.1  christos                                 }
   2709  1.1  christos                               else
   2710  1.1  christos                                 {
   2711  1.1  christos                                   /* 33222222222211111111110000000000
   2712  1.1  christos                                      10987654321098765432109876543210
   2713  1.1  christos                                      xxxxxxxxxx1xxxxxxxxxx0xx01111x1x
   2714  1.1  christos                                      dup.  */
   2715  1.1  christos                                   return 430;
   2716  1.1  christos                                 }
   2717  1.1  christos                             }
   2718  1.1  christos                         }
   2719  1.1  christos                     }
   2720  1.1  christos                   else
   2721  1.1  christos                     {
   2722  1.1  christos                       if (((word >> 10) & 0x1) == 0)
   2723  1.1  christos                         {
   2724  1.1  christos                           if (((word >> 11) & 0x1) == 0)
   2725  1.1  christos                             {
   2726  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   2727  1.1  christos                                 {
   2728  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   2729  1.1  christos                                     {
   2730  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   2731  1.1  christos                                         {
   2732  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   2733  1.1  christos                                             {
   2734  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   2735  1.1  christos                                                 {
   2736  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   2737  1.1  christos                                                     {
   2738  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   2739  1.1  christos                                                         {
   2740  1.1  christos                                                           /* 33222222222211111111110000000000
   2741  1.1  christos                                                              10987654321098765432109876543210
   2742  1.1  christos                                                              xxxxxxxxxx000000xxxxx1xx0111000x
   2743  1.1  christos                                                              saddl.  */
   2744  1.1  christos                                                           return 38;
   2745  1.1  christos                                                         }
   2746  1.1  christos                                                       else
   2747  1.1  christos                                                         {
   2748  1.1  christos                                                           /* 33222222222211111111110000000000
   2749  1.1  christos                                                              10987654321098765432109876543210
   2750  1.1  christos                                                              xxxxxxxxxx000000xxxxx1xx0111001x
   2751  1.1  christos                                                              saddl2.  */
   2752  1.1  christos                                                           return 39;
   2753  1.1  christos                                                         }
   2754  1.1  christos                                                     }
   2755  1.1  christos                                                   else
   2756  1.1  christos                                                     {
   2757  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   2758  1.1  christos                                                         {
   2759  1.1  christos                                                           /* 33222222222211111111110000000000
   2760  1.1  christos                                                              10987654321098765432109876543210
   2761  1.1  christos                                                              xxxxxxxxxx000000xxxxx1xx0111010x
   2762  1.1  christos                                                              uaddl.  */
   2763  1.1  christos                                                           return 70;
   2764  1.1  christos                                                         }
   2765  1.1  christos                                                       else
   2766  1.1  christos                                                         {
   2767  1.1  christos                                                           /* 33222222222211111111110000000000
   2768  1.1  christos                                                              10987654321098765432109876543210
   2769  1.1  christos                                                              xxxxxxxxxx000000xxxxx1xx0111011x
   2770  1.1  christos                                                              uaddl2.  */
   2771  1.1  christos                                                           return 71;
   2772  1.1  christos                                                         }
   2773  1.1  christos                                                     }
   2774  1.1  christos                                                 }
   2775  1.1  christos                                               else
   2776  1.1  christos                                                 {
   2777  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   2778  1.1  christos                                                     {
   2779  1.1  christos                                                       if (((word >> 17) & 0x1) == 0)
   2780  1.1  christos                                                         {
   2781  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   2782  1.1  christos                                                             {
   2783  1.1  christos                                                               if (((word >> 19) & 0x1) == 0)
   2784  1.1  christos                                                                 {
   2785  1.1  christos                                                                   if (((word >> 20) & 0x1) == 0)
   2786  1.1  christos                                                                     {
   2787  1.1  christos                                                                       /* 33222222222211111111110000000000
   2788  1.1  christos                                                                          10987654321098765432109876543210
   2789  1.1  christos                                                                          xxxxxxxxxx000000000001xx01111xxx
   2790  1.1  christos                                                                          fcvtns.  */
   2791  1.1  christos                                                                       return 600;
   2792  1.1  christos                                                                     }
   2793  1.1  christos                                                                   else
   2794  1.1  christos                                                                     {
   2795  1.1  christos                                                                       /* 33222222222211111111110000000000
   2796  1.1  christos                                                                          10987654321098765432109876543210
   2797  1.1  christos                                                                          xxxxxxxxxx000000000011xx01111xxx
   2798  1.1  christos                                                                          fcvtms.  */
   2799  1.1  christos                                                                       return 610;
   2800  1.1  christos                                                                     }
   2801  1.1  christos                                                                 }
   2802  1.1  christos                                                               else
   2803  1.1  christos                                                                 {
   2804  1.1  christos                                                                   if (((word >> 20) & 0x1) == 0)
   2805  1.1  christos                                                                     {
   2806  1.1  christos                                                                       /* 33222222222211111111110000000000
   2807  1.1  christos                                                                          10987654321098765432109876543210
   2808  1.1  christos                                                                          xxxxxxxxxx000000000101xx01111xxx
   2809  1.1  christos                                                                          fcvtps.  */
   2810  1.1  christos                                                                       return 608;
   2811  1.1  christos                                                                     }
   2812  1.1  christos                                                                   else
   2813  1.1  christos                                                                     {
   2814  1.1  christos                                                                       /* 33222222222211111111110000000000
   2815  1.1  christos                                                                          10987654321098765432109876543210
   2816  1.1  christos                                                                          xxxxxxxxxx000000000111xx01111xxx
   2817  1.1  christos                                                                          fcvtzs.  */
   2818  1.1  christos                                                                       return 612;
   2819  1.1  christos                                                                     }
   2820  1.1  christos                                                                 }
   2821  1.1  christos                                                             }
   2822  1.1  christos                                                           else
   2823  1.1  christos                                                             {
   2824  1.1  christos                                                               /* 33222222222211111111110000000000
   2825  1.1  christos                                                                  10987654321098765432109876543210
   2826  1.1  christos                                                                  xxxxxxxxxx000000001xx1xx01111xxx
   2827  1.1  christos                                                                  fcvtas.  */
   2828  1.1  christos                                                               return 604;
   2829  1.1  christos                                                             }
   2830  1.1  christos                                                         }
   2831  1.1  christos                                                       else
   2832  1.1  christos                                                         {
   2833  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   2834  1.1  christos                                                             {
   2835  1.1  christos                                                               /* 33222222222211111111110000000000
   2836  1.1  christos                                                                  10987654321098765432109876543210
   2837  1.1  christos                                                                  xxxxxxxxxx000000010xx1xx01111xxx
   2838  1.1  christos                                                                  scvtf.  */
   2839  1.1  christos                                                               return 602;
   2840  1.1  christos                                                             }
   2841  1.1  christos                                                           else
   2842  1.1  christos                                                             {
   2843  1.1  christos                                                               if (((word >> 19) & 0x1) == 0)
   2844  1.1  christos                                                                 {
   2845  1.1  christos                                                                   /* 33222222222211111111110000000000
   2846  1.1  christos                                                                      10987654321098765432109876543210
   2847  1.1  christos                                                                      xxxxxxxxxx0000000110x1xx01111xxx
   2848  1.1  christos                                                                      fmov.  */
   2849  1.1  christos                                                                   return 606;
   2850  1.1  christos                                                                 }
   2851  1.1  christos                                                               else
   2852  1.1  christos                                                                 {
   2853  1.1  christos                                                                   /* 33222222222211111111110000000000
   2854  1.1  christos                                                                      10987654321098765432109876543210
   2855  1.1  christos                                                                      xxxxxxxxxx0000000111x1xx01111xxx
   2856  1.1  christos                                                                      fmov.  */
   2857  1.1  christos                                                                   return 614;
   2858  1.1  christos                                                                 }
   2859  1.1  christos                                                             }
   2860  1.1  christos                                                         }
   2861  1.1  christos                                                     }
   2862  1.1  christos                                                   else
   2863  1.1  christos                                                     {
   2864  1.1  christos                                                       if (((word >> 17) & 0x1) == 0)
   2865  1.1  christos                                                         {
   2866  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   2867  1.1  christos                                                             {
   2868  1.1  christos                                                               if (((word >> 19) & 0x1) == 0)
   2869  1.1  christos                                                                 {
   2870  1.1  christos                                                                   if (((word >> 20) & 0x1) == 0)
   2871  1.1  christos                                                                     {
   2872  1.1  christos                                                                       /* 33222222222211111111110000000000
   2873  1.1  christos                                                                          10987654321098765432109876543210
   2874  1.1  christos                                                                          xxxxxxxxxx000000100001xx01111xxx
   2875  1.1  christos                                                                          fcvtnu.  */
   2876  1.1  christos                                                                       return 601;
   2877  1.1  christos                                                                     }
   2878  1.1  christos                                                                   else
   2879  1.1  christos                                                                     {
   2880  1.1  christos                                                                       /* 33222222222211111111110000000000
   2881  1.1  christos                                                                          10987654321098765432109876543210
   2882  1.1  christos                                                                          xxxxxxxxxx000000100011xx01111xxx
   2883  1.1  christos                                                                          fcvtmu.  */
   2884  1.1  christos                                                                       return 611;
   2885  1.1  christos                                                                     }
   2886  1.1  christos                                                                 }
   2887  1.1  christos                                                               else
   2888  1.1  christos                                                                 {
   2889  1.1  christos                                                                   if (((word >> 20) & 0x1) == 0)
   2890  1.1  christos                                                                     {
   2891  1.1  christos                                                                       /* 33222222222211111111110000000000
   2892  1.1  christos                                                                          10987654321098765432109876543210
   2893  1.1  christos                                                                          xxxxxxxxxx000000100101xx01111xxx
   2894  1.1  christos                                                                          fcvtpu.  */
   2895  1.1  christos                                                                       return 609;
   2896  1.1  christos                                                                     }
   2897  1.1  christos                                                                   else
   2898  1.1  christos                                                                     {
   2899  1.1  christos                                                                       /* 33222222222211111111110000000000
   2900  1.1  christos                                                                          10987654321098765432109876543210
   2901  1.1  christos                                                                          xxxxxxxxxx000000100111xx01111xxx
   2902  1.1  christos                                                                          fcvtzu.  */
   2903  1.1  christos                                                                       return 613;
   2904  1.1  christos                                                                     }
   2905  1.1  christos                                                                 }
   2906  1.1  christos                                                             }
   2907  1.1  christos                                                           else
   2908  1.1  christos                                                             {
   2909  1.1  christos                                                               /* 33222222222211111111110000000000
   2910  1.1  christos                                                                  10987654321098765432109876543210
   2911  1.1  christos                                                                  xxxxxxxxxx000000101xx1xx01111xxx
   2912  1.1  christos                                                                  fcvtau.  */
   2913  1.1  christos                                                               return 605;
   2914  1.1  christos                                                             }
   2915  1.1  christos                                                         }
   2916  1.1  christos                                                       else
   2917  1.1  christos                                                         {
   2918  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   2919  1.1  christos                                                             {
   2920  1.1  christos                                                               /* 33222222222211111111110000000000
   2921  1.1  christos                                                                  10987654321098765432109876543210
   2922  1.1  christos                                                                  xxxxxxxxxx000000110xx1xx01111xxx
   2923  1.1  christos                                                                  ucvtf.  */
   2924  1.1  christos                                                               return 603;
   2925  1.1  christos                                                             }
   2926  1.1  christos                                                           else
   2927  1.1  christos                                                             {
   2928  1.1  christos                                                               if (((word >> 19) & 0x1) == 0)
   2929  1.1  christos                                                                 {
   2930  1.1  christos                                                                   /* 33222222222211111111110000000000
   2931  1.1  christos                                                                      10987654321098765432109876543210
   2932  1.1  christos                                                                      xxxxxxxxxx0000001110x1xx01111xxx
   2933  1.1  christos                                                                      fmov.  */
   2934  1.1  christos                                                                   return 607;
   2935  1.1  christos                                                                 }
   2936  1.1  christos                                                               else
   2937  1.1  christos                                                                 {
   2938  1.1  christos                                                                   /* 33222222222211111111110000000000
   2939  1.1  christos                                                                      10987654321098765432109876543210
   2940  1.1  christos                                                                      xxxxxxxxxx0000001111x1xx01111xxx
   2941  1.1  christos                                                                      fmov.  */
   2942  1.1  christos                                                                   return 615;
   2943  1.1  christos                                                                 }
   2944  1.1  christos                                                             }
   2945  1.1  christos                                                         }
   2946  1.1  christos                                                     }
   2947  1.1  christos                                                 }
   2948  1.1  christos                                             }
   2949  1.1  christos                                           else
   2950  1.1  christos                                             {
   2951  1.1  christos                                               if (((word >> 29) & 0x1) == 0)
   2952  1.1  christos                                                 {
   2953  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   2954  1.1  christos                                                     {
   2955  1.1  christos                                                       /* 33222222222211111111110000000000
   2956  1.1  christos                                                          10987654321098765432109876543210
   2957  1.1  christos                                                          xxxxxxxxxx000001xxxxx1xx0111x00x
   2958  1.1  christos                                                          smlal.  */
   2959  1.1  christos                                                       return 54;
   2960  1.1  christos                                                     }
   2961  1.1  christos                                                   else
   2962  1.1  christos                                                     {
   2963  1.1  christos                                                       /* 33222222222211111111110000000000
   2964  1.1  christos                                                          10987654321098765432109876543210
   2965  1.1  christos                                                          xxxxxxxxxx000001xxxxx1xx0111x01x
   2966  1.1  christos                                                          smlal2.  */
   2967  1.1  christos                                                       return 55;
   2968  1.1  christos                                                     }
   2969  1.1  christos                                                 }
   2970  1.1  christos                                               else
   2971  1.1  christos                                                 {
   2972  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   2973  1.1  christos                                                     {
   2974  1.1  christos                                                       /* 33222222222211111111110000000000
   2975  1.1  christos                                                          10987654321098765432109876543210
   2976  1.1  christos                                                          xxxxxxxxxx000001xxxxx1xx0111x10x
   2977  1.1  christos                                                          umlal.  */
   2978  1.1  christos                                                       return 86;
   2979  1.1  christos                                                     }
   2980  1.1  christos                                                   else
   2981  1.1  christos                                                     {
   2982  1.1  christos                                                       /* 33222222222211111111110000000000
   2983  1.1  christos                                                          10987654321098765432109876543210
   2984  1.1  christos                                                          xxxxxxxxxx000001xxxxx1xx0111x11x
   2985  1.1  christos                                                          umlal2.  */
   2986  1.1  christos                                                       return 87;
   2987  1.1  christos                                                     }
   2988  1.1  christos                                                 }
   2989  1.1  christos                                             }
   2990  1.1  christos                                         }
   2991  1.1  christos                                       else
   2992  1.1  christos                                         {
   2993  1.1  christos                                           if (((word >> 28) & 0x1) == 0)
   2994  1.1  christos                                             {
   2995  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   2996  1.1  christos                                                 {
   2997  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   2998  1.1  christos                                                     {
   2999  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3000  1.1  christos                                                         {
   3001  1.1  christos                                                           /* 33222222222211111111110000000000
   3002  1.1  christos                                                              10987654321098765432109876543210
   3003  1.1  christos                                                              xxxxxxxxxx000010xxxxx1xx0111000x
   3004  1.1  christos                                                              addhn.  */
   3005  1.1  christos                                                           return 46;
   3006  1.1  christos                                                         }
   3007  1.1  christos                                                       else
   3008  1.1  christos                                                         {
   3009  1.1  christos                                                           /* 33222222222211111111110000000000
   3010  1.1  christos                                                              10987654321098765432109876543210
   3011  1.1  christos                                                              xxxxxxxxxx000010xxxxx1xx0111001x
   3012  1.1  christos                                                              addhn2.  */
   3013  1.1  christos                                                           return 47;
   3014  1.1  christos                                                         }
   3015  1.1  christos                                                     }
   3016  1.1  christos                                                   else
   3017  1.1  christos                                                     {
   3018  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3019  1.1  christos                                                         {
   3020  1.1  christos                                                           /* 33222222222211111111110000000000
   3021  1.1  christos                                                              10987654321098765432109876543210
   3022  1.1  christos                                                              xxxxxxxxxx000010xxxxx1xx0111010x
   3023  1.1  christos                                                              raddhn.  */
   3024  1.1  christos                                                           return 78;
   3025  1.1  christos                                                         }
   3026  1.1  christos                                                       else
   3027  1.1  christos                                                         {
   3028  1.1  christos                                                           /* 33222222222211111111110000000000
   3029  1.1  christos                                                              10987654321098765432109876543210
   3030  1.1  christos                                                              xxxxxxxxxx000010xxxxx1xx0111011x
   3031  1.1  christos                                                              raddhn2.  */
   3032  1.1  christos                                                           return 79;
   3033  1.1  christos                                                         }
   3034  1.1  christos                                                     }
   3035  1.1  christos                                                 }
   3036  1.1  christos                                               else
   3037  1.1  christos                                                 {
   3038  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3039  1.1  christos                                                     {
   3040  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3041  1.1  christos                                                         {
   3042  1.1  christos                                                           /* 33222222222211111111110000000000
   3043  1.1  christos                                                              10987654321098765432109876543210
   3044  1.1  christos                                                              xxxxxxxxxx000011xxxxx1xx0111000x
   3045  1.1  christos                                                              smull.  */
   3046  1.1  christos                                                           return 62;
   3047  1.1  christos                                                         }
   3048  1.1  christos                                                       else
   3049  1.1  christos                                                         {
   3050  1.1  christos                                                           /* 33222222222211111111110000000000
   3051  1.1  christos                                                              10987654321098765432109876543210
   3052  1.1  christos                                                              xxxxxxxxxx000011xxxxx1xx0111001x
   3053  1.1  christos                                                              smull2.  */
   3054  1.1  christos                                                           return 63;
   3055  1.1  christos                                                         }
   3056  1.1  christos                                                     }
   3057  1.1  christos                                                   else
   3058  1.1  christos                                                     {
   3059  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3060  1.1  christos                                                         {
   3061  1.1  christos                                                           /* 33222222222211111111110000000000
   3062  1.1  christos                                                              10987654321098765432109876543210
   3063  1.1  christos                                                              xxxxxxxxxx000011xxxxx1xx0111010x
   3064  1.1  christos                                                              umull.  */
   3065  1.1  christos                                                           return 90;
   3066  1.1  christos                                                         }
   3067  1.1  christos                                                       else
   3068  1.1  christos                                                         {
   3069  1.1  christos                                                           /* 33222222222211111111110000000000
   3070  1.1  christos                                                              10987654321098765432109876543210
   3071  1.1  christos                                                              xxxxxxxxxx000011xxxxx1xx0111011x
   3072  1.1  christos                                                              umull2.  */
   3073  1.1  christos                                                           return 91;
   3074  1.1  christos                                                         }
   3075  1.1  christos                                                     }
   3076  1.1  christos                                                 }
   3077  1.1  christos                                             }
   3078  1.1  christos                                           else
   3079  1.1  christos                                             {
   3080  1.1  christos                                               if (((word >> 17) & 0x1) == 0)
   3081  1.1  christos                                                 {
   3082  1.1  christos                                                   if (((word >> 15) & 0x1) == 0)
   3083  1.1  christos                                                     {
   3084  1.1  christos                                                       if (((word >> 16) & 0x1) == 0)
   3085  1.1  christos                                                         {
   3086  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   3087  1.1  christos                                                             {
   3088  1.1  christos                                                               /* 33222222222211111111110000000000
   3089  1.1  christos                                                                  10987654321098765432109876543210
   3090  1.1  christos                                                                  xxxxxxxxxx000010000xx1xx01111xxx
   3091  1.1  christos                                                                  fmov.  */
   3092  1.1  christos                                                               return 622;
   3093  1.1  christos                                                             }
   3094  1.1  christos                                                           else
   3095  1.1  christos                                                             {
   3096  1.1  christos                                                               /* 33222222222211111111110000000000
   3097  1.1  christos                                                                  10987654321098765432109876543210
   3098  1.1  christos                                                                  xxxxxxxxxx000010001xx1xx01111xxx
   3099  1.1  christos                                                                  frintn.  */
   3100  1.1  christos                                                               return 627;
   3101  1.1  christos                                                             }
   3102  1.1  christos                                                         }
   3103  1.1  christos                                                       else
   3104  1.1  christos                                                         {
   3105  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   3106  1.1  christos                                                             {
   3107  1.1  christos                                                               /* 33222222222211111111110000000000
   3108  1.1  christos                                                                  10987654321098765432109876543210
   3109  1.1  christos                                                                  xxxxxxxxxx000010100xx1xx01111xxx
   3110  1.1  christos                                                                  fneg.  */
   3111  1.1  christos                                                               return 624;
   3112  1.1  christos                                                             }
   3113  1.1  christos                                                           else
   3114  1.1  christos                                                             {
   3115  1.1  christos                                                               /* 33222222222211111111110000000000
   3116  1.1  christos                                                                  10987654321098765432109876543210
   3117  1.1  christos                                                                  xxxxxxxxxx000010101xx1xx01111xxx
   3118  1.1  christos                                                                  frintm.  */
   3119  1.1  christos                                                               return 629;
   3120  1.1  christos                                                             }
   3121  1.1  christos                                                         }
   3122  1.1  christos                                                     }
   3123  1.1  christos                                                   else
   3124  1.1  christos                                                     {
   3125  1.1  christos                                                       if (((word >> 16) & 0x1) == 0)
   3126  1.1  christos                                                         {
   3127  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   3128  1.1  christos                                                             {
   3129  1.1  christos                                                               /* 33222222222211111111110000000000
   3130  1.1  christos                                                                  10987654321098765432109876543210
   3131  1.1  christos                                                                  xxxxxxxxxx000011000xx1xx01111xxx
   3132  1.1  christos                                                                  fabs.  */
   3133  1.1  christos                                                               return 623;
   3134  1.1  christos                                                             }
   3135  1.1  christos                                                           else
   3136  1.1  christos                                                             {
   3137  1.1  christos                                                               /* 33222222222211111111110000000000
   3138  1.1  christos                                                                  10987654321098765432109876543210
   3139  1.1  christos                                                                  xxxxxxxxxx000011001xx1xx01111xxx
   3140  1.1  christos                                                                  frintp.  */
   3141  1.1  christos                                                               return 628;
   3142  1.1  christos                                                             }
   3143  1.1  christos                                                         }
   3144  1.1  christos                                                       else
   3145  1.1  christos                                                         {
   3146  1.1  christos                                                           if (((word >> 18) & 0x1) == 0)
   3147  1.1  christos                                                             {
   3148  1.1  christos                                                               /* 33222222222211111111110000000000
   3149  1.1  christos                                                                  10987654321098765432109876543210
   3150  1.1  christos                                                                  xxxxxxxxxx000011100xx1xx01111xxx
   3151  1.1  christos                                                                  fsqrt.  */
   3152  1.1  christos                                                               return 625;
   3153  1.1  christos                                                             }
   3154  1.1  christos                                                           else
   3155  1.1  christos                                                             {
   3156  1.1  christos                                                               /* 33222222222211111111110000000000
   3157  1.1  christos                                                                  10987654321098765432109876543210
   3158  1.1  christos                                                                  xxxxxxxxxx000011101xx1xx01111xxx
   3159  1.1  christos                                                                  frintz.  */
   3160  1.1  christos                                                               return 630;
   3161  1.1  christos                                                             }
   3162  1.1  christos                                                         }
   3163  1.1  christos                                                     }
   3164  1.1  christos                                                 }
   3165  1.1  christos                                               else
   3166  1.1  christos                                                 {
   3167  1.1  christos                                                   if (((word >> 18) & 0x1) == 0)
   3168  1.1  christos                                                     {
   3169  1.1  christos                                                       /* 33222222222211111111110000000000
   3170  1.1  christos                                                          10987654321098765432109876543210
   3171  1.1  christos                                                          xxxxxxxxxx00001xx10xx1xx01111xxx
   3172  1.1  christos                                                          fcvt.  */
   3173  1.1  christos                                                       return 626;
   3174  1.1  christos                                                     }
   3175  1.1  christos                                                   else
   3176  1.1  christos                                                     {
   3177  1.1  christos                                                       if (((word >> 15) & 0x1) == 0)
   3178  1.1  christos                                                         {
   3179  1.1  christos                                                           if (((word >> 16) & 0x1) == 0)
   3180  1.1  christos                                                             {
   3181  1.1  christos                                                               /* 33222222222211111111110000000000
   3182  1.1  christos                                                                  10987654321098765432109876543210
   3183  1.1  christos                                                                  xxxxxxxxxx000010011xx1xx01111xxx
   3184  1.1  christos                                                                  frinta.  */
   3185  1.1  christos                                                               return 631;
   3186  1.1  christos                                                             }
   3187  1.1  christos                                                           else
   3188  1.1  christos                                                             {
   3189  1.1  christos                                                               /* 33222222222211111111110000000000
   3190  1.1  christos                                                                  10987654321098765432109876543210
   3191  1.1  christos                                                                  xxxxxxxxxx000010111xx1xx01111xxx
   3192  1.1  christos                                                                  frintx.  */
   3193  1.1  christos                                                               return 632;
   3194  1.1  christos                                                             }
   3195  1.1  christos                                                         }
   3196  1.1  christos                                                       else
   3197  1.1  christos                                                         {
   3198  1.1  christos                                                           /* 33222222222211111111110000000000
   3199  1.1  christos                                                              10987654321098765432109876543210
   3200  1.1  christos                                                              xxxxxxxxxx000011x11xx1xx01111xxx
   3201  1.1  christos                                                              frinti.  */
   3202  1.1  christos                                                           return 633;
   3203  1.1  christos                                                         }
   3204  1.1  christos                                                     }
   3205  1.1  christos                                                 }
   3206  1.1  christos                                             }
   3207  1.1  christos                                         }
   3208  1.1  christos                                     }
   3209  1.1  christos                                   else
   3210  1.1  christos                                     {
   3211  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   3212  1.1  christos                                         {
   3213  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   3214  1.1  christos                                             {
   3215  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   3216  1.1  christos                                                 {
   3217  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3218  1.1  christos                                                     {
   3219  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3220  1.1  christos                                                         {
   3221  1.1  christos                                                           /* 33222222222211111111110000000000
   3222  1.1  christos                                                              10987654321098765432109876543210
   3223  1.1  christos                                                              xxxxxxxxxx000100xxxxx1xx0111000x
   3224  1.1  christos                                                              ssubl.  */
   3225  1.1  christos                                                           return 42;
   3226  1.1  christos                                                         }
   3227  1.1  christos                                                       else
   3228  1.1  christos                                                         {
   3229  1.1  christos                                                           /* 33222222222211111111110000000000
   3230  1.1  christos                                                              10987654321098765432109876543210
   3231  1.1  christos                                                              xxxxxxxxxx000100xxxxx1xx0111001x
   3232  1.1  christos                                                              ssubl2.  */
   3233  1.1  christos                                                           return 43;
   3234  1.1  christos                                                         }
   3235  1.1  christos                                                     }
   3236  1.1  christos                                                   else
   3237  1.1  christos                                                     {
   3238  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3239  1.1  christos                                                         {
   3240  1.1  christos                                                           /* 33222222222211111111110000000000
   3241  1.1  christos                                                              10987654321098765432109876543210
   3242  1.1  christos                                                              xxxxxxxxxx000100xxxxx1xx0111010x
   3243  1.1  christos                                                              usubl.  */
   3244  1.1  christos                                                           return 74;
   3245  1.1  christos                                                         }
   3246  1.1  christos                                                       else
   3247  1.1  christos                                                         {
   3248  1.1  christos                                                           /* 33222222222211111111110000000000
   3249  1.1  christos                                                              10987654321098765432109876543210
   3250  1.1  christos                                                              xxxxxxxxxx000100xxxxx1xx0111011x
   3251  1.1  christos                                                              usubl2.  */
   3252  1.1  christos                                                           return 75;
   3253  1.1  christos                                                         }
   3254  1.1  christos                                                     }
   3255  1.1  christos                                                 }
   3256  1.1  christos                                               else
   3257  1.1  christos                                                 {
   3258  1.1  christos                                                   if (((word >> 3) & 0x1) == 0)
   3259  1.1  christos                                                     {
   3260  1.1  christos                                                       if (((word >> 4) & 0x1) == 0)
   3261  1.1  christos                                                         {
   3262  1.1  christos                                                           /* 33222222222211111111110000000000
   3263  1.1  christos                                                              10987654321098765432109876543210
   3264  1.1  christos                                                              xxx00xxxxx000100xxxxx1xx01111xxx
   3265  1.1  christos                                                              fcmp.  */
   3266  1.1  christos                                                           return 618;
   3267  1.1  christos                                                         }
   3268  1.1  christos                                                       else
   3269  1.1  christos                                                         {
   3270  1.1  christos                                                           /* 33222222222211111111110000000000
   3271  1.1  christos                                                              10987654321098765432109876543210
   3272  1.1  christos                                                              xxx01xxxxx000100xxxxx1xx01111xxx
   3273  1.1  christos                                                              fcmpe.  */
   3274  1.1  christos                                                           return 619;
   3275  1.1  christos                                                         }
   3276  1.1  christos                                                     }
   3277  1.1  christos                                                   else
   3278  1.1  christos                                                     {
   3279  1.1  christos                                                       if (((word >> 4) & 0x1) == 0)
   3280  1.1  christos                                                         {
   3281  1.1  christos                                                           /* 33222222222211111111110000000000
   3282  1.1  christos                                                              10987654321098765432109876543210
   3283  1.1  christos                                                              xxx10xxxxx000100xxxxx1xx01111xxx
   3284  1.1  christos                                                              fcmp.  */
   3285  1.1  christos                                                           return 620;
   3286  1.1  christos                                                         }
   3287  1.1  christos                                                       else
   3288  1.1  christos                                                         {
   3289  1.1  christos                                                           /* 33222222222211111111110000000000
   3290  1.1  christos                                                              10987654321098765432109876543210
   3291  1.1  christos                                                              xxx11xxxxx000100xxxxx1xx01111xxx
   3292  1.1  christos                                                              fcmpe.  */
   3293  1.1  christos                                                           return 621;
   3294  1.1  christos                                                         }
   3295  1.1  christos                                                     }
   3296  1.1  christos                                                 }
   3297  1.1  christos                                             }
   3298  1.1  christos                                           else
   3299  1.1  christos                                             {
   3300  1.1  christos                                               if (((word >> 29) & 0x1) == 0)
   3301  1.1  christos                                                 {
   3302  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3303  1.1  christos                                                     {
   3304  1.1  christos                                                       /* 33222222222211111111110000000000
   3305  1.1  christos                                                          10987654321098765432109876543210
   3306  1.1  christos                                                          xxxxxxxxxx000101xxxxx1xx0111x00x
   3307  1.1  christos                                                          smlsl.  */
   3308  1.1  christos                                                       return 58;
   3309  1.1  christos                                                     }
   3310  1.1  christos                                                   else
   3311  1.1  christos                                                     {
   3312  1.1  christos                                                       /* 33222222222211111111110000000000
   3313  1.1  christos                                                          10987654321098765432109876543210
   3314  1.1  christos                                                          xxxxxxxxxx000101xxxxx1xx0111x01x
   3315  1.1  christos                                                          smlsl2.  */
   3316  1.1  christos                                                       return 59;
   3317  1.1  christos                                                     }
   3318  1.1  christos                                                 }
   3319  1.1  christos                                               else
   3320  1.1  christos                                                 {
   3321  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3322  1.1  christos                                                     {
   3323  1.1  christos                                                       /* 33222222222211111111110000000000
   3324  1.1  christos                                                          10987654321098765432109876543210
   3325  1.1  christos                                                          xxxxxxxxxx000101xxxxx1xx0111x10x
   3326  1.1  christos                                                          umlsl.  */
   3327  1.1  christos                                                       return 88;
   3328  1.1  christos                                                     }
   3329  1.1  christos                                                   else
   3330  1.1  christos                                                     {
   3331  1.1  christos                                                       /* 33222222222211111111110000000000
   3332  1.1  christos                                                          10987654321098765432109876543210
   3333  1.1  christos                                                          xxxxxxxxxx000101xxxxx1xx0111x11x
   3334  1.1  christos                                                          umlsl2.  */
   3335  1.1  christos                                                       return 89;
   3336  1.1  christos                                                     }
   3337  1.1  christos                                                 }
   3338  1.1  christos                                             }
   3339  1.1  christos                                         }
   3340  1.1  christos                                       else
   3341  1.1  christos                                         {
   3342  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   3343  1.1  christos                                             {
   3344  1.1  christos                                               if (((word >> 29) & 0x1) == 0)
   3345  1.1  christos                                                 {
   3346  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3347  1.1  christos                                                     {
   3348  1.1  christos                                                       /* 33222222222211111111110000000000
   3349  1.1  christos                                                          10987654321098765432109876543210
   3350  1.1  christos                                                          xxxxxxxxxx000110xxxxx1xx0111x00x
   3351  1.1  christos                                                          subhn.  */
   3352  1.1  christos                                                       return 50;
   3353  1.1  christos                                                     }
   3354  1.1  christos                                                   else
   3355  1.1  christos                                                     {
   3356  1.1  christos                                                       /* 33222222222211111111110000000000
   3357  1.1  christos                                                          10987654321098765432109876543210
   3358  1.1  christos                                                          xxxxxxxxxx000110xxxxx1xx0111x01x
   3359  1.1  christos                                                          subhn2.  */
   3360  1.1  christos                                                       return 51;
   3361  1.1  christos                                                     }
   3362  1.1  christos                                                 }
   3363  1.1  christos                                               else
   3364  1.1  christos                                                 {
   3365  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3366  1.1  christos                                                     {
   3367  1.1  christos                                                       /* 33222222222211111111110000000000
   3368  1.1  christos                                                          10987654321098765432109876543210
   3369  1.1  christos                                                          xxxxxxxxxx000110xxxxx1xx0111x10x
   3370  1.1  christos                                                          rsubhn.  */
   3371  1.1  christos                                                       return 82;
   3372  1.1  christos                                                     }
   3373  1.1  christos                                                   else
   3374  1.1  christos                                                     {
   3375  1.1  christos                                                       /* 33222222222211111111110000000000
   3376  1.1  christos                                                          10987654321098765432109876543210
   3377  1.1  christos                                                          xxxxxxxxxx000110xxxxx1xx0111x11x
   3378  1.1  christos                                                          rsubhn2.  */
   3379  1.1  christos                                                       return 83;
   3380  1.1  christos                                                     }
   3381  1.1  christos                                                 }
   3382  1.1  christos                                             }
   3383  1.1  christos                                           else
   3384  1.1  christos                                             {
   3385  1.1  christos                                               if (((word >> 22) & 0x1) == 0)
   3386  1.1  christos                                                 {
   3387  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3388  1.1  christos                                                     {
   3389  1.1  christos                                                       /* 33222222222211111111110000000000
   3390  1.1  christos                                                          10987654321098765432109876543210
   3391  1.1  christos                                                          xxxxxxxxxx000111xxxxx10x0111xx0x
   3392  1.1  christos                                                          pmull.  */
   3393  1.1  christos                                                       return 66;
   3394  1.1  christos                                                     }
   3395  1.1  christos                                                   else
   3396  1.1  christos                                                     {
   3397  1.1  christos                                                       /* 33222222222211111111110000000000
   3398  1.1  christos                                                          10987654321098765432109876543210
   3399  1.1  christos                                                          xxxxxxxxxx000111xxxxx10x0111xx1x
   3400  1.1  christos                                                          pmull2.  */
   3401  1.1  christos                                                       return 68;
   3402  1.1  christos                                                     }
   3403  1.1  christos                                                 }
   3404  1.1  christos                                               else
   3405  1.1  christos                                                 {
   3406  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3407  1.1  christos                                                     {
   3408  1.1  christos                                                       /* 33222222222211111111110000000000
   3409  1.1  christos                                                          10987654321098765432109876543210
   3410  1.1  christos                                                          xxxxxxxxxx000111xxxxx11x0111xx0x
   3411  1.1  christos                                                          pmull.  */
   3412  1.1  christos                                                       return 67;
   3413  1.1  christos                                                     }
   3414  1.1  christos                                                   else
   3415  1.1  christos                                                     {
   3416  1.1  christos                                                       /* 33222222222211111111110000000000
   3417  1.1  christos                                                          10987654321098765432109876543210
   3418  1.1  christos                                                          xxxxxxxxxx000111xxxxx11x0111xx1x
   3419  1.1  christos                                                          pmull2.  */
   3420  1.1  christos                                                       return 69;
   3421  1.1  christos                                                     }
   3422  1.1  christos                                                 }
   3423  1.1  christos                                             }
   3424  1.1  christos                                         }
   3425  1.1  christos                                     }
   3426  1.1  christos                                 }
   3427  1.1  christos                               else
   3428  1.1  christos                                 {
   3429  1.1  christos                                   if (((word >> 28) & 0x1) == 0)
   3430  1.1  christos                                     {
   3431  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   3432  1.1  christos                                         {
   3433  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   3434  1.1  christos                                             {
   3435  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   3436  1.1  christos                                                 {
   3437  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3438  1.1  christos                                                     {
   3439  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3440  1.1  christos                                                         {
   3441  1.1  christos                                                           /* 33222222222211111111110000000000
   3442  1.1  christos                                                              10987654321098765432109876543210
   3443  1.1  christos                                                              xxxxxxxxxx001000xxxxx1xx0111000x
   3444  1.1  christos                                                              saddw.  */
   3445  1.1  christos                                                           return 40;
   3446  1.1  christos                                                         }
   3447  1.1  christos                                                       else
   3448  1.1  christos                                                         {
   3449  1.1  christos                                                           /* 33222222222211111111110000000000
   3450  1.1  christos                                                              10987654321098765432109876543210
   3451  1.1  christos                                                              xxxxxxxxxx001000xxxxx1xx0111001x
   3452  1.1  christos                                                              saddw2.  */
   3453  1.1  christos                                                           return 41;
   3454  1.1  christos                                                         }
   3455  1.1  christos                                                     }
   3456  1.1  christos                                                   else
   3457  1.1  christos                                                     {
   3458  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3459  1.1  christos                                                         {
   3460  1.1  christos                                                           /* 33222222222211111111110000000000
   3461  1.1  christos                                                              10987654321098765432109876543210
   3462  1.1  christos                                                              xxxxxxxxxx001000xxxxx1xx0111010x
   3463  1.1  christos                                                              uaddw.  */
   3464  1.1  christos                                                           return 72;
   3465  1.1  christos                                                         }
   3466  1.1  christos                                                       else
   3467  1.1  christos                                                         {
   3468  1.1  christos                                                           /* 33222222222211111111110000000000
   3469  1.1  christos                                                              10987654321098765432109876543210
   3470  1.1  christos                                                              xxxxxxxxxx001000xxxxx1xx0111011x
   3471  1.1  christos                                                              uaddw2.  */
   3472  1.1  christos                                                           return 73;
   3473  1.1  christos                                                         }
   3474  1.1  christos                                                     }
   3475  1.1  christos                                                 }
   3476  1.1  christos                                               else
   3477  1.1  christos                                                 {
   3478  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3479  1.1  christos                                                     {
   3480  1.1  christos                                                       /* 33222222222211111111110000000000
   3481  1.1  christos                                                          10987654321098765432109876543210
   3482  1.1  christos                                                          xxxxxxxxxx001001xxxxx1xx01110x0x
   3483  1.1  christos                                                          sqdmlal.  */
   3484  1.1  christos                                                       return 56;
   3485  1.1  christos                                                     }
   3486  1.1  christos                                                   else
   3487  1.1  christos                                                     {
   3488  1.1  christos                                                       /* 33222222222211111111110000000000
   3489  1.1  christos                                                          10987654321098765432109876543210
   3490  1.1  christos                                                          xxxxxxxxxx001001xxxxx1xx01110x1x
   3491  1.1  christos                                                          sqdmlal2.  */
   3492  1.1  christos                                                       return 57;
   3493  1.1  christos                                                     }
   3494  1.1  christos                                                 }
   3495  1.1  christos                                             }
   3496  1.1  christos                                           else
   3497  1.1  christos                                             {
   3498  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   3499  1.1  christos                                                 {
   3500  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3501  1.1  christos                                                     {
   3502  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3503  1.1  christos                                                         {
   3504  1.1  christos                                                           /* 33222222222211111111110000000000
   3505  1.1  christos                                                              10987654321098765432109876543210
   3506  1.1  christos                                                              xxxxxxxxxx001010xxxxx1xx0111000x
   3507  1.1  christos                                                              sabal.  */
   3508  1.1  christos                                                           return 48;
   3509  1.1  christos                                                         }
   3510  1.1  christos                                                       else
   3511  1.1  christos                                                         {
   3512  1.1  christos                                                           /* 33222222222211111111110000000000
   3513  1.1  christos                                                              10987654321098765432109876543210
   3514  1.1  christos                                                              xxxxxxxxxx001010xxxxx1xx0111001x
   3515  1.1  christos                                                              sabal2.  */
   3516  1.1  christos                                                           return 49;
   3517  1.1  christos                                                         }
   3518  1.1  christos                                                     }
   3519  1.1  christos                                                   else
   3520  1.1  christos                                                     {
   3521  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3522  1.1  christos                                                         {
   3523  1.1  christos                                                           /* 33222222222211111111110000000000
   3524  1.1  christos                                                              10987654321098765432109876543210
   3525  1.1  christos                                                              xxxxxxxxxx001010xxxxx1xx0111010x
   3526  1.1  christos                                                              uabal.  */
   3527  1.1  christos                                                           return 80;
   3528  1.1  christos                                                         }
   3529  1.1  christos                                                       else
   3530  1.1  christos                                                         {
   3531  1.1  christos                                                           /* 33222222222211111111110000000000
   3532  1.1  christos                                                              10987654321098765432109876543210
   3533  1.1  christos                                                              xxxxxxxxxx001010xxxxx1xx0111011x
   3534  1.1  christos                                                              uabal2.  */
   3535  1.1  christos                                                           return 81;
   3536  1.1  christos                                                         }
   3537  1.1  christos                                                     }
   3538  1.1  christos                                                 }
   3539  1.1  christos                                               else
   3540  1.1  christos                                                 {
   3541  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3542  1.1  christos                                                     {
   3543  1.1  christos                                                       /* 33222222222211111111110000000000
   3544  1.1  christos                                                          10987654321098765432109876543210
   3545  1.1  christos                                                          xxxxxxxxxx001011xxxxx1xx01110x0x
   3546  1.1  christos                                                          sqdmull.  */
   3547  1.1  christos                                                       return 64;
   3548  1.1  christos                                                     }
   3549  1.1  christos                                                   else
   3550  1.1  christos                                                     {
   3551  1.1  christos                                                       /* 33222222222211111111110000000000
   3552  1.1  christos                                                          10987654321098765432109876543210
   3553  1.1  christos                                                          xxxxxxxxxx001011xxxxx1xx01110x1x
   3554  1.1  christos                                                          sqdmull2.  */
   3555  1.1  christos                                                       return 65;
   3556  1.1  christos                                                     }
   3557  1.1  christos                                                 }
   3558  1.1  christos                                             }
   3559  1.1  christos                                         }
   3560  1.1  christos                                       else
   3561  1.1  christos                                         {
   3562  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   3563  1.1  christos                                             {
   3564  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   3565  1.1  christos                                                 {
   3566  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3567  1.1  christos                                                     {
   3568  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3569  1.1  christos                                                         {
   3570  1.1  christos                                                           /* 33222222222211111111110000000000
   3571  1.1  christos                                                              10987654321098765432109876543210
   3572  1.1  christos                                                              xxxxxxxxxx001100xxxxx1xx0111000x
   3573  1.1  christos                                                              ssubw.  */
   3574  1.1  christos                                                           return 44;
   3575  1.1  christos                                                         }
   3576  1.1  christos                                                       else
   3577  1.1  christos                                                         {
   3578  1.1  christos                                                           /* 33222222222211111111110000000000
   3579  1.1  christos                                                              10987654321098765432109876543210
   3580  1.1  christos                                                              xxxxxxxxxx001100xxxxx1xx0111001x
   3581  1.1  christos                                                              ssubw2.  */
   3582  1.1  christos                                                           return 45;
   3583  1.1  christos                                                         }
   3584  1.1  christos                                                     }
   3585  1.1  christos                                                   else
   3586  1.1  christos                                                     {
   3587  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3588  1.1  christos                                                         {
   3589  1.1  christos                                                           /* 33222222222211111111110000000000
   3590  1.1  christos                                                              10987654321098765432109876543210
   3591  1.1  christos                                                              xxxxxxxxxx001100xxxxx1xx0111010x
   3592  1.1  christos                                                              usubw.  */
   3593  1.1  christos                                                           return 76;
   3594  1.1  christos                                                         }
   3595  1.1  christos                                                       else
   3596  1.1  christos                                                         {
   3597  1.1  christos                                                           /* 33222222222211111111110000000000
   3598  1.1  christos                                                              10987654321098765432109876543210
   3599  1.1  christos                                                              xxxxxxxxxx001100xxxxx1xx0111011x
   3600  1.1  christos                                                              usubw2.  */
   3601  1.1  christos                                                           return 77;
   3602  1.1  christos                                                         }
   3603  1.1  christos                                                     }
   3604  1.1  christos                                                 }
   3605  1.1  christos                                               else
   3606  1.1  christos                                                 {
   3607  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3608  1.1  christos                                                     {
   3609  1.1  christos                                                       /* 33222222222211111111110000000000
   3610  1.1  christos                                                          10987654321098765432109876543210
   3611  1.1  christos                                                          xxxxxxxxxx001101xxxxx1xx01110x0x
   3612  1.1  christos                                                          sqdmlsl.  */
   3613  1.1  christos                                                       return 60;
   3614  1.1  christos                                                     }
   3615  1.1  christos                                                   else
   3616  1.1  christos                                                     {
   3617  1.1  christos                                                       /* 33222222222211111111110000000000
   3618  1.1  christos                                                          10987654321098765432109876543210
   3619  1.1  christos                                                          xxxxxxxxxx001101xxxxx1xx01110x1x
   3620  1.1  christos                                                          sqdmlsl2.  */
   3621  1.1  christos                                                       return 61;
   3622  1.1  christos                                                     }
   3623  1.1  christos                                                 }
   3624  1.1  christos                                             }
   3625  1.1  christos                                           else
   3626  1.1  christos                                             {
   3627  1.1  christos                                               if (((word >> 29) & 0x1) == 0)
   3628  1.1  christos                                                 {
   3629  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3630  1.1  christos                                                     {
   3631  1.1  christos                                                       /* 33222222222211111111110000000000
   3632  1.1  christos                                                          10987654321098765432109876543210
   3633  1.1  christos                                                          xxxxxxxxxx00111xxxxxx1xx0111000x
   3634  1.1  christos                                                          sabdl.  */
   3635  1.1  christos                                                       return 52;
   3636  1.1  christos                                                     }
   3637  1.1  christos                                                   else
   3638  1.1  christos                                                     {
   3639  1.1  christos                                                       /* 33222222222211111111110000000000
   3640  1.1  christos                                                          10987654321098765432109876543210
   3641  1.1  christos                                                          xxxxxxxxxx00111xxxxxx1xx0111001x
   3642  1.1  christos                                                          sabdl2.  */
   3643  1.1  christos                                                       return 53;
   3644  1.1  christos                                                     }
   3645  1.1  christos                                                 }
   3646  1.1  christos                                               else
   3647  1.1  christos                                                 {
   3648  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3649  1.1  christos                                                     {
   3650  1.1  christos                                                       /* 33222222222211111111110000000000
   3651  1.1  christos                                                          10987654321098765432109876543210
   3652  1.1  christos                                                          xxxxxxxxxx00111xxxxxx1xx0111010x
   3653  1.1  christos                                                          uabdl.  */
   3654  1.1  christos                                                       return 84;
   3655  1.1  christos                                                     }
   3656  1.1  christos                                                   else
   3657  1.1  christos                                                     {
   3658  1.1  christos                                                       /* 33222222222211111111110000000000
   3659  1.1  christos                                                          10987654321098765432109876543210
   3660  1.1  christos                                                          xxxxxxxxxx00111xxxxxx1xx0111011x
   3661  1.1  christos                                                          uabdl2.  */
   3662  1.1  christos                                                       return 85;
   3663  1.1  christos                                                     }
   3664  1.1  christos                                                 }
   3665  1.1  christos                                             }
   3666  1.1  christos                                         }
   3667  1.1  christos                                     }
   3668  1.1  christos                                   else
   3669  1.1  christos                                     {
   3670  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
   3671  1.1  christos                                         {
   3672  1.1  christos                                           /* 33222222222211111111110000000000
   3673  1.1  christos                                              10987654321098765432109876543210
   3674  1.1  christos                                              xxxxxxxxxx001xxxxxxxx1xx01111x0x
   3675  1.1  christos                                              fmov.  */
   3676  1.1  christos                                           return 647;
   3677  1.1  christos                                         }
   3678  1.1  christos                                       else
   3679  1.1  christos                                         {
   3680  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   3681  1.1  christos                                             {
   3682  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   3683  1.1  christos                                                 {
   3684  1.1  christos                                                   /* 33222222222211111111110000000000
   3685  1.1  christos                                                      10987654321098765432109876543210
   3686  1.1  christos                                                      xxxxxxxxxx00100xxxxxx1xx01111x1x
   3687  1.1  christos                                                      sqdmlal.  */
   3688  1.1  christos                                                   return 343;
   3689  1.1  christos                                                 }
   3690  1.1  christos                                               else
   3691  1.1  christos                                                 {
   3692  1.1  christos                                                   /* 33222222222211111111110000000000
   3693  1.1  christos                                                      10987654321098765432109876543210
   3694  1.1  christos                                                      xxxxxxxxxx00101xxxxxx1xx01111x1x
   3695  1.1  christos                                                      sqdmull.  */
   3696  1.1  christos                                                   return 345;
   3697  1.1  christos                                                 }
   3698  1.1  christos                                             }
   3699  1.1  christos                                           else
   3700  1.1  christos                                             {
   3701  1.1  christos                                               /* 33222222222211111111110000000000
   3702  1.1  christos                                                  10987654321098765432109876543210
   3703  1.1  christos                                                  xxxxxxxxxx0011xxxxxxx1xx01111x1x
   3704  1.1  christos                                                  sqdmlsl.  */
   3705  1.1  christos                                               return 344;
   3706  1.1  christos                                             }
   3707  1.1  christos                                         }
   3708  1.1  christos                                     }
   3709  1.1  christos                                 }
   3710  1.1  christos                             }
   3711  1.1  christos                           else
   3712  1.1  christos                             {
   3713  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   3714  1.1  christos                                 {
   3715  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   3716  1.1  christos                                     {
   3717  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   3718  1.1  christos                                         {
   3719  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   3720  1.1  christos                                             {
   3721  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   3722  1.1  christos                                                 {
   3723  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3724  1.1  christos                                                     {
   3725  1.1  christos                                                       /* 33222222222211111111110000000000
   3726  1.1  christos                                                          10987654321098765432109876543210
   3727  1.1  christos                                                          xxxxxxxxxx010000xxxxx1xx011100xx
   3728  1.1  christos                                                          rev64.  */
   3729  1.1  christos                                                       return 144;
   3730  1.1  christos                                                     }
   3731  1.1  christos                                                   else
   3732  1.1  christos                                                     {
   3733  1.1  christos                                                       /* 33222222222211111111110000000000
   3734  1.1  christos                                                          10987654321098765432109876543210
   3735  1.1  christos                                                          xxxxxxxxxx010000xxxxx1xx011101xx
   3736  1.1  christos                                                          rev32.  */
   3737  1.1  christos                                                       return 180;
   3738  1.1  christos                                                     }
   3739  1.1  christos                                                 }
   3740  1.1  christos                                               else
   3741  1.1  christos                                                 {
   3742  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   3743  1.1  christos                                                     {
   3744  1.1  christos                                                       /* 33222222222211111111110000000000
   3745  1.1  christos                                                          10987654321098765432109876543210
   3746  1.1  christos                                                          xxxxxxxxxx010000xxxxx1xx01111x0x
   3747  1.1  christos                                                          fmul.  */
   3748  1.1  christos                                                       return 634;
   3749  1.1  christos                                                     }
   3750  1.1  christos                                                   else
   3751  1.1  christos                                                     {
   3752  1.1  christos                                                       /* 33222222222211111111110000000000
   3753  1.1  christos                                                          10987654321098765432109876543210
   3754  1.1  christos                                                          xxxxxxxxxx010000xxxxx1xx01111x1x
   3755  1.1  christos                                                          sha1h.  */
   3756  1.1  christos                                                       return 537;
   3757  1.1  christos                                                     }
   3758  1.1  christos                                                 }
   3759  1.1  christos                                             }
   3760  1.1  christos                                           else
   3761  1.1  christos                                             {
   3762  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   3763  1.1  christos                                                 {
   3764  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   3765  1.1  christos                                                     {
   3766  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   3767  1.1  christos                                                         {
   3768  1.1  christos                                                           /* 33222222222211111111110000000000
   3769  1.1  christos                                                              10987654321098765432109876543210
   3770  1.1  christos                                                              xxxxxxxxxx0100010xxxx1xx011100xx
   3771  1.1  christos                                                              cmgt.  */
   3772  1.1  christos                                                           return 152;
   3773  1.1  christos                                                         }
   3774  1.1  christos                                                       else
   3775  1.1  christos                                                         {
   3776  1.1  christos                                                           /* 33222222222211111111110000000000
   3777  1.1  christos                                                              10987654321098765432109876543210
   3778  1.1  christos                                                              xxxxxxxxxx0100010xxxx1xx011101xx
   3779  1.1  christos                                                              cmge.  */
   3780  1.1  christos                                                           return 186;
   3781  1.1  christos                                                         }
   3782  1.1  christos                                                     }
   3783  1.1  christos                                                   else
   3784  1.1  christos                                                     {
   3785  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   3786  1.1  christos                                                         {
   3787  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   3788  1.1  christos                                                             {
   3789  1.1  christos                                                               /* 33222222222211111111110000000000
   3790  1.1  christos                                                                  10987654321098765432109876543210
   3791  1.1  christos                                                                  xxxxxxxxxx0100011xxxx1x0011100xx
   3792  1.1  christos                                                                  frintn.  */
   3793  1.1  christos                                                               return 164;
   3794  1.1  christos                                                             }
   3795  1.1  christos                                                           else
   3796  1.1  christos                                                             {
   3797  1.1  christos                                                               /* 33222222222211111111110000000000
   3798  1.1  christos                                                                  10987654321098765432109876543210
   3799  1.1  christos                                                                  xxxxxxxxxx0100011xxxx1x0011101xx
   3800  1.1  christos                                                                  frinta.  */
   3801  1.1  christos                                                               return 197;
   3802  1.1  christos                                                             }
   3803  1.1  christos                                                         }
   3804  1.1  christos                                                       else
   3805  1.1  christos                                                         {
   3806  1.1  christos                                                           /* 33222222222211111111110000000000
   3807  1.1  christos                                                              10987654321098765432109876543210
   3808  1.1  christos                                                              xxxxxxxxxx0100011xxxx1x101110xxx
   3809  1.1  christos                                                              frintp.  */
   3810  1.1  christos                                                           return 174;
   3811  1.1  christos                                                         }
   3812  1.1  christos                                                     }
   3813  1.1  christos                                                 }
   3814  1.1  christos                                               else
   3815  1.1  christos                                                 {
   3816  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3817  1.1  christos                                                     {
   3818  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3819  1.1  christos                                                         {
   3820  1.1  christos                                                           /* 33222222222211111111110000000000
   3821  1.1  christos                                                              10987654321098765432109876543210
   3822  1.1  christos                                                              xxxxxxxxxx010001xxxxx1xx0111100x
   3823  1.1  christos                                                              fnmul.  */
   3824  1.1  christos                                                           return 642;
   3825  1.1  christos                                                         }
   3826  1.1  christos                                                       else
   3827  1.1  christos                                                         {
   3828  1.1  christos                                                           /* 33222222222211111111110000000000
   3829  1.1  christos                                                              10987654321098765432109876543210
   3830  1.1  christos                                                              xxxxxxxxxx010001xxxxx1xx0111101x
   3831  1.1  christos                                                              cmgt.  */
   3832  1.1  christos                                                           return 397;
   3833  1.1  christos                                                         }
   3834  1.1  christos                                                     }
   3835  1.1  christos                                                   else
   3836  1.1  christos                                                     {
   3837  1.1  christos                                                       /* 33222222222211111111110000000000
   3838  1.1  christos                                                          10987654321098765432109876543210
   3839  1.1  christos                                                          xxxxxxxxxx010001xxxxx1xx011111xx
   3840  1.1  christos                                                          cmge.  */
   3841  1.1  christos                                                       return 415;
   3842  1.1  christos                                                     }
   3843  1.1  christos                                                 }
   3844  1.1  christos                                             }
   3845  1.1  christos                                         }
   3846  1.1  christos                                       else
   3847  1.1  christos                                         {
   3848  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   3849  1.1  christos                                             {
   3850  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   3851  1.1  christos                                                 {
   3852  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   3853  1.1  christos                                                     {
   3854  1.1  christos                                                       if (((word >> 19) & 0x1) == 0)
   3855  1.1  christos                                                         {
   3856  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   3857  1.1  christos                                                             {
   3858  1.1  christos                                                               /* 33222222222211111111110000000000
   3859  1.1  christos                                                                  10987654321098765432109876543210
   3860  1.1  christos                                                                  xxxxxxxxxx0100100xx0x1xx011100xx
   3861  1.1  christos                                                                  cls.  */
   3862  1.1  christos                                                               return 148;
   3863  1.1  christos                                                             }
   3864  1.1  christos                                                           else
   3865  1.1  christos                                                             {
   3866  1.1  christos                                                               /* 33222222222211111111110000000000
   3867  1.1  christos                                                                  10987654321098765432109876543210
   3868  1.1  christos                                                                  xxxxxxxxxx0100100xx0x1xx011101xx
   3869  1.1  christos                                                                  clz.  */
   3870  1.1  christos                                                               return 183;
   3871  1.1  christos                                                             }
   3872  1.1  christos                                                         }
   3873  1.1  christos                                                       else
   3874  1.1  christos                                                         {
   3875  1.1  christos                                                           /* 33222222222211111111110000000000
   3876  1.1  christos                                                              10987654321098765432109876543210
   3877  1.1  christos                                                              xxxxxxxxxx0100100xx1x1xx01110xxx
   3878  1.1  christos                                                              aese.  */
   3879  1.1  christos                                                           return 533;
   3880  1.1  christos                                                         }
   3881  1.1  christos                                                     }
   3882  1.1  christos                                                   else
   3883  1.1  christos                                                     {
   3884  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   3885  1.1  christos                                                         {
   3886  1.1  christos                                                           if (((word >> 30) & 0x1) == 0)
   3887  1.1  christos                                                             {
   3888  1.1  christos                                                               /* 33222222222211111111110000000000
   3889  1.1  christos                                                                  10987654321098765432109876543210
   3890  1.1  christos                                                                  xxxxxxxxxx0100101xxxx1xx0111000x
   3891  1.1  christos                                                                  sqxtn.  */
   3892  1.1  christos                                                               return 158;
   3893  1.1  christos                                                             }
   3894  1.1  christos                                                           else
   3895  1.1  christos                                                             {
   3896  1.1  christos                                                               /* 33222222222211111111110000000000
   3897  1.1  christos                                                                  10987654321098765432109876543210
   3898  1.1  christos                                                                  xxxxxxxxxx0100101xxxx1xx0111001x
   3899  1.1  christos                                                                  sqxtn2.  */
   3900  1.1  christos                                                               return 159;
   3901  1.1  christos                                                             }
   3902  1.1  christos                                                         }
   3903  1.1  christos                                                       else
   3904  1.1  christos                                                         {
   3905  1.1  christos                                                           if (((word >> 30) & 0x1) == 0)
   3906  1.1  christos                                                             {
   3907  1.1  christos                                                               /* 33222222222211111111110000000000
   3908  1.1  christos                                                                  10987654321098765432109876543210
   3909  1.1  christos                                                                  xxxxxxxxxx0100101xxxx1xx0111010x
   3910  1.1  christos                                                                  uqxtn.  */
   3911  1.1  christos                                                               return 193;
   3912  1.1  christos                                                             }
   3913  1.1  christos                                                           else
   3914  1.1  christos                                                             {
   3915  1.1  christos                                                               /* 33222222222211111111110000000000
   3916  1.1  christos                                                                  10987654321098765432109876543210
   3917  1.1  christos                                                                  xxxxxxxxxx0100101xxxx1xx0111011x
   3918  1.1  christos                                                                  uqxtn2.  */
   3919  1.1  christos                                                               return 194;
   3920  1.1  christos                                                             }
   3921  1.1  christos                                                         }
   3922  1.1  christos                                                     }
   3923  1.1  christos                                                 }
   3924  1.1  christos                                               else
   3925  1.1  christos                                                 {
   3926  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   3927  1.1  christos                                                     {
   3928  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   3929  1.1  christos                                                         {
   3930  1.1  christos                                                           /* 33222222222211111111110000000000
   3931  1.1  christos                                                              10987654321098765432109876543210
   3932  1.1  christos                                                              xxxxxxxxxx010010xxxxx1xx0111100x
   3933  1.1  christos                                                              fmax.  */
   3934  1.1  christos                                                           return 638;
   3935  1.1  christos                                                         }
   3936  1.1  christos                                                       else
   3937  1.1  christos                                                         {
   3938  1.1  christos                                                           /* 33222222222211111111110000000000
   3939  1.1  christos                                                              10987654321098765432109876543210
   3940  1.1  christos                                                              xxxxxxxxxx010010xxxxx1xx0111101x
   3941  1.1  christos                                                              sqxtn.  */
   3942  1.1  christos                                                           return 401;
   3943  1.1  christos                                                         }
   3944  1.1  christos                                                     }
   3945  1.1  christos                                                   else
   3946  1.1  christos                                                     {
   3947  1.1  christos                                                       /* 33222222222211111111110000000000
   3948  1.1  christos                                                          10987654321098765432109876543210
   3949  1.1  christos                                                          xxxxxxxxxx010010xxxxx1xx011111xx
   3950  1.1  christos                                                          uqxtn.  */
   3951  1.1  christos                                                       return 419;
   3952  1.1  christos                                                     }
   3953  1.1  christos                                                 }
   3954  1.1  christos                                             }
   3955  1.1  christos                                           else
   3956  1.1  christos                                             {
   3957  1.1  christos                                               if (((word >> 16) & 0x1) == 0)
   3958  1.1  christos                                                 {
   3959  1.1  christos                                                   if (((word >> 20) & 0x1) == 0)
   3960  1.1  christos                                                     {
   3961  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   3962  1.1  christos                                                         {
   3963  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   3964  1.1  christos                                                             {
   3965  1.1  christos                                                               /* 33222222222211111111110000000000
   3966  1.1  christos                                                                  10987654321098765432109876543210
   3967  1.1  christos                                                                  xxxxxxxxxx0100110xxx01xx011100xx
   3968  1.1  christos                                                                  fcmgt.  */
   3969  1.1  christos                                                               return 170;
   3970  1.1  christos                                                             }
   3971  1.1  christos                                                           else
   3972  1.1  christos                                                             {
   3973  1.1  christos                                                               /* 33222222222211111111110000000000
   3974  1.1  christos                                                                  10987654321098765432109876543210
   3975  1.1  christos                                                                  xxxxxxxxxx0100110xxx01xx011101xx
   3976  1.1  christos                                                                  fcmge.  */
   3977  1.1  christos                                                               return 206;
   3978  1.1  christos                                                             }
   3979  1.1  christos                                                         }
   3980  1.1  christos                                                       else
   3981  1.1  christos                                                         {
   3982  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   3983  1.1  christos                                                             {
   3984  1.1  christos                                                               /* 33222222222211111111110000000000
   3985  1.1  christos                                                                  10987654321098765432109876543210
   3986  1.1  christos                                                                  xxxxxxxxxx0100110xxx01xx011110xx
   3987  1.1  christos                                                                  fcmgt.  */
   3988  1.1  christos                                                               return 406;
   3989  1.1  christos                                                             }
   3990  1.1  christos                                                           else
   3991  1.1  christos                                                             {
   3992  1.1  christos                                                               /* 33222222222211111111110000000000
   3993  1.1  christos                                                                  10987654321098765432109876543210
   3994  1.1  christos                                                                  xxxxxxxxxx0100110xxx01xx011111xx
   3995  1.1  christos                                                                  fcmge.  */
   3996  1.1  christos                                                               return 425;
   3997  1.1  christos                                                             }
   3998  1.1  christos                                                         }
   3999  1.1  christos                                                     }
   4000  1.1  christos                                                   else
   4001  1.1  christos                                                     {
   4002  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   4003  1.1  christos                                                         {
   4004  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   4005  1.1  christos                                                             {
   4006  1.1  christos                                                               /* 33222222222211111111110000000000
   4007  1.1  christos                                                                  10987654321098765432109876543210
   4008  1.1  christos                                                                  xxxxxxxxxx0100110xxx11x001110xxx
   4009  1.1  christos                                                                  fmaxnmv.  */
   4010  1.1  christos                                                               return 34;
   4011  1.1  christos                                                             }
   4012  1.1  christos                                                           else
   4013  1.1  christos                                                             {
   4014  1.1  christos                                                               /* 33222222222211111111110000000000
   4015  1.1  christos                                                                  10987654321098765432109876543210
   4016  1.1  christos                                                                  xxxxxxxxxx0100110xxx11x001111xxx
   4017  1.1  christos                                                                  fmaxnmp.  */
   4018  1.1  christos                                                               return 433;
   4019  1.1  christos                                                             }
   4020  1.1  christos                                                         }
   4021  1.1  christos                                                       else
   4022  1.1  christos                                                         {
   4023  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   4024  1.1  christos                                                             {
   4025  1.1  christos                                                               /* 33222222222211111111110000000000
   4026  1.1  christos                                                                  10987654321098765432109876543210
   4027  1.1  christos                                                                  xxxxxxxxxx0100110xxx11x101110xxx
   4028  1.1  christos                                                                  fminnmv.  */
   4029  1.1  christos                                                               return 36;
   4030  1.1  christos                                                             }
   4031  1.1  christos                                                           else
   4032  1.1  christos                                                             {
   4033  1.1  christos                                                               /* 33222222222211111111110000000000
   4034  1.1  christos                                                                  10987654321098765432109876543210
   4035  1.1  christos                                                                  xxxxxxxxxx0100110xxx11x101111xxx
   4036  1.1  christos                                                                  fminnmp.  */
   4037  1.1  christos                                                               return 436;
   4038  1.1  christos                                                             }
   4039  1.1  christos                                                         }
   4040  1.1  christos                                                     }
   4041  1.1  christos                                                 }
   4042  1.1  christos                                               else
   4043  1.1  christos                                                 {
   4044  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   4045  1.1  christos                                                     {
   4046  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   4047  1.1  christos                                                         {
   4048  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4049  1.1  christos                                                             {
   4050  1.1  christos                                                               /* 33222222222211111111110000000000
   4051  1.1  christos                                                                  10987654321098765432109876543210
   4052  1.1  christos                                                                  xxxxxxxxxx0100111xxxx1x0011100xx
   4053  1.1  christos                                                                  fcvtas.  */
   4054  1.1  christos                                                               return 168;
   4055  1.1  christos                                                             }
   4056  1.1  christos                                                           else
   4057  1.1  christos                                                             {
   4058  1.1  christos                                                               /* 33222222222211111111110000000000
   4059  1.1  christos                                                                  10987654321098765432109876543210
   4060  1.1  christos                                                                  xxxxxxxxxx0100111xxxx1x0011101xx
   4061  1.1  christos                                                                  fcvtau.  */
   4062  1.1  christos                                                               return 201;
   4063  1.1  christos                                                             }
   4064  1.1  christos                                                         }
   4065  1.1  christos                                                       else
   4066  1.1  christos                                                         {
   4067  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4068  1.1  christos                                                             {
   4069  1.1  christos                                                               /* 33222222222211111111110000000000
   4070  1.1  christos                                                                  10987654321098765432109876543210
   4071  1.1  christos                                                                  xxxxxxxxxx0100111xxxx1x0011110xx
   4072  1.1  christos                                                                  fcvtas.  */
   4073  1.1  christos                                                               return 404;
   4074  1.1  christos                                                             }
   4075  1.1  christos                                                           else
   4076  1.1  christos                                                             {
   4077  1.1  christos                                                               /* 33222222222211111111110000000000
   4078  1.1  christos                                                                  10987654321098765432109876543210
   4079  1.1  christos                                                                  xxxxxxxxxx0100111xxxx1x0011111xx
   4080  1.1  christos                                                                  fcvtau.  */
   4081  1.1  christos                                                               return 423;
   4082  1.1  christos                                                             }
   4083  1.1  christos                                                         }
   4084  1.1  christos                                                     }
   4085  1.1  christos                                                   else
   4086  1.1  christos                                                     {
   4087  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4088  1.1  christos                                                         {
   4089  1.1  christos                                                           /* 33222222222211111111110000000000
   4090  1.1  christos                                                              10987654321098765432109876543210
   4091  1.1  christos                                                              xxxxxxxxxx0100111xxxx1x10111x0xx
   4092  1.1  christos                                                              urecpe.  */
   4093  1.1  christos                                                           return 178;
   4094  1.1  christos                                                         }
   4095  1.1  christos                                                       else
   4096  1.1  christos                                                         {
   4097  1.1  christos                                                           /* 33222222222211111111110000000000
   4098  1.1  christos                                                              10987654321098765432109876543210
   4099  1.1  christos                                                              xxxxxxxxxx0100111xxxx1x10111x1xx
   4100  1.1  christos                                                              ursqrte.  */
   4101  1.1  christos                                                           return 212;
   4102  1.1  christos                                                         }
   4103  1.1  christos                                                     }
   4104  1.1  christos                                                 }
   4105  1.1  christos                                             }
   4106  1.1  christos                                         }
   4107  1.1  christos                                     }
   4108  1.1  christos                                   else
   4109  1.1  christos                                     {
   4110  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   4111  1.1  christos                                         {
   4112  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   4113  1.1  christos                                             {
   4114  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   4115  1.1  christos                                                 {
   4116  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   4117  1.1  christos                                                     {
   4118  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4119  1.1  christos                                                         {
   4120  1.1  christos                                                           /* 33222222222211111111110000000000
   4121  1.1  christos                                                              10987654321098765432109876543210
   4122  1.1  christos                                                              xxxxxxxxxx0101000xxxx1xx011100xx
   4123  1.1  christos                                                              saddlp.  */
   4124  1.1  christos                                                           return 146;
   4125  1.1  christos                                                         }
   4126  1.1  christos                                                       else
   4127  1.1  christos                                                         {
   4128  1.1  christos                                                           /* 33222222222211111111110000000000
   4129  1.1  christos                                                              10987654321098765432109876543210
   4130  1.1  christos                                                              xxxxxxxxxx0101000xxxx1xx011101xx
   4131  1.1  christos                                                              uaddlp.  */
   4132  1.1  christos                                                           return 181;
   4133  1.1  christos                                                         }
   4134  1.1  christos                                                     }
   4135  1.1  christos                                                   else
   4136  1.1  christos                                                     {
   4137  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4138  1.1  christos                                                         {
   4139  1.1  christos                                                           if (((word >> 30) & 0x1) == 0)
   4140  1.1  christos                                                             {
   4141  1.1  christos                                                               /* 33222222222211111111110000000000
   4142  1.1  christos                                                                  10987654321098765432109876543210
   4143  1.1  christos                                                                  xxxxxxxxxx0101001xxxx1xx0111000x
   4144  1.1  christos                                                                  xtn.  */
   4145  1.1  christos                                                               return 156;
   4146  1.1  christos                                                             }
   4147  1.1  christos                                                           else
   4148  1.1  christos                                                             {
   4149  1.1  christos                                                               /* 33222222222211111111110000000000
   4150  1.1  christos                                                                  10987654321098765432109876543210
   4151  1.1  christos                                                                  xxxxxxxxxx0101001xxxx1xx0111001x
   4152  1.1  christos                                                                  xtn2.  */
   4153  1.1  christos                                                               return 157;
   4154  1.1  christos                                                             }
   4155  1.1  christos                                                         }
   4156  1.1  christos                                                       else
   4157  1.1  christos                                                         {
   4158  1.1  christos                                                           if (((word >> 30) & 0x1) == 0)
   4159  1.1  christos                                                             {
   4160  1.1  christos                                                               /* 33222222222211111111110000000000
   4161  1.1  christos                                                                  10987654321098765432109876543210
   4162  1.1  christos                                                                  xxxxxxxxxx0101001xxxx1xx0111010x
   4163  1.1  christos                                                                  sqxtun.  */
   4164  1.1  christos                                                               return 189;
   4165  1.1  christos                                                             }
   4166  1.1  christos                                                           else
   4167  1.1  christos                                                             {
   4168  1.1  christos                                                               /* 33222222222211111111110000000000
   4169  1.1  christos                                                                  10987654321098765432109876543210
   4170  1.1  christos                                                                  xxxxxxxxxx0101001xxxx1xx0111011x
   4171  1.1  christos                                                                  sqxtun2.  */
   4172  1.1  christos                                                               return 190;
   4173  1.1  christos                                                             }
   4174  1.1  christos                                                         }
   4175  1.1  christos                                                     }
   4176  1.1  christos                                                 }
   4177  1.1  christos                                               else
   4178  1.1  christos                                                 {
   4179  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   4180  1.1  christos                                                     {
   4181  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   4182  1.1  christos                                                         {
   4183  1.1  christos                                                           /* 33222222222211111111110000000000
   4184  1.1  christos                                                              10987654321098765432109876543210
   4185  1.1  christos                                                              xxxxxxxxxx010100xxxxx1xx0111100x
   4186  1.1  christos                                                              fadd.  */
   4187  1.1  christos                                                           return 636;
   4188  1.1  christos                                                         }
   4189  1.1  christos                                                       else
   4190  1.1  christos                                                         {
   4191  1.1  christos                                                           /* 33222222222211111111110000000000
   4192  1.1  christos                                                              10987654321098765432109876543210
   4193  1.1  christos                                                              xxxxxxxxxx010100xxxxx1xx0111101x
   4194  1.1  christos                                                              sha256su0.  */
   4195  1.1  christos                                                           return 539;
   4196  1.1  christos                                                         }
   4197  1.1  christos                                                     }
   4198  1.1  christos                                                   else
   4199  1.1  christos                                                     {
   4200  1.1  christos                                                       /* 33222222222211111111110000000000
   4201  1.1  christos                                                          10987654321098765432109876543210
   4202  1.1  christos                                                          xxxxxxxxxx010100xxxxx1xx011111xx
   4203  1.1  christos                                                          sqxtun.  */
   4204  1.1  christos                                                       return 418;
   4205  1.1  christos                                                     }
   4206  1.1  christos                                                 }
   4207  1.1  christos                                             }
   4208  1.1  christos                                           else
   4209  1.1  christos                                             {
   4210  1.1  christos                                               if (((word >> 16) & 0x1) == 0)
   4211  1.1  christos                                                 {
   4212  1.1  christos                                                   if (((word >> 20) & 0x1) == 0)
   4213  1.1  christos                                                     {
   4214  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   4215  1.1  christos                                                         {
   4216  1.1  christos                                                           /* 33222222222211111111110000000000
   4217  1.1  christos                                                              10987654321098765432109876543210
   4218  1.1  christos                                                              xxxxxxxxxx0101010xxx01xx01110xxx
   4219  1.1  christos                                                              cmlt.  */
   4220  1.1  christos                                                           return 154;
   4221  1.1  christos                                                         }
   4222  1.1  christos                                                       else
   4223  1.1  christos                                                         {
   4224  1.1  christos                                                           /* 33222222222211111111110000000000
   4225  1.1  christos                                                              10987654321098765432109876543210
   4226  1.1  christos                                                              xxxxxxxxxx0101010xxx01xx01111xxx
   4227  1.1  christos                                                              cmlt.  */
   4228  1.1  christos                                                           return 399;
   4229  1.1  christos                                                         }
   4230  1.1  christos                                                     }
   4231  1.1  christos                                                   else
   4232  1.1  christos                                                     {
   4233  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4234  1.1  christos                                                         {
   4235  1.1  christos                                                           /* 33222222222211111111110000000000
   4236  1.1  christos                                                              10987654321098765432109876543210
   4237  1.1  christos                                                              xxxxxxxxxx0101010xxx11xx0111x0xx
   4238  1.1  christos                                                              smaxv.  */
   4239  1.1  christos                                                           return 28;
   4240  1.1  christos                                                         }
   4241  1.1  christos                                                       else
   4242  1.1  christos                                                         {
   4243  1.1  christos                                                           /* 33222222222211111111110000000000
   4244  1.1  christos                                                              10987654321098765432109876543210
   4245  1.1  christos                                                              xxxxxxxxxx0101010xxx11xx0111x1xx
   4246  1.1  christos                                                              umaxv.  */
   4247  1.1  christos                                                           return 32;
   4248  1.1  christos                                                         }
   4249  1.1  christos                                                     }
   4250  1.1  christos                                                 }
   4251  1.1  christos                                               else
   4252  1.1  christos                                                 {
   4253  1.1  christos                                                   if (((word >> 20) & 0x1) == 0)
   4254  1.1  christos                                                     {
   4255  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   4256  1.1  christos                                                         {
   4257  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   4258  1.1  christos                                                             {
   4259  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4260  1.1  christos                                                                 {
   4261  1.1  christos                                                                   /* 33222222222211111111110000000000
   4262  1.1  christos                                                                      10987654321098765432109876543210
   4263  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x0011100xx
   4264  1.1  christos                                                                      fcvtns.  */
   4265  1.1  christos                                                                   return 166;
   4266  1.1  christos                                                                 }
   4267  1.1  christos                                                               else
   4268  1.1  christos                                                                 {
   4269  1.1  christos                                                                   /* 33222222222211111111110000000000
   4270  1.1  christos                                                                      10987654321098765432109876543210
   4271  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x0011101xx
   4272  1.1  christos                                                                      fcvtnu.  */
   4273  1.1  christos                                                                   return 199;
   4274  1.1  christos                                                                 }
   4275  1.1  christos                                                             }
   4276  1.1  christos                                                           else
   4277  1.1  christos                                                             {
   4278  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4279  1.1  christos                                                                 {
   4280  1.1  christos                                                                   /* 33222222222211111111110000000000
   4281  1.1  christos                                                                      10987654321098765432109876543210
   4282  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x0011110xx
   4283  1.1  christos                                                                      fcvtns.  */
   4284  1.1  christos                                                                   return 402;
   4285  1.1  christos                                                                 }
   4286  1.1  christos                                                               else
   4287  1.1  christos                                                                 {
   4288  1.1  christos                                                                   /* 33222222222211111111110000000000
   4289  1.1  christos                                                                      10987654321098765432109876543210
   4290  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x0011111xx
   4291  1.1  christos                                                                      fcvtnu.  */
   4292  1.1  christos                                                                   return 421;
   4293  1.1  christos                                                                 }
   4294  1.1  christos                                                             }
   4295  1.1  christos                                                         }
   4296  1.1  christos                                                       else
   4297  1.1  christos                                                         {
   4298  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   4299  1.1  christos                                                             {
   4300  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4301  1.1  christos                                                                 {
   4302  1.1  christos                                                                   /* 33222222222211111111110000000000
   4303  1.1  christos                                                                      10987654321098765432109876543210
   4304  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x1011100xx
   4305  1.1  christos                                                                      fcvtps.  */
   4306  1.1  christos                                                                   return 176;
   4307  1.1  christos                                                                 }
   4308  1.1  christos                                                               else
   4309  1.1  christos                                                                 {
   4310  1.1  christos                                                                   /* 33222222222211111111110000000000
   4311  1.1  christos                                                                      10987654321098765432109876543210
   4312  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x1011101xx
   4313  1.1  christos                                                                      fcvtpu.  */
   4314  1.1  christos                                                                   return 210;
   4315  1.1  christos                                                                 }
   4316  1.1  christos                                                             }
   4317  1.1  christos                                                           else
   4318  1.1  christos                                                             {
   4319  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4320  1.1  christos                                                                 {
   4321  1.1  christos                                                                   /* 33222222222211111111110000000000
   4322  1.1  christos                                                                      10987654321098765432109876543210
   4323  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x1011110xx
   4324  1.1  christos                                                                      fcvtps.  */
   4325  1.1  christos                                                                   return 409;
   4326  1.1  christos                                                                 }
   4327  1.1  christos                                                               else
   4328  1.1  christos                                                                 {
   4329  1.1  christos                                                                   /* 33222222222211111111110000000000
   4330  1.1  christos                                                                      10987654321098765432109876543210
   4331  1.1  christos                                                                      xxxxxxxxxx0101011xxx01x1011111xx
   4332  1.1  christos                                                                      fcvtpu.  */
   4333  1.1  christos                                                                   return 427;
   4334  1.1  christos                                                                 }
   4335  1.1  christos                                                             }
   4336  1.1  christos                                                         }
   4337  1.1  christos                                                     }
   4338  1.1  christos                                                   else
   4339  1.1  christos                                                     {
   4340  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4341  1.1  christos                                                         {
   4342  1.1  christos                                                           /* 33222222222211111111110000000000
   4343  1.1  christos                                                              10987654321098765432109876543210
   4344  1.1  christos                                                              xxxxxxxxxx0101011xxx11xx0111x0xx
   4345  1.1  christos                                                              sminv.  */
   4346  1.1  christos                                                           return 29;
   4347  1.1  christos                                                         }
   4348  1.1  christos                                                       else
   4349  1.1  christos                                                         {
   4350  1.1  christos                                                           /* 33222222222211111111110000000000
   4351  1.1  christos                                                              10987654321098765432109876543210
   4352  1.1  christos                                                              xxxxxxxxxx0101011xxx11xx0111x1xx
   4353  1.1  christos                                                              uminv.  */
   4354  1.1  christos                                                           return 33;
   4355  1.1  christos                                                         }
   4356  1.1  christos                                                     }
   4357  1.1  christos                                                 }
   4358  1.1  christos                                             }
   4359  1.1  christos                                         }
   4360  1.1  christos                                       else
   4361  1.1  christos                                         {
   4362  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   4363  1.1  christos                                             {
   4364  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   4365  1.1  christos                                                 {
   4366  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   4367  1.1  christos                                                     {
   4368  1.1  christos                                                       if (((word >> 19) & 0x1) == 0)
   4369  1.1  christos                                                         {
   4370  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4371  1.1  christos                                                             {
   4372  1.1  christos                                                               /* 33222222222211111111110000000000
   4373  1.1  christos                                                                  10987654321098765432109876543210
   4374  1.1  christos                                                                  xxxxxxxxxx0101100xx0x1xx011100xx
   4375  1.1  christos                                                                  sadalp.  */
   4376  1.1  christos                                                               return 150;
   4377  1.1  christos                                                             }
   4378  1.1  christos                                                           else
   4379  1.1  christos                                                             {
   4380  1.1  christos                                                               /* 33222222222211111111110000000000
   4381  1.1  christos                                                                  10987654321098765432109876543210
   4382  1.1  christos                                                                  xxxxxxxxxx0101100xx0x1xx011101xx
   4383  1.1  christos                                                                  uadalp.  */
   4384  1.1  christos                                                               return 184;
   4385  1.1  christos                                                             }
   4386  1.1  christos                                                         }
   4387  1.1  christos                                                       else
   4388  1.1  christos                                                         {
   4389  1.1  christos                                                           /* 33222222222211111111110000000000
   4390  1.1  christos                                                              10987654321098765432109876543210
   4391  1.1  christos                                                              xxxxxxxxxx0101100xx1x1xx01110xxx
   4392  1.1  christos                                                              aesmc.  */
   4393  1.1  christos                                                           return 535;
   4394  1.1  christos                                                         }
   4395  1.1  christos                                                     }
   4396  1.1  christos                                                   else
   4397  1.1  christos                                                     {
   4398  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4399  1.1  christos                                                         {
   4400  1.1  christos                                                           if (((word >> 30) & 0x1) == 0)
   4401  1.1  christos                                                             {
   4402  1.1  christos                                                               /* 33222222222211111111110000000000
   4403  1.1  christos                                                                  10987654321098765432109876543210
   4404  1.1  christos                                                                  xxxxxxxxxx0101101xxxx1xx0111000x
   4405  1.1  christos                                                                  fcvtn.  */
   4406  1.1  christos                                                               return 160;
   4407  1.1  christos                                                             }
   4408  1.1  christos                                                           else
   4409  1.1  christos                                                             {
   4410  1.1  christos                                                               /* 33222222222211111111110000000000
   4411  1.1  christos                                                                  10987654321098765432109876543210
   4412  1.1  christos                                                                  xxxxxxxxxx0101101xxxx1xx0111001x
   4413  1.1  christos                                                                  fcvtn2.  */
   4414  1.1  christos                                                               return 161;
   4415  1.1  christos                                                             }
   4416  1.1  christos                                                         }
   4417  1.1  christos                                                       else
   4418  1.1  christos                                                         {
   4419  1.1  christos                                                           if (((word >> 30) & 0x1) == 0)
   4420  1.1  christos                                                             {
   4421  1.1  christos                                                               /* 33222222222211111111110000000000
   4422  1.1  christos                                                                  10987654321098765432109876543210
   4423  1.1  christos                                                                  xxxxxxxxxx0101101xxxx1xx0111010x
   4424  1.1  christos                                                                  fcvtxn.  */
   4425  1.1  christos                                                               return 195;
   4426  1.1  christos                                                             }
   4427  1.1  christos                                                           else
   4428  1.1  christos                                                             {
   4429  1.1  christos                                                               /* 33222222222211111111110000000000
   4430  1.1  christos                                                                  10987654321098765432109876543210
   4431  1.1  christos                                                                  xxxxxxxxxx0101101xxxx1xx0111011x
   4432  1.1  christos                                                                  fcvtxn2.  */
   4433  1.1  christos                                                               return 196;
   4434  1.1  christos                                                             }
   4435  1.1  christos                                                         }
   4436  1.1  christos                                                     }
   4437  1.1  christos                                                 }
   4438  1.1  christos                                               else
   4439  1.1  christos                                                 {
   4440  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   4441  1.1  christos                                                     {
   4442  1.1  christos                                                       /* 33222222222211111111110000000000
   4443  1.1  christos                                                          10987654321098765432109876543210
   4444  1.1  christos                                                          xxxxxxxxxx010110xxxxx1xx011110xx
   4445  1.1  christos                                                          fmaxnm.  */
   4446  1.1  christos                                                       return 640;
   4447  1.1  christos                                                     }
   4448  1.1  christos                                                   else
   4449  1.1  christos                                                     {
   4450  1.1  christos                                                       /* 33222222222211111111110000000000
   4451  1.1  christos                                                          10987654321098765432109876543210
   4452  1.1  christos                                                          xxxxxxxxxx010110xxxxx1xx011111xx
   4453  1.1  christos                                                          fcvtxn.  */
   4454  1.1  christos                                                       return 420;
   4455  1.1  christos                                                     }
   4456  1.1  christos                                                 }
   4457  1.1  christos                                             }
   4458  1.1  christos                                           else
   4459  1.1  christos                                             {
   4460  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   4461  1.1  christos                                                 {
   4462  1.1  christos                                                   /* 33222222222211111111110000000000
   4463  1.1  christos                                                      10987654321098765432109876543210
   4464  1.1  christos                                                      xxxxxxxxxx010111xxxxx1xx01110xxx
   4465  1.1  christos                                                      fcmlt.  */
   4466  1.1  christos                                                   return 172;
   4467  1.1  christos                                                 }
   4468  1.1  christos                                               else
   4469  1.1  christos                                                 {
   4470  1.1  christos                                                   /* 33222222222211111111110000000000
   4471  1.1  christos                                                      10987654321098765432109876543210
   4472  1.1  christos                                                      xxxxxxxxxx010111xxxxx1xx01111xxx
   4473  1.1  christos                                                      fcmlt.  */
   4474  1.1  christos                                                   return 408;
   4475  1.1  christos                                                 }
   4476  1.1  christos                                             }
   4477  1.1  christos                                         }
   4478  1.1  christos                                     }
   4479  1.1  christos                                 }
   4480  1.1  christos                               else
   4481  1.1  christos                                 {
   4482  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   4483  1.1  christos                                     {
   4484  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   4485  1.1  christos                                         {
   4486  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   4487  1.1  christos                                             {
   4488  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   4489  1.1  christos                                                 {
   4490  1.1  christos                                                   /* 33222222222211111111110000000000
   4491  1.1  christos                                                      10987654321098765432109876543210
   4492  1.1  christos                                                      xxxxxxxxxx011000xxxxx1xx01110xxx
   4493  1.1  christos                                                      rev16.  */
   4494  1.1  christos                                                   return 145;
   4495  1.1  christos                                                 }
   4496  1.1  christos                                               else
   4497  1.1  christos                                                 {
   4498  1.1  christos                                                   if (((word >> 30) & 0x1) == 0)
   4499  1.1  christos                                                     {
   4500  1.1  christos                                                       /* 33222222222211111111110000000000
   4501  1.1  christos                                                          10987654321098765432109876543210
   4502  1.1  christos                                                          xxxxxxxxxx011000xxxxx1xx01111x0x
   4503  1.1  christos                                                          fdiv.  */
   4504  1.1  christos                                                       return 635;
   4505  1.1  christos                                                     }
   4506  1.1  christos                                                   else
   4507  1.1  christos                                                     {
   4508  1.1  christos                                                       /* 33222222222211111111110000000000
   4509  1.1  christos                                                          10987654321098765432109876543210
   4510  1.1  christos                                                          xxxxxxxxxx011000xxxxx1xx01111x1x
   4511  1.1  christos                                                          sha1su1.  */
   4512  1.1  christos                                                       return 538;
   4513  1.1  christos                                                     }
   4514  1.1  christos                                                 }
   4515  1.1  christos                                             }
   4516  1.1  christos                                           else
   4517  1.1  christos                                             {
   4518  1.1  christos                                               if (((word >> 16) & 0x1) == 0)
   4519  1.1  christos                                                 {
   4520  1.1  christos                                                   if (((word >> 28) & 0x1) == 0)
   4521  1.1  christos                                                     {
   4522  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4523  1.1  christos                                                         {
   4524  1.1  christos                                                           /* 33222222222211111111110000000000
   4525  1.1  christos                                                              10987654321098765432109876543210
   4526  1.1  christos                                                              xxxxxxxxxx0110010xxxx1xx011100xx
   4527  1.1  christos                                                              cmeq.  */
   4528  1.1  christos                                                           return 153;
   4529  1.1  christos                                                         }
   4530  1.1  christos                                                       else
   4531  1.1  christos                                                         {
   4532  1.1  christos                                                           /* 33222222222211111111110000000000
   4533  1.1  christos                                                              10987654321098765432109876543210
   4534  1.1  christos                                                              xxxxxxxxxx0110010xxxx1xx011101xx
   4535  1.1  christos                                                              cmle.  */
   4536  1.1  christos                                                           return 187;
   4537  1.1  christos                                                         }
   4538  1.1  christos                                                     }
   4539  1.1  christos                                                   else
   4540  1.1  christos                                                     {
   4541  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4542  1.1  christos                                                         {
   4543  1.1  christos                                                           /* 33222222222211111111110000000000
   4544  1.1  christos                                                              10987654321098765432109876543210
   4545  1.1  christos                                                              xxxxxxxxxx0110010xxxx1xx011110xx
   4546  1.1  christos                                                              cmeq.  */
   4547  1.1  christos                                                           return 398;
   4548  1.1  christos                                                         }
   4549  1.1  christos                                                       else
   4550  1.1  christos                                                         {
   4551  1.1  christos                                                           /* 33222222222211111111110000000000
   4552  1.1  christos                                                              10987654321098765432109876543210
   4553  1.1  christos                                                              xxxxxxxxxx0110010xxxx1xx011111xx
   4554  1.1  christos                                                              cmle.  */
   4555  1.1  christos                                                           return 416;
   4556  1.1  christos                                                         }
   4557  1.1  christos                                                     }
   4558  1.1  christos                                                 }
   4559  1.1  christos                                               else
   4560  1.1  christos                                                 {
   4561  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   4562  1.1  christos                                                     {
   4563  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4564  1.1  christos                                                         {
   4565  1.1  christos                                                           /* 33222222222211111111110000000000
   4566  1.1  christos                                                              10987654321098765432109876543210
   4567  1.1  christos                                                              xxxxxxxxxx0110011xxxx1x00111x0xx
   4568  1.1  christos                                                              frintm.  */
   4569  1.1  christos                                                           return 165;
   4570  1.1  christos                                                         }
   4571  1.1  christos                                                       else
   4572  1.1  christos                                                         {
   4573  1.1  christos                                                           /* 33222222222211111111110000000000
   4574  1.1  christos                                                              10987654321098765432109876543210
   4575  1.1  christos                                                              xxxxxxxxxx0110011xxxx1x00111x1xx
   4576  1.1  christos                                                              frintx.  */
   4577  1.1  christos                                                           return 198;
   4578  1.1  christos                                                         }
   4579  1.1  christos                                                     }
   4580  1.1  christos                                                   else
   4581  1.1  christos                                                     {
   4582  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4583  1.1  christos                                                         {
   4584  1.1  christos                                                           /* 33222222222211111111110000000000
   4585  1.1  christos                                                              10987654321098765432109876543210
   4586  1.1  christos                                                              xxxxxxxxxx0110011xxxx1x10111x0xx
   4587  1.1  christos                                                              frintz.  */
   4588  1.1  christos                                                           return 175;
   4589  1.1  christos                                                         }
   4590  1.1  christos                                                       else
   4591  1.1  christos                                                         {
   4592  1.1  christos                                                           /* 33222222222211111111110000000000
   4593  1.1  christos                                                              10987654321098765432109876543210
   4594  1.1  christos                                                              xxxxxxxxxx0110011xxxx1x10111x1xx
   4595  1.1  christos                                                              frinti.  */
   4596  1.1  christos                                                           return 209;
   4597  1.1  christos                                                         }
   4598  1.1  christos                                                     }
   4599  1.1  christos                                                 }
   4600  1.1  christos                                             }
   4601  1.1  christos                                         }
   4602  1.1  christos                                       else
   4603  1.1  christos                                         {
   4604  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   4605  1.1  christos                                             {
   4606  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   4607  1.1  christos                                                 {
   4608  1.1  christos                                                   if (((word >> 19) & 0x1) == 0)
   4609  1.1  christos                                                     {
   4610  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4611  1.1  christos                                                         {
   4612  1.1  christos                                                           /* 33222222222211111111110000000000
   4613  1.1  christos                                                              10987654321098765432109876543210
   4614  1.1  christos                                                              xxxxxxxxxx011010xxx0x1xx011100xx
   4615  1.1  christos                                                              cnt.  */
   4616  1.1  christos                                                           return 149;
   4617  1.1  christos                                                         }
   4618  1.1  christos                                                       else
   4619  1.1  christos                                                         {
   4620  1.1  christos                                                           if (((word >> 22) & 0x1) == 0)
   4621  1.1  christos                                                             {
   4622  1.1  christos                                                               /* 33222222222211111111110000000000
   4623  1.1  christos                                                                  10987654321098765432109876543210
   4624  1.1  christos                                                                  xxxxxxxxxx011010xxx0x10x011101xx
   4625  1.1  christos                                                                  not.  */
   4626  1.1  christos                                                               return 203;
   4627  1.1  christos                                                             }
   4628  1.1  christos                                                           else
   4629  1.1  christos                                                             {
   4630  1.1  christos                                                               /* 33222222222211111111110000000000
   4631  1.1  christos                                                                  10987654321098765432109876543210
   4632  1.1  christos                                                                  xxxxxxxxxx011010xxx0x11x011101xx
   4633  1.1  christos                                                                  rbit.  */
   4634  1.1  christos                                                               return 205;
   4635  1.1  christos                                                             }
   4636  1.1  christos                                                         }
   4637  1.1  christos                                                     }
   4638  1.1  christos                                                   else
   4639  1.1  christos                                                     {
   4640  1.1  christos                                                       /* 33222222222211111111110000000000
   4641  1.1  christos                                                          10987654321098765432109876543210
   4642  1.1  christos                                                          xxxxxxxxxx011010xxx1x1xx01110xxx
   4643  1.1  christos                                                          aesd.  */
   4644  1.1  christos                                                       return 534;
   4645  1.1  christos                                                     }
   4646  1.1  christos                                                 }
   4647  1.1  christos                                               else
   4648  1.1  christos                                                 {
   4649  1.1  christos                                                   /* 33222222222211111111110000000000
   4650  1.1  christos                                                      10987654321098765432109876543210
   4651  1.1  christos                                                      xxxxxxxxxx011010xxxxx1xx01111xxx
   4652  1.1  christos                                                      fmin.  */
   4653  1.1  christos                                                   return 639;
   4654  1.1  christos                                                 }
   4655  1.1  christos                                             }
   4656  1.1  christos                                           else
   4657  1.1  christos                                             {
   4658  1.1  christos                                               if (((word >> 16) & 0x1) == 0)
   4659  1.1  christos                                                 {
   4660  1.1  christos                                                   if (((word >> 20) & 0x1) == 0)
   4661  1.1  christos                                                     {
   4662  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   4663  1.1  christos                                                         {
   4664  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4665  1.1  christos                                                             {
   4666  1.1  christos                                                               /* 33222222222211111111110000000000
   4667  1.1  christos                                                                  10987654321098765432109876543210
   4668  1.1  christos                                                                  xxxxxxxxxx0110110xxx01xx011100xx
   4669  1.1  christos                                                                  fcmeq.  */
   4670  1.1  christos                                                               return 171;
   4671  1.1  christos                                                             }
   4672  1.1  christos                                                           else
   4673  1.1  christos                                                             {
   4674  1.1  christos                                                               /* 33222222222211111111110000000000
   4675  1.1  christos                                                                  10987654321098765432109876543210
   4676  1.1  christos                                                                  xxxxxxxxxx0110110xxx01xx011101xx
   4677  1.1  christos                                                                  fcmle.  */
   4678  1.1  christos                                                               return 207;
   4679  1.1  christos                                                             }
   4680  1.1  christos                                                         }
   4681  1.1  christos                                                       else
   4682  1.1  christos                                                         {
   4683  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4684  1.1  christos                                                             {
   4685  1.1  christos                                                               /* 33222222222211111111110000000000
   4686  1.1  christos                                                                  10987654321098765432109876543210
   4687  1.1  christos                                                                  xxxxxxxxxx0110110xxx01xx011110xx
   4688  1.1  christos                                                                  fcmeq.  */
   4689  1.1  christos                                                               return 407;
   4690  1.1  christos                                                             }
   4691  1.1  christos                                                           else
   4692  1.1  christos                                                             {
   4693  1.1  christos                                                               /* 33222222222211111111110000000000
   4694  1.1  christos                                                                  10987654321098765432109876543210
   4695  1.1  christos                                                                  xxxxxxxxxx0110110xxx01xx011111xx
   4696  1.1  christos                                                                  fcmle.  */
   4697  1.1  christos                                                               return 426;
   4698  1.1  christos                                                             }
   4699  1.1  christos                                                         }
   4700  1.1  christos                                                     }
   4701  1.1  christos                                                   else
   4702  1.1  christos                                                     {
   4703  1.1  christos                                                       /* 33222222222211111111110000000000
   4704  1.1  christos                                                          10987654321098765432109876543210
   4705  1.1  christos                                                          xxxxxxxxxx0110110xxx11xx0111xxxx
   4706  1.1  christos                                                          faddp.  */
   4707  1.1  christos                                                       return 434;
   4708  1.1  christos                                                     }
   4709  1.1  christos                                                 }
   4710  1.1  christos                                               else
   4711  1.1  christos                                                 {
   4712  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   4713  1.1  christos                                                     {
   4714  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   4715  1.1  christos                                                         {
   4716  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4717  1.1  christos                                                             {
   4718  1.1  christos                                                               /* 33222222222211111111110000000000
   4719  1.1  christos                                                                  10987654321098765432109876543210
   4720  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x0011100xx
   4721  1.1  christos                                                                  scvtf.  */
   4722  1.1  christos                                                               return 169;
   4723  1.1  christos                                                             }
   4724  1.1  christos                                                           else
   4725  1.1  christos                                                             {
   4726  1.1  christos                                                               /* 33222222222211111111110000000000
   4727  1.1  christos                                                                  10987654321098765432109876543210
   4728  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x0011101xx
   4729  1.1  christos                                                                  ucvtf.  */
   4730  1.1  christos                                                               return 202;
   4731  1.1  christos                                                             }
   4732  1.1  christos                                                         }
   4733  1.1  christos                                                       else
   4734  1.1  christos                                                         {
   4735  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4736  1.1  christos                                                             {
   4737  1.1  christos                                                               /* 33222222222211111111110000000000
   4738  1.1  christos                                                                  10987654321098765432109876543210
   4739  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x0011110xx
   4740  1.1  christos                                                                  scvtf.  */
   4741  1.1  christos                                                               return 405;
   4742  1.1  christos                                                             }
   4743  1.1  christos                                                           else
   4744  1.1  christos                                                             {
   4745  1.1  christos                                                               /* 33222222222211111111110000000000
   4746  1.1  christos                                                                  10987654321098765432109876543210
   4747  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x0011111xx
   4748  1.1  christos                                                                  ucvtf.  */
   4749  1.1  christos                                                               return 424;
   4750  1.1  christos                                                             }
   4751  1.1  christos                                                         }
   4752  1.1  christos                                                     }
   4753  1.1  christos                                                   else
   4754  1.1  christos                                                     {
   4755  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   4756  1.1  christos                                                         {
   4757  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4758  1.1  christos                                                             {
   4759  1.1  christos                                                               /* 33222222222211111111110000000000
   4760  1.1  christos                                                                  10987654321098765432109876543210
   4761  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x1011100xx
   4762  1.1  christos                                                                  frecpe.  */
   4763  1.1  christos                                                               return 179;
   4764  1.1  christos                                                             }
   4765  1.1  christos                                                           else
   4766  1.1  christos                                                             {
   4767  1.1  christos                                                               /* 33222222222211111111110000000000
   4768  1.1  christos                                                                  10987654321098765432109876543210
   4769  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x1011101xx
   4770  1.1  christos                                                                  frsqrte.  */
   4771  1.1  christos                                                               return 213;
   4772  1.1  christos                                                             }
   4773  1.1  christos                                                         }
   4774  1.1  christos                                                       else
   4775  1.1  christos                                                         {
   4776  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4777  1.1  christos                                                             {
   4778  1.1  christos                                                               /* 33222222222211111111110000000000
   4779  1.1  christos                                                                  10987654321098765432109876543210
   4780  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x1011110xx
   4781  1.1  christos                                                                  frecpe.  */
   4782  1.1  christos                                                               return 411;
   4783  1.1  christos                                                             }
   4784  1.1  christos                                                           else
   4785  1.1  christos                                                             {
   4786  1.1  christos                                                               /* 33222222222211111111110000000000
   4787  1.1  christos                                                                  10987654321098765432109876543210
   4788  1.1  christos                                                                  xxxxxxxxxx0110111xxxx1x1011111xx
   4789  1.1  christos                                                                  frsqrte.  */
   4790  1.1  christos                                                               return 429;
   4791  1.1  christos                                                             }
   4792  1.1  christos                                                         }
   4793  1.1  christos                                                     }
   4794  1.1  christos                                                 }
   4795  1.1  christos                                             }
   4796  1.1  christos                                         }
   4797  1.1  christos                                     }
   4798  1.1  christos                                   else
   4799  1.1  christos                                     {
   4800  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   4801  1.1  christos                                         {
   4802  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   4803  1.1  christos                                             {
   4804  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   4805  1.1  christos                                                 {
   4806  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   4807  1.1  christos                                                     {
   4808  1.1  christos                                                       if (((word >> 20) & 0x1) == 0)
   4809  1.1  christos                                                         {
   4810  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4811  1.1  christos                                                             {
   4812  1.1  christos                                                               /* 33222222222211111111110000000000
   4813  1.1  christos                                                                  10987654321098765432109876543210
   4814  1.1  christos                                                                  xxxxxxxxxx0111000xxx01xx011100xx
   4815  1.1  christos                                                                  suqadd.  */
   4816  1.1  christos                                                               return 147;
   4817  1.1  christos                                                             }
   4818  1.1  christos                                                           else
   4819  1.1  christos                                                             {
   4820  1.1  christos                                                               /* 33222222222211111111110000000000
   4821  1.1  christos                                                                  10987654321098765432109876543210
   4822  1.1  christos                                                                  xxxxxxxxxx0111000xxx01xx011101xx
   4823  1.1  christos                                                                  usqadd.  */
   4824  1.1  christos                                                               return 182;
   4825  1.1  christos                                                             }
   4826  1.1  christos                                                         }
   4827  1.1  christos                                                       else
   4828  1.1  christos                                                         {
   4829  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   4830  1.1  christos                                                             {
   4831  1.1  christos                                                               /* 33222222222211111111110000000000
   4832  1.1  christos                                                                  10987654321098765432109876543210
   4833  1.1  christos                                                                  xxxxxxxxxx0111000xxx11xx011100xx
   4834  1.1  christos                                                                  saddlv.  */
   4835  1.1  christos                                                               return 27;
   4836  1.1  christos                                                             }
   4837  1.1  christos                                                           else
   4838  1.1  christos                                                             {
   4839  1.1  christos                                                               /* 33222222222211111111110000000000
   4840  1.1  christos                                                                  10987654321098765432109876543210
   4841  1.1  christos                                                                  xxxxxxxxxx0111000xxx11xx011101xx
   4842  1.1  christos                                                                  uaddlv.  */
   4843  1.1  christos                                                               return 31;
   4844  1.1  christos                                                             }
   4845  1.1  christos                                                         }
   4846  1.1  christos                                                     }
   4847  1.1  christos                                                   else
   4848  1.1  christos                                                     {
   4849  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   4850  1.1  christos                                                         {
   4851  1.1  christos                                                           /* 33222222222211111111110000000000
   4852  1.1  christos                                                              10987654321098765432109876543210
   4853  1.1  christos                                                              xxxxxxxxxx0111001xxxx1xx01110x0x
   4854  1.1  christos                                                              shll.  */
   4855  1.1  christos                                                           return 191;
   4856  1.1  christos                                                         }
   4857  1.1  christos                                                       else
   4858  1.1  christos                                                         {
   4859  1.1  christos                                                           /* 33222222222211111111110000000000
   4860  1.1  christos                                                              10987654321098765432109876543210
   4861  1.1  christos                                                              xxxxxxxxxx0111001xxxx1xx01110x1x
   4862  1.1  christos                                                              shll2.  */
   4863  1.1  christos                                                           return 192;
   4864  1.1  christos                                                         }
   4865  1.1  christos                                                     }
   4866  1.1  christos                                                 }
   4867  1.1  christos                                               else
   4868  1.1  christos                                                 {
   4869  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   4870  1.1  christos                                                     {
   4871  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   4872  1.1  christos                                                         {
   4873  1.1  christos                                                           /* 33222222222211111111110000000000
   4874  1.1  christos                                                              10987654321098765432109876543210
   4875  1.1  christos                                                              xxxxxxxxxx011100xxxxx1xx0111100x
   4876  1.1  christos                                                              fsub.  */
   4877  1.1  christos                                                           return 637;
   4878  1.1  christos                                                         }
   4879  1.1  christos                                                       else
   4880  1.1  christos                                                         {
   4881  1.1  christos                                                           /* 33222222222211111111110000000000
   4882  1.1  christos                                                              10987654321098765432109876543210
   4883  1.1  christos                                                              xxxxxxxxxx011100xxxxx1xx0111101x
   4884  1.1  christos                                                              suqadd.  */
   4885  1.1  christos                                                           return 395;
   4886  1.1  christos                                                         }
   4887  1.1  christos                                                     }
   4888  1.1  christos                                                   else
   4889  1.1  christos                                                     {
   4890  1.1  christos                                                       /* 33222222222211111111110000000000
   4891  1.1  christos                                                          10987654321098765432109876543210
   4892  1.1  christos                                                          xxxxxxxxxx011100xxxxx1xx011111xx
   4893  1.1  christos                                                          usqadd.  */
   4894  1.1  christos                                                       return 413;
   4895  1.1  christos                                                     }
   4896  1.1  christos                                                 }
   4897  1.1  christos                                             }
   4898  1.1  christos                                           else
   4899  1.1  christos                                             {
   4900  1.1  christos                                               if (((word >> 16) & 0x1) == 0)
   4901  1.1  christos                                                 {
   4902  1.1  christos                                                   if (((word >> 28) & 0x1) == 0)
   4903  1.1  christos                                                     {
   4904  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4905  1.1  christos                                                         {
   4906  1.1  christos                                                           /* 33222222222211111111110000000000
   4907  1.1  christos                                                              10987654321098765432109876543210
   4908  1.1  christos                                                              xxxxxxxxxx0111010xxxx1xx011100xx
   4909  1.1  christos                                                              abs.  */
   4910  1.1  christos                                                           return 155;
   4911  1.1  christos                                                         }
   4912  1.1  christos                                                       else
   4913  1.1  christos                                                         {
   4914  1.1  christos                                                           /* 33222222222211111111110000000000
   4915  1.1  christos                                                              10987654321098765432109876543210
   4916  1.1  christos                                                              xxxxxxxxxx0111010xxxx1xx011101xx
   4917  1.1  christos                                                              neg.  */
   4918  1.1  christos                                                           return 188;
   4919  1.1  christos                                                         }
   4920  1.1  christos                                                     }
   4921  1.1  christos                                                   else
   4922  1.1  christos                                                     {
   4923  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   4924  1.1  christos                                                         {
   4925  1.1  christos                                                           /* 33222222222211111111110000000000
   4926  1.1  christos                                                              10987654321098765432109876543210
   4927  1.1  christos                                                              xxxxxxxxxx0111010xxxx1xx011110xx
   4928  1.1  christos                                                              abs.  */
   4929  1.1  christos                                                           return 400;
   4930  1.1  christos                                                         }
   4931  1.1  christos                                                       else
   4932  1.1  christos                                                         {
   4933  1.1  christos                                                           /* 33222222222211111111110000000000
   4934  1.1  christos                                                              10987654321098765432109876543210
   4935  1.1  christos                                                              xxxxxxxxxx0111010xxxx1xx011111xx
   4936  1.1  christos                                                              neg.  */
   4937  1.1  christos                                                           return 417;
   4938  1.1  christos                                                         }
   4939  1.1  christos                                                     }
   4940  1.1  christos                                                 }
   4941  1.1  christos                                               else
   4942  1.1  christos                                                 {
   4943  1.1  christos                                                   if (((word >> 20) & 0x1) == 0)
   4944  1.1  christos                                                     {
   4945  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   4946  1.1  christos                                                         {
   4947  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   4948  1.1  christos                                                             {
   4949  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4950  1.1  christos                                                                 {
   4951  1.1  christos                                                                   /* 33222222222211111111110000000000
   4952  1.1  christos                                                                      10987654321098765432109876543210
   4953  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x0011100xx
   4954  1.1  christos                                                                      fcvtms.  */
   4955  1.1  christos                                                                   return 167;
   4956  1.1  christos                                                                 }
   4957  1.1  christos                                                               else
   4958  1.1  christos                                                                 {
   4959  1.1  christos                                                                   /* 33222222222211111111110000000000
   4960  1.1  christos                                                                      10987654321098765432109876543210
   4961  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x0011101xx
   4962  1.1  christos                                                                      fcvtmu.  */
   4963  1.1  christos                                                                   return 200;
   4964  1.1  christos                                                                 }
   4965  1.1  christos                                                             }
   4966  1.1  christos                                                           else
   4967  1.1  christos                                                             {
   4968  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4969  1.1  christos                                                                 {
   4970  1.1  christos                                                                   /* 33222222222211111111110000000000
   4971  1.1  christos                                                                      10987654321098765432109876543210
   4972  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x0011110xx
   4973  1.1  christos                                                                      fcvtms.  */
   4974  1.1  christos                                                                   return 403;
   4975  1.1  christos                                                                 }
   4976  1.1  christos                                                               else
   4977  1.1  christos                                                                 {
   4978  1.1  christos                                                                   /* 33222222222211111111110000000000
   4979  1.1  christos                                                                      10987654321098765432109876543210
   4980  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x0011111xx
   4981  1.1  christos                                                                      fcvtmu.  */
   4982  1.1  christos                                                                   return 422;
   4983  1.1  christos                                                                 }
   4984  1.1  christos                                                             }
   4985  1.1  christos                                                         }
   4986  1.1  christos                                                       else
   4987  1.1  christos                                                         {
   4988  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   4989  1.1  christos                                                             {
   4990  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   4991  1.1  christos                                                                 {
   4992  1.1  christos                                                                   /* 33222222222211111111110000000000
   4993  1.1  christos                                                                      10987654321098765432109876543210
   4994  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x1011100xx
   4995  1.1  christos                                                                      fcvtzs.  */
   4996  1.1  christos                                                                   return 177;
   4997  1.1  christos                                                                 }
   4998  1.1  christos                                                               else
   4999  1.1  christos                                                                 {
   5000  1.1  christos                                                                   /* 33222222222211111111110000000000
   5001  1.1  christos                                                                      10987654321098765432109876543210
   5002  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x1011101xx
   5003  1.1  christos                                                                      fcvtzu.  */
   5004  1.1  christos                                                                   return 211;
   5005  1.1  christos                                                                 }
   5006  1.1  christos                                                             }
   5007  1.1  christos                                                           else
   5008  1.1  christos                                                             {
   5009  1.1  christos                                                               if (((word >> 29) & 0x1) == 0)
   5010  1.1  christos                                                                 {
   5011  1.1  christos                                                                   /* 33222222222211111111110000000000
   5012  1.1  christos                                                                      10987654321098765432109876543210
   5013  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x1011110xx
   5014  1.1  christos                                                                      fcvtzs.  */
   5015  1.1  christos                                                                   return 410;
   5016  1.1  christos                                                                 }
   5017  1.1  christos                                                               else
   5018  1.1  christos                                                                 {
   5019  1.1  christos                                                                   /* 33222222222211111111110000000000
   5020  1.1  christos                                                                      10987654321098765432109876543210
   5021  1.1  christos                                                                      xxxxxxxxxx0111011xxx01x1011111xx
   5022  1.1  christos                                                                      fcvtzu.  */
   5023  1.1  christos                                                                   return 428;
   5024  1.1  christos                                                                 }
   5025  1.1  christos                                                             }
   5026  1.1  christos                                                         }
   5027  1.1  christos                                                     }
   5028  1.1  christos                                                   else
   5029  1.1  christos                                                     {
   5030  1.1  christos                                                       if (((word >> 28) & 0x1) == 0)
   5031  1.1  christos                                                         {
   5032  1.1  christos                                                           /* 33222222222211111111110000000000
   5033  1.1  christos                                                              10987654321098765432109876543210
   5034  1.1  christos                                                              xxxxxxxxxx0111011xxx11xx01110xxx
   5035  1.1  christos                                                              addv.  */
   5036  1.1  christos                                                           return 30;
   5037  1.1  christos                                                         }
   5038  1.1  christos                                                       else
   5039  1.1  christos                                                         {
   5040  1.1  christos                                                           /* 33222222222211111111110000000000
   5041  1.1  christos                                                              10987654321098765432109876543210
   5042  1.1  christos                                                              xxxxxxxxxx0111011xxx11xx01111xxx
   5043  1.1  christos                                                              addp.  */
   5044  1.1  christos                                                           return 432;
   5045  1.1  christos                                                         }
   5046  1.1  christos                                                     }
   5047  1.1  christos                                                 }
   5048  1.1  christos                                             }
   5049  1.1  christos                                         }
   5050  1.1  christos                                       else
   5051  1.1  christos                                         {
   5052  1.1  christos                                           if (((word >> 15) & 0x1) == 0)
   5053  1.1  christos                                             {
   5054  1.1  christos                                               if (((word >> 28) & 0x1) == 0)
   5055  1.1  christos                                                 {
   5056  1.1  christos                                                   if (((word >> 16) & 0x1) == 0)
   5057  1.1  christos                                                     {
   5058  1.1  christos                                                       if (((word >> 19) & 0x1) == 0)
   5059  1.1  christos                                                         {
   5060  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   5061  1.1  christos                                                             {
   5062  1.1  christos                                                               /* 33222222222211111111110000000000
   5063  1.1  christos                                                                  10987654321098765432109876543210
   5064  1.1  christos                                                                  xxxxxxxxxx0111100xx0x1xx011100xx
   5065  1.1  christos                                                                  sqabs.  */
   5066  1.1  christos                                                               return 151;
   5067  1.1  christos                                                             }
   5068  1.1  christos                                                           else
   5069  1.1  christos                                                             {
   5070  1.1  christos                                                               /* 33222222222211111111110000000000
   5071  1.1  christos                                                                  10987654321098765432109876543210
   5072  1.1  christos                                                                  xxxxxxxxxx0111100xx0x1xx011101xx
   5073  1.1  christos                                                                  sqneg.  */
   5074  1.1  christos                                                               return 185;
   5075  1.1  christos                                                             }
   5076  1.1  christos                                                         }
   5077  1.1  christos                                                       else
   5078  1.1  christos                                                         {
   5079  1.1  christos                                                           /* 33222222222211111111110000000000
   5080  1.1  christos                                                              10987654321098765432109876543210
   5081  1.1  christos                                                              xxxxxxxxxx0111100xx1x1xx01110xxx
   5082  1.1  christos                                                              aesimc.  */
   5083  1.1  christos                                                           return 536;
   5084  1.1  christos                                                         }
   5085  1.1  christos                                                     }
   5086  1.1  christos                                                   else
   5087  1.1  christos                                                     {
   5088  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   5089  1.1  christos                                                         {
   5090  1.1  christos                                                           /* 33222222222211111111110000000000
   5091  1.1  christos                                                              10987654321098765432109876543210
   5092  1.1  christos                                                              xxxxxxxxxx0111101xxxx1xx01110x0x
   5093  1.1  christos                                                              fcvtl.  */
   5094  1.1  christos                                                           return 162;
   5095  1.1  christos                                                         }
   5096  1.1  christos                                                       else
   5097  1.1  christos                                                         {
   5098  1.1  christos                                                           /* 33222222222211111111110000000000
   5099  1.1  christos                                                              10987654321098765432109876543210
   5100  1.1  christos                                                              xxxxxxxxxx0111101xxxx1xx01110x1x
   5101  1.1  christos                                                              fcvtl2.  */
   5102  1.1  christos                                                           return 163;
   5103  1.1  christos                                                         }
   5104  1.1  christos                                                     }
   5105  1.1  christos                                                 }
   5106  1.1  christos                                               else
   5107  1.1  christos                                                 {
   5108  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5109  1.1  christos                                                     {
   5110  1.1  christos                                                       if (((word >> 30) & 0x1) == 0)
   5111  1.1  christos                                                         {
   5112  1.1  christos                                                           /* 33222222222211111111110000000000
   5113  1.1  christos                                                              10987654321098765432109876543210
   5114  1.1  christos                                                              xxxxxxxxxx011110xxxxx1xx0111100x
   5115  1.1  christos                                                              fminnm.  */
   5116  1.1  christos                                                           return 641;
   5117  1.1  christos                                                         }
   5118  1.1  christos                                                       else
   5119  1.1  christos                                                         {
   5120  1.1  christos                                                           /* 33222222222211111111110000000000
   5121  1.1  christos                                                              10987654321098765432109876543210
   5122  1.1  christos                                                              xxxxxxxxxx011110xxxxx1xx0111101x
   5123  1.1  christos                                                              sqabs.  */
   5124  1.1  christos                                                           return 396;
   5125  1.1  christos                                                         }
   5126  1.1  christos                                                     }
   5127  1.1  christos                                                   else
   5128  1.1  christos                                                     {
   5129  1.1  christos                                                       /* 33222222222211111111110000000000
   5130  1.1  christos                                                          10987654321098765432109876543210
   5131  1.1  christos                                                          xxxxxxxxxx011110xxxxx1xx011111xx
   5132  1.1  christos                                                          sqneg.  */
   5133  1.1  christos                                                       return 414;
   5134  1.1  christos                                                     }
   5135  1.1  christos                                                 }
   5136  1.1  christos                                             }
   5137  1.1  christos                                           else
   5138  1.1  christos                                             {
   5139  1.1  christos                                               if (((word >> 16) & 0x1) == 0)
   5140  1.1  christos                                                 {
   5141  1.1  christos                                                   if (((word >> 20) & 0x1) == 0)
   5142  1.1  christos                                                     {
   5143  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5144  1.1  christos                                                         {
   5145  1.1  christos                                                           /* 33222222222211111111110000000000
   5146  1.1  christos                                                              10987654321098765432109876543210
   5147  1.1  christos                                                              xxxxxxxxxx0111110xxx01xx0111x0xx
   5148  1.1  christos                                                              fabs.  */
   5149  1.1  christos                                                           return 173;
   5150  1.1  christos                                                         }
   5151  1.1  christos                                                       else
   5152  1.1  christos                                                         {
   5153  1.1  christos                                                           /* 33222222222211111111110000000000
   5154  1.1  christos                                                              10987654321098765432109876543210
   5155  1.1  christos                                                              xxxxxxxxxx0111110xxx01xx0111x1xx
   5156  1.1  christos                                                              fneg.  */
   5157  1.1  christos                                                           return 208;
   5158  1.1  christos                                                         }
   5159  1.1  christos                                                     }
   5160  1.1  christos                                                   else
   5161  1.1  christos                                                     {
   5162  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   5163  1.1  christos                                                         {
   5164  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   5165  1.1  christos                                                             {
   5166  1.1  christos                                                               /* 33222222222211111111110000000000
   5167  1.1  christos                                                                  10987654321098765432109876543210
   5168  1.1  christos                                                                  xxxxxxxxxx0111110xxx11x001110xxx
   5169  1.1  christos                                                                  fmaxv.  */
   5170  1.1  christos                                                               return 35;
   5171  1.1  christos                                                             }
   5172  1.1  christos                                                           else
   5173  1.1  christos                                                             {
   5174  1.1  christos                                                               /* 33222222222211111111110000000000
   5175  1.1  christos                                                                  10987654321098765432109876543210
   5176  1.1  christos                                                                  xxxxxxxxxx0111110xxx11x001111xxx
   5177  1.1  christos                                                                  fmaxp.  */
   5178  1.1  christos                                                               return 435;
   5179  1.1  christos                                                             }
   5180  1.1  christos                                                         }
   5181  1.1  christos                                                       else
   5182  1.1  christos                                                         {
   5183  1.1  christos                                                           if (((word >> 28) & 0x1) == 0)
   5184  1.1  christos                                                             {
   5185  1.1  christos                                                               /* 33222222222211111111110000000000
   5186  1.1  christos                                                                  10987654321098765432109876543210
   5187  1.1  christos                                                                  xxxxxxxxxx0111110xxx11x101110xxx
   5188  1.1  christos                                                                  fminv.  */
   5189  1.1  christos                                                               return 37;
   5190  1.1  christos                                                             }
   5191  1.1  christos                                                           else
   5192  1.1  christos                                                             {
   5193  1.1  christos                                                               /* 33222222222211111111110000000000
   5194  1.1  christos                                                                  10987654321098765432109876543210
   5195  1.1  christos                                                                  xxxxxxxxxx0111110xxx11x101111xxx
   5196  1.1  christos                                                                  fminp.  */
   5197  1.1  christos                                                               return 437;
   5198  1.1  christos                                                             }
   5199  1.1  christos                                                         }
   5200  1.1  christos                                                     }
   5201  1.1  christos                                                 }
   5202  1.1  christos                                               else
   5203  1.1  christos                                                 {
   5204  1.1  christos                                                   if (((word >> 28) & 0x1) == 0)
   5205  1.1  christos                                                     {
   5206  1.1  christos                                                       /* 33222222222211111111110000000000
   5207  1.1  christos                                                          10987654321098765432109876543210
   5208  1.1  christos                                                          xxxxxxxxxx0111111xxxx1xx01110xxx
   5209  1.1  christos                                                          fsqrt.  */
   5210  1.1  christos                                                       return 214;
   5211  1.1  christos                                                     }
   5212  1.1  christos                                                   else
   5213  1.1  christos                                                     {
   5214  1.1  christos                                                       /* 33222222222211111111110000000000
   5215  1.1  christos                                                          10987654321098765432109876543210
   5216  1.1  christos                                                          xxxxxxxxxx0111111xxxx1xx01111xxx
   5217  1.1  christos                                                          frecpx.  */
   5218  1.1  christos                                                       return 412;
   5219  1.1  christos                                                     }
   5220  1.1  christos                                                 }
   5221  1.1  christos                                             }
   5222  1.1  christos                                         }
   5223  1.1  christos                                     }
   5224  1.1  christos                                 }
   5225  1.1  christos                             }
   5226  1.1  christos                         }
   5227  1.1  christos                       else
   5228  1.1  christos                         {
   5229  1.1  christos                           if (((word >> 11) & 0x1) == 0)
   5230  1.1  christos                             {
   5231  1.1  christos                               if (((word >> 28) & 0x1) == 0)
   5232  1.1  christos                                 {
   5233  1.1  christos                                   if (((word >> 12) & 0x1) == 0)
   5234  1.1  christos                                     {
   5235  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   5236  1.1  christos                                         {
   5237  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   5238  1.1  christos                                             {
   5239  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5240  1.1  christos                                                 {
   5241  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5242  1.1  christos                                                     {
   5243  1.1  christos                                                       /* 33222222222211111111110000000000
   5244  1.1  christos                                                          10987654321098765432109876543210
   5245  1.1  christos                                                          xxxxxxxxxx100000xxxxx1xx011100xx
   5246  1.1  christos                                                          shadd.  */
   5247  1.1  christos                                                       return 221;
   5248  1.1  christos                                                     }
   5249  1.1  christos                                                   else
   5250  1.1  christos                                                     {
   5251  1.1  christos                                                       /* 33222222222211111111110000000000
   5252  1.1  christos                                                          10987654321098765432109876543210
   5253  1.1  christos                                                          xxxxxxxxxx100000xxxxx1xx011101xx
   5254  1.1  christos                                                          uhadd.  */
   5255  1.1  christos                                                       return 261;
   5256  1.1  christos                                                     }
   5257  1.1  christos                                                 }
   5258  1.1  christos                                               else
   5259  1.1  christos                                                 {
   5260  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5261  1.1  christos                                                     {
   5262  1.1  christos                                                       /* 33222222222211111111110000000000
   5263  1.1  christos                                                          10987654321098765432109876543210
   5264  1.1  christos                                                          xxxxxxxxxx100001xxxxx1xx011100xx
   5265  1.1  christos                                                          add.  */
   5266  1.1  christos                                                       return 236;
   5267  1.1  christos                                                     }
   5268  1.1  christos                                                   else
   5269  1.1  christos                                                     {
   5270  1.1  christos                                                       /* 33222222222211111111110000000000
   5271  1.1  christos                                                          10987654321098765432109876543210
   5272  1.1  christos                                                          xxxxxxxxxx100001xxxxx1xx011101xx
   5273  1.1  christos                                                          sub.  */
   5274  1.1  christos                                                       return 276;
   5275  1.1  christos                                                     }
   5276  1.1  christos                                                 }
   5277  1.1  christos                                             }
   5278  1.1  christos                                           else
   5279  1.1  christos                                             {
   5280  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5281  1.1  christos                                                 {
   5282  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5283  1.1  christos                                                     {
   5284  1.1  christos                                                       /* 33222222222211111111110000000000
   5285  1.1  christos                                                          10987654321098765432109876543210
   5286  1.1  christos                                                          xxxxxxxxxx100010xxxxx1xx011100xx
   5287  1.1  christos                                                          sshl.  */
   5288  1.1  christos                                                       return 228;
   5289  1.1  christos                                                     }
   5290  1.1  christos                                                   else
   5291  1.1  christos                                                     {
   5292  1.1  christos                                                       /* 33222222222211111111110000000000
   5293  1.1  christos                                                          10987654321098765432109876543210
   5294  1.1  christos                                                          xxxxxxxxxx100010xxxxx1xx011101xx
   5295  1.1  christos                                                          ushl.  */
   5296  1.1  christos                                                       return 268;
   5297  1.1  christos                                                     }
   5298  1.1  christos                                                 }
   5299  1.1  christos                                               else
   5300  1.1  christos                                                 {
   5301  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   5302  1.1  christos                                                     {
   5303  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5304  1.1  christos                                                         {
   5305  1.1  christos                                                           /* 33222222222211111111110000000000
   5306  1.1  christos                                                              10987654321098765432109876543210
   5307  1.1  christos                                                              xxxxxxxxxx100011xxxxx1x0011100xx
   5308  1.1  christos                                                              fmaxnm.  */
   5309  1.1  christos                                                           return 244;
   5310  1.1  christos                                                         }
   5311  1.1  christos                                                       else
   5312  1.1  christos                                                         {
   5313  1.1  christos                                                           /* 33222222222211111111110000000000
   5314  1.1  christos                                                              10987654321098765432109876543210
   5315  1.1  christos                                                              xxxxxxxxxx100011xxxxx1x0011101xx
   5316  1.1  christos                                                              fmaxnmp.  */
   5317  1.1  christos                                                           return 283;
   5318  1.1  christos                                                         }
   5319  1.1  christos                                                     }
   5320  1.1  christos                                                   else
   5321  1.1  christos                                                     {
   5322  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5323  1.1  christos                                                         {
   5324  1.1  christos                                                           /* 33222222222211111111110000000000
   5325  1.1  christos                                                              10987654321098765432109876543210
   5326  1.1  christos                                                              xxxxxxxxxx100011xxxxx1x1011100xx
   5327  1.1  christos                                                              fminnm.  */
   5328  1.1  christos                                                           return 253;
   5329  1.1  christos                                                         }
   5330  1.1  christos                                                       else
   5331  1.1  christos                                                         {
   5332  1.1  christos                                                           /* 33222222222211111111110000000000
   5333  1.1  christos                                                              10987654321098765432109876543210
   5334  1.1  christos                                                              xxxxxxxxxx100011xxxxx1x1011101xx
   5335  1.1  christos                                                              fminnmp.  */
   5336  1.1  christos                                                           return 292;
   5337  1.1  christos                                                         }
   5338  1.1  christos                                                     }
   5339  1.1  christos                                                 }
   5340  1.1  christos                                             }
   5341  1.1  christos                                         }
   5342  1.1  christos                                       else
   5343  1.1  christos                                         {
   5344  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   5345  1.1  christos                                             {
   5346  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5347  1.1  christos                                                 {
   5348  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5349  1.1  christos                                                     {
   5350  1.1  christos                                                       /* 33222222222211111111110000000000
   5351  1.1  christos                                                          10987654321098765432109876543210
   5352  1.1  christos                                                          xxxxxxxxxx100100xxxxx1xx011100xx
   5353  1.1  christos                                                          shsub.  */
   5354  1.1  christos                                                       return 224;
   5355  1.1  christos                                                     }
   5356  1.1  christos                                                   else
   5357  1.1  christos                                                     {
   5358  1.1  christos                                                       /* 33222222222211111111110000000000
   5359  1.1  christos                                                          10987654321098765432109876543210
   5360  1.1  christos                                                          xxxxxxxxxx100100xxxxx1xx011101xx
   5361  1.1  christos                                                          uhsub.  */
   5362  1.1  christos                                                       return 264;
   5363  1.1  christos                                                     }
   5364  1.1  christos                                                 }
   5365  1.1  christos                                               else
   5366  1.1  christos                                                 {
   5367  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5368  1.1  christos                                                     {
   5369  1.1  christos                                                       /* 33222222222211111111110000000000
   5370  1.1  christos                                                          10987654321098765432109876543210
   5371  1.1  christos                                                          xxxxxxxxxx100101xxxxx1xx011100xx
   5372  1.1  christos                                                          smaxp.  */
   5373  1.1  christos                                                       return 240;
   5374  1.1  christos                                                     }
   5375  1.1  christos                                                   else
   5376  1.1  christos                                                     {
   5377  1.1  christos                                                       /* 33222222222211111111110000000000
   5378  1.1  christos                                                          10987654321098765432109876543210
   5379  1.1  christos                                                          xxxxxxxxxx100101xxxxx1xx011101xx
   5380  1.1  christos                                                          umaxp.  */
   5381  1.1  christos                                                       return 280;
   5382  1.1  christos                                                     }
   5383  1.1  christos                                                 }
   5384  1.1  christos                                             }
   5385  1.1  christos                                           else
   5386  1.1  christos                                             {
   5387  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5388  1.1  christos                                                 {
   5389  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5390  1.1  christos                                                     {
   5391  1.1  christos                                                       /* 33222222222211111111110000000000
   5392  1.1  christos                                                          10987654321098765432109876543210
   5393  1.1  christos                                                          xxxxxxxxxx100110xxxxx1xx011100xx
   5394  1.1  christos                                                          smax.  */
   5395  1.1  christos                                                       return 232;
   5396  1.1  christos                                                     }
   5397  1.1  christos                                                   else
   5398  1.1  christos                                                     {
   5399  1.1  christos                                                       /* 33222222222211111111110000000000
   5400  1.1  christos                                                          10987654321098765432109876543210
   5401  1.1  christos                                                          xxxxxxxxxx100110xxxxx1xx011101xx
   5402  1.1  christos                                                          umax.  */
   5403  1.1  christos                                                       return 272;
   5404  1.1  christos                                                     }
   5405  1.1  christos                                                 }
   5406  1.1  christos                                               else
   5407  1.1  christos                                                 {
   5408  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   5409  1.1  christos                                                     {
   5410  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5411  1.1  christos                                                         {
   5412  1.1  christos                                                           /* 33222222222211111111110000000000
   5413  1.1  christos                                                              10987654321098765432109876543210
   5414  1.1  christos                                                              xxxxxxxxxx100111xxxxx1x0011100xx
   5415  1.1  christos                                                              fcmeq.  */
   5416  1.1  christos                                                           return 248;
   5417  1.1  christos                                                         }
   5418  1.1  christos                                                       else
   5419  1.1  christos                                                         {
   5420  1.1  christos                                                           /* 33222222222211111111110000000000
   5421  1.1  christos                                                              10987654321098765432109876543210
   5422  1.1  christos                                                              xxxxxxxxxx100111xxxxx1x0011101xx
   5423  1.1  christos                                                              fcmge.  */
   5424  1.1  christos                                                           return 286;
   5425  1.1  christos                                                         }
   5426  1.1  christos                                                     }
   5427  1.1  christos                                                   else
   5428  1.1  christos                                                     {
   5429  1.1  christos                                                       /* 33222222222211111111110000000000
   5430  1.1  christos                                                          10987654321098765432109876543210
   5431  1.1  christos                                                          xxxxxxxxxx100111xxxxx1x101110xxx
   5432  1.1  christos                                                          fcmgt.  */
   5433  1.1  christos                                                       return 294;
   5434  1.1  christos                                                     }
   5435  1.1  christos                                                 }
   5436  1.1  christos                                             }
   5437  1.1  christos                                         }
   5438  1.1  christos                                     }
   5439  1.1  christos                                   else
   5440  1.1  christos                                     {
   5441  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   5442  1.1  christos                                         {
   5443  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   5444  1.1  christos                                             {
   5445  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5446  1.1  christos                                                 {
   5447  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5448  1.1  christos                                                     {
   5449  1.1  christos                                                       /* 33222222222211111111110000000000
   5450  1.1  christos                                                          10987654321098765432109876543210
   5451  1.1  christos                                                          xxxxxxxxxx101000xxxxx1xx011100xx
   5452  1.1  christos                                                          srhadd.  */
   5453  1.1  christos                                                       return 223;
   5454  1.1  christos                                                     }
   5455  1.1  christos                                                   else
   5456  1.1  christos                                                     {
   5457  1.1  christos                                                       /* 33222222222211111111110000000000
   5458  1.1  christos                                                          10987654321098765432109876543210
   5459  1.1  christos                                                          xxxxxxxxxx101000xxxxx1xx011101xx
   5460  1.1  christos                                                          urhadd.  */
   5461  1.1  christos                                                       return 263;
   5462  1.1  christos                                                     }
   5463  1.1  christos                                                 }
   5464  1.1  christos                                               else
   5465  1.1  christos                                                 {
   5466  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5467  1.1  christos                                                     {
   5468  1.1  christos                                                       /* 33222222222211111111110000000000
   5469  1.1  christos                                                          10987654321098765432109876543210
   5470  1.1  christos                                                          xxxxxxxxxx101001xxxxx1xx011100xx
   5471  1.1  christos                                                          mla.  */
   5472  1.1  christos                                                       return 238;
   5473  1.1  christos                                                     }
   5474  1.1  christos                                                   else
   5475  1.1  christos                                                     {
   5476  1.1  christos                                                       /* 33222222222211111111110000000000
   5477  1.1  christos                                                          10987654321098765432109876543210
   5478  1.1  christos                                                          xxxxxxxxxx101001xxxxx1xx011101xx
   5479  1.1  christos                                                          mls.  */
   5480  1.1  christos                                                       return 278;
   5481  1.1  christos                                                     }
   5482  1.1  christos                                                 }
   5483  1.1  christos                                             }
   5484  1.1  christos                                           else
   5485  1.1  christos                                             {
   5486  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5487  1.1  christos                                                 {
   5488  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5489  1.1  christos                                                     {
   5490  1.1  christos                                                       /* 33222222222211111111110000000000
   5491  1.1  christos                                                          10987654321098765432109876543210
   5492  1.1  christos                                                          xxxxxxxxxx101010xxxxx1xx011100xx
   5493  1.1  christos                                                          srshl.  */
   5494  1.1  christos                                                       return 230;
   5495  1.1  christos                                                     }
   5496  1.1  christos                                                   else
   5497  1.1  christos                                                     {
   5498  1.1  christos                                                       /* 33222222222211111111110000000000
   5499  1.1  christos                                                          10987654321098765432109876543210
   5500  1.1  christos                                                          xxxxxxxxxx101010xxxxx1xx011101xx
   5501  1.1  christos                                                          urshl.  */
   5502  1.1  christos                                                       return 270;
   5503  1.1  christos                                                     }
   5504  1.1  christos                                                 }
   5505  1.1  christos                                               else
   5506  1.1  christos                                                 {
   5507  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   5508  1.1  christos                                                     {
   5509  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5510  1.1  christos                                                         {
   5511  1.1  christos                                                           /* 33222222222211111111110000000000
   5512  1.1  christos                                                              10987654321098765432109876543210
   5513  1.1  christos                                                              xxxxxxxxxx101011xxxxx1x0011100xx
   5514  1.1  christos                                                              fadd.  */
   5515  1.1  christos                                                           return 246;
   5516  1.1  christos                                                         }
   5517  1.1  christos                                                       else
   5518  1.1  christos                                                         {
   5519  1.1  christos                                                           /* 33222222222211111111110000000000
   5520  1.1  christos                                                              10987654321098765432109876543210
   5521  1.1  christos                                                              xxxxxxxxxx101011xxxxx1x0011101xx
   5522  1.1  christos                                                              faddp.  */
   5523  1.1  christos                                                           return 284;
   5524  1.1  christos                                                         }
   5525  1.1  christos                                                     }
   5526  1.1  christos                                                   else
   5527  1.1  christos                                                     {
   5528  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5529  1.1  christos                                                         {
   5530  1.1  christos                                                           /* 33222222222211111111110000000000
   5531  1.1  christos                                                              10987654321098765432109876543210
   5532  1.1  christos                                                              xxxxxxxxxx101011xxxxx1x1011100xx
   5533  1.1  christos                                                              fsub.  */
   5534  1.1  christos                                                           return 255;
   5535  1.1  christos                                                         }
   5536  1.1  christos                                                       else
   5537  1.1  christos                                                         {
   5538  1.1  christos                                                           /* 33222222222211111111110000000000
   5539  1.1  christos                                                              10987654321098765432109876543210
   5540  1.1  christos                                                              xxxxxxxxxx101011xxxxx1x1011101xx
   5541  1.1  christos                                                              fabd.  */
   5542  1.1  christos                                                           return 293;
   5543  1.1  christos                                                         }
   5544  1.1  christos                                                     }
   5545  1.1  christos                                                 }
   5546  1.1  christos                                             }
   5547  1.1  christos                                         }
   5548  1.1  christos                                       else
   5549  1.1  christos                                         {
   5550  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   5551  1.1  christos                                             {
   5552  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5553  1.1  christos                                                 {
   5554  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5555  1.1  christos                                                     {
   5556  1.1  christos                                                       /* 33222222222211111111110000000000
   5557  1.1  christos                                                          10987654321098765432109876543210
   5558  1.1  christos                                                          xxxxxxxxxx101100xxxxx1xx011100xx
   5559  1.1  christos                                                          cmgt.  */
   5560  1.1  christos                                                       return 226;
   5561  1.1  christos                                                     }
   5562  1.1  christos                                                   else
   5563  1.1  christos                                                     {
   5564  1.1  christos                                                       /* 33222222222211111111110000000000
   5565  1.1  christos                                                          10987654321098765432109876543210
   5566  1.1  christos                                                          xxxxxxxxxx101100xxxxx1xx011101xx
   5567  1.1  christos                                                          cmhi.  */
   5568  1.1  christos                                                       return 266;
   5569  1.1  christos                                                     }
   5570  1.1  christos                                                 }
   5571  1.1  christos                                               else
   5572  1.1  christos                                                 {
   5573  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5574  1.1  christos                                                     {
   5575  1.1  christos                                                       /* 33222222222211111111110000000000
   5576  1.1  christos                                                          10987654321098765432109876543210
   5577  1.1  christos                                                          xxxxxxxxxx101101xxxxx1xx011100xx
   5578  1.1  christos                                                          sqdmulh.  */
   5579  1.1  christos                                                       return 242;
   5580  1.1  christos                                                     }
   5581  1.1  christos                                                   else
   5582  1.1  christos                                                     {
   5583  1.1  christos                                                       /* 33222222222211111111110000000000
   5584  1.1  christos                                                          10987654321098765432109876543210
   5585  1.1  christos                                                          xxxxxxxxxx101101xxxxx1xx011101xx
   5586  1.1  christos                                                          sqrdmulh.  */
   5587  1.1  christos                                                       return 282;
   5588  1.1  christos                                                     }
   5589  1.1  christos                                                 }
   5590  1.1  christos                                             }
   5591  1.1  christos                                           else
   5592  1.1  christos                                             {
   5593  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5594  1.1  christos                                                 {
   5595  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5596  1.1  christos                                                     {
   5597  1.1  christos                                                       /* 33222222222211111111110000000000
   5598  1.1  christos                                                          10987654321098765432109876543210
   5599  1.1  christos                                                          xxxxxxxxxx101110xxxxx1xx011100xx
   5600  1.1  christos                                                          sabd.  */
   5601  1.1  christos                                                       return 234;
   5602  1.1  christos                                                     }
   5603  1.1  christos                                                   else
   5604  1.1  christos                                                     {
   5605  1.1  christos                                                       /* 33222222222211111111110000000000
   5606  1.1  christos                                                          10987654321098765432109876543210
   5607  1.1  christos                                                          xxxxxxxxxx101110xxxxx1xx011101xx
   5608  1.1  christos                                                          uabd.  */
   5609  1.1  christos                                                       return 274;
   5610  1.1  christos                                                     }
   5611  1.1  christos                                                 }
   5612  1.1  christos                                               else
   5613  1.1  christos                                                 {
   5614  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   5615  1.1  christos                                                     {
   5616  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5617  1.1  christos                                                         {
   5618  1.1  christos                                                           /* 33222222222211111111110000000000
   5619  1.1  christos                                                              10987654321098765432109876543210
   5620  1.1  christos                                                              xxxxxxxxxx101111xxxxx1x0011100xx
   5621  1.1  christos                                                              fmax.  */
   5622  1.1  christos                                                           return 249;
   5623  1.1  christos                                                         }
   5624  1.1  christos                                                       else
   5625  1.1  christos                                                         {
   5626  1.1  christos                                                           /* 33222222222211111111110000000000
   5627  1.1  christos                                                              10987654321098765432109876543210
   5628  1.1  christos                                                              xxxxxxxxxx101111xxxxx1x0011101xx
   5629  1.1  christos                                                              fmaxp.  */
   5630  1.1  christos                                                           return 288;
   5631  1.1  christos                                                         }
   5632  1.1  christos                                                     }
   5633  1.1  christos                                                   else
   5634  1.1  christos                                                     {
   5635  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   5636  1.1  christos                                                         {
   5637  1.1  christos                                                           /* 33222222222211111111110000000000
   5638  1.1  christos                                                              10987654321098765432109876543210
   5639  1.1  christos                                                              xxxxxxxxxx101111xxxxx1x1011100xx
   5640  1.1  christos                                                              fmin.  */
   5641  1.1  christos                                                           return 256;
   5642  1.1  christos                                                         }
   5643  1.1  christos                                                       else
   5644  1.1  christos                                                         {
   5645  1.1  christos                                                           /* 33222222222211111111110000000000
   5646  1.1  christos                                                              10987654321098765432109876543210
   5647  1.1  christos                                                              xxxxxxxxxx101111xxxxx1x1011101xx
   5648  1.1  christos                                                              fminp.  */
   5649  1.1  christos                                                           return 296;
   5650  1.1  christos                                                         }
   5651  1.1  christos                                                     }
   5652  1.1  christos                                                 }
   5653  1.1  christos                                             }
   5654  1.1  christos                                         }
   5655  1.1  christos                                     }
   5656  1.1  christos                                 }
   5657  1.1  christos                               else
   5658  1.1  christos                                 {
   5659  1.1  christos                                   if (((word >> 29) & 0x1) == 0)
   5660  1.1  christos                                     {
   5661  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
   5662  1.1  christos                                         {
   5663  1.1  christos                                           if (((word >> 4) & 0x1) == 0)
   5664  1.1  christos                                             {
   5665  1.1  christos                                               /* 33222222222211111111110000000000
   5666  1.1  christos                                                  10987654321098765432109876543210
   5667  1.1  christos                                                  xxxx0xxxxx10xxxxxxxxx1xx0111100x
   5668  1.1  christos                                                  fccmp.  */
   5669  1.1  christos                                               return 616;
   5670  1.1  christos                                             }
   5671  1.1  christos                                           else
   5672  1.1  christos                                             {
   5673  1.1  christos                                               /* 33222222222211111111110000000000
   5674  1.1  christos                                                  10987654321098765432109876543210
   5675  1.1  christos                                                  xxxx1xxxxx10xxxxxxxxx1xx0111100x
   5676  1.1  christos                                                  fccmpe.  */
   5677  1.1  christos                                               return 617;
   5678  1.1  christos                                             }
   5679  1.1  christos                                         }
   5680  1.1  christos                                       else
   5681  1.1  christos                                         {
   5682  1.1  christos                                           if (((word >> 12) & 0x1) == 0)
   5683  1.1  christos                                             {
   5684  1.1  christos                                               if (((word >> 13) & 0x1) == 0)
   5685  1.1  christos                                                 {
   5686  1.1  christos                                                   if (((word >> 14) & 0x1) == 0)
   5687  1.1  christos                                                     {
   5688  1.1  christos                                                       /* 33222222222211111111110000000000
   5689  1.1  christos                                                          10987654321098765432109876543210
   5690  1.1  christos                                                          xxxxxxxxxx10000xxxxxx1xx0111101x
   5691  1.1  christos                                                          add.  */
   5692  1.1  christos                                                       return 451;
   5693  1.1  christos                                                     }
   5694  1.1  christos                                                   else
   5695  1.1  christos                                                     {
   5696  1.1  christos                                                       /* 33222222222211111111110000000000
   5697  1.1  christos                                                          10987654321098765432109876543210
   5698  1.1  christos                                                          xxxxxxxxxx10001xxxxxx1xx0111101x
   5699  1.1  christos                                                          sshl.  */
   5700  1.1  christos                                                       return 449;
   5701  1.1  christos                                                     }
   5702  1.1  christos                                                 }
   5703  1.1  christos                                               else
   5704  1.1  christos                                                 {
   5705  1.1  christos                                                   /* 33222222222211111111110000000000
   5706  1.1  christos                                                      10987654321098765432109876543210
   5707  1.1  christos                                                      xxxxxxxxxx1001xxxxxxx1xx0111101x
   5708  1.1  christos                                                      fcmeq.  */
   5709  1.1  christos                                                   return 444;
   5710  1.1  christos                                                 }
   5711  1.1  christos                                             }
   5712  1.1  christos                                           else
   5713  1.1  christos                                             {
   5714  1.1  christos                                               if (((word >> 13) & 0x1) == 0)
   5715  1.1  christos                                                 {
   5716  1.1  christos                                                   /* 33222222222211111111110000000000
   5717  1.1  christos                                                      10987654321098765432109876543210
   5718  1.1  christos                                                      xxxxxxxxxx1010xxxxxxx1xx0111101x
   5719  1.1  christos                                                      srshl.  */
   5720  1.1  christos                                                   return 450;
   5721  1.1  christos                                                 }
   5722  1.1  christos                                               else
   5723  1.1  christos                                                 {
   5724  1.1  christos                                                   if (((word >> 15) & 0x1) == 0)
   5725  1.1  christos                                                     {
   5726  1.1  christos                                                       /* 33222222222211111111110000000000
   5727  1.1  christos                                                          10987654321098765432109876543210
   5728  1.1  christos                                                          xxxxxxxxxx1011x0xxxxx1xx0111101x
   5729  1.1  christos                                                          cmgt.  */
   5730  1.1  christos                                                       return 447;
   5731  1.1  christos                                                     }
   5732  1.1  christos                                                   else
   5733  1.1  christos                                                     {
   5734  1.1  christos                                                       /* 33222222222211111111110000000000
   5735  1.1  christos                                                          10987654321098765432109876543210
   5736  1.1  christos                                                          xxxxxxxxxx1011x1xxxxx1xx0111101x
   5737  1.1  christos                                                          sqdmulh.  */
   5738  1.1  christos                                                       return 442;
   5739  1.1  christos                                                     }
   5740  1.1  christos                                                 }
   5741  1.1  christos                                             }
   5742  1.1  christos                                         }
   5743  1.1  christos                                     }
   5744  1.1  christos                                   else
   5745  1.1  christos                                     {
   5746  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   5747  1.1  christos                                         {
   5748  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   5749  1.1  christos                                             {
   5750  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   5751  1.1  christos                                                 {
   5752  1.1  christos                                                   /* 33222222222211111111110000000000
   5753  1.1  christos                                                      10987654321098765432109876543210
   5754  1.1  christos                                                      xxxxxxxxxx10000xxxxxx1xx011111xx
   5755  1.1  christos                                                      sub.  */
   5756  1.1  christos                                                   return 467;
   5757  1.1  christos                                                 }
   5758  1.1  christos                                               else
   5759  1.1  christos                                                 {
   5760  1.1  christos                                                   /* 33222222222211111111110000000000
   5761  1.1  christos                                                      10987654321098765432109876543210
   5762  1.1  christos                                                      xxxxxxxxxx10001xxxxxx1xx011111xx
   5763  1.1  christos                                                      ushl.  */
   5764  1.1  christos                                                   return 465;
   5765  1.1  christos                                                 }
   5766  1.1  christos                                             }
   5767  1.1  christos                                           else
   5768  1.1  christos                                             {
   5769  1.1  christos                                               if (((word >> 23) & 0x1) == 0)
   5770  1.1  christos                                                 {
   5771  1.1  christos                                                   /* 33222222222211111111110000000000
   5772  1.1  christos                                                      10987654321098765432109876543210
   5773  1.1  christos                                                      xxxxxxxxxx1001xxxxxxx1x0011111xx
   5774  1.1  christos                                                      fcmge.  */
   5775  1.1  christos                                                   return 458;
   5776  1.1  christos                                                 }
   5777  1.1  christos                                               else
   5778  1.1  christos                                                 {
   5779  1.1  christos                                                   /* 33222222222211111111110000000000
   5780  1.1  christos                                                      10987654321098765432109876543210
   5781  1.1  christos                                                      xxxxxxxxxx1001xxxxxxx1x1011111xx
   5782  1.1  christos                                                      fcmgt.  */
   5783  1.1  christos                                                   return 461;
   5784  1.1  christos                                                 }
   5785  1.1  christos                                             }
   5786  1.1  christos                                         }
   5787  1.1  christos                                       else
   5788  1.1  christos                                         {
   5789  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   5790  1.1  christos                                             {
   5791  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5792  1.1  christos                                                 {
   5793  1.1  christos                                                   /* 33222222222211111111110000000000
   5794  1.1  christos                                                      10987654321098765432109876543210
   5795  1.1  christos                                                      xxxxxxxxxx1010x0xxxxx1xx011111xx
   5796  1.1  christos                                                      urshl.  */
   5797  1.1  christos                                                   return 466;
   5798  1.1  christos                                                 }
   5799  1.1  christos                                               else
   5800  1.1  christos                                                 {
   5801  1.1  christos                                                   /* 33222222222211111111110000000000
   5802  1.1  christos                                                      10987654321098765432109876543210
   5803  1.1  christos                                                      xxxxxxxxxx1010x1xxxxx1xx011111xx
   5804  1.1  christos                                                      fabd.  */
   5805  1.1  christos                                                   return 460;
   5806  1.1  christos                                                 }
   5807  1.1  christos                                             }
   5808  1.1  christos                                           else
   5809  1.1  christos                                             {
   5810  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5811  1.1  christos                                                 {
   5812  1.1  christos                                                   /* 33222222222211111111110000000000
   5813  1.1  christos                                                      10987654321098765432109876543210
   5814  1.1  christos                                                      xxxxxxxxxx1011x0xxxxx1xx011111xx
   5815  1.1  christos                                                      cmhi.  */
   5816  1.1  christos                                                   return 463;
   5817  1.1  christos                                                 }
   5818  1.1  christos                                               else
   5819  1.1  christos                                                 {
   5820  1.1  christos                                                   /* 33222222222211111111110000000000
   5821  1.1  christos                                                      10987654321098765432109876543210
   5822  1.1  christos                                                      xxxxxxxxxx1011x1xxxxx1xx011111xx
   5823  1.1  christos                                                      sqrdmulh.  */
   5824  1.1  christos                                                   return 457;
   5825  1.1  christos                                                 }
   5826  1.1  christos                                             }
   5827  1.1  christos                                         }
   5828  1.1  christos                                     }
   5829  1.1  christos                                 }
   5830  1.1  christos                             }
   5831  1.1  christos                           else
   5832  1.1  christos                             {
   5833  1.1  christos                               if (((word >> 28) & 0x1) == 0)
   5834  1.1  christos                                 {
   5835  1.1  christos                                   if (((word >> 12) & 0x1) == 0)
   5836  1.1  christos                                     {
   5837  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   5838  1.1  christos                                         {
   5839  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   5840  1.1  christos                                             {
   5841  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5842  1.1  christos                                                 {
   5843  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5844  1.1  christos                                                     {
   5845  1.1  christos                                                       /* 33222222222211111111110000000000
   5846  1.1  christos                                                          10987654321098765432109876543210
   5847  1.1  christos                                                          xxxxxxxxxx110000xxxxx1xx011100xx
   5848  1.1  christos                                                          sqadd.  */
   5849  1.1  christos                                                       return 222;
   5850  1.1  christos                                                     }
   5851  1.1  christos                                                   else
   5852  1.1  christos                                                     {
   5853  1.1  christos                                                       /* 33222222222211111111110000000000
   5854  1.1  christos                                                          10987654321098765432109876543210
   5855  1.1  christos                                                          xxxxxxxxxx110000xxxxx1xx011101xx
   5856  1.1  christos                                                          uqadd.  */
   5857  1.1  christos                                                       return 262;
   5858  1.1  christos                                                     }
   5859  1.1  christos                                                 }
   5860  1.1  christos                                               else
   5861  1.1  christos                                                 {
   5862  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5863  1.1  christos                                                     {
   5864  1.1  christos                                                       /* 33222222222211111111110000000000
   5865  1.1  christos                                                          10987654321098765432109876543210
   5866  1.1  christos                                                          xxxxxxxxxx110001xxxxx1xx011100xx
   5867  1.1  christos                                                          cmtst.  */
   5868  1.1  christos                                                       return 237;
   5869  1.1  christos                                                     }
   5870  1.1  christos                                                   else
   5871  1.1  christos                                                     {
   5872  1.1  christos                                                       /* 33222222222211111111110000000000
   5873  1.1  christos                                                          10987654321098765432109876543210
   5874  1.1  christos                                                          xxxxxxxxxx110001xxxxx1xx011101xx
   5875  1.1  christos                                                          cmeq.  */
   5876  1.1  christos                                                       return 277;
   5877  1.1  christos                                                     }
   5878  1.1  christos                                                 }
   5879  1.1  christos                                             }
   5880  1.1  christos                                           else
   5881  1.1  christos                                             {
   5882  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5883  1.1  christos                                                 {
   5884  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5885  1.1  christos                                                     {
   5886  1.1  christos                                                       /* 33222222222211111111110000000000
   5887  1.1  christos                                                          10987654321098765432109876543210
   5888  1.1  christos                                                          xxxxxxxxxx110010xxxxx1xx011100xx
   5889  1.1  christos                                                          sqshl.  */
   5890  1.1  christos                                                       return 229;
   5891  1.1  christos                                                     }
   5892  1.1  christos                                                   else
   5893  1.1  christos                                                     {
   5894  1.1  christos                                                       /* 33222222222211111111110000000000
   5895  1.1  christos                                                          10987654321098765432109876543210
   5896  1.1  christos                                                          xxxxxxxxxx110010xxxxx1xx011101xx
   5897  1.1  christos                                                          uqshl.  */
   5898  1.1  christos                                                       return 269;
   5899  1.1  christos                                                     }
   5900  1.1  christos                                                 }
   5901  1.1  christos                                               else
   5902  1.1  christos                                                 {
   5903  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   5904  1.1  christos                                                     {
   5905  1.1  christos                                                       /* 33222222222211111111110000000000
   5906  1.1  christos                                                          10987654321098765432109876543210
   5907  1.1  christos                                                          xxxxxxxxxx110011xxxxx1x001110xxx
   5908  1.1  christos                                                          fmla.  */
   5909  1.1  christos                                                       return 245;
   5910  1.1  christos                                                     }
   5911  1.1  christos                                                   else
   5912  1.1  christos                                                     {
   5913  1.1  christos                                                       /* 33222222222211111111110000000000
   5914  1.1  christos                                                          10987654321098765432109876543210
   5915  1.1  christos                                                          xxxxxxxxxx110011xxxxx1x101110xxx
   5916  1.1  christos                                                          fmls.  */
   5917  1.1  christos                                                       return 254;
   5918  1.1  christos                                                     }
   5919  1.1  christos                                                 }
   5920  1.1  christos                                             }
   5921  1.1  christos                                         }
   5922  1.1  christos                                       else
   5923  1.1  christos                                         {
   5924  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   5925  1.1  christos                                             {
   5926  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5927  1.1  christos                                                 {
   5928  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5929  1.1  christos                                                     {
   5930  1.1  christos                                                       /* 33222222222211111111110000000000
   5931  1.1  christos                                                          10987654321098765432109876543210
   5932  1.1  christos                                                          xxxxxxxxxx110100xxxxx1xx011100xx
   5933  1.1  christos                                                          sqsub.  */
   5934  1.1  christos                                                       return 225;
   5935  1.1  christos                                                     }
   5936  1.1  christos                                                   else
   5937  1.1  christos                                                     {
   5938  1.1  christos                                                       /* 33222222222211111111110000000000
   5939  1.1  christos                                                          10987654321098765432109876543210
   5940  1.1  christos                                                          xxxxxxxxxx110100xxxxx1xx011101xx
   5941  1.1  christos                                                          uqsub.  */
   5942  1.1  christos                                                       return 265;
   5943  1.1  christos                                                     }
   5944  1.1  christos                                                 }
   5945  1.1  christos                                               else
   5946  1.1  christos                                                 {
   5947  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5948  1.1  christos                                                     {
   5949  1.1  christos                                                       /* 33222222222211111111110000000000
   5950  1.1  christos                                                          10987654321098765432109876543210
   5951  1.1  christos                                                          xxxxxxxxxx110101xxxxx1xx011100xx
   5952  1.1  christos                                                          sminp.  */
   5953  1.1  christos                                                       return 241;
   5954  1.1  christos                                                     }
   5955  1.1  christos                                                   else
   5956  1.1  christos                                                     {
   5957  1.1  christos                                                       /* 33222222222211111111110000000000
   5958  1.1  christos                                                          10987654321098765432109876543210
   5959  1.1  christos                                                          xxxxxxxxxx110101xxxxx1xx011101xx
   5960  1.1  christos                                                          uminp.  */
   5961  1.1  christos                                                       return 281;
   5962  1.1  christos                                                     }
   5963  1.1  christos                                                 }
   5964  1.1  christos                                             }
   5965  1.1  christos                                           else
   5966  1.1  christos                                             {
   5967  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   5968  1.1  christos                                                 {
   5969  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   5970  1.1  christos                                                     {
   5971  1.1  christos                                                       /* 33222222222211111111110000000000
   5972  1.1  christos                                                          10987654321098765432109876543210
   5973  1.1  christos                                                          xxxxxxxxxx110110xxxxx1xx011100xx
   5974  1.1  christos                                                          smin.  */
   5975  1.1  christos                                                       return 233;
   5976  1.1  christos                                                     }
   5977  1.1  christos                                                   else
   5978  1.1  christos                                                     {
   5979  1.1  christos                                                       /* 33222222222211111111110000000000
   5980  1.1  christos                                                          10987654321098765432109876543210
   5981  1.1  christos                                                          xxxxxxxxxx110110xxxxx1xx011101xx
   5982  1.1  christos                                                          umin.  */
   5983  1.1  christos                                                       return 273;
   5984  1.1  christos                                                     }
   5985  1.1  christos                                                 }
   5986  1.1  christos                                               else
   5987  1.1  christos                                                 {
   5988  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   5989  1.1  christos                                                     {
   5990  1.1  christos                                                       /* 33222222222211111111110000000000
   5991  1.1  christos                                                          10987654321098765432109876543210
   5992  1.1  christos                                                          xxxxxxxxxx110111xxxxx1x001110xxx
   5993  1.1  christos                                                          facge.  */
   5994  1.1  christos                                                       return 287;
   5995  1.1  christos                                                     }
   5996  1.1  christos                                                   else
   5997  1.1  christos                                                     {
   5998  1.1  christos                                                       /* 33222222222211111111110000000000
   5999  1.1  christos                                                          10987654321098765432109876543210
   6000  1.1  christos                                                          xxxxxxxxxx110111xxxxx1x101110xxx
   6001  1.1  christos                                                          facgt.  */
   6002  1.1  christos                                                       return 295;
   6003  1.1  christos                                                     }
   6004  1.1  christos                                                 }
   6005  1.1  christos                                             }
   6006  1.1  christos                                         }
   6007  1.1  christos                                     }
   6008  1.1  christos                                   else
   6009  1.1  christos                                     {
   6010  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   6011  1.1  christos                                         {
   6012  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   6013  1.1  christos                                             {
   6014  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   6015  1.1  christos                                                 {
   6016  1.1  christos                                                   if (((word >> 22) & 0x1) == 0)
   6017  1.1  christos                                                     {
   6018  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   6019  1.1  christos                                                         {
   6020  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   6021  1.1  christos                                                             {
   6022  1.1  christos                                                               /* 33222222222211111111110000000000
   6023  1.1  christos                                                                  10987654321098765432109876543210
   6024  1.1  christos                                                                  xxxxxxxxxx111000xxxxx100011100xx
   6025  1.1  christos                                                                  and.  */
   6026  1.1  christos                                                               return 251;
   6027  1.1  christos                                                             }
   6028  1.1  christos                                                           else
   6029  1.1  christos                                                             {
   6030  1.1  christos                                                               /* 33222222222211111111110000000000
   6031  1.1  christos                                                                  10987654321098765432109876543210
   6032  1.1  christos                                                                  xxxxxxxxxx111000xxxxx100011101xx
   6033  1.1  christos                                                                  eor.  */
   6034  1.1  christos                                                               return 290;
   6035  1.1  christos                                                             }
   6036  1.1  christos                                                         }
   6037  1.1  christos                                                       else
   6038  1.1  christos                                                         {
   6039  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   6040  1.1  christos                                                             {
   6041  1.1  christos                                                               /* 33222222222211111111110000000000
   6042  1.1  christos                                                                  10987654321098765432109876543210
   6043  1.1  christos                                                                  xxxxxxxxxx111000xxxxx101011100xx
   6044  1.1  christos                                                                  orr.  */
   6045  1.1  christos                                                               return 258;
   6046  1.1  christos                                                             }
   6047  1.1  christos                                                           else
   6048  1.1  christos                                                             {
   6049  1.1  christos                                                               /* 33222222222211111111110000000000
   6050  1.1  christos                                                                  10987654321098765432109876543210
   6051  1.1  christos                                                                  xxxxxxxxxx111000xxxxx101011101xx
   6052  1.1  christos                                                                  bit.  */
   6053  1.1  christos                                                               return 297;
   6054  1.1  christos                                                             }
   6055  1.1  christos                                                         }
   6056  1.1  christos                                                     }
   6057  1.1  christos                                                   else
   6058  1.1  christos                                                     {
   6059  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   6060  1.1  christos                                                         {
   6061  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   6062  1.1  christos                                                             {
   6063  1.1  christos                                                               /* 33222222222211111111110000000000
   6064  1.1  christos                                                                  10987654321098765432109876543210
   6065  1.1  christos                                                                  xxxxxxxxxx111000xxxxx110011100xx
   6066  1.1  christos                                                                  bic.  */
   6067  1.1  christos                                                               return 252;
   6068  1.1  christos                                                             }
   6069  1.1  christos                                                           else
   6070  1.1  christos                                                             {
   6071  1.1  christos                                                               /* 33222222222211111111110000000000
   6072  1.1  christos                                                                  10987654321098765432109876543210
   6073  1.1  christos                                                                  xxxxxxxxxx111000xxxxx110011101xx
   6074  1.1  christos                                                                  bsl.  */
   6075  1.1  christos                                                               return 291;
   6076  1.1  christos                                                             }
   6077  1.1  christos                                                         }
   6078  1.1  christos                                                       else
   6079  1.1  christos                                                         {
   6080  1.1  christos                                                           if (((word >> 29) & 0x1) == 0)
   6081  1.1  christos                                                             {
   6082  1.1  christos                                                               /* 33222222222211111111110000000000
   6083  1.1  christos                                                                  10987654321098765432109876543210
   6084  1.1  christos                                                                  xxxxxxxxxx111000xxxxx111011100xx
   6085  1.1  christos                                                                  orn.  */
   6086  1.1  christos                                                               return 260;
   6087  1.1  christos                                                             }
   6088  1.1  christos                                                           else
   6089  1.1  christos                                                             {
   6090  1.1  christos                                                               /* 33222222222211111111110000000000
   6091  1.1  christos                                                                  10987654321098765432109876543210
   6092  1.1  christos                                                                  xxxxxxxxxx111000xxxxx111011101xx
   6093  1.1  christos                                                                  bif.  */
   6094  1.1  christos                                                               return 298;
   6095  1.1  christos                                                             }
   6096  1.1  christos                                                         }
   6097  1.1  christos                                                     }
   6098  1.1  christos                                                 }
   6099  1.1  christos                                               else
   6100  1.1  christos                                                 {
   6101  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   6102  1.1  christos                                                     {
   6103  1.1  christos                                                       /* 33222222222211111111110000000000
   6104  1.1  christos                                                          10987654321098765432109876543210
   6105  1.1  christos                                                          xxxxxxxxxx111001xxxxx1xx011100xx
   6106  1.1  christos                                                          mul.  */
   6107  1.1  christos                                                       return 239;
   6108  1.1  christos                                                     }
   6109  1.1  christos                                                   else
   6110  1.1  christos                                                     {
   6111  1.1  christos                                                       /* 33222222222211111111110000000000
   6112  1.1  christos                                                          10987654321098765432109876543210
   6113  1.1  christos                                                          xxxxxxxxxx111001xxxxx1xx011101xx
   6114  1.1  christos                                                          pmul.  */
   6115  1.1  christos                                                       return 279;
   6116  1.1  christos                                                     }
   6117  1.1  christos                                                 }
   6118  1.1  christos                                             }
   6119  1.1  christos                                           else
   6120  1.1  christos                                             {
   6121  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   6122  1.1  christos                                                 {
   6123  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   6124  1.1  christos                                                     {
   6125  1.1  christos                                                       /* 33222222222211111111110000000000
   6126  1.1  christos                                                          10987654321098765432109876543210
   6127  1.1  christos                                                          xxxxxxxxxx111010xxxxx1xx011100xx
   6128  1.1  christos                                                          sqrshl.  */
   6129  1.1  christos                                                       return 231;
   6130  1.1  christos                                                     }
   6131  1.1  christos                                                   else
   6132  1.1  christos                                                     {
   6133  1.1  christos                                                       /* 33222222222211111111110000000000
   6134  1.1  christos                                                          10987654321098765432109876543210
   6135  1.1  christos                                                          xxxxxxxxxx111010xxxxx1xx011101xx
   6136  1.1  christos                                                          uqrshl.  */
   6137  1.1  christos                                                       return 271;
   6138  1.1  christos                                                     }
   6139  1.1  christos                                                 }
   6140  1.1  christos                                               else
   6141  1.1  christos                                                 {
   6142  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   6143  1.1  christos                                                     {
   6144  1.1  christos                                                       /* 33222222222211111111110000000000
   6145  1.1  christos                                                          10987654321098765432109876543210
   6146  1.1  christos                                                          xxxxxxxxxx111011xxxxx1xx011100xx
   6147  1.1  christos                                                          fmulx.  */
   6148  1.1  christos                                                       return 247;
   6149  1.1  christos                                                     }
   6150  1.1  christos                                                   else
   6151  1.1  christos                                                     {
   6152  1.1  christos                                                       /* 33222222222211111111110000000000
   6153  1.1  christos                                                          10987654321098765432109876543210
   6154  1.1  christos                                                          xxxxxxxxxx111011xxxxx1xx011101xx
   6155  1.1  christos                                                          fmul.  */
   6156  1.1  christos                                                       return 285;
   6157  1.1  christos                                                     }
   6158  1.1  christos                                                 }
   6159  1.1  christos                                             }
   6160  1.1  christos                                         }
   6161  1.1  christos                                       else
   6162  1.1  christos                                         {
   6163  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   6164  1.1  christos                                             {
   6165  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   6166  1.1  christos                                                 {
   6167  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   6168  1.1  christos                                                     {
   6169  1.1  christos                                                       /* 33222222222211111111110000000000
   6170  1.1  christos                                                          10987654321098765432109876543210
   6171  1.1  christos                                                          xxxxxxxxxx111100xxxxx1xx011100xx
   6172  1.1  christos                                                          cmge.  */
   6173  1.1  christos                                                       return 227;
   6174  1.1  christos                                                     }
   6175  1.1  christos                                                   else
   6176  1.1  christos                                                     {
   6177  1.1  christos                                                       /* 33222222222211111111110000000000
   6178  1.1  christos                                                          10987654321098765432109876543210
   6179  1.1  christos                                                          xxxxxxxxxx111100xxxxx1xx011101xx
   6180  1.1  christos                                                          cmhs.  */
   6181  1.1  christos                                                       return 267;
   6182  1.1  christos                                                     }
   6183  1.1  christos                                                 }
   6184  1.1  christos                                               else
   6185  1.1  christos                                                 {
   6186  1.1  christos                                                   /* 33222222222211111111110000000000
   6187  1.1  christos                                                      10987654321098765432109876543210
   6188  1.1  christos                                                      xxxxxxxxxx111101xxxxx1xx01110xxx
   6189  1.1  christos                                                      addp.  */
   6190  1.1  christos                                                   return 243;
   6191  1.1  christos                                                 }
   6192  1.1  christos                                             }
   6193  1.1  christos                                           else
   6194  1.1  christos                                             {
   6195  1.1  christos                                               if (((word >> 15) & 0x1) == 0)
   6196  1.1  christos                                                 {
   6197  1.1  christos                                                   if (((word >> 29) & 0x1) == 0)
   6198  1.1  christos                                                     {
   6199  1.1  christos                                                       /* 33222222222211111111110000000000
   6200  1.1  christos                                                          10987654321098765432109876543210
   6201  1.1  christos                                                          xxxxxxxxxx111110xxxxx1xx011100xx
   6202  1.1  christos                                                          saba.  */
   6203  1.1  christos                                                       return 235;
   6204  1.1  christos                                                     }
   6205  1.1  christos                                                   else
   6206  1.1  christos                                                     {
   6207  1.1  christos                                                       /* 33222222222211111111110000000000
   6208  1.1  christos                                                          10987654321098765432109876543210
   6209  1.1  christos                                                          xxxxxxxxxx111110xxxxx1xx011101xx
   6210  1.1  christos                                                          uaba.  */
   6211  1.1  christos                                                       return 275;
   6212  1.1  christos                                                     }
   6213  1.1  christos                                                 }
   6214  1.1  christos                                               else
   6215  1.1  christos                                                 {
   6216  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   6217  1.1  christos                                                     {
   6218  1.1  christos                                                       if (((word >> 29) & 0x1) == 0)
   6219  1.1  christos                                                         {
   6220  1.1  christos                                                           /* 33222222222211111111110000000000
   6221  1.1  christos                                                              10987654321098765432109876543210
   6222  1.1  christos                                                              xxxxxxxxxx111111xxxxx1x0011100xx
   6223  1.1  christos                                                              frecps.  */
   6224  1.1  christos                                                           return 250;
   6225  1.1  christos                                                         }
   6226  1.1  christos                                                       else
   6227  1.1  christos                                                         {
   6228  1.1  christos                                                           /* 33222222222211111111110000000000
   6229  1.1  christos                                                              10987654321098765432109876543210
   6230  1.1  christos                                                              xxxxxxxxxx111111xxxxx1x0011101xx
   6231  1.1  christos                                                              fdiv.  */
   6232  1.1  christos                                                           return 289;
   6233  1.1  christos                                                         }
   6234  1.1  christos                                                     }
   6235  1.1  christos                                                   else
   6236  1.1  christos                                                     {
   6237  1.1  christos                                                       /* 33222222222211111111110000000000
   6238  1.1  christos                                                          10987654321098765432109876543210
   6239  1.1  christos                                                          xxxxxxxxxx111111xxxxx1x101110xxx
   6240  1.1  christos                                                          frsqrts.  */
   6241  1.1  christos                                                       return 257;
   6242  1.1  christos                                                     }
   6243  1.1  christos                                                 }
   6244  1.1  christos                                             }
   6245  1.1  christos                                         }
   6246  1.1  christos                                     }
   6247  1.1  christos                                 }
   6248  1.1  christos                               else
   6249  1.1  christos                                 {
   6250  1.1  christos                                   if (((word >> 29) & 0x1) == 0)
   6251  1.1  christos                                     {
   6252  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
   6253  1.1  christos                                         {
   6254  1.1  christos                                           /* 33222222222211111111110000000000
   6255  1.1  christos                                              10987654321098765432109876543210
   6256  1.1  christos                                              xxxxxxxxxx11xxxxxxxxx1xx0111100x
   6257  1.1  christos                                              fcsel.  */
   6258  1.1  christos                                           return 648;
   6259  1.1  christos                                         }
   6260  1.1  christos                                       else
   6261  1.1  christos                                         {
   6262  1.1  christos                                           if (((word >> 12) & 0x1) == 0)
   6263  1.1  christos                                             {
   6264  1.1  christos                                               if (((word >> 13) & 0x1) == 0)
   6265  1.1  christos                                                 {
   6266  1.1  christos                                                   if (((word >> 14) & 0x1) == 0)
   6267  1.1  christos                                                     {
   6268  1.1  christos                                                       if (((word >> 15) & 0x1) == 0)
   6269  1.1  christos                                                         {
   6270  1.1  christos                                                           /* 33222222222211111111110000000000
   6271  1.1  christos                                                              10987654321098765432109876543210
   6272  1.1  christos                                                              xxxxxxxxxx110000xxxxx1xx0111101x
   6273  1.1  christos                                                              sqadd.  */
   6274  1.1  christos                                                           return 438;
   6275  1.1  christos                                                         }
   6276  1.1  christos                                                       else
   6277  1.1  christos                                                         {
   6278  1.1  christos                                                           /* 33222222222211111111110000000000
   6279  1.1  christos                                                              10987654321098765432109876543210
   6280  1.1  christos                                                              xxxxxxxxxx110001xxxxx1xx0111101x
   6281  1.1  christos                                                              cmtst.  */
   6282  1.1  christos                                                           return 452;
   6283  1.1  christos                                                         }
   6284  1.1  christos                                                     }
   6285  1.1  christos                                                   else
   6286  1.1  christos                                                     {
   6287  1.1  christos                                                       /* 33222222222211111111110000000000
   6288  1.1  christos                                                          10987654321098765432109876543210
   6289  1.1  christos                                                          xxxxxxxxxx11001xxxxxx1xx0111101x
   6290  1.1  christos                                                          sqshl.  */
   6291  1.1  christos                                                       return 440;
   6292  1.1  christos                                                     }
   6293  1.1  christos                                                 }
   6294  1.1  christos                                               else
   6295  1.1  christos                                                 {
   6296  1.1  christos                                                   /* 33222222222211111111110000000000
   6297  1.1  christos                                                      10987654321098765432109876543210
   6298  1.1  christos                                                      xxxxxxxxxx1101xxxxxxx1xx0111101x
   6299  1.1  christos                                                      sqsub.  */
   6300  1.1  christos                                                   return 439;
   6301  1.1  christos                                                 }
   6302  1.1  christos                                             }
   6303  1.1  christos                                           else
   6304  1.1  christos                                             {
   6305  1.1  christos                                               if (((word >> 13) & 0x1) == 0)
   6306  1.1  christos                                                 {
   6307  1.1  christos                                                   if (((word >> 15) & 0x1) == 0)
   6308  1.1  christos                                                     {
   6309  1.1  christos                                                       /* 33222222222211111111110000000000
   6310  1.1  christos                                                          10987654321098765432109876543210
   6311  1.1  christos                                                          xxxxxxxxxx1110x0xxxxx1xx0111101x
   6312  1.1  christos                                                          sqrshl.  */
   6313  1.1  christos                                                       return 441;
   6314  1.1  christos                                                     }
   6315  1.1  christos                                                   else
   6316  1.1  christos                                                     {
   6317  1.1  christos                                                       /* 33222222222211111111110000000000
   6318  1.1  christos                                                          10987654321098765432109876543210
   6319  1.1  christos                                                          xxxxxxxxxx1110x1xxxxx1xx0111101x
   6320  1.1  christos                                                          fmulx.  */
   6321  1.1  christos                                                       return 443;
   6322  1.1  christos                                                     }
   6323  1.1  christos                                                 }
   6324  1.1  christos                                               else
   6325  1.1  christos                                                 {
   6326  1.1  christos                                                   if (((word >> 14) & 0x1) == 0)
   6327  1.1  christos                                                     {
   6328  1.1  christos                                                       /* 33222222222211111111110000000000
   6329  1.1  christos                                                          10987654321098765432109876543210
   6330  1.1  christos                                                          xxxxxxxxxx11110xxxxxx1xx0111101x
   6331  1.1  christos                                                          cmge.  */
   6332  1.1  christos                                                       return 448;
   6333  1.1  christos                                                     }
   6334  1.1  christos                                                   else
   6335  1.1  christos                                                     {
   6336  1.1  christos                                                       if (((word >> 23) & 0x1) == 0)
   6337  1.1  christos                                                         {
   6338  1.1  christos                                                           /* 33222222222211111111110000000000
   6339  1.1  christos                                                              10987654321098765432109876543210
   6340  1.1  christos                                                              xxxxxxxxxx11111xxxxxx1x00111101x
   6341  1.1  christos                                                              frecps.  */
   6342  1.1  christos                                                           return 445;
   6343  1.1  christos                                                         }
   6344  1.1  christos                                                       else
   6345  1.1  christos                                                         {
   6346  1.1  christos                                                           /* 33222222222211111111110000000000
   6347  1.1  christos                                                              10987654321098765432109876543210
   6348  1.1  christos                                                              xxxxxxxxxx11111xxxxxx1x10111101x
   6349  1.1  christos                                                              frsqrts.  */
   6350  1.1  christos                                                           return 446;
   6351  1.1  christos                                                         }
   6352  1.1  christos                                                     }
   6353  1.1  christos                                                 }
   6354  1.1  christos                                             }
   6355  1.1  christos                                         }
   6356  1.1  christos                                     }
   6357  1.1  christos                                   else
   6358  1.1  christos                                     {
   6359  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   6360  1.1  christos                                         {
   6361  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   6362  1.1  christos                                             {
   6363  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   6364  1.1  christos                                                 {
   6365  1.1  christos                                                   if (((word >> 15) & 0x1) == 0)
   6366  1.1  christos                                                     {
   6367  1.1  christos                                                       /* 33222222222211111111110000000000
   6368  1.1  christos                                                          10987654321098765432109876543210
   6369  1.1  christos                                                          xxxxxxxxxx110000xxxxx1xx011111xx
   6370  1.1  christos                                                          uqadd.  */
   6371  1.1  christos                                                       return 453;
   6372  1.1  christos                                                     }
   6373  1.1  christos                                                   else
   6374  1.1  christos                                                     {
   6375  1.1  christos                                                       /* 33222222222211111111110000000000
   6376  1.1  christos                                                          10987654321098765432109876543210
   6377  1.1  christos                                                          xxxxxxxxxx110001xxxxx1xx011111xx
   6378  1.1  christos                                                          cmeq.  */
   6379  1.1  christos                                                       return 468;
   6380  1.1  christos                                                     }
   6381  1.1  christos                                                 }
   6382  1.1  christos                                               else
   6383  1.1  christos                                                 {
   6384  1.1  christos                                                   /* 33222222222211111111110000000000
   6385  1.1  christos                                                      10987654321098765432109876543210
   6386  1.1  christos                                                      xxxxxxxxxx11001xxxxxx1xx011111xx
   6387  1.1  christos                                                      uqshl.  */
   6388  1.1  christos                                                   return 455;
   6389  1.1  christos                                                 }
   6390  1.1  christos                                             }
   6391  1.1  christos                                           else
   6392  1.1  christos                                             {
   6393  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   6394  1.1  christos                                                 {
   6395  1.1  christos                                                   /* 33222222222211111111110000000000
   6396  1.1  christos                                                      10987654321098765432109876543210
   6397  1.1  christos                                                      xxxxxxxxxx11010xxxxxx1xx011111xx
   6398  1.1  christos                                                      uqsub.  */
   6399  1.1  christos                                                   return 454;
   6400  1.1  christos                                                 }
   6401  1.1  christos                                               else
   6402  1.1  christos                                                 {
   6403  1.1  christos                                                   if (((word >> 23) & 0x1) == 0)
   6404  1.1  christos                                                     {
   6405  1.1  christos                                                       /* 33222222222211111111110000000000
   6406  1.1  christos                                                          10987654321098765432109876543210
   6407  1.1  christos                                                          xxxxxxxxxx11011xxxxxx1x0011111xx
   6408  1.1  christos                                                          facge.  */
   6409  1.1  christos                                                       return 459;
   6410  1.1  christos                                                     }
   6411  1.1  christos                                                   else
   6412  1.1  christos                                                     {
   6413  1.1  christos                                                       /* 33222222222211111111110000000000
   6414  1.1  christos                                                          10987654321098765432109876543210
   6415  1.1  christos                                                          xxxxxxxxxx11011xxxxxx1x1011111xx
   6416  1.1  christos                                                          facgt.  */
   6417  1.1  christos                                                       return 462;
   6418  1.1  christos                                                     }
   6419  1.1  christos                                                 }
   6420  1.1  christos                                             }
   6421  1.1  christos                                         }
   6422  1.1  christos                                       else
   6423  1.1  christos                                         {
   6424  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   6425  1.1  christos                                             {
   6426  1.1  christos                                               /* 33222222222211111111110000000000
   6427  1.1  christos                                                  10987654321098765432109876543210
   6428  1.1  christos                                                  xxxxxxxxxx1110xxxxxxx1xx011111xx
   6429  1.1  christos                                                  uqrshl.  */
   6430  1.1  christos                                               return 456;
   6431  1.1  christos                                             }
   6432  1.1  christos                                           else
   6433  1.1  christos                                             {
   6434  1.1  christos                                               /* 33222222222211111111110000000000
   6435  1.1  christos                                                  10987654321098765432109876543210
   6436  1.1  christos                                                  xxxxxxxxxx1111xxxxxxx1xx011111xx
   6437  1.1  christos                                                  cmhs.  */
   6438  1.1  christos                                               return 464;
   6439  1.1  christos                                             }
   6440  1.1  christos                                         }
   6441  1.1  christos                                     }
   6442  1.1  christos                                 }
   6443  1.1  christos                             }
   6444  1.1  christos                         }
   6445  1.1  christos                     }
   6446  1.1  christos                 }
   6447  1.1  christos               else
   6448  1.1  christos                 {
   6449  1.1  christos                   if (((word >> 15) & 0x1) == 0)
   6450  1.1  christos                     {
   6451  1.1  christos                       if (((word >> 28) & 0x1) == 0)
   6452  1.1  christos                         {
   6453  1.1  christos                           if (((word >> 10) & 0x1) == 0)
   6454  1.1  christos                             {
   6455  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   6456  1.1  christos                                 {
   6457  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   6458  1.1  christos                                     {
   6459  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6460  1.1  christos                                         {
   6461  1.1  christos                                           /* 33222222222211111111110000000000
   6462  1.1  christos                                              10987654321098765432109876543210
   6463  1.1  christos                                              xxxxxxxxxx0x0000xxxxxxxx11110xxx
   6464  1.1  christos                                              mla.  */
   6465  1.1  christos                                           return 110;
   6466  1.1  christos                                         }
   6467  1.1  christos                                       else
   6468  1.1  christos                                         {
   6469  1.1  christos                                           /* 33222222222211111111110000000000
   6470  1.1  christos                                              10987654321098765432109876543210
   6471  1.1  christos                                              xxxxxxxxxx0x0010xxxxxxxx11110xxx
   6472  1.1  christos                                              mls.  */
   6473  1.1  christos                                           return 113;
   6474  1.1  christos                                         }
   6475  1.1  christos                                     }
   6476  1.1  christos                                   else
   6477  1.1  christos                                     {
   6478  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6479  1.1  christos                                         {
   6480  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   6481  1.1  christos                                             {
   6482  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   6483  1.1  christos                                                 {
   6484  1.1  christos                                                   /* 33222222222211111111110000000000
   6485  1.1  christos                                                      10987654321098765432109876543210
   6486  1.1  christos                                                      xxxxxxxxxx0x0100xxxxxxxx1111000x
   6487  1.1  christos                                                      smlal.  */
   6488  1.1  christos                                                   return 92;
   6489  1.1  christos                                                 }
   6490  1.1  christos                                               else
   6491  1.1  christos                                                 {
   6492  1.1  christos                                                   /* 33222222222211111111110000000000
   6493  1.1  christos                                                      10987654321098765432109876543210
   6494  1.1  christos                                                      xxxxxxxxxx0x0100xxxxxxxx1111001x
   6495  1.1  christos                                                      smlal2.  */
   6496  1.1  christos                                                   return 93;
   6497  1.1  christos                                                 }
   6498  1.1  christos                                             }
   6499  1.1  christos                                           else
   6500  1.1  christos                                             {
   6501  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   6502  1.1  christos                                                 {
   6503  1.1  christos                                                   /* 33222222222211111111110000000000
   6504  1.1  christos                                                      10987654321098765432109876543210
   6505  1.1  christos                                                      xxxxxxxxxx0x0100xxxxxxxx1111010x
   6506  1.1  christos                                                      umlal.  */
   6507  1.1  christos                                                   return 111;
   6508  1.1  christos                                                 }
   6509  1.1  christos                                               else
   6510  1.1  christos                                                 {
   6511  1.1  christos                                                   /* 33222222222211111111110000000000
   6512  1.1  christos                                                      10987654321098765432109876543210
   6513  1.1  christos                                                      xxxxxxxxxx0x0100xxxxxxxx1111011x
   6514  1.1  christos                                                      umlal2.  */
   6515  1.1  christos                                                   return 112;
   6516  1.1  christos                                                 }
   6517  1.1  christos                                             }
   6518  1.1  christos                                         }
   6519  1.1  christos                                       else
   6520  1.1  christos                                         {
   6521  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   6522  1.1  christos                                             {
   6523  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   6524  1.1  christos                                                 {
   6525  1.1  christos                                                   /* 33222222222211111111110000000000
   6526  1.1  christos                                                      10987654321098765432109876543210
   6527  1.1  christos                                                      xxxxxxxxxx0x0110xxxxxxxx1111000x
   6528  1.1  christos                                                      smlsl.  */
   6529  1.1  christos                                                   return 96;
   6530  1.1  christos                                                 }
   6531  1.1  christos                                               else
   6532  1.1  christos                                                 {
   6533  1.1  christos                                                   /* 33222222222211111111110000000000
   6534  1.1  christos                                                      10987654321098765432109876543210
   6535  1.1  christos                                                      xxxxxxxxxx0x0110xxxxxxxx1111001x
   6536  1.1  christos                                                      smlsl2.  */
   6537  1.1  christos                                                   return 97;
   6538  1.1  christos                                                 }
   6539  1.1  christos                                             }
   6540  1.1  christos                                           else
   6541  1.1  christos                                             {
   6542  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   6543  1.1  christos                                                 {
   6544  1.1  christos                                                   /* 33222222222211111111110000000000
   6545  1.1  christos                                                      10987654321098765432109876543210
   6546  1.1  christos                                                      xxxxxxxxxx0x0110xxxxxxxx1111010x
   6547  1.1  christos                                                      umlsl.  */
   6548  1.1  christos                                                   return 114;
   6549  1.1  christos                                                 }
   6550  1.1  christos                                               else
   6551  1.1  christos                                                 {
   6552  1.1  christos                                                   /* 33222222222211111111110000000000
   6553  1.1  christos                                                      10987654321098765432109876543210
   6554  1.1  christos                                                      xxxxxxxxxx0x0110xxxxxxxx1111011x
   6555  1.1  christos                                                      umlsl2.  */
   6556  1.1  christos                                                   return 115;
   6557  1.1  christos                                                 }
   6558  1.1  christos                                             }
   6559  1.1  christos                                         }
   6560  1.1  christos                                     }
   6561  1.1  christos                                 }
   6562  1.1  christos                               else
   6563  1.1  christos                                 {
   6564  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   6565  1.1  christos                                     {
   6566  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6567  1.1  christos                                         {
   6568  1.1  christos                                           /* 33222222222211111111110000000000
   6569  1.1  christos                                              10987654321098765432109876543210
   6570  1.1  christos                                              xxxxxxxxxx0x1000xxxxxxxx11110xxx
   6571  1.1  christos                                              fmla.  */
   6572  1.1  christos                                           return 107;
   6573  1.1  christos                                         }
   6574  1.1  christos                                       else
   6575  1.1  christos                                         {
   6576  1.1  christos                                           /* 33222222222211111111110000000000
   6577  1.1  christos                                              10987654321098765432109876543210
   6578  1.1  christos                                              xxxxxxxxxx0x1010xxxxxxxx11110xxx
   6579  1.1  christos                                              fmls.  */
   6580  1.1  christos                                           return 108;
   6581  1.1  christos                                         }
   6582  1.1  christos                                     }
   6583  1.1  christos                                   else
   6584  1.1  christos                                     {
   6585  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6586  1.1  christos                                         {
   6587  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   6588  1.1  christos                                             {
   6589  1.1  christos                                               /* 33222222222211111111110000000000
   6590  1.1  christos                                                  10987654321098765432109876543210
   6591  1.1  christos                                                  xxxxxxxxxx0x1100xxxxxxxx11110x0x
   6592  1.1  christos                                                  sqdmlal.  */
   6593  1.1  christos                                               return 94;
   6594  1.1  christos                                             }
   6595  1.1  christos                                           else
   6596  1.1  christos                                             {
   6597  1.1  christos                                               /* 33222222222211111111110000000000
   6598  1.1  christos                                                  10987654321098765432109876543210
   6599  1.1  christos                                                  xxxxxxxxxx0x1100xxxxxxxx11110x1x
   6600  1.1  christos                                                  sqdmlal2.  */
   6601  1.1  christos                                               return 95;
   6602  1.1  christos                                             }
   6603  1.1  christos                                         }
   6604  1.1  christos                                       else
   6605  1.1  christos                                         {
   6606  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   6607  1.1  christos                                             {
   6608  1.1  christos                                               /* 33222222222211111111110000000000
   6609  1.1  christos                                                  10987654321098765432109876543210
   6610  1.1  christos                                                  xxxxxxxxxx0x1110xxxxxxxx11110x0x
   6611  1.1  christos                                                  sqdmlsl.  */
   6612  1.1  christos                                               return 98;
   6613  1.1  christos                                             }
   6614  1.1  christos                                           else
   6615  1.1  christos                                             {
   6616  1.1  christos                                               /* 33222222222211111111110000000000
   6617  1.1  christos                                                  10987654321098765432109876543210
   6618  1.1  christos                                                  xxxxxxxxxx0x1110xxxxxxxx11110x1x
   6619  1.1  christos                                                  sqdmlsl2.  */
   6620  1.1  christos                                               return 99;
   6621  1.1  christos                                             }
   6622  1.1  christos                                         }
   6623  1.1  christos                                     }
   6624  1.1  christos                                 }
   6625  1.1  christos                             }
   6626  1.1  christos                           else
   6627  1.1  christos                             {
   6628  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   6629  1.1  christos                                 {
   6630  1.1  christos                                   if (((word >> 29) & 0x1) == 0)
   6631  1.1  christos                                     {
   6632  1.1  christos                                       /* 33222222222211111111110000000000
   6633  1.1  christos                                          10987654321098765432109876543210
   6634  1.1  christos                                          xxxxxxxxxx1x0xx0xxxxxxxx111100xx
   6635  1.1  christos                                          movi.  */
   6636  1.1  christos                                       return 120;
   6637  1.1  christos                                     }
   6638  1.1  christos                                   else
   6639  1.1  christos                                     {
   6640  1.1  christos                                       /* 33222222222211111111110000000000
   6641  1.1  christos                                          10987654321098765432109876543210
   6642  1.1  christos                                          xxxxxxxxxx1x0xx0xxxxxxxx111101xx
   6643  1.1  christos                                          mvni.  */
   6644  1.1  christos                                       return 127;
   6645  1.1  christos                                     }
   6646  1.1  christos                                 }
   6647  1.1  christos                               else
   6648  1.1  christos                                 {
   6649  1.1  christos                                   if (((word >> 29) & 0x1) == 0)
   6650  1.1  christos                                     {
   6651  1.1  christos                                       /* 33222222222211111111110000000000
   6652  1.1  christos                                          10987654321098765432109876543210
   6653  1.1  christos                                          xxxxxxxxxx1x1xx0xxxxxxxx111100xx
   6654  1.1  christos                                          orr.  */
   6655  1.1  christos                                       return 121;
   6656  1.1  christos                                     }
   6657  1.1  christos                                   else
   6658  1.1  christos                                     {
   6659  1.1  christos                                       /* 33222222222211111111110000000000
   6660  1.1  christos                                          10987654321098765432109876543210
   6661  1.1  christos                                          xxxxxxxxxx1x1xx0xxxxxxxx111101xx
   6662  1.1  christos                                          bic.  */
   6663  1.1  christos                                       return 128;
   6664  1.1  christos                                     }
   6665  1.1  christos                                 }
   6666  1.1  christos                             }
   6667  1.1  christos                         }
   6668  1.1  christos                       else
   6669  1.1  christos                         {
   6670  1.1  christos                           if (((word >> 29) & 0x1) == 0)
   6671  1.1  christos                             {
   6672  1.1  christos                               if (((word >> 30) & 0x1) == 0)
   6673  1.1  christos                                 {
   6674  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
   6675  1.1  christos                                     {
   6676  1.1  christos                                       /* 33222222222211111111110000000000
   6677  1.1  christos                                          10987654321098765432109876543210
   6678  1.1  christos                                          xxxxxxxxxxxxxxx0xxxxx0xx1111100x
   6679  1.1  christos                                          fmadd.  */
   6680  1.1  christos                                       return 643;
   6681  1.1  christos                                     }
   6682  1.1  christos                                   else
   6683  1.1  christos                                     {
   6684  1.1  christos                                       /* 33222222222211111111110000000000
   6685  1.1  christos                                          10987654321098765432109876543210
   6686  1.1  christos                                          xxxxxxxxxxxxxxx0xxxxx1xx1111100x
   6687  1.1  christos                                          fnmadd.  */
   6688  1.1  christos                                       return 645;
   6689  1.1  christos                                     }
   6690  1.1  christos                                 }
   6691  1.1  christos                               else
   6692  1.1  christos                                 {
   6693  1.1  christos                                   if (((word >> 10) & 0x1) == 0)
   6694  1.1  christos                                     {
   6695  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   6696  1.1  christos                                         {
   6697  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   6698  1.1  christos                                             {
   6699  1.1  christos                                               /* 33222222222211111111110000000000
   6700  1.1  christos                                                  10987654321098765432109876543210
   6701  1.1  christos                                                  xxxxxxxxxx0xx000xxxxxxxx1111101x
   6702  1.1  christos                                                  fmla.  */
   6703  1.1  christos                                               return 351;
   6704  1.1  christos                                             }
   6705  1.1  christos                                           else
   6706  1.1  christos                                             {
   6707  1.1  christos                                               /* 33222222222211111111110000000000
   6708  1.1  christos                                                  10987654321098765432109876543210
   6709  1.1  christos                                                  xxxxxxxxxx0xx010xxxxxxxx1111101x
   6710  1.1  christos                                                  fmls.  */
   6711  1.1  christos                                               return 352;
   6712  1.1  christos                                             }
   6713  1.1  christos                                         }
   6714  1.1  christos                                       else
   6715  1.1  christos                                         {
   6716  1.1  christos                                           if (((word >> 14) & 0x1) == 0)
   6717  1.1  christos                                             {
   6718  1.1  christos                                               /* 33222222222211111111110000000000
   6719  1.1  christos                                                  10987654321098765432109876543210
   6720  1.1  christos                                                  xxxxxxxxxx0xx100xxxxxxxx1111101x
   6721  1.1  christos                                                  sqdmlal.  */
   6722  1.1  christos                                               return 346;
   6723  1.1  christos                                             }
   6724  1.1  christos                                           else
   6725  1.1  christos                                             {
   6726  1.1  christos                                               /* 33222222222211111111110000000000
   6727  1.1  christos                                                  10987654321098765432109876543210
   6728  1.1  christos                                                  xxxxxxxxxx0xx110xxxxxxxx1111101x
   6729  1.1  christos                                                  sqdmlsl.  */
   6730  1.1  christos                                               return 347;
   6731  1.1  christos                                             }
   6732  1.1  christos                                         }
   6733  1.1  christos                                     }
   6734  1.1  christos                                   else
   6735  1.1  christos                                     {
   6736  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   6737  1.1  christos                                         {
   6738  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   6739  1.1  christos                                             {
   6740  1.1  christos                                               /* 33222222222211111111110000000000
   6741  1.1  christos                                                  10987654321098765432109876543210
   6742  1.1  christos                                                  xxxxxxxxxx1x00x0xxxxxxxx1111101x
   6743  1.1  christos                                                  sshr.  */
   6744  1.1  christos                                               return 469;
   6745  1.1  christos                                             }
   6746  1.1  christos                                           else
   6747  1.1  christos                                             {
   6748  1.1  christos                                               /* 33222222222211111111110000000000
   6749  1.1  christos                                                  10987654321098765432109876543210
   6750  1.1  christos                                                  xxxxxxxxxx1x01x0xxxxxxxx1111101x
   6751  1.1  christos                                                  srshr.  */
   6752  1.1  christos                                               return 471;
   6753  1.1  christos                                             }
   6754  1.1  christos                                         }
   6755  1.1  christos                                       else
   6756  1.1  christos                                         {
   6757  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   6758  1.1  christos                                             {
   6759  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   6760  1.1  christos                                                 {
   6761  1.1  christos                                                   /* 33222222222211111111110000000000
   6762  1.1  christos                                                      10987654321098765432109876543210
   6763  1.1  christos                                                      xxxxxxxxxx1x1000xxxxxxxx1111101x
   6764  1.1  christos                                                      ssra.  */
   6765  1.1  christos                                                   return 470;
   6766  1.1  christos                                                 }
   6767  1.1  christos                                               else
   6768  1.1  christos                                                 {
   6769  1.1  christos                                                   /* 33222222222211111111110000000000
   6770  1.1  christos                                                      10987654321098765432109876543210
   6771  1.1  christos                                                      xxxxxxxxxx1x1010xxxxxxxx1111101x
   6772  1.1  christos                                                      shl.  */
   6773  1.1  christos                                                   return 473;
   6774  1.1  christos                                                 }
   6775  1.1  christos                                             }
   6776  1.1  christos                                           else
   6777  1.1  christos                                             {
   6778  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   6779  1.1  christos                                                 {
   6780  1.1  christos                                                   /* 33222222222211111111110000000000
   6781  1.1  christos                                                      10987654321098765432109876543210
   6782  1.1  christos                                                      xxxxxxxxxx1x1100xxxxxxxx1111101x
   6783  1.1  christos                                                      srsra.  */
   6784  1.1  christos                                                   return 472;
   6785  1.1  christos                                                 }
   6786  1.1  christos                                               else
   6787  1.1  christos                                                 {
   6788  1.1  christos                                                   /* 33222222222211111111110000000000
   6789  1.1  christos                                                      10987654321098765432109876543210
   6790  1.1  christos                                                      xxxxxxxxxx1x1110xxxxxxxx1111101x
   6791  1.1  christos                                                      sqshl.  */
   6792  1.1  christos                                                   return 474;
   6793  1.1  christos                                                 }
   6794  1.1  christos                                             }
   6795  1.1  christos                                         }
   6796  1.1  christos                                     }
   6797  1.1  christos                                 }
   6798  1.1  christos                             }
   6799  1.1  christos                           else
   6800  1.1  christos                             {
   6801  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   6802  1.1  christos                                 {
   6803  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   6804  1.1  christos                                     {
   6805  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6806  1.1  christos                                         {
   6807  1.1  christos                                           /* 33222222222211111111110000000000
   6808  1.1  christos                                              10987654321098765432109876543210
   6809  1.1  christos                                              xxxxxxxxxxxx0000xxxxxxxx111111xx
   6810  1.1  christos                                              ushr.  */
   6811  1.1  christos                                           return 479;
   6812  1.1  christos                                         }
   6813  1.1  christos                                       else
   6814  1.1  christos                                         {
   6815  1.1  christos                                           /* 33222222222211111111110000000000
   6816  1.1  christos                                              10987654321098765432109876543210
   6817  1.1  christos                                              xxxxxxxxxxxx0010xxxxxxxx111111xx
   6818  1.1  christos                                              sri.  */
   6819  1.1  christos                                           return 483;
   6820  1.1  christos                                         }
   6821  1.1  christos                                     }
   6822  1.1  christos                                   else
   6823  1.1  christos                                     {
   6824  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6825  1.1  christos                                         {
   6826  1.1  christos                                           /* 33222222222211111111110000000000
   6827  1.1  christos                                              10987654321098765432109876543210
   6828  1.1  christos                                              xxxxxxxxxxxx0100xxxxxxxx111111xx
   6829  1.1  christos                                              urshr.  */
   6830  1.1  christos                                           return 481;
   6831  1.1  christos                                         }
   6832  1.1  christos                                       else
   6833  1.1  christos                                         {
   6834  1.1  christos                                           /* 33222222222211111111110000000000
   6835  1.1  christos                                              10987654321098765432109876543210
   6836  1.1  christos                                              xxxxxxxxxxxx0110xxxxxxxx111111xx
   6837  1.1  christos                                              sqshlu.  */
   6838  1.1  christos                                           return 485;
   6839  1.1  christos                                         }
   6840  1.1  christos                                     }
   6841  1.1  christos                                 }
   6842  1.1  christos                               else
   6843  1.1  christos                                 {
   6844  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   6845  1.1  christos                                     {
   6846  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6847  1.1  christos                                         {
   6848  1.1  christos                                           /* 33222222222211111111110000000000
   6849  1.1  christos                                              10987654321098765432109876543210
   6850  1.1  christos                                              xxxxxxxxxxxx1000xxxxxxxx111111xx
   6851  1.1  christos                                              usra.  */
   6852  1.1  christos                                           return 480;
   6853  1.1  christos                                         }
   6854  1.1  christos                                       else
   6855  1.1  christos                                         {
   6856  1.1  christos                                           /* 33222222222211111111110000000000
   6857  1.1  christos                                              10987654321098765432109876543210
   6858  1.1  christos                                              xxxxxxxxxxxx1010xxxxxxxx111111xx
   6859  1.1  christos                                              sli.  */
   6860  1.1  christos                                           return 484;
   6861  1.1  christos                                         }
   6862  1.1  christos                                     }
   6863  1.1  christos                                   else
   6864  1.1  christos                                     {
   6865  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6866  1.1  christos                                         {
   6867  1.1  christos                                           /* 33222222222211111111110000000000
   6868  1.1  christos                                              10987654321098765432109876543210
   6869  1.1  christos                                              xxxxxxxxxxxx1100xxxxxxxx111111xx
   6870  1.1  christos                                              ursra.  */
   6871  1.1  christos                                           return 482;
   6872  1.1  christos                                         }
   6873  1.1  christos                                       else
   6874  1.1  christos                                         {
   6875  1.1  christos                                           /* 33222222222211111111110000000000
   6876  1.1  christos                                              10987654321098765432109876543210
   6877  1.1  christos                                              xxxxxxxxxxxx1110xxxxxxxx111111xx
   6878  1.1  christos                                              uqshl.  */
   6879  1.1  christos                                           return 486;
   6880  1.1  christos                                         }
   6881  1.1  christos                                     }
   6882  1.1  christos                                 }
   6883  1.1  christos                             }
   6884  1.1  christos                         }
   6885  1.1  christos                     }
   6886  1.1  christos                   else
   6887  1.1  christos                     {
   6888  1.1  christos                       if (((word >> 28) & 0x1) == 0)
   6889  1.1  christos                         {
   6890  1.1  christos                           if (((word >> 10) & 0x1) == 0)
   6891  1.1  christos                             {
   6892  1.1  christos                               if (((word >> 12) & 0x1) == 0)
   6893  1.1  christos                                 {
   6894  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   6895  1.1  christos                                     {
   6896  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6897  1.1  christos                                         {
   6898  1.1  christos                                           /* 33222222222211111111110000000000
   6899  1.1  christos                                              10987654321098765432109876543210
   6900  1.1  christos                                              xxxxxxxxxx0x0001xxxxxxxx11110xxx
   6901  1.1  christos                                              mul.  */
   6902  1.1  christos                                           return 100;
   6903  1.1  christos                                         }
   6904  1.1  christos                                       else
   6905  1.1  christos                                         {
   6906  1.1  christos                                           /* 33222222222211111111110000000000
   6907  1.1  christos                                              10987654321098765432109876543210
   6908  1.1  christos                                              xxxxxxxxxx0x0011xxxxxxxx11110xxx
   6909  1.1  christos                                              sqdmulh.  */
   6910  1.1  christos                                           return 105;
   6911  1.1  christos                                         }
   6912  1.1  christos                                     }
   6913  1.1  christos                                   else
   6914  1.1  christos                                     {
   6915  1.1  christos                                       if (((word >> 29) & 0x1) == 0)
   6916  1.1  christos                                         {
   6917  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   6918  1.1  christos                                             {
   6919  1.1  christos                                               /* 33222222222211111111110000000000
   6920  1.1  christos                                                  10987654321098765432109876543210
   6921  1.1  christos                                                  xxxxxxxxxx0x01x1xxxxxxxx1111000x
   6922  1.1  christos                                                  smull.  */
   6923  1.1  christos                                               return 101;
   6924  1.1  christos                                             }
   6925  1.1  christos                                           else
   6926  1.1  christos                                             {
   6927  1.1  christos                                               /* 33222222222211111111110000000000
   6928  1.1  christos                                                  10987654321098765432109876543210
   6929  1.1  christos                                                  xxxxxxxxxx0x01x1xxxxxxxx1111001x
   6930  1.1  christos                                                  smull2.  */
   6931  1.1  christos                                               return 102;
   6932  1.1  christos                                             }
   6933  1.1  christos                                         }
   6934  1.1  christos                                       else
   6935  1.1  christos                                         {
   6936  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   6937  1.1  christos                                             {
   6938  1.1  christos                                               /* 33222222222211111111110000000000
   6939  1.1  christos                                                  10987654321098765432109876543210
   6940  1.1  christos                                                  xxxxxxxxxx0x01x1xxxxxxxx1111010x
   6941  1.1  christos                                                  umull.  */
   6942  1.1  christos                                               return 116;
   6943  1.1  christos                                             }
   6944  1.1  christos                                           else
   6945  1.1  christos                                             {
   6946  1.1  christos                                               /* 33222222222211111111110000000000
   6947  1.1  christos                                                  10987654321098765432109876543210
   6948  1.1  christos                                                  xxxxxxxxxx0x01x1xxxxxxxx1111011x
   6949  1.1  christos                                                  umull2.  */
   6950  1.1  christos                                               return 117;
   6951  1.1  christos                                             }
   6952  1.1  christos                                         }
   6953  1.1  christos                                     }
   6954  1.1  christos                                 }
   6955  1.1  christos                               else
   6956  1.1  christos                                 {
   6957  1.1  christos                                   if (((word >> 13) & 0x1) == 0)
   6958  1.1  christos                                     {
   6959  1.1  christos                                       if (((word >> 14) & 0x1) == 0)
   6960  1.1  christos                                         {
   6961  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   6962  1.1  christos                                             {
   6963  1.1  christos                                               /* 33222222222211111111110000000000
   6964  1.1  christos                                                  10987654321098765432109876543210
   6965  1.1  christos                                                  xxxxxxxxxx0x1001xxxxxxxx111100xx
   6966  1.1  christos                                                  fmul.  */
   6967  1.1  christos                                               return 109;
   6968  1.1  christos                                             }
   6969  1.1  christos                                           else
   6970  1.1  christos                                             {
   6971  1.1  christos                                               /* 33222222222211111111110000000000
   6972  1.1  christos                                                  10987654321098765432109876543210
   6973  1.1  christos                                                  xxxxxxxxxx0x1001xxxxxxxx111101xx
   6974  1.1  christos                                                  fmulx.  */
   6975  1.1  christos                                               return 118;
   6976  1.1  christos                                             }
   6977  1.1  christos                                         }
   6978  1.1  christos                                       else
   6979  1.1  christos                                         {
   6980  1.1  christos                                           /* 33222222222211111111110000000000
   6981  1.1  christos                                              10987654321098765432109876543210
   6982  1.1  christos                                              xxxxxxxxxx0x1011xxxxxxxx11110xxx
   6983  1.1  christos                                              sqrdmulh.  */
   6984  1.1  christos                                           return 106;
   6985  1.1  christos                                         }
   6986  1.1  christos                                     }
   6987  1.1  christos                                   else
   6988  1.1  christos                                     {
   6989  1.1  christos                                       if (((word >> 30) & 0x1) == 0)
   6990  1.1  christos                                         {
   6991  1.1  christos                                           /* 33222222222211111111110000000000
   6992  1.1  christos                                              10987654321098765432109876543210
   6993  1.1  christos                                              xxxxxxxxxx0x11x1xxxxxxxx11110x0x
   6994  1.1  christos                                              sqdmull.  */
   6995  1.1  christos                                           return 103;
   6996  1.1  christos                                         }
   6997  1.1  christos                                       else
   6998  1.1  christos                                         {
   6999  1.1  christos                                           /* 33222222222211111111110000000000
   7000  1.1  christos                                              10987654321098765432109876543210
   7001  1.1  christos                                              xxxxxxxxxx0x11x1xxxxxxxx11110x1x
   7002  1.1  christos                                              sqdmull2.  */
   7003  1.1  christos                                           return 104;
   7004  1.1  christos                                         }
   7005  1.1  christos                                     }
   7006  1.1  christos                                 }
   7007  1.1  christos                             }
   7008  1.1  christos                           else
   7009  1.1  christos                             {
   7010  1.1  christos                               if (((word >> 11) & 0x1) == 0)
   7011  1.1  christos                                 {
   7012  1.1  christos                                   if (((word >> 14) & 0x1) == 0)
   7013  1.1  christos                                     {
   7014  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   7015  1.1  christos                                         {
   7016  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   7017  1.1  christos                                             {
   7018  1.1  christos                                               /* 33222222222211111111110000000000
   7019  1.1  christos                                                  10987654321098765432109876543210
   7020  1.1  christos                                                  xxxxxxxxxx100x01xxxxxxxx111100xx
   7021  1.1  christos                                                  movi.  */
   7022  1.1  christos                                               return 122;
   7023  1.1  christos                                             }
   7024  1.1  christos                                           else
   7025  1.1  christos                                             {
   7026  1.1  christos                                               /* 33222222222211111111110000000000
   7027  1.1  christos                                                  10987654321098765432109876543210
   7028  1.1  christos                                                  xxxxxxxxxx100x01xxxxxxxx111101xx
   7029  1.1  christos                                                  mvni.  */
   7030  1.1  christos                                               return 129;
   7031  1.1  christos                                             }
   7032  1.1  christos                                         }
   7033  1.1  christos                                       else
   7034  1.1  christos                                         {
   7035  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   7036  1.1  christos                                             {
   7037  1.1  christos                                               /* 33222222222211111111110000000000
   7038  1.1  christos                                                  10987654321098765432109876543210
   7039  1.1  christos                                                  xxxxxxxxxx101x01xxxxxxxx111100xx
   7040  1.1  christos                                                  orr.  */
   7041  1.1  christos                                               return 123;
   7042  1.1  christos                                             }
   7043  1.1  christos                                           else
   7044  1.1  christos                                             {
   7045  1.1  christos                                               /* 33222222222211111111110000000000
   7046  1.1  christos                                                  10987654321098765432109876543210
   7047  1.1  christos                                                  xxxxxxxxxx101x01xxxxxxxx111101xx
   7048  1.1  christos                                                  bic.  */
   7049  1.1  christos                                               return 130;
   7050  1.1  christos                                             }
   7051  1.1  christos                                         }
   7052  1.1  christos                                     }
   7053  1.1  christos                                   else
   7054  1.1  christos                                     {
   7055  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   7056  1.1  christos                                         {
   7057  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   7058  1.1  christos                                             {
   7059  1.1  christos                                               /* 33222222222211111111110000000000
   7060  1.1  christos                                                  10987654321098765432109876543210
   7061  1.1  christos                                                  xxxxxxxxxx10x011xxxxxxxx111100xx
   7062  1.1  christos                                                  movi.  */
   7063  1.1  christos                                               return 124;
   7064  1.1  christos                                             }
   7065  1.1  christos                                           else
   7066  1.1  christos                                             {
   7067  1.1  christos                                               /* 33222222222211111111110000000000
   7068  1.1  christos                                                  10987654321098765432109876543210
   7069  1.1  christos                                                  xxxxxxxxxx10x011xxxxxxxx111101xx
   7070  1.1  christos                                                  mvni.  */
   7071  1.1  christos                                               return 131;
   7072  1.1  christos                                             }
   7073  1.1  christos                                         }
   7074  1.1  christos                                       else
   7075  1.1  christos                                         {
   7076  1.1  christos                                           if (((word >> 12) & 0x1) == 0)
   7077  1.1  christos                                             {
   7078  1.1  christos                                               if (((word >> 29) & 0x1) == 0)
   7079  1.1  christos                                                 {
   7080  1.1  christos                                                   /* 33222222222211111111110000000000
   7081  1.1  christos                                                      10987654321098765432109876543210
   7082  1.1  christos                                                      xxxxxxxxxx100111xxxxxxxx111100xx
   7083  1.1  christos                                                      movi.  */
   7084  1.1  christos                                                   return 125;
   7085  1.1  christos                                                 }
   7086  1.1  christos                                               else
   7087  1.1  christos                                                 {
   7088  1.1  christos                                                   /* 33222222222211111111110000000000
   7089  1.1  christos                                                      10987654321098765432109876543210
   7090  1.1  christos                                                      xxxxxxxxxx100111xxxxxxxx111101xx
   7091  1.1  christos                                                      movi.  */
   7092  1.1  christos                                                   return 132;
   7093  1.1  christos                                                 }
   7094  1.1  christos                                             }
   7095  1.1  christos                                           else
   7096  1.1  christos                                             {
   7097  1.1  christos                                               if (((word >> 29) & 0x1) == 0)
   7098  1.1  christos                                                 {
   7099  1.1  christos                                                   /* 33222222222211111111110000000000
   7100  1.1  christos                                                      10987654321098765432109876543210
   7101  1.1  christos                                                      xxxxxxxxxx101111xxxxxxxx111100xx
   7102  1.1  christos                                                      fmov.  */
   7103  1.1  christos                                                   return 126;
   7104  1.1  christos                                                 }
   7105  1.1  christos                                               else
   7106  1.1  christos                                                 {
   7107  1.1  christos                                                   /* 33222222222211111111110000000000
   7108  1.1  christos                                                      10987654321098765432109876543210
   7109  1.1  christos                                                      xxxxxxxxxx101111xxxxxxxx111101xx
   7110  1.1  christos                                                      fmov.  */
   7111  1.1  christos                                                   return 134;
   7112  1.1  christos                                                 }
   7113  1.1  christos                                             }
   7114  1.1  christos                                         }
   7115  1.1  christos                                     }
   7116  1.1  christos                                 }
   7117  1.1  christos                               else
   7118  1.1  christos                                 {
   7119  1.1  christos                                   if (((word >> 12) & 0x1) == 0)
   7120  1.1  christos                                     {
   7121  1.1  christos                                       if (((word >> 29) & 0x1) == 0)
   7122  1.1  christos                                         {
   7123  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   7124  1.1  christos                                             {
   7125  1.1  christos                                               /* 33222222222211111111110000000000
   7126  1.1  christos                                                  10987654321098765432109876543210
   7127  1.1  christos                                                  xxxxxxxxxx110xx1xxxxxxxx1111000x
   7128  1.1  christos                                                  rshrn.  */
   7129  1.1  christos                                               return 307;
   7130  1.1  christos                                             }
   7131  1.1  christos                                           else
   7132  1.1  christos                                             {
   7133  1.1  christos                                               /* 33222222222211111111110000000000
   7134  1.1  christos                                                  10987654321098765432109876543210
   7135  1.1  christos                                                  xxxxxxxxxx110xx1xxxxxxxx1111001x
   7136  1.1  christos                                                  rshrn2.  */
   7137  1.1  christos                                               return 308;
   7138  1.1  christos                                             }
   7139  1.1  christos                                         }
   7140  1.1  christos                                       else
   7141  1.1  christos                                         {
   7142  1.1  christos                                           if (((word >> 30) & 0x1) == 0)
   7143  1.1  christos                                             {
   7144  1.1  christos                                               /* 33222222222211111111110000000000
   7145  1.1  christos                                                  10987654321098765432109876543210
   7146  1.1  christos                                                  xxxxxxxxxx110xx1xxxxxxxx1111010x
   7147  1.1  christos                                                  sqrshrun.  */
   7148  1.1  christos                                               return 329;
   7149  1.1  christos                                             }
   7150  1.1  christos                                           else
   7151  1.1  christos                                             {
   7152  1.1  christos                                               /* 33222222222211111111110000000000
   7153  1.1  christos                                                  10987654321098765432109876543210
   7154  1.1  christos                                                  xxxxxxxxxx110xx1xxxxxxxx1111011x
   7155  1.1  christos                                                  sqrshrun2.  */
   7156  1.1  christos                                               return 330;
   7157  1.1  christos                                             }
   7158  1.1  christos                                         }
   7159  1.1  christos                                     }
   7160  1.1  christos                                   else
   7161  1.1  christos                                     {
   7162  1.1  christos                                       if (((word >> 13) & 0x1) == 0)
   7163  1.1  christos                                         {
   7164  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   7165  1.1  christos                                             {
   7166  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   7167  1.1  christos                                                 {
   7168  1.1  christos                                                   /* 33222222222211111111110000000000
   7169  1.1  christos                                                      10987654321098765432109876543210
   7170  1.1  christos                                                      xxxxxxxxxx1110x1xxxxxxxx1111000x
   7171  1.1  christos                                                      sqrshrn.  */
   7172  1.1  christos                                                   return 311;
   7173  1.1  christos                                                 }
   7174  1.1  christos                                               else
   7175  1.1  christos                                                 {
   7176  1.1  christos                                                   /* 33222222222211111111110000000000
   7177  1.1  christos                                                      10987654321098765432109876543210
   7178  1.1  christos                                                      xxxxxxxxxx1110x1xxxxxxxx1111001x
   7179  1.1  christos                                                      sqrshrn2.  */
   7180  1.1  christos                                                   return 312;
   7181  1.1  christos                                                 }
   7182  1.1  christos                                             }
   7183  1.1  christos                                           else
   7184  1.1  christos                                             {
   7185  1.1  christos                                               if (((word >> 30) & 0x1) == 0)
   7186  1.1  christos                                                 {
   7187  1.1  christos                                                   /* 33222222222211111111110000000000
   7188  1.1  christos                                                      10987654321098765432109876543210
   7189  1.1  christos                                                      xxxxxxxxxx1110x1xxxxxxxx1111010x
   7190  1.1  christos                                                      uqrshrn.  */
   7191  1.1  christos                                                   return 333;
   7192  1.1  christos                                                 }
   7193  1.1  christos                                               else
   7194  1.1  christos                                                 {
   7195  1.1  christos                                                   /* 33222222222211111111110000000000
   7196  1.1  christos                                                      10987654321098765432109876543210
   7197  1.1  christos                                                      xxxxxxxxxx1110x1xxxxxxxx1111011x
   7198  1.1  christos                                                      uqrshrn2.  */
   7199  1.1  christos                                                   return 334;
   7200  1.1  christos                                                 }
   7201  1.1  christos                                             }
   7202  1.1  christos                                         }
   7203  1.1  christos                                       else
   7204  1.1  christos                                         {
   7205  1.1  christos                                           if (((word >> 29) & 0x1) == 0)
   7206  1.1  christos                                             {
   7207  1.1  christos                                               /* 33222222222211111111110000000000
   7208  1.1  christos                                                  10987654321098765432109876543210
   7209  1.1  christos                                                  xxxxxxxxxx1111x1xxxxxxxx111100xx
   7210  1.1  christos                                                  fcvtzs.  */
   7211  1.1  christos                                               return 318;
   7212  1.1  christos                                             }
   7213  1.1  christos                                           else
   7214  1.1  christos                                             {
   7215  1.1  christos                                               /* 33222222222211111111110000000000
   7216  1.1  christos                                                  10987654321098765432109876543210
   7217  1.1  christos                                                  xxxxxxxxxx1111x1xxxxxxxx111101xx
   7218  1.1  christos                                                  fcvtzu.  */
   7219  1.1  christos                                               return 340;
   7220  1.1  christos                                             }
   7221  1.1  christos                                         }
   7222  1.1  christos                                     }
   7223  1.1  christos                                 }
   7224  1.1  christos                             }
   7225  1.1  christos                         }
   7226  1.1  christos                       else
   7227  1.1  christos                         {
   7228  1.1  christos                           if (((word >> 29) & 0x1) == 0)
   7229  1.1  christos                             {
   7230  1.1  christos                               if (((word >> 30) & 0x1) == 0)
   7231  1.1  christos                                 {
   7232  1.1  christos                                   if (((word >> 21) & 0x1) == 0)
   7233  1.1  christos                                     {
   7234  1.1  christos                                       /* 33222222222211111111110000000000
   7235  1.1  christos                                          10987654321098765432109876543210
   7236  1.1  christos                                          xxxxxxxxxxxxxxx1xxxxx0xx1111100x
   7237  1.1  christos                                          fmsub.  */
   7238  1.1  christos                                       return 644;
   7239  1.1  christos                                     }
   7240  1.1  christos                                   else
   7241  1.1  christos                                     {
   7242  1.1  christos                                       /* 33222222222211111111110000000000
   7243  1.1  christos                                          10987654321098765432109876543210
   7244  1.1  christos                                          xxxxxxxxxxxxxxx1xxxxx1xx1111100x
   7245  1.1  christos                                          fnmsub.  */
   7246  1.1  christos                                       return 646;
   7247  1.1  christos                                     }
   7248  1.1  christos                                 }
   7249  1.1  christos                               else
   7250  1.1  christos                                 {
   7251  1.1  christos                                   if (((word >> 10) & 0x1) == 0)
   7252  1.1  christos                                     {
   7253  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   7254  1.1  christos                                         {
   7255  1.1  christos                                           /* 33222222222211111111110000000000
   7256  1.1  christos                                              10987654321098765432109876543210
   7257  1.1  christos                                              xxxxxxxxxx0x0xx1xxxxxxxx1111101x
   7258  1.1  christos                                              sqdmulh.  */
   7259  1.1  christos                                           return 349;
   7260  1.1  christos                                         }
   7261  1.1  christos                                       else
   7262  1.1  christos                                         {
   7263  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   7264  1.1  christos                                             {
   7265  1.1  christos                                               if (((word >> 14) & 0x1) == 0)
   7266  1.1  christos                                                 {
   7267  1.1  christos                                                   /* 33222222222211111111110000000000
   7268  1.1  christos                                                      10987654321098765432109876543210
   7269  1.1  christos                                                      xxxxxxxxxx0x1001xxxxxxxx1111101x
   7270  1.1  christos                                                      fmul.  */
   7271  1.1  christos                                                   return 353;
   7272  1.1  christos                                                 }
   7273  1.1  christos                                               else
   7274  1.1  christos                                                 {
   7275  1.1  christos                                                   /* 33222222222211111111110000000000
   7276  1.1  christos                                                      10987654321098765432109876543210
   7277  1.1  christos                                                      xxxxxxxxxx0x1011xxxxxxxx1111101x
   7278  1.1  christos                                                      sqrdmulh.  */
   7279  1.1  christos                                                   return 350;
   7280  1.1  christos                                                 }
   7281  1.1  christos                                             }
   7282  1.1  christos                                           else
   7283  1.1  christos                                             {
   7284  1.1  christos                                               /* 33222222222211111111110000000000
   7285  1.1  christos                                                  10987654321098765432109876543210
   7286  1.1  christos                                                  xxxxxxxxxx0x11x1xxxxxxxx1111101x
   7287  1.1  christos                                                  sqdmull.  */
   7288  1.1  christos                                               return 348;
   7289  1.1  christos                                             }
   7290  1.1  christos                                         }
   7291  1.1  christos                                     }
   7292  1.1  christos                                   else
   7293  1.1  christos                                     {
   7294  1.1  christos                                       if (((word >> 11) & 0x1) == 0)
   7295  1.1  christos                                         {
   7296  1.1  christos                                           if (((word >> 12) & 0x1) == 0)
   7297  1.1  christos                                             {
   7298  1.1  christos                                               /* 33222222222211111111110000000000
   7299  1.1  christos                                                  10987654321098765432109876543210
   7300  1.1  christos                                                  xxxxxxxxxx100xx1xxxxxxxx1111101x
   7301  1.1  christos                                                  scvtf.  */
   7302  1.1  christos                                               return 477;
   7303  1.1  christos                                             }
   7304  1.1  christos                                           else
   7305  1.1  christos                                             {
   7306  1.1  christos                                               /* 33222222222211111111110000000000
   7307  1.1  christos                                                  10987654321098765432109876543210
   7308  1.1  christos                                                  xxxxxxxxxx101xx1xxxxxxxx1111101x
   7309  1.1  christos                                                  sqshrn.  */
   7310  1.1  christos                                               return 475;
   7311  1.1  christos                                             }
   7312  1.1  christos                                         }
   7313  1.1  christos                                       else
   7314  1.1  christos                                         {
   7315  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   7316  1.1  christos                                             {
   7317  1.1  christos                                               /* 33222222222211111111110000000000
   7318  1.1  christos                                                  10987654321098765432109876543210
   7319  1.1  christos                                                  xxxxxxxxxx11x0x1xxxxxxxx1111101x
   7320  1.1  christos                                                  sqrshrn.  */
   7321  1.1  christos                                               return 476;
   7322  1.1  christos                                             }
   7323  1.1  christos                                           else
   7324  1.1  christos                                             {
   7325  1.1  christos                                               /* 33222222222211111111110000000000
   7326  1.1  christos                                                  10987654321098765432109876543210
   7327  1.1  christos                                                  xxxxxxxxxx11x1x1xxxxxxxx1111101x
   7328  1.1  christos                                                  fcvtzs.  */
   7329  1.1  christos                                               return 478;
   7330  1.1  christos                                             }
   7331  1.1  christos                                         }
   7332  1.1  christos                                     }
   7333  1.1  christos                                 }
   7334  1.1  christos                             }
   7335  1.1  christos                           else
   7336  1.1  christos                             {
   7337  1.1  christos                               if (((word >> 10) & 0x1) == 0)
   7338  1.1  christos                                 {
   7339  1.1  christos                                   /* 33222222222211111111110000000000
   7340  1.1  christos                                      10987654321098765432109876543210
   7341  1.1  christos                                      xxxxxxxxxx0xxxx1xxxxxxxx111111xx
   7342  1.1  christos                                      fmulx.  */
   7343  1.1  christos                                   return 354;
   7344  1.1  christos                                 }
   7345  1.1  christos                               else
   7346  1.1  christos                                 {
   7347  1.1  christos                                   if (((word >> 11) & 0x1) == 0)
   7348  1.1  christos                                     {
   7349  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   7350  1.1  christos                                         {
   7351  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   7352  1.1  christos                                             {
   7353  1.1  christos                                               /* 33222222222211111111110000000000
   7354  1.1  christos                                                  10987654321098765432109876543210
   7355  1.1  christos                                                  xxxxxxxxxx1000x1xxxxxxxx111111xx
   7356  1.1  christos                                                  sqshrun.  */
   7357  1.1  christos                                               return 487;
   7358  1.1  christos                                             }
   7359  1.1  christos                                           else
   7360  1.1  christos                                             {
   7361  1.1  christos                                               /* 33222222222211111111110000000000
   7362  1.1  christos                                                  10987654321098765432109876543210
   7363  1.1  christos                                                  xxxxxxxxxx1001x1xxxxxxxx111111xx
   7364  1.1  christos                                                  ucvtf.  */
   7365  1.1  christos                                               return 491;
   7366  1.1  christos                                             }
   7367  1.1  christos                                         }
   7368  1.1  christos                                       else
   7369  1.1  christos                                         {
   7370  1.1  christos                                           /* 33222222222211111111110000000000
   7371  1.1  christos                                              10987654321098765432109876543210
   7372  1.1  christos                                              xxxxxxxxxx101xx1xxxxxxxx111111xx
   7373  1.1  christos                                              uqshrn.  */
   7374  1.1  christos                                           return 489;
   7375  1.1  christos                                         }
   7376  1.1  christos                                     }
   7377  1.1  christos                                   else
   7378  1.1  christos                                     {
   7379  1.1  christos                                       if (((word >> 12) & 0x1) == 0)
   7380  1.1  christos                                         {
   7381  1.1  christos                                           /* 33222222222211111111110000000000
   7382  1.1  christos                                              10987654321098765432109876543210
   7383  1.1  christos                                              xxxxxxxxxx110xx1xxxxxxxx111111xx
   7384  1.1  christos                                              sqrshrun.  */
   7385  1.1  christos                                           return 488;
   7386  1.1  christos                                         }
   7387  1.1  christos                                       else
   7388  1.1  christos                                         {
   7389  1.1  christos                                           if (((word >> 13) & 0x1) == 0)
   7390  1.1  christos                                             {
   7391  1.1  christos                                               /* 33222222222211111111110000000000
   7392  1.1  christos                                                  10987654321098765432109876543210
   7393  1.1  christos                                                  xxxxxxxxxx1110x1xxxxxxxx111111xx
   7394  1.1  christos                                                  uqrshrn.  */
   7395  1.1  christos                                               return 490;
   7396  1.1  christos                                             }
   7397  1.1  christos                                           else
   7398  1.1  christos                                             {
   7399  1.1  christos                                               /* 33222222222211111111110000000000
   7400  1.1  christos                                                  10987654321098765432109876543210
   7401  1.1  christos                                                  xxxxxxxxxx1111x1xxxxxxxx111111xx
   7402  1.1  christos                                                  fcvtzu.  */
   7403  1.1  christos                                               return 492;
   7404  1.1  christos                                             }
   7405  1.1  christos                                         }
   7406  1.1  christos                                     }
   7407  1.1  christos                                 }
   7408  1.1  christos                             }
   7409  1.1  christos                         }
   7410  1.1  christos                     }
   7411  1.1  christos                 }
   7412  1.1  christos             }
   7413  1.1  christos         }
   7414  1.1  christos     }
   7415  1.1  christos }
   7416  1.1  christos 
   7417  1.1  christos /* Lookup opcode WORD in the opcode table.  N.B. all alias
   7418  1.1  christos    opcodes are ignored here.  */
   7419  1.1  christos 
   7420  1.1  christos const aarch64_opcode *
   7421  1.1  christos aarch64_opcode_lookup (uint32_t word)
   7422  1.1  christos {
   7423  1.1  christos   return aarch64_opcode_table + aarch64_opcode_lookup_1 (word);
   7424  1.1  christos }
   7425  1.1  christos 
   7426  1.1  christos const aarch64_opcode *
   7427  1.1  christos aarch64_find_next_opcode (const aarch64_opcode *opcode)
   7428  1.1  christos {
   7429  1.1  christos   /* Use the index as the key to locate the next opcode.  */
   7430  1.1  christos   int key = opcode - aarch64_opcode_table;
   7431  1.1  christos   int value;
   7432  1.1  christos   switch (key)
   7433  1.1  christos     {
   7434  1.1  christos     case 739: value = 743; break;	/* stnp --> stp.  */
   7435  1.1  christos     case 743: return NULL;		/* stp --> NULL.  */
   7436  1.1  christos     case 740: value = 744; break;	/* ldnp --> ldp.  */
   7437  1.1  christos     case 744: return NULL;		/* ldp --> NULL.  */
   7438  1.1  christos     case 355: value = 356; break;	/* st4 --> st1.  */
   7439  1.1  christos     case 356: value = 357; break;	/* st1 --> st2.  */
   7440  1.1  christos     case 357: value = 358; break;	/* st2 --> st3.  */
   7441  1.1  christos     case 358: return NULL;		/* st3 --> NULL.  */
   7442  1.1  christos     case 363: value = 364; break;	/* st4 --> st1.  */
   7443  1.1  christos     case 364: value = 365; break;	/* st1 --> st2.  */
   7444  1.1  christos     case 365: value = 366; break;	/* st2 --> st3.  */
   7445  1.1  christos     case 366: return NULL;		/* st3 --> NULL.  */
   7446  1.1  christos     case 359: value = 360; break;	/* ld4 --> ld1.  */
   7447  1.1  christos     case 360: value = 361; break;	/* ld1 --> ld2.  */
   7448  1.1  christos     case 361: value = 362; break;	/* ld2 --> ld3.  */
   7449  1.1  christos     case 362: return NULL;		/* ld3 --> NULL.  */
   7450  1.1  christos     case 375: value = 377; break;	/* ld1 --> ld1r.  */
   7451  1.1  christos     case 377: return NULL;		/* ld1r --> NULL.  */
   7452  1.1  christos     case 379: value = 381; break;	/* ld2 --> ld2r.  */
   7453  1.1  christos     case 381: return NULL;		/* ld2r --> NULL.  */
   7454  1.1  christos     case 376: value = 378; break;	/* ld3 --> ld3r.  */
   7455  1.1  christos     case 378: return NULL;		/* ld3r --> NULL.  */
   7456  1.1  christos     case 380: value = 382; break;	/* ld4 --> ld4r.  */
   7457  1.1  christos     case 382: return NULL;		/* ld4r --> NULL.  */
   7458  1.1  christos     case 367: value = 368; break;	/* ld4 --> ld1.  */
   7459  1.1  christos     case 368: value = 369; break;	/* ld1 --> ld2.  */
   7460  1.1  christos     case 369: value = 370; break;	/* ld2 --> ld3.  */
   7461  1.1  christos     case 370: return NULL;		/* ld3 --> NULL.  */
   7462  1.1  christos     case 387: value = 389; break;	/* ld1 --> ld1r.  */
   7463  1.1  christos     case 389: return NULL;		/* ld1r --> NULL.  */
   7464  1.1  christos     case 388: value = 390; break;	/* ld3 --> ld3r.  */
   7465  1.1  christos     case 390: return NULL;		/* ld3r --> NULL.  */
   7466  1.1  christos     case 391: value = 393; break;	/* ld2 --> ld2r.  */
   7467  1.1  christos     case 393: return NULL;		/* ld2r --> NULL.  */
   7468  1.1  christos     case 392: value = 394; break;	/* ld4 --> ld4r.  */
   7469  1.1  christos     case 394: return NULL;		/* ld4r --> NULL.  */
   7470  1.1  christos     case 120: value = 299; break;	/* movi --> sshr.  */
   7471  1.1  christos     case 299: value = 301; break;	/* sshr --> srshr.  */
   7472  1.1  christos     case 301: return NULL;		/* srshr --> NULL.  */
   7473  1.1  christos     case 127: value = 319; break;	/* mvni --> ushr.  */
   7474  1.1  christos     case 319: value = 321; break;	/* ushr --> urshr.  */
   7475  1.1  christos     case 321: value = 323; break;	/* urshr --> sri.  */
   7476  1.1  christos     case 323: value = 325; break;	/* sri --> sqshlu.  */
   7477  1.1  christos     case 325: return NULL;		/* sqshlu --> NULL.  */
   7478  1.1  christos     case 121: value = 300; break;	/* orr --> ssra.  */
   7479  1.1  christos     case 300: value = 302; break;	/* ssra --> srsra.  */
   7480  1.1  christos     case 302: value = 303; break;	/* srsra --> shl.  */
   7481  1.1  christos     case 303: value = 304; break;	/* shl --> sqshl.  */
   7482  1.1  christos     case 304: return NULL;		/* sqshl --> NULL.  */
   7483  1.1  christos     case 128: value = 320; break;	/* bic --> usra.  */
   7484  1.1  christos     case 320: value = 322; break;	/* usra --> ursra.  */
   7485  1.1  christos     case 322: value = 324; break;	/* ursra --> sli.  */
   7486  1.1  christos     case 324: value = 326; break;	/* sli --> uqshl.  */
   7487  1.1  christos     case 326: return NULL;		/* uqshl --> NULL.  */
   7488  1.1  christos     case 122: value = 305; break;	/* movi --> shrn.  */
   7489  1.1  christos     case 305: value = 306; break;	/* shrn --> shrn2.  */
   7490  1.1  christos     case 306: value = 313; break;	/* shrn2 --> sshll.  */
   7491  1.1  christos     case 313: value = 315; break;	/* sshll --> sshll2.  */
   7492  1.1  christos     case 315: return NULL;		/* sshll2 --> NULL.  */
   7493  1.1  christos     case 129: value = 327; break;	/* mvni --> sqshrun.  */
   7494  1.1  christos     case 327: value = 328; break;	/* sqshrun --> sqshrun2.  */
   7495  1.1  christos     case 328: value = 335; break;	/* sqshrun2 --> ushll.  */
   7496  1.1  christos     case 335: value = 337; break;	/* ushll --> ushll2.  */
   7497  1.1  christos     case 337: return NULL;		/* ushll2 --> NULL.  */
   7498  1.1  christos     case 123: value = 309; break;	/* orr --> sqshrn.  */
   7499  1.1  christos     case 309: value = 310; break;	/* sqshrn --> sqshrn2.  */
   7500  1.1  christos     case 310: return NULL;		/* sqshrn2 --> NULL.  */
   7501  1.1  christos     case 130: value = 331; break;	/* bic --> uqshrn.  */
   7502  1.1  christos     case 331: value = 332; break;	/* uqshrn --> uqshrn2.  */
   7503  1.1  christos     case 332: return NULL;		/* uqshrn2 --> NULL.  */
   7504  1.1  christos     case 125: value = 317; break;	/* movi --> scvtf.  */
   7505  1.1  christos     case 317: return NULL;		/* scvtf --> NULL.  */
   7506  1.1  christos     case 132: value = 133; break;	/* movi --> movi.  */
   7507  1.1  christos     case 133: value = 339; break;	/* movi --> ucvtf.  */
   7508  1.1  christos     case 339: return NULL;		/* ucvtf --> NULL.  */
   7509  1.1  christos     default: return NULL;
   7510  1.1  christos     }
   7511  1.1  christos 
   7512  1.1  christos   return aarch64_opcode_table + value;
   7513  1.1  christos }
   7514  1.1  christos 
   7515  1.1  christos const aarch64_opcode *
   7516  1.1  christos aarch64_find_alias_opcode (const aarch64_opcode *opcode)
   7517  1.1  christos {
   7518  1.1  christos   /* Use the index as the key to locate the alias opcode.  */
   7519  1.1  christos   int key = opcode - aarch64_opcode_table;
   7520  1.1  christos   int value;
   7521  1.1  christos   switch (key)
   7522  1.1  christos     {
   7523  1.1  christos     case 2: value = 3; break;	/* sbc --> ngc.  */
   7524  1.1  christos     case 4: value = 5; break;	/* sbcs --> ngcs.  */
   7525  1.1  christos     case 7: value = 8; break;	/* adds --> cmn.  */
   7526  1.1  christos     case 10: value = 11; break;	/* subs --> cmp.  */
   7527  1.1  christos     case 12: value = 13; break;	/* add --> mov.  */
   7528  1.1  christos     case 14: value = 15; break;	/* adds --> cmn.  */
   7529  1.1  christos     case 17: value = 18; break;	/* subs --> cmp.  */
   7530  1.1  christos     case 20: value = 21; break;	/* adds --> cmn.  */
   7531  1.1  christos     case 22: value = 23; break;	/* sub --> neg.  */
   7532  1.1  christos     case 24: value = 26; break;	/* subs --> negs.  */
   7533  1.1  christos     case 138: value = 139; break;	/* umov --> mov.  */
   7534  1.1  christos     case 140: value = 141; break;	/* ins --> mov.  */
   7535  1.1  christos     case 142: value = 143; break;	/* ins --> mov.  */
   7536  1.1  christos     case 203: value = 204; break;	/* not --> mvn.  */
   7537  1.1  christos     case 258: value = 259; break;	/* orr --> mov.  */
   7538  1.1  christos     case 313: value = 314; break;	/* sshll --> sxtl.  */
   7539  1.1  christos     case 315: value = 316; break;	/* sshll2 --> sxtl2.  */
   7540  1.1  christos     case 335: value = 336; break;	/* ushll --> uxtl.  */
   7541  1.1  christos     case 337: value = 338; break;	/* ushll2 --> uxtl2.  */
   7542  1.1  christos     case 430: value = 431; break;	/* dup --> mov.  */
   7543  1.1  christos     case 493: value = 498; break;	/* sbfm --> sxtw.  */
   7544  1.1  christos     case 500: value = 502; break;	/* bfm --> bfxil.  */
   7545  1.1  christos     case 503: value = 507; break;	/* ubfm --> uxth.  */
   7546  1.1  christos     case 525: value = 527; break;	/* csinc --> cset.  */
   7547  1.1  christos     case 528: value = 530; break;	/* csinv --> csetm.  */
   7548  1.1  christos     case 531: value = 532; break;	/* csneg --> cneg.  */
   7549  1.1  christos     case 556: value = 557; break;	/* lslv --> lsl.  */
   7550  1.1  christos     case 558: value = 559; break;	/* lsrv --> lsr.  */
   7551  1.1  christos     case 560: value = 561; break;	/* asrv --> asr.  */
   7552  1.1  christos     case 562: value = 563; break;	/* rorv --> ror.  */
   7553  1.1  christos     case 572: value = 573; break;	/* madd --> mul.  */
   7554  1.1  christos     case 574: value = 575; break;	/* msub --> mneg.  */
   7555  1.1  christos     case 576: value = 577; break;	/* smaddl --> smull.  */
   7556  1.1  christos     case 578: value = 579; break;	/* smsubl --> smnegl.  */
   7557  1.1  christos     case 581: value = 582; break;	/* umaddl --> umull.  */
   7558  1.1  christos     case 583: value = 584; break;	/* umsubl --> umnegl.  */
   7559  1.1  christos     case 594: value = 595; break;	/* extr --> ror.  */
   7560  1.1  christos     case 693: value = 695; break;	/* sturb --> strb.  */
   7561  1.1  christos     case 694: value = 696; break;	/* ldurb --> ldrb.  */
   7562  1.1  christos     case 697: value = 698; break;	/* ldursb --> ldrsb.  */
   7563  1.1  christos     case 699: value = 701; break;	/* stur --> str.  */
   7564  1.1  christos     case 700: value = 702; break;	/* ldur --> ldr.  */
   7565  1.1  christos     case 703: value = 705; break;	/* sturh --> strh.  */
   7566  1.1  christos     case 704: value = 706; break;	/* ldurh --> ldrh.  */
   7567  1.1  christos     case 707: value = 708; break;	/* ldursh --> ldrsh.  */
   7568  1.1  christos     case 709: value = 711; break;	/* stur --> str.  */
   7569  1.1  christos     case 710: value = 712; break;	/* ldur --> ldr.  */
   7570  1.1  christos     case 713: value = 714; break;	/* ldursw --> ldrsw.  */
   7571  1.1  christos     case 715: value = 716; break;	/* prfum --> prfm.  */
   7572  1.1  christos     case 757: value = 758; break;	/* and --> bic.  */
   7573  1.1  christos     case 759: value = 760; break;	/* orr --> mov.  */
   7574  1.1  christos     case 762: value = 763; break;	/* ands --> tst.  */
   7575  1.1  christos     case 766: value = 768; break;	/* orr --> uxtw.  */
   7576  1.1  christos     case 769: value = 770; break;	/* orn --> mvn.  */
   7577  1.1  christos     case 773: value = 774; break;	/* ands --> tst.  */
   7578  1.1  christos     case 776: value = 777; break;	/* movn --> mov.  */
   7579  1.1  christos     case 778: value = 779; break;	/* movz --> mov.  */
   7580  1.1  christos     case 784: value = 790; break;	/* hint --> sevl.  */
   7581  1.1  christos     case 795: value = 799; break;	/* sys --> tlbi.  */
   7582  1.1  christos     default: return NULL;
   7583  1.1  christos     }
   7584  1.1  christos 
   7585  1.1  christos   return aarch64_opcode_table + value;
   7586  1.1  christos }
   7587  1.1  christos 
   7588  1.1  christos const aarch64_opcode *
   7589  1.1  christos aarch64_find_next_alias_opcode (const aarch64_opcode *opcode)
   7590  1.1  christos {
   7591  1.1  christos   /* Use the index as the key to locate the next opcode.  */
   7592  1.1  christos   int key = opcode - aarch64_opcode_table;
   7593  1.1  christos   int value;
   7594  1.1  christos   switch (key)
   7595  1.1  christos     {
   7596  1.1  christos     case 26: value = 25; break;	/* negs --> cmp.  */
   7597  1.1  christos     case 498: value = 497; break;	/* sxtw --> sxth.  */
   7598  1.1  christos     case 497: value = 496; break;	/* sxth --> sxtb.  */
   7599  1.1  christos     case 496: value = 499; break;	/* sxtb --> asr.  */
   7600  1.1  christos     case 499: value = 495; break;	/* asr --> sbfx.  */
   7601  1.1  christos     case 495: value = 494; break;	/* sbfx --> sbfiz.  */
   7602  1.1  christos     case 502: value = 501; break;	/* bfxil --> bfi.  */
   7603  1.1  christos     case 507: value = 506; break;	/* uxth --> uxtb.  */
   7604  1.1  christos     case 506: value = 509; break;	/* uxtb --> lsr.  */
   7605  1.1  christos     case 509: value = 508; break;	/* lsr --> lsl.  */
   7606  1.1  christos     case 508: value = 505; break;	/* lsl --> ubfx.  */
   7607  1.1  christos     case 505: value = 504; break;	/* ubfx --> ubfiz.  */
   7608  1.1  christos     case 527: value = 526; break;	/* cset --> cinc.  */
   7609  1.1  christos     case 530: value = 529; break;	/* csetm --> cinv.  */
   7610  1.1  christos     case 768: value = 767; break;	/* uxtw --> mov.  */
   7611  1.1  christos     case 790: value = 789; break;	/* sevl --> sev.  */
   7612  1.1  christos     case 789: value = 788; break;	/* sev --> wfi.  */
   7613  1.1  christos     case 788: value = 787; break;	/* wfi --> wfe.  */
   7614  1.1  christos     case 787: value = 786; break;	/* wfe --> yield.  */
   7615  1.1  christos     case 786: value = 785; break;	/* yield --> nop.  */
   7616  1.1  christos     case 799: value = 798; break;	/* tlbi --> ic.  */
   7617  1.1  christos     case 798: value = 797; break;	/* ic --> dc.  */
   7618  1.1  christos     case 797: value = 796; break;	/* dc --> at.  */
   7619  1.1  christos     default: return NULL;
   7620  1.1  christos     }
   7621  1.1  christos 
   7622  1.1  christos   return aarch64_opcode_table + value;
   7623  1.1  christos }
   7624  1.1  christos 
   7625  1.1  christos int
   7626  1.1  christos aarch64_extract_operand (const aarch64_operand *self,
   7627  1.1  christos 			   aarch64_opnd_info *info,
   7628  1.1  christos 			   aarch64_insn code, const aarch64_inst *inst)
   7629  1.1  christos {
   7630  1.1  christos   /* Use the index as the key.  */
   7631  1.1  christos   int key = self - aarch64_operands;
   7632  1.1  christos   switch (key)
   7633  1.1  christos     {
   7634  1.1  christos     case 1:
   7635  1.1  christos     case 2:
   7636  1.1  christos     case 3:
   7637  1.1  christos     case 4:
   7638  1.1  christos     case 5:
   7639  1.1  christos     case 6:
   7640  1.1  christos     case 7:
   7641  1.1  christos     case 9:
   7642  1.1  christos     case 10:
   7643  1.1  christos     case 13:
   7644  1.1  christos     case 14:
   7645  1.1  christos     case 15:
   7646  1.1  christos     case 16:
   7647  1.1  christos     case 18:
   7648  1.1  christos     case 19:
   7649  1.1  christos     case 20:
   7650  1.1  christos     case 21:
   7651  1.1  christos     case 22:
   7652  1.1  christos     case 23:
   7653  1.1  christos     case 24:
   7654  1.1  christos     case 25:
   7655  1.1  christos     case 26:
   7656  1.1  christos     case 34:
   7657  1.1  christos     case 35:
   7658  1.1  christos       return aarch64_ext_regno (self, info, code, inst);
   7659  1.1  christos     case 8:
   7660  1.1  christos       return aarch64_ext_regrt_sysins (self, info, code, inst);
   7661  1.1  christos     case 11:
   7662  1.1  christos       return aarch64_ext_reg_extended (self, info, code, inst);
   7663  1.1  christos     case 12:
   7664  1.1  christos       return aarch64_ext_reg_shifted (self, info, code, inst);
   7665  1.1  christos     case 17:
   7666  1.1  christos       return aarch64_ext_ft (self, info, code, inst);
   7667  1.1  christos     case 27:
   7668  1.1  christos     case 28:
   7669  1.1  christos     case 29:
   7670  1.1  christos       return aarch64_ext_reglane (self, info, code, inst);
   7671  1.1  christos     case 30:
   7672  1.1  christos       return aarch64_ext_reglist (self, info, code, inst);
   7673  1.1  christos     case 31:
   7674  1.1  christos       return aarch64_ext_ldst_reglist (self, info, code, inst);
   7675  1.1  christos     case 32:
   7676  1.1  christos       return aarch64_ext_ldst_reglist_r (self, info, code, inst);
   7677  1.1  christos     case 33:
   7678  1.1  christos       return aarch64_ext_ldst_elemlist (self, info, code, inst);
   7679  1.1  christos     case 36:
   7680  1.1  christos     case 45:
   7681  1.1  christos     case 46:
   7682  1.1  christos     case 47:
   7683  1.1  christos     case 48:
   7684  1.1  christos     case 49:
   7685  1.1  christos     case 50:
   7686  1.1  christos     case 51:
   7687  1.1  christos     case 52:
   7688  1.1  christos     case 53:
   7689  1.1  christos     case 54:
   7690  1.1  christos     case 55:
   7691  1.1  christos     case 56:
   7692  1.1  christos     case 57:
   7693  1.1  christos     case 64:
   7694  1.1  christos     case 65:
   7695  1.1  christos     case 66:
   7696  1.1  christos     case 67:
   7697  1.1  christos     case 68:
   7698  1.1  christos       return aarch64_ext_imm (self, info, code, inst);
   7699  1.1  christos     case 37:
   7700  1.1  christos     case 38:
   7701  1.1  christos       return aarch64_ext_advsimd_imm_shift (self, info, code, inst);
   7702  1.1  christos     case 39:
   7703  1.1  christos     case 40:
   7704  1.1  christos     case 41:
   7705  1.1  christos       return aarch64_ext_advsimd_imm_modified (self, info, code, inst);
   7706  1.1  christos     case 42:
   7707  1.1  christos       return aarch64_ext_shll_imm (self, info, code, inst);
   7708  1.1  christos     case 58:
   7709  1.1  christos       return aarch64_ext_limm (self, info, code, inst);
   7710  1.1  christos     case 59:
   7711  1.1  christos       return aarch64_ext_aimm (self, info, code, inst);
   7712  1.1  christos     case 60:
   7713  1.1  christos       return aarch64_ext_imm_half (self, info, code, inst);
   7714  1.1  christos     case 61:
   7715  1.1  christos       return aarch64_ext_fbits (self, info, code, inst);
   7716  1.1  christos     case 63:
   7717  1.1  christos       return aarch64_ext_cond (self, info, code, inst);
   7718  1.1  christos     case 69:
   7719  1.1  christos     case 75:
   7720  1.1  christos       return aarch64_ext_addr_simple (self, info, code, inst);
   7721  1.1  christos     case 70:
   7722  1.1  christos       return aarch64_ext_addr_regoff (self, info, code, inst);
   7723  1.1  christos     case 71:
   7724  1.1  christos     case 72:
   7725  1.1  christos     case 73:
   7726  1.1  christos       return aarch64_ext_addr_simm (self, info, code, inst);
   7727  1.1  christos     case 74:
   7728  1.1  christos       return aarch64_ext_addr_uimm12 (self, info, code, inst);
   7729  1.1  christos     case 76:
   7730  1.1  christos       return aarch64_ext_simd_addr_post (self, info, code, inst);
   7731  1.1  christos     case 77:
   7732  1.1  christos       return aarch64_ext_sysreg (self, info, code, inst);
   7733  1.1  christos     case 78:
   7734  1.1  christos       return aarch64_ext_pstatefield (self, info, code, inst);
   7735  1.1  christos     case 79:
   7736  1.1  christos     case 80:
   7737  1.1  christos     case 81:
   7738  1.1  christos     case 82:
   7739  1.1  christos       return aarch64_ext_sysins_op (self, info, code, inst);
   7740  1.1  christos     case 83:
   7741  1.1  christos     case 84:
   7742  1.1  christos       return aarch64_ext_barrier (self, info, code, inst);
   7743  1.1  christos     case 85:
   7744  1.1  christos       return aarch64_ext_prfop (self, info, code, inst);
   7745  1.1  christos     default: assert (0); abort ();
   7746  1.1  christos     }
   7747  1.1  christos }
   7748