SPIRV-Tools/source/extinst-1-0.opencl.std.grammar.json
Dejan Mircevski e26fdc6bd1 Mark SPIR-V grammar files as 1.0.
Factor the CMake generate_grammar_tables invocation into a function
parameterized on the version.
2016-04-18 10:00:01 -04:00

1278 lines
24 KiB
JSON

{
"copyright" : [
"Copyright (c) 2014-2016 The Khronos Group Inc.",
"",
"Permission is hereby granted, free of charge, to any person obtaining a copy",
"of this software and/or associated documentation files (the \"Materials\"),",
"to deal in the Materials without restriction, including without limitation",
"the rights to use, copy, modify, merge, publish, distribute, sublicense,",
"and/or sell copies of the Materials, and to permit persons to whom the",
"Materials are furnished to do so, subject to the following conditions:",
"",
"The above copyright notice and this permission notice shall be included in",
"all copies or substantial portions of the Materials.",
"",
"MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS",
"STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND",
"HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ ",
"",
"THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS",
"OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL",
"THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
"LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING",
"FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS",
"IN THE MATERIALS."
],
"instructions" : [
{
"opname" : "acos",
"opcode" : 0,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "acosh",
"opcode" : 1,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "acospi",
"opcode" : 2,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "asin",
"opcode" : 3,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "asinh",
"opcode" : 4,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "asinpi",
"opcode" : 5,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "atan",
"opcode" : 6,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "atan2",
"opcode" : 7,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "atanh",
"opcode" : 8,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "atanpi",
"opcode" : 9,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "atan2pi",
"opcode" : 10,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "cbrt",
"opcode" : 11,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "ceil",
"opcode" : 12,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "copysign",
"opcode" : 13,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "cos",
"opcode" : 14,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "cosh",
"opcode" : 15,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "cospi",
"opcode" : 16,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "erfc",
"opcode" : 17,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "erf",
"opcode" : 18,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "exp",
"opcode" : 19,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "exp2",
"opcode" : 20,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "exp10",
"opcode" : 21,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "expm1",
"opcode" : 22,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fabs",
"opcode" : 23,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fdim",
"opcode" : 24,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "floor",
"opcode" : 25,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fma",
"opcode" : 26,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "fmax",
"opcode" : 27,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "fmin",
"opcode" : 28,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "fmod",
"opcode" : 29,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "fract",
"opcode" : 30,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "frexp",
"opcode" : 31,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "hypot",
"opcode" : 32,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "ilogb",
"opcode" : 33,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "ldexp",
"opcode" : 34,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "lgamma",
"opcode" : 35,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "lgamma_r",
"opcode" : 36,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "log",
"opcode" : 37,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "log2",
"opcode" : 38,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "log10",
"opcode" : 39,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "log1p",
"opcode" : 40,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "logb",
"opcode" : 41,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "mad",
"opcode" : 42,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "maxmag",
"opcode" : 43,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "minmag",
"opcode" : 44,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "modf",
"opcode" : 45,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "nan",
"opcode" : 46,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "nextafter",
"opcode" : 47,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "pow",
"opcode" : 48,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "pown",
"opcode" : 49,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "powr",
"opcode" : 50,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "remainder",
"opcode" : 51,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "remquo",
"opcode" : 52,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "rint",
"opcode" : 53,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "rootn",
"opcode" : 54,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "round",
"opcode" : 55,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "rsqrt",
"opcode" : 56,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "sin",
"opcode" : 57,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "sincos",
"opcode" : 58,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "sinh",
"opcode" : 59,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "sinpi",
"opcode" : 60,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "sqrt",
"opcode" : 61,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "tan",
"opcode" : 62,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "tanh",
"opcode" : 63,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "tanpi",
"opcode" : 64,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "tgamma",
"opcode" : 65,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "trunc",
"opcode" : 66,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_cos",
"opcode" : 67,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_divide",
"opcode" : 68,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_exp",
"opcode" : 69,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_exp2",
"opcode" : 70,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_exp10",
"opcode" : 71,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_log",
"opcode" : 72,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_log2",
"opcode" : 73,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_log10",
"opcode" : 74,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_powr",
"opcode" : 75,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_recip",
"opcode" : 76,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_rsqrt",
"opcode" : 77,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_sin",
"opcode" : 78,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_sqrt",
"opcode" : 79,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "half_tan",
"opcode" : 80,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_cos",
"opcode" : 81,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_divide",
"opcode" : 82,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_exp",
"opcode" : 83,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_exp2",
"opcode" : 84,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_exp10",
"opcode" : 85,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_log",
"opcode" : 86,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_log2",
"opcode" : 87,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_log10",
"opcode" : 88,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_powr",
"opcode" : 89,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_recip",
"opcode" : 90,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_rsqrt",
"opcode" : 91,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_sin",
"opcode" : 92,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_sqrt",
"opcode" : 93,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "native_tan",
"opcode" : 94,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fclamp",
"opcode" : 95,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "degrees",
"opcode" : 96,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fmax_common",
"opcode" : 97,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "fmin_common",
"opcode" : 98,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "mix",
"opcode" : 99,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "radians",
"opcode" : 100,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "step",
"opcode" : 101,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "smoothstep",
"opcode" : 102,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "sign",
"opcode" : 103,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "cross",
"opcode" : 104,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "distance",
"opcode" : 105,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "length",
"opcode" : 106,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "normalize",
"opcode" : 107,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fast_distance",
"opcode" : 108,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "fast_length",
"opcode" : 109,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "fast_normalize",
"opcode" : 110,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_abs",
"opcode" : 141,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_abs_diff",
"opcode" : 142,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_add_sat",
"opcode" : 143,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_add_sat",
"opcode" : 144,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_hadd",
"opcode" : 145,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_hadd",
"opcode" : 146,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_rhadd",
"opcode" : 147,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_rhadd",
"opcode" : 148,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_clamp",
"opcode" : 149,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_clamp",
"opcode" : 150,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "clz",
"opcode" : 151,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "ctz",
"opcode" : 152,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_mad_hi",
"opcode" : 153,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_mad_sat",
"opcode" : 154,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_mad_sat",
"opcode" : 155,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_max",
"opcode" : 156,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_max",
"opcode" : 157,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_min",
"opcode" : 158,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_min",
"opcode" : 159,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_mul_hi",
"opcode" : 160,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "rotate",
"opcode" : 161,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_sub_sat",
"opcode" : 162,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_sub_sat",
"opcode" : 163,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_upsample",
"opcode" : 164,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_upsample",
"opcode" : 165,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "popcount",
"opcode" : 166,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_mad24",
"opcode" : 167,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_mad24",
"opcode" : 168,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "s_mul24",
"opcode" : 169,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_mul24",
"opcode" : 170,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "vloadn",
"opcode" : 171,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "LiteralInteger" }
]
},
{
"opname" : "vstoren",
"opcode" : 172,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "vload_half",
"opcode" : 173,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "vload_halfn",
"opcode" : 174,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "LiteralInteger" }
]
},
{
"opname" : "vstore_half",
"opcode" : 175,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "vstore_half_r",
"opcode" : 176,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "FPRoundingMode" }
]
},
{
"opname" : "vstore_halfn",
"opcode" : 177,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "vstore_halfn_r",
"opcode" : 178,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "FPRoundingMode" }
]
},
{
"opname" : "vloada_halfn",
"opcode" : 179,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "LiteralInteger" }
]
},
{
"opname" : "vstorea_halfn",
"opcode" : 180,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "vstorea_halfn_r",
"opcode" : 181,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "FPRoundingMode" }
]
},
{
"opname" : "shuffle",
"opcode" : 182,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "shuffle2",
"opcode" : 183,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "printf",
"opcode" : 184,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef", "quantifier" : "*" }
]
},
{
"opname" : "prefetch",
"opcode" : 185,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "bitselect",
"opcode" : 186,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "select",
"opcode" : 187,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_abs",
"opcode" : 201,
"operands" : [
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_abs_diff",
"opcode" : 202,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_mul_hi",
"opcode" : 203,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
},
{
"opname" : "u_mad_hi",
"opcode" : 204,
"operands" : [
{ "kind" : "IdRef" },
{ "kind" : "IdRef" },
{ "kind" : "IdRef" }
]
}
]
}