Home | History | Annotate | Download | only in unified1
      1 {
      2   "copyright" : [
      3     "Copyright (c) 2014-2016 The Khronos Group Inc.",
      4     "",
      5     "Permission is hereby granted, free of charge, to any person obtaining a copy",
      6     "of this software and/or associated documentation files (the \"Materials\"),",
      7     "to deal in the Materials without restriction, including without limitation",
      8     "the rights to use, copy, modify, merge, publish, distribute, sublicense,",
      9     "and/or sell copies of the Materials, and to permit persons to whom the",
     10     "Materials are furnished to do so, subject to the following conditions:",
     11     "",
     12     "The above copyright notice and this permission notice shall be included in",
     13     "all copies or substantial portions of the Materials.",
     14     "",
     15     "MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS",
     16     "STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND",
     17     "HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ ",
     18     "",
     19     "THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS",
     20     "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
     21     "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL",
     22     "THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
     23     "LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING",
     24     "FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS",
     25     "IN THE MATERIALS."
     26   ],
     27   "version" : 100,
     28   "revision" : 2,
     29   "instructions" : [
     30     {
     31       "opname" : "acos",
     32       "opcode" : 0,
     33       "operands" : [
     34         { "kind" : "IdRef", "name" : "'x'" }
     35       ]
     36     },
     37     {
     38       "opname" : "acosh",
     39       "opcode" : 1,
     40       "operands" : [
     41         { "kind" : "IdRef", "name" : "'x'" }
     42       ]
     43     },
     44     {
     45       "opname" : "acospi",
     46       "opcode" : 2,
     47       "operands" : [
     48         { "kind" : "IdRef", "name" : "'x'" }
     49       ]
     50     },
     51     {
     52       "opname" : "asin",
     53       "opcode" : 3,
     54       "operands" : [
     55         { "kind" : "IdRef", "name" : "'x'" }
     56       ]
     57     },
     58     {
     59       "opname" : "asinh",
     60       "opcode" : 4,
     61       "operands" : [
     62         { "kind" : "IdRef", "name" : "'x'" }
     63       ]
     64     },
     65     {
     66       "opname" : "asinpi",
     67       "opcode" : 5,
     68       "operands" : [
     69         { "kind" : "IdRef", "name" : "'x'" }
     70       ]
     71     },
     72     {
     73       "opname" : "atan",
     74       "opcode" : 6,
     75       "operands" : [
     76         { "kind" : "IdRef", "name" : "'x'" }
     77       ]
     78     },
     79     {
     80       "opname" : "atan2",
     81       "opcode" : 7,
     82       "operands" : [
     83         { "kind" : "IdRef", "name" : "'y'" },
     84         { "kind" : "IdRef", "name" : "'x'" }
     85       ]
     86     },
     87     {
     88       "opname" : "atanh",
     89       "opcode" : 8,
     90       "operands" : [
     91         { "kind" : "IdRef", "name" : "'x'" }
     92       ]
     93     },
     94     {
     95       "opname" : "atanpi",
     96       "opcode" : 9,
     97       "operands" : [
     98         { "kind" : "IdRef", "name" : "'x'" }
     99       ]
    100     },
    101     {
    102       "opname" : "atan2pi",
    103       "opcode" : 10,
    104       "operands" : [
    105         { "kind" : "IdRef", "name" : "'y'" },
    106         { "kind" : "IdRef", "name" : "'x'" }
    107       ]
    108     },
    109     {
    110       "opname" : "cbrt",
    111       "opcode" : 11,
    112       "operands" : [
    113         { "kind" : "IdRef", "name" : "'x'" }
    114       ]
    115     },
    116     {
    117       "opname" : "ceil",
    118       "opcode" : 12,
    119       "operands" : [
    120         { "kind" : "IdRef", "name" : "'x'" }
    121       ]
    122     },
    123     {
    124       "opname" : "copysign",
    125       "opcode" : 13,
    126       "operands" : [
    127         { "kind" : "IdRef", "name" : "'x'" },
    128         { "kind" : "IdRef", "name" : "'y'" }
    129       ]
    130     },
    131     {
    132       "opname" : "cos",
    133       "opcode" : 14,
    134       "operands" : [
    135         { "kind" : "IdRef", "name" : "'x'" }
    136       ]
    137     },
    138     {
    139       "opname" : "cosh",
    140       "opcode" : 15,
    141       "operands" : [
    142         { "kind" : "IdRef", "name" : "'x'" }
    143       ]
    144     },
    145     {
    146       "opname" : "cospi",
    147       "opcode" : 16,
    148       "operands" : [
    149         { "kind" : "IdRef", "name" : "'x'" }
    150       ]
    151     },
    152     {
    153       "opname" : "erfc",
    154       "opcode" : 17,
    155       "operands" : [
    156         { "kind" : "IdRef", "name" : "'x'" }
    157       ]
    158     },
    159     {
    160       "opname" : "erf",
    161       "opcode" : 18,
    162       "operands" : [
    163         { "kind" : "IdRef", "name" : "'x'" }
    164       ]
    165     },
    166     {
    167       "opname" : "exp",
    168       "opcode" : 19,
    169       "operands" : [
    170         { "kind" : "IdRef", "name" : "'x'" }
    171       ]
    172     },
    173     {
    174       "opname" : "exp2",
    175       "opcode" : 20,
    176       "operands" : [
    177         { "kind" : "IdRef", "name" : "'x'" }
    178       ]
    179     },
    180     {
    181       "opname" : "exp10",
    182       "opcode" : 21,
    183       "operands" : [
    184         { "kind" : "IdRef", "name" : "'x'" }
    185       ]
    186     },
    187     {
    188       "opname" : "expm1",
    189       "opcode" : 22,
    190       "operands" : [
    191         { "kind" : "IdRef", "name" : "'x'" }
    192       ]
    193     },
    194     {
    195       "opname" : "fabs",
    196       "opcode" : 23,
    197       "operands" : [
    198         { "kind" : "IdRef", "name" : "'x'" }
    199       ]
    200     },
    201     {
    202       "opname" : "fdim",
    203       "opcode" : 24,
    204       "operands" : [
    205         { "kind" : "IdRef", "name" : "'x'" },
    206         { "kind" : "IdRef", "name" : "'y'" }
    207       ]
    208     },
    209     {
    210       "opname" : "floor",
    211       "opcode" : 25,
    212       "operands" : [
    213         { "kind" : "IdRef", "name" : "'x'" }
    214       ]
    215     },
    216     {
    217       "opname" : "fma",
    218       "opcode" : 26,
    219       "operands" : [
    220         { "kind" : "IdRef", "name" : "'a'" },
    221         { "kind" : "IdRef", "name" : "'b'" },
    222         { "kind" : "IdRef", "name" : "'c'" }
    223       ]
    224     },
    225     {
    226       "opname" : "fmax",
    227       "opcode" : 27,
    228       "operands" : [
    229         { "kind" : "IdRef", "name" : "'x'" },
    230         { "kind" : "IdRef", "name" : "'y'" }
    231       ]
    232     },
    233     {
    234       "opname" : "fmin",
    235       "opcode" : 28,
    236       "operands" : [
    237         { "kind" : "IdRef", "name" : "'x'" },
    238         { "kind" : "IdRef", "name" : "'y'" }
    239       ]
    240     },
    241     {
    242       "opname" : "fmod",
    243       "opcode" : 29,
    244       "operands" : [
    245         { "kind" : "IdRef", "name" : "'x'" },
    246         { "kind" : "IdRef", "name" : "'y'" }
    247       ]
    248     },
    249     {
    250       "opname" : "fract",
    251       "opcode" : 30,
    252       "operands" : [
    253         { "kind" : "IdRef", "name" : "'x'" },
    254         { "kind" : "IdRef", "name" : "'ptr'" }
    255       ]
    256     },
    257     {
    258       "opname" : "frexp",
    259       "opcode" : 31,
    260       "operands" : [
    261         { "kind" : "IdRef", "name" : "'x'" },
    262         { "kind" : "IdRef", "name" : "'exp'" }
    263       ]
    264     },
    265     {
    266       "opname" : "hypot",
    267       "opcode" : 32,
    268       "operands" : [
    269         { "kind" : "IdRef", "name" : "'x'" },
    270         { "kind" : "IdRef", "name" : "'y'" }
    271       ]
    272     },
    273     {
    274       "opname" : "ilogb",
    275       "opcode" : 33,
    276       "operands" : [
    277         { "kind" : "IdRef", "name" : "'x'" }
    278       ]
    279     },
    280     {
    281       "opname" : "ldexp",
    282       "opcode" : 34,
    283       "operands" : [
    284         { "kind" : "IdRef", "name" : "'x'" },
    285         { "kind" : "IdRef", "name" : "'k'" }
    286       ]
    287     },
    288     {
    289       "opname" : "lgamma",
    290       "opcode" : 35,
    291       "operands" : [
    292         { "kind" : "IdRef", "name" : "'x'" }
    293       ]
    294     },
    295     {
    296       "opname" : "lgamma_r",
    297       "opcode" : 36,
    298       "operands" : [
    299         { "kind" : "IdRef", "name" : "'x'" },
    300         { "kind" : "IdRef", "name" : "'signp'" }
    301       ]
    302     },
    303     {
    304       "opname" : "log",
    305       "opcode" : 37,
    306       "operands" : [
    307         { "kind" : "IdRef", "name" : "'x'" }
    308       ]
    309     },
    310     {
    311       "opname" : "log2",
    312       "opcode" : 38,
    313       "operands" : [
    314         { "kind" : "IdRef", "name" : "'x'" }
    315       ]
    316     },
    317     {
    318       "opname" : "log10",
    319       "opcode" : 39,
    320       "operands" : [
    321         { "kind" : "IdRef", "name" : "'x'" }
    322       ]
    323     },
    324     {
    325       "opname" : "log1p",
    326       "opcode" : 40,
    327       "operands" : [
    328         { "kind" : "IdRef", "name" : "'x'" }
    329       ]
    330     },
    331     {
    332       "opname" : "logb",
    333       "opcode" : 41,
    334       "operands" : [
    335         { "kind" : "IdRef", "name" : "'x'" }
    336       ]
    337     },
    338     {
    339       "opname" : "mad",
    340       "opcode" : 42,
    341       "operands" : [
    342         { "kind" : "IdRef", "name" : "'a'" },
    343         { "kind" : "IdRef", "name" : "'b'" },
    344         { "kind" : "IdRef", "name" : "'c'" }
    345       ]
    346     },
    347     {
    348       "opname" : "maxmag",
    349       "opcode" : 43,
    350       "operands" : [
    351         { "kind" : "IdRef", "name" : "'x'" },
    352         { "kind" : "IdRef", "name" : "'y'" }
    353       ]
    354     },
    355     {
    356       "opname" : "minmag",
    357       "opcode" : 44,
    358       "operands" : [
    359         { "kind" : "IdRef", "name" : "'x'" },
    360         { "kind" : "IdRef", "name" : "'y'" }
    361       ]
    362     },
    363     {
    364       "opname" : "modf",
    365       "opcode" : 45,
    366       "operands" : [
    367         { "kind" : "IdRef", "name" : "'x'" },
    368         { "kind" : "IdRef", "name" : "'iptr'" }
    369       ]
    370     },
    371     {
    372       "opname" : "nan",
    373       "opcode" : 46,
    374       "operands" : [
    375         { "kind" : "IdRef", "name" : "'nancode'" }
    376       ]
    377     },
    378     {
    379       "opname" : "nextafter",
    380       "opcode" : 47,
    381       "operands" : [
    382         { "kind" : "IdRef", "name" : "'x'" },
    383         { "kind" : "IdRef", "name" : "'y'" }
    384       ]
    385     },
    386     {
    387       "opname" : "pow",
    388       "opcode" : 48,
    389       "operands" : [
    390         { "kind" : "IdRef", "name" : "'x'" },
    391         { "kind" : "IdRef", "name" : "'y" }
    392       ]
    393     },
    394     {
    395       "opname" : "pown",
    396       "opcode" : 49,
    397       "operands" : [
    398         { "kind" : "IdRef", "name" : "'x'" },
    399         { "kind" : "IdRef", "name" : "'y'" }
    400       ]
    401     },
    402     {
    403       "opname" : "powr",
    404       "opcode" : 50,
    405       "operands" : [
    406         { "kind" : "IdRef", "name" : "'x'" },
    407         { "kind" : "IdRef", "name" : "'y'" }
    408       ]
    409     },
    410     {
    411       "opname" : "remainder",
    412       "opcode" : 51,
    413       "operands" : [
    414         { "kind" : "IdRef", "name" : "'x'" },
    415         { "kind" : "IdRef", "name" : "'y'" }
    416       ]
    417     },
    418     {
    419       "opname" : "remquo",
    420       "opcode" : 52,
    421       "operands" : [
    422         { "kind" : "IdRef", "name" : "'x'" },
    423         { "kind" : "IdRef", "name" : "'y'" },
    424         { "kind" : "IdRef", "name" : "'quo'" }
    425       ]
    426     },
    427     {
    428       "opname" : "rint",
    429       "opcode" : 53,
    430       "operands" : [
    431         { "kind" : "IdRef", "name" : "'x'" }
    432       ]
    433     },
    434     {
    435       "opname" : "rootn",
    436       "opcode" : 54,
    437       "operands" : [
    438         { "kind" : "IdRef", "name" : "'x'" },
    439         { "kind" : "IdRef", "name" : "'y'" }
    440       ]
    441     },
    442     {
    443       "opname" : "round",
    444       "opcode" : 55,
    445       "operands" : [
    446         { "kind" : "IdRef", "name" : "'x'" }
    447       ]
    448     },
    449     {
    450       "opname" : "rsqrt",
    451       "opcode" : 56,
    452       "operands" : [
    453         { "kind" : "IdRef", "name" : "'x'" }
    454       ]
    455     },
    456     {
    457       "opname" : "sin",
    458       "opcode" : 57,
    459       "operands" : [
    460         { "kind" : "IdRef", "name" : "'x'" }
    461       ]
    462     },
    463     {
    464       "opname" : "sincos",
    465       "opcode" : 58,
    466       "operands" : [
    467         { "kind" : "IdRef", "name" : "'x'" },
    468         { "kind" : "IdRef", "name" : "'cosval'" }
    469       ]
    470     },
    471     {
    472       "opname" : "sinh",
    473       "opcode" : 59,
    474       "operands" : [
    475         { "kind" : "IdRef", "name" : "'x'" }
    476       ]
    477     },
    478     {
    479       "opname" : "sinpi",
    480       "opcode" : 60,
    481       "operands" : [
    482         { "kind" : "IdRef", "name" : "'x'" }
    483       ]
    484     },
    485     {
    486       "opname" : "sqrt",
    487       "opcode" : 61,
    488       "operands" : [
    489         { "kind" : "IdRef", "name" : "'x'" }
    490       ]
    491     },
    492     {
    493       "opname" : "tan",
    494       "opcode" : 62,
    495       "operands" : [
    496         { "kind" : "IdRef", "name" : "'x'" }
    497       ]
    498     },
    499     {
    500       "opname" : "tanh",
    501       "opcode" : 63,
    502       "operands" : [
    503         { "kind" : "IdRef", "name" : "'x'" }
    504       ]
    505     },
    506     {
    507       "opname" : "tanpi",
    508       "opcode" : 64,
    509       "operands" : [
    510         { "kind" : "IdRef", "name" : "'x'" }
    511       ]
    512     },
    513     {
    514       "opname" : "tgamma",
    515       "opcode" : 65,
    516       "operands" : [
    517         { "kind" : "IdRef", "name" : "'x'" }
    518       ]
    519     },
    520     {
    521       "opname" : "trunc",
    522       "opcode" : 66,
    523       "operands" : [
    524         { "kind" : "IdRef", "name" : "'x'" }
    525       ]
    526     },
    527     {
    528       "opname" : "half_cos",
    529       "opcode" : 67,
    530       "operands" : [
    531         { "kind" : "IdRef", "name" : "'x'" }
    532       ]
    533     },
    534     {
    535       "opname" : "half_divide",
    536       "opcode" : 68,
    537       "operands" : [
    538         { "kind" : "IdRef", "name" : "'x'" },
    539         { "kind" : "IdRef", "name" : "'y'" }
    540       ]
    541     },
    542     {
    543       "opname" : "half_exp",
    544       "opcode" : 69,
    545       "operands" : [
    546         { "kind" : "IdRef", "name" : "'x'" }
    547       ]
    548     },
    549     {
    550       "opname" : "half_exp2",
    551       "opcode" : 70,
    552       "operands" : [
    553         { "kind" : "IdRef", "name" : "'x'" }
    554       ]
    555     },
    556     {
    557       "opname" : "half_exp10",
    558       "opcode" : 71,
    559       "operands" : [
    560         { "kind" : "IdRef", "name" : "'x'" }
    561       ]
    562     },
    563     {
    564       "opname" : "half_log",
    565       "opcode" : 72,
    566       "operands" : [
    567         { "kind" : "IdRef", "name" : "'x'" }
    568       ]
    569     },
    570     {
    571       "opname" : "half_log2",
    572       "opcode" : 73,
    573       "operands" : [
    574         { "kind" : "IdRef", "name" : "'x'" }
    575       ]
    576     },
    577     {
    578       "opname" : "half_log10",
    579       "opcode" : 74,
    580       "operands" : [
    581         { "kind" : "IdRef", "name" : "'x'" }
    582       ]
    583     },
    584     {
    585       "opname" : "half_powr",
    586       "opcode" : 75,
    587       "operands" : [
    588         { "kind" : "IdRef", "name" : "'x'" },
    589         { "kind" : "IdRef", "name" : "'y'" }
    590       ]
    591     },
    592     {
    593       "opname" : "half_recip",
    594       "opcode" : 76,
    595       "operands" : [
    596         { "kind" : "IdRef", "name" : "'x'" }
    597       ]
    598     },
    599     {
    600       "opname" : "half_rsqrt",
    601       "opcode" : 77,
    602       "operands" : [
    603         { "kind" : "IdRef", "name" : "'x'" }
    604       ]
    605     },
    606     {
    607       "opname" : "half_sin",
    608       "opcode" : 78,
    609       "operands" : [
    610         { "kind" : "IdRef", "name" : "'x'" }
    611       ]
    612     },
    613     {
    614       "opname" : "half_sqrt",
    615       "opcode" : 79,
    616       "operands" : [
    617         { "kind" : "IdRef", "name" : "'x'" }
    618       ]
    619     },
    620     {
    621       "opname" : "half_tan",
    622       "opcode" : 80,
    623       "operands" : [
    624         { "kind" : "IdRef", "name" : "'x'" }
    625       ]
    626     },
    627     {
    628       "opname" : "native_cos",
    629       "opcode" : 81,
    630       "operands" : [
    631         { "kind" : "IdRef", "name" : "'x'" }
    632       ]
    633     },
    634     {
    635       "opname" : "native_divide",
    636       "opcode" : 82,
    637       "operands" : [
    638         { "kind" : "IdRef", "name" : "'x'" },
    639         { "kind" : "IdRef", "name" : "'y'" }
    640       ]
    641     },
    642     {
    643       "opname" : "native_exp",
    644       "opcode" : 83,
    645       "operands" : [
    646         { "kind" : "IdRef", "name" : "'x'" }
    647       ]
    648     },
    649     {
    650       "opname" : "native_exp2",
    651       "opcode" : 84,
    652       "operands" : [
    653         { "kind" : "IdRef", "name" : "'x'" }
    654       ]
    655     },
    656     {
    657       "opname" : "native_exp10",
    658       "opcode" : 85,
    659       "operands" : [
    660         { "kind" : "IdRef", "name" : "'x'" }
    661       ]
    662     },
    663     {
    664       "opname" : "native_log",
    665       "opcode" : 86,
    666       "operands" : [
    667         { "kind" : "IdRef", "name" : "'x'" }
    668       ]
    669     },
    670     {
    671       "opname" : "native_log2",
    672       "opcode" : 87,
    673       "operands" : [
    674         { "kind" : "IdRef", "name" : "'x'" }
    675       ]
    676     },
    677     {
    678       "opname" : "native_log10",
    679       "opcode" : 88,
    680       "operands" : [
    681         { "kind" : "IdRef", "name" : "'x'" }
    682       ]
    683     },
    684     {
    685       "opname" : "native_powr",
    686       "opcode" : 89,
    687       "operands" : [
    688         { "kind" : "IdRef", "name" : "'x'" },
    689         { "kind" : "IdRef", "name" : "'y'" }
    690       ]
    691     },
    692     {
    693       "opname" : "native_recip",
    694       "opcode" : 90,
    695       "operands" : [
    696         { "kind" : "IdRef", "name" : "'x'" }
    697       ]
    698     },
    699     {
    700       "opname" : "native_rsqrt",
    701       "opcode" : 91,
    702       "operands" : [
    703         { "kind" : "IdRef", "name" : "'x'" }
    704       ]
    705     },
    706     {
    707       "opname" : "native_sin",
    708       "opcode" : 92,
    709       "operands" : [
    710         { "kind" : "IdRef", "name" : "'x'" }
    711       ]
    712     },
    713     {
    714       "opname" : "native_sqrt",
    715       "opcode" : 93,
    716       "operands" : [
    717         { "kind" : "IdRef", "name" : "'x'" }
    718       ]
    719     },
    720     {
    721       "opname" : "native_tan",
    722       "opcode" : 94,
    723       "operands" : [
    724         { "kind" : "IdRef", "name" : "'x'" }
    725       ]
    726     },
    727     {
    728       "opname" : "s_abs",
    729       "opcode" : 141,
    730       "operands" : [
    731         { "kind" : "IdRef", "name" : "'x'" }
    732       ]
    733     },
    734     {
    735       "opname" : "s_abs_diff",
    736       "opcode" : 142,
    737       "operands" : [
    738         { "kind" : "IdRef", "name" : "'x'" },
    739         { "kind" : "IdRef", "name" : "'y'" }
    740       ]
    741     },
    742     {
    743       "opname" : "s_add_sat",
    744       "opcode" : 143,
    745       "operands" : [
    746         { "kind" : "IdRef", "name" : "'x'" },
    747         { "kind" : "IdRef", "name" : "'y'" }
    748       ]
    749     },
    750     {
    751       "opname" : "u_add_sat",
    752       "opcode" : 144,
    753       "operands" : [
    754         { "kind" : "IdRef", "name" : "'x'" },
    755         { "kind" : "IdRef", "name" : "'y'" }
    756       ]
    757     },
    758     {
    759       "opname" : "s_hadd",
    760       "opcode" : 145,
    761       "operands" : [
    762         { "kind" : "IdRef", "name" : "'x'" },
    763         { "kind" : "IdRef", "name" : "'y'" }
    764       ]
    765     },
    766     {
    767       "opname" : "u_hadd",
    768       "opcode" : 146,
    769       "operands" : [
    770         { "kind" : "IdRef", "name" : "'x'" },
    771         { "kind" : "IdRef", "name" : "'y'" }
    772       ]
    773     },
    774     {
    775       "opname" : "s_rhadd",
    776       "opcode" : 147,
    777       "operands" : [
    778         { "kind" : "IdRef", "name" : "'x'" },
    779         { "kind" : "IdRef", "name" : "'y'" }
    780       ]
    781     },
    782     {
    783       "opname" : "u_rhadd",
    784       "opcode" : 148,
    785       "operands" : [
    786         { "kind" : "IdRef", "name" : "'x'" },
    787         { "kind" : "IdRef", "name" : "'y'" }
    788       ]
    789     },
    790     {
    791       "opname" : "s_clamp",
    792       "opcode" : 149,
    793       "operands" : [
    794         { "kind" : "IdRef", "name" : "'x'" },
    795         { "kind" : "IdRef", "name" : "'minval'" },
    796         { "kind" : "IdRef", "name" : "'maxval'" }
    797       ]
    798     },
    799     {
    800       "opname" : "u_clamp",
    801       "opcode" : 150,
    802       "operands" : [
    803         { "kind" : "IdRef", "name" : "'x'" },
    804         { "kind" : "IdRef", "name" : "'minval'" },
    805         { "kind" : "IdRef", "name" : "'maxval'" }
    806       ]
    807     },
    808     {
    809       "opname" : "clz",
    810       "opcode" : 151,
    811       "operands" : [
    812         { "kind" : "IdRef", "name" : "'x'" }
    813       ]
    814     },
    815     {
    816       "opname" : "ctz",
    817       "opcode" : 152,
    818       "operands" : [
    819         { "kind" : "IdRef", "name" : "'x'" }
    820       ]
    821     },
    822     {
    823       "opname" : "s_mad_hi",
    824       "opcode" : 153,
    825       "operands" : [
    826         { "kind" : "IdRef", "name" : "'a'" },
    827         { "kind" : "IdRef", "name" : "'b'" },
    828         { "kind" : "IdRef", "name" : "'c'" }
    829       ]
    830     },
    831     {
    832       "opname" : "u_mad_sat",
    833       "opcode" : 154,
    834       "operands" : [
    835         { "kind" : "IdRef", "name" : "'x'" },
    836         { "kind" : "IdRef", "name" : "'y'" },
    837         { "kind" : "IdRef", "name" : "'z'" }
    838       ]
    839     },
    840     {
    841       "opname" : "s_mad_sat",
    842       "opcode" : 155,
    843       "operands" : [
    844         { "kind" : "IdRef", "name" : "'x'" },
    845         { "kind" : "IdRef", "name" : "'y'" },
    846         { "kind" : "IdRef", "name" : "'z'" }
    847       ]
    848     },
    849     {
    850       "opname" : "s_max",
    851       "opcode" : 156,
    852       "operands" : [
    853         { "kind" : "IdRef", "name" : "'x'" },
    854         { "kind" : "IdRef", "name" : "'y'" }
    855       ]
    856     },
    857     {
    858       "opname" : "u_max",
    859       "opcode" : 157,
    860       "operands" : [
    861         { "kind" : "IdRef", "name" : "'x'" },
    862         { "kind" : "IdRef", "name" : "'y'" }
    863       ]
    864     },
    865     {
    866       "opname" : "s_min",
    867       "opcode" : 158,
    868       "operands" : [
    869         { "kind" : "IdRef", "name" : "'x'" },
    870         { "kind" : "IdRef", "name" : "'y'" }
    871       ]
    872     },
    873     {
    874       "opname" : "u_min",
    875       "opcode" : 159,
    876       "operands" : [
    877         { "kind" : "IdRef", "name" : "'x'" },
    878         { "kind" : "IdRef", "name" : "'y'" }
    879       ]
    880     },
    881     {
    882       "opname" : "s_mul_hi",
    883       "opcode" : 160,
    884       "operands" : [
    885         { "kind" : "IdRef", "name" : "'x'" },
    886         { "kind" : "IdRef", "name" : "'y'" }
    887       ]
    888     },
    889     {
    890       "opname" : "rotate",
    891       "opcode" : 161,
    892       "operands" : [
    893         { "kind" : "IdRef", "name" : "'v'" },
    894         { "kind" : "IdRef", "name" : "'i'" }
    895       ]
    896     },
    897     {
    898       "opname" : "s_sub_sat",
    899       "opcode" : 162,
    900       "operands" : [
    901         { "kind" : "IdRef", "name" : "'x'" },
    902         { "kind" : "IdRef", "name" : "'y'" }
    903       ]
    904     },
    905     {
    906       "opname" : "u_sub_sat",
    907       "opcode" : 163,
    908       "operands" : [
    909         { "kind" : "IdRef", "name" : "'x'" },
    910         { "kind" : "IdRef", "name" : "'y'" }
    911       ]
    912     },
    913     {
    914       "opname" : "u_upsample",
    915       "opcode" : 164,
    916       "operands" : [
    917         { "kind" : "IdRef", "name" : "'hi'" },
    918         { "kind" : "IdRef", "name" : "'lo'" }
    919       ]
    920     },
    921     {
    922       "opname" : "s_upsample",
    923       "opcode" : 165,
    924       "operands" : [
    925         { "kind" : "IdRef", "name" : "'hi'" },
    926         { "kind" : "IdRef", "name" : "'lo'" }
    927       ]
    928     },
    929     {
    930       "opname" : "popcount",
    931       "opcode" : 166,
    932       "operands" : [
    933         { "kind" : "IdRef", "name" : "'x'" }
    934       ]
    935     },
    936     {
    937       "opname" : "s_mad24",
    938       "opcode" : 167,
    939       "operands" : [
    940         { "kind" : "IdRef", "name" : "'x'" },
    941         { "kind" : "IdRef", "name" : "'y'" },
    942         { "kind" : "IdRef", "name" : "'z'" }
    943       ]
    944     },
    945     {
    946       "opname" : "u_mad24",
    947       "opcode" : 168,
    948       "operands" : [
    949         { "kind" : "IdRef", "name" : "'x'" },
    950         { "kind" : "IdRef", "name" : "'y'" },
    951         { "kind" : "IdRef", "name" : "'z'" }
    952       ]
    953     },
    954     {
    955       "opname" : "s_mul24",
    956       "opcode" : 169,
    957       "operands" : [
    958         { "kind" : "IdRef", "name" : "'x'" },
    959         { "kind" : "IdRef", "name" : "'y'" }
    960       ]
    961     },
    962     {
    963       "opname" : "u_mul24",
    964       "opcode" : 170,
    965       "operands" : [
    966         { "kind" : "IdRef", "name" : "'x'" },
    967         { "kind" : "IdRef", "name" : "'y'" }
    968       ]
    969     },
    970     {
    971       "opname" : "u_abs",
    972       "opcode" : 201,
    973       "operands" : [
    974         { "kind" : "IdRef", "name" : "'x'" }
    975       ]
    976     },
    977     {
    978       "opname" : "u_abs_diff",
    979       "opcode" : 202,
    980       "operands" : [
    981         { "kind" : "IdRef", "name" : "'x'" },
    982         { "kind" : "IdRef", "name" : "'y'" }
    983       ]
    984     },
    985     {
    986       "opname" : "u_mul_hi",
    987       "opcode" : 203,
    988       "operands" : [
    989         { "kind" : "IdRef", "name" : "'x'" },
    990         { "kind" : "IdRef", "name" : "'y'" }
    991       ]
    992     },
    993     {
    994       "opname" : "u_mad_hi",
    995       "opcode" : 204,
    996       "operands" : [
    997         { "kind" : "IdRef", "name" : "'a'" },
    998         { "kind" : "IdRef", "name" : "'b'" },
    999         { "kind" : "IdRef", "name" : "'c'" }
   1000       ]
   1001     },
   1002     {
   1003       "opname" : "fclamp",
   1004       "opcode" : 95,
   1005       "operands" : [
   1006         { "kind" : "IdRef", "name" : "'x'" },
   1007         { "kind" : "IdRef", "name" : "'minval'" },
   1008         { "kind" : "IdRef", "name" : "'maxval'" }
   1009       ]
   1010     },
   1011     {
   1012       "opname" : "degrees",
   1013       "opcode" :96,
   1014       "operands" : [
   1015         { "kind" : "IdRef", "name" : "'radians'" }
   1016       ]
   1017     },
   1018     {
   1019       "opname" : "fmax_common",
   1020       "opcode" : 97,
   1021       "operands" : [
   1022         { "kind" : "IdRef", "name" : "'x'" },
   1023         { "kind" : "IdRef", "name" : "'y'" }
   1024       ]
   1025     },
   1026     {
   1027       "opname" : "fmin_common",
   1028       "opcode" : 98,
   1029       "operands" : [
   1030         { "kind" : "IdRef", "name" : "'x'" },
   1031         { "kind" : "IdRef", "name" : "'y'" }
   1032       ]
   1033     },
   1034     {
   1035       "opname" : "mix",
   1036       "opcode" : 99,
   1037       "operands" : [
   1038         { "kind" : "IdRef", "name" : "'x'" },
   1039         { "kind" : "IdRef", "name" : "'y'" },
   1040         { "kind" : "IdRef", "name" : "'a'" }
   1041       ]
   1042     },
   1043     {
   1044       "opname" : "radians",
   1045       "opcode" : 100,
   1046       "operands" : [
   1047         { "kind" : "IdRef", "name" : "'degrees'" }
   1048       ]
   1049     },
   1050     {
   1051       "opname" : "step",
   1052       "opcode" : 101,
   1053       "operands" : [
   1054         { "kind" : "IdRef", "name" : "'edge'" },
   1055         { "kind" : "IdRef", "name" : "'x'" }
   1056       ]
   1057     },
   1058     {
   1059       "opname" : "smoothstep",
   1060       "opcode" : 102,
   1061       "operands" : [
   1062         { "kind" : "IdRef", "name" : "'edge0'" },
   1063         { "kind" : "IdRef", "name" : "'edge1'" },
   1064         { "kind" : "IdRef", "name" : "'x'" }
   1065       ]
   1066     },
   1067     {
   1068       "opname" : "sign",
   1069       "opcode" : 103,
   1070       "operands" : [
   1071         { "kind" : "IdRef", "name" : "'x'" }
   1072       ]
   1073     },
   1074     {
   1075       "opname" : "cross",
   1076       "opcode" : 104,
   1077       "operands" : [
   1078         { "kind" : "IdRef", "name" : "'p0'" },
   1079         { "kind" : "IdRef", "name" : "'p1'" }
   1080       ]
   1081     },
   1082     {
   1083       "opname" : "distance",
   1084       "opcode" : 105,
   1085       "operands" : [
   1086         { "kind" : "IdRef", "name" : "'p0'" },
   1087         { "kind" : "IdRef", "name" : "'p1'" }
   1088       ]
   1089     },
   1090     {
   1091       "opname" : "length",
   1092       "opcode" : 106,
   1093       "operands" : [
   1094         { "kind" : "IdRef", "name" : "'p'" }
   1095       ]
   1096     },
   1097     {
   1098       "opname" : "normalize",
   1099       "opcode" : 107,
   1100       "operands" : [
   1101         { "kind" : "IdRef", "name" : "'p'" }
   1102       ]
   1103     },
   1104     {
   1105       "opname" : "fast_distance",
   1106       "opcode" : 108,
   1107       "operands" : [
   1108         { "kind" : "IdRef", "name" : "'p0'" },
   1109         { "kind" : "IdRef", "name" : "'p1'" }
   1110       ]
   1111     },
   1112     {
   1113       "opname" : "fast_length",
   1114       "opcode" : 109,
   1115       "operands" : [
   1116         { "kind" : "IdRef", "name" : "'p'" }
   1117       ]
   1118     },
   1119     {
   1120       "opname" : "fast_normalize",
   1121       "opcode" : 110,
   1122       "operands" : [
   1123         { "kind" : "IdRef", "name" : "'p'" }
   1124       ]
   1125     },
   1126     {
   1127       "opname" : "bitselect",
   1128       "opcode" : 186,
   1129       "operands" : [
   1130         { "kind" : "IdRef", "name" : "'a'" },
   1131         { "kind" : "IdRef", "name" : "'b'" },
   1132         { "kind" : "IdRef", "name" : "'c'" }
   1133       ]
   1134     },
   1135     {
   1136       "opname" : "select",
   1137       "opcode" : 187,
   1138       "operands" : [
   1139         { "kind" : "IdRef", "name" : "'a'" },
   1140         { "kind" : "IdRef", "name" : "'b'" },
   1141         { "kind" : "IdRef", "name" : "'c'" }
   1142       ]
   1143     },
   1144     {
   1145       "opname" : "vloadn",
   1146       "opcode" : 171,
   1147       "operands" : [
   1148         { "kind" : "IdRef",          "name" : "'offset'" },
   1149         { "kind" : "IdRef",          "name" : "'p'" },
   1150         { "kind" : "LiteralInteger", "name" : "'n'" }
   1151       ]
   1152     },
   1153     {
   1154       "opname" : "vstoren",
   1155       "opcode" : 172,
   1156       "operands" : [
   1157         { "kind" : "IdRef", "name" : "'data'" },
   1158         { "kind" : "IdRef", "name" : "'offset'" },
   1159         { "kind" : "IdRef", "name" : "'p'" }
   1160       ]
   1161     },
   1162     {
   1163       "opname" : "vload_half",
   1164       "opcode" : 173,
   1165       "operands" : [
   1166         { "kind" : "IdRef",          "name" : "'offset'" },
   1167         { "kind" : "IdRef",          "name" : "'p'" }
   1168       ]
   1169     },
   1170     {
   1171       "opname" : "vload_halfn",
   1172       "opcode" : 174,
   1173       "operands" : [
   1174         { "kind" : "IdRef",          "name" : "'offset'" },
   1175         { "kind" : "IdRef",          "name" : "'p'" },
   1176         { "kind" : "LiteralInteger", "name" : "'n'" }
   1177       ]
   1178     },
   1179     {
   1180       "opname" : "vstore_half",
   1181       "opcode" : 175,
   1182       "operands" : [
   1183         { "kind" : "IdRef", "name" : "'data'" },
   1184         { "kind" : "IdRef", "name" : "'offset'" },
   1185         { "kind" : "IdRef", "name" : "'p'" }
   1186       ]
   1187     },
   1188     {
   1189       "opname" : "vstore_half_r",
   1190       "opcode" : 176,
   1191       "operands" : [
   1192         { "kind" : "IdRef",          "name" : "'data'" },
   1193         { "kind" : "IdRef",          "name" : "'offset'" },
   1194         { "kind" : "IdRef",          "name" : "'p'" },
   1195         { "kind" : "FPRoundingMode", "name" : "'mode'" }
   1196       ]
   1197     },
   1198     {
   1199       "opname" : "vstore_halfn",
   1200       "opcode" : 177,
   1201       "operands" : [
   1202         { "kind" : "IdRef",          "name" : "'data'" },
   1203         { "kind" : "IdRef",          "name" : "'offset'" },
   1204         { "kind" : "IdRef",          "name" : "'p'" }
   1205       ]
   1206     },
   1207     {
   1208       "opname" : "vstore_halfn_r",
   1209       "opcode" : 178,
   1210       "operands" : [
   1211         { "kind" : "IdRef",          "name" : "'data'" },
   1212         { "kind" : "IdRef",          "name" : "'offset'" },
   1213         { "kind" : "IdRef",          "name" : "'p'" },
   1214         { "kind" : "FPRoundingMode", "name" : "'mode'" }
   1215       ]
   1216     },
   1217     {
   1218       "opname" : "vloada_halfn",
   1219       "opcode" : 179,
   1220       "operands" : [
   1221         { "kind" : "IdRef",          "name" : "'offset'" },
   1222         { "kind" : "IdRef",          "name" : "'p'" },
   1223         { "kind" : "LiteralInteger", "name" : "'n'" }
   1224       ]
   1225     },
   1226     {
   1227       "opname" : "vstorea_halfn",
   1228       "opcode" : 180,
   1229       "operands" : [
   1230         { "kind" : "IdRef", "name" : "'data'" },
   1231         { "kind" : "IdRef", "name" : "'offset'" },
   1232         { "kind" : "IdRef", "name" : "'p'" }
   1233       ]
   1234     },
   1235     {
   1236       "opname" : "vstorea_halfn_r",
   1237       "opcode" : 181,
   1238       "operands" : [
   1239         { "kind" : "IdRef",          "name" : "'data'" },
   1240         { "kind" : "IdRef",          "name" : "'offset'" },
   1241         { "kind" : "IdRef",          "name" : "'p'" },
   1242         { "kind" : "FPRoundingMode", "name" : "'mode'" }
   1243       ]
   1244     },
   1245     {
   1246       "opname" : "shuffle",
   1247       "opcode" : 182,
   1248       "operands" : [
   1249         { "kind" : "IdRef", "name" : "'x'" },
   1250         { "kind" : "IdRef", "name" : "'shuffle mask'" }
   1251       ]
   1252     },
   1253     {
   1254       "opname" : "shuffle2",
   1255       "opcode" : 183,
   1256       "operands" : [
   1257         { "kind" : "IdRef", "name" : "'x'" },
   1258         { "kind" : "IdRef", "name" : "'y'" },
   1259         { "kind" : "IdRef", "name" : "'shuffle mask'" }
   1260       ]
   1261     },
   1262     {
   1263       "opname" : "printf",
   1264       "opcode" : 184,
   1265       "operands" : [
   1266         { "kind" : "IdRef", "name" : "'format'" },
   1267         { "kind" : "IdRef", "name" : "'additional arguments'", "quantifier" : "*" }
   1268       ]
   1269     },
   1270     {
   1271       "opname" : "prefetch",
   1272       "opcode" : 185,
   1273       "operands" : [
   1274         { "kind" : "IdRef", "name" : "'ptr'" },
   1275         { "kind" : "IdRef", "name" : "'num elements'" }
   1276       ]
   1277     }
   1278   ]
   1279 }
   1280