nir_opcodes.h revision 96c5ddc4
110e230b6Smaya/* Copyright (C) 2014 Connor Abbott
210e230b6Smaya *
310e230b6Smaya * Permission is hereby granted, free of charge, to any person obtaining a
410e230b6Smaya * copy of this software and associated documentation files (the "Software"),
510e230b6Smaya * to deal in the Software without restriction, including without limitation
610e230b6Smaya * the rights to use, copy, modify, merge, publish, distribute, sublicense,
710e230b6Smaya * and/or sell copies of the Software, and to permit persons to whom the
810e230b6Smaya * Software is furnished to do so, subject to the following conditions:
910e230b6Smaya *
1010e230b6Smaya * The above copyright notice and this permission notice (including the next
1110e230b6Smaya * paragraph) shall be included in all copies or substantial portions of the
1210e230b6Smaya * Software.
1310e230b6Smaya *
1410e230b6Smaya * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1510e230b6Smaya * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1610e230b6Smaya * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
1710e230b6Smaya * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1810e230b6Smaya * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
1910e230b6Smaya * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
2010e230b6Smaya * IN THE SOFTWARE.
2110e230b6Smaya *
2210e230b6Smaya * Authors:
2310e230b6Smaya *    Connor Abbott (cwabbott0@gmail.com)
2410e230b6Smaya */
2510e230b6Smaya
2610e230b6Smaya#ifndef _NIR_OPCODES_
2710e230b6Smaya#define _NIR_OPCODES_
2810e230b6Smaya
2910e230b6Smaya
3010e230b6Smaya
3110e230b6Smayatypedef enum {
3296c5ddc4Srjs   nir_op_amul,
3396c5ddc4Srjs   nir_op_b16all_fequal16,
3496c5ddc4Srjs   nir_op_b16all_fequal2,
3596c5ddc4Srjs   nir_op_b16all_fequal3,
3696c5ddc4Srjs   nir_op_b16all_fequal4,
3796c5ddc4Srjs   nir_op_b16all_fequal5,
3896c5ddc4Srjs   nir_op_b16all_fequal8,
3996c5ddc4Srjs   nir_op_b16all_iequal16,
4096c5ddc4Srjs   nir_op_b16all_iequal2,
4196c5ddc4Srjs   nir_op_b16all_iequal3,
4296c5ddc4Srjs   nir_op_b16all_iequal4,
4396c5ddc4Srjs   nir_op_b16all_iequal5,
4496c5ddc4Srjs   nir_op_b16all_iequal8,
4596c5ddc4Srjs   nir_op_b16any_fnequal16,
4696c5ddc4Srjs   nir_op_b16any_fnequal2,
4796c5ddc4Srjs   nir_op_b16any_fnequal3,
4896c5ddc4Srjs   nir_op_b16any_fnequal4,
4996c5ddc4Srjs   nir_op_b16any_fnequal5,
5096c5ddc4Srjs   nir_op_b16any_fnequal8,
5196c5ddc4Srjs   nir_op_b16any_inequal16,
5296c5ddc4Srjs   nir_op_b16any_inequal2,
5396c5ddc4Srjs   nir_op_b16any_inequal3,
5496c5ddc4Srjs   nir_op_b16any_inequal4,
5596c5ddc4Srjs   nir_op_b16any_inequal5,
5696c5ddc4Srjs   nir_op_b16any_inequal8,
5796c5ddc4Srjs   nir_op_b16csel,
5896c5ddc4Srjs   nir_op_b2b1,
5996c5ddc4Srjs   nir_op_b2b16,
6096c5ddc4Srjs   nir_op_b2b32,
6196c5ddc4Srjs   nir_op_b2b8,
6210e230b6Smaya   nir_op_b2f16,
6310e230b6Smaya   nir_op_b2f32,
6410e230b6Smaya   nir_op_b2f64,
6510e230b6Smaya   nir_op_b2i1,
6610e230b6Smaya   nir_op_b2i16,
6710e230b6Smaya   nir_op_b2i32,
6810e230b6Smaya   nir_op_b2i64,
6910e230b6Smaya   nir_op_b2i8,
7096c5ddc4Srjs   nir_op_b32all_fequal16,
7110e230b6Smaya   nir_op_b32all_fequal2,
7210e230b6Smaya   nir_op_b32all_fequal3,
7310e230b6Smaya   nir_op_b32all_fequal4,
7496c5ddc4Srjs   nir_op_b32all_fequal5,
7596c5ddc4Srjs   nir_op_b32all_fequal8,
7696c5ddc4Srjs   nir_op_b32all_iequal16,
7710e230b6Smaya   nir_op_b32all_iequal2,
7810e230b6Smaya   nir_op_b32all_iequal3,
7910e230b6Smaya   nir_op_b32all_iequal4,
8096c5ddc4Srjs   nir_op_b32all_iequal5,
8196c5ddc4Srjs   nir_op_b32all_iequal8,
8296c5ddc4Srjs   nir_op_b32any_fnequal16,
8310e230b6Smaya   nir_op_b32any_fnequal2,
8410e230b6Smaya   nir_op_b32any_fnequal3,
8510e230b6Smaya   nir_op_b32any_fnequal4,
8696c5ddc4Srjs   nir_op_b32any_fnequal5,
8796c5ddc4Srjs   nir_op_b32any_fnequal8,
8896c5ddc4Srjs   nir_op_b32any_inequal16,
8910e230b6Smaya   nir_op_b32any_inequal2,
9010e230b6Smaya   nir_op_b32any_inequal3,
9110e230b6Smaya   nir_op_b32any_inequal4,
9296c5ddc4Srjs   nir_op_b32any_inequal5,
9396c5ddc4Srjs   nir_op_b32any_inequal8,
9410e230b6Smaya   nir_op_b32csel,
9596c5ddc4Srjs   nir_op_b8all_fequal16,
9696c5ddc4Srjs   nir_op_b8all_fequal2,
9796c5ddc4Srjs   nir_op_b8all_fequal3,
9896c5ddc4Srjs   nir_op_b8all_fequal4,
9996c5ddc4Srjs   nir_op_b8all_fequal5,
10096c5ddc4Srjs   nir_op_b8all_fequal8,
10196c5ddc4Srjs   nir_op_b8all_iequal16,
10296c5ddc4Srjs   nir_op_b8all_iequal2,
10396c5ddc4Srjs   nir_op_b8all_iequal3,
10496c5ddc4Srjs   nir_op_b8all_iequal4,
10596c5ddc4Srjs   nir_op_b8all_iequal5,
10696c5ddc4Srjs   nir_op_b8all_iequal8,
10796c5ddc4Srjs   nir_op_b8any_fnequal16,
10896c5ddc4Srjs   nir_op_b8any_fnequal2,
10996c5ddc4Srjs   nir_op_b8any_fnequal3,
11096c5ddc4Srjs   nir_op_b8any_fnequal4,
11196c5ddc4Srjs   nir_op_b8any_fnequal5,
11296c5ddc4Srjs   nir_op_b8any_fnequal8,
11396c5ddc4Srjs   nir_op_b8any_inequal16,
11496c5ddc4Srjs   nir_op_b8any_inequal2,
11596c5ddc4Srjs   nir_op_b8any_inequal3,
11696c5ddc4Srjs   nir_op_b8any_inequal4,
11796c5ddc4Srjs   nir_op_b8any_inequal5,
11896c5ddc4Srjs   nir_op_b8any_inequal8,
11996c5ddc4Srjs   nir_op_b8csel,
12096c5ddc4Srjs   nir_op_ball_fequal16,
12110e230b6Smaya   nir_op_ball_fequal2,
12210e230b6Smaya   nir_op_ball_fequal3,
12310e230b6Smaya   nir_op_ball_fequal4,
12496c5ddc4Srjs   nir_op_ball_fequal5,
12596c5ddc4Srjs   nir_op_ball_fequal8,
12696c5ddc4Srjs   nir_op_ball_iequal16,
12710e230b6Smaya   nir_op_ball_iequal2,
12810e230b6Smaya   nir_op_ball_iequal3,
12910e230b6Smaya   nir_op_ball_iequal4,
13096c5ddc4Srjs   nir_op_ball_iequal5,
13196c5ddc4Srjs   nir_op_ball_iequal8,
13296c5ddc4Srjs   nir_op_bany_fnequal16,
13310e230b6Smaya   nir_op_bany_fnequal2,
13410e230b6Smaya   nir_op_bany_fnequal3,
13510e230b6Smaya   nir_op_bany_fnequal4,
13696c5ddc4Srjs   nir_op_bany_fnequal5,
13796c5ddc4Srjs   nir_op_bany_fnequal8,
13896c5ddc4Srjs   nir_op_bany_inequal16,
13910e230b6Smaya   nir_op_bany_inequal2,
14010e230b6Smaya   nir_op_bany_inequal3,
14110e230b6Smaya   nir_op_bany_inequal4,
14296c5ddc4Srjs   nir_op_bany_inequal5,
14396c5ddc4Srjs   nir_op_bany_inequal8,
14410e230b6Smaya   nir_op_bcsel,
14510e230b6Smaya   nir_op_bfi,
14610e230b6Smaya   nir_op_bfm,
14710e230b6Smaya   nir_op_bit_count,
14810e230b6Smaya   nir_op_bitfield_insert,
14910e230b6Smaya   nir_op_bitfield_reverse,
15096c5ddc4Srjs   nir_op_bitfield_select,
15196c5ddc4Srjs   nir_op_cube_face_coord_amd,
15296c5ddc4Srjs   nir_op_cube_face_index_amd,
15396c5ddc4Srjs   nir_op_cube_r600,
15410e230b6Smaya   nir_op_extract_i16,
15510e230b6Smaya   nir_op_extract_i8,
15610e230b6Smaya   nir_op_extract_u16,
15710e230b6Smaya   nir_op_extract_u8,
15810e230b6Smaya   nir_op_f2b1,
15996c5ddc4Srjs   nir_op_f2b16,
16010e230b6Smaya   nir_op_f2b32,
16196c5ddc4Srjs   nir_op_f2b8,
16210e230b6Smaya   nir_op_f2f16,
16310e230b6Smaya   nir_op_f2f16_rtne,
16410e230b6Smaya   nir_op_f2f16_rtz,
16510e230b6Smaya   nir_op_f2f32,
16610e230b6Smaya   nir_op_f2f64,
16796c5ddc4Srjs   nir_op_f2fmp,
16810e230b6Smaya   nir_op_f2i1,
16910e230b6Smaya   nir_op_f2i16,
17010e230b6Smaya   nir_op_f2i32,
17110e230b6Smaya   nir_op_f2i64,
17210e230b6Smaya   nir_op_f2i8,
17396c5ddc4Srjs   nir_op_f2imp,
17410e230b6Smaya   nir_op_f2u1,
17510e230b6Smaya   nir_op_f2u16,
17610e230b6Smaya   nir_op_f2u32,
17710e230b6Smaya   nir_op_f2u64,
17810e230b6Smaya   nir_op_f2u8,
17996c5ddc4Srjs   nir_op_f2ump,
18010e230b6Smaya   nir_op_fabs,
18110e230b6Smaya   nir_op_fadd,
18296c5ddc4Srjs   nir_op_fall_equal16,
18310e230b6Smaya   nir_op_fall_equal2,
18410e230b6Smaya   nir_op_fall_equal3,
18510e230b6Smaya   nir_op_fall_equal4,
18696c5ddc4Srjs   nir_op_fall_equal5,
18796c5ddc4Srjs   nir_op_fall_equal8,
18896c5ddc4Srjs   nir_op_fany_nequal16,
18910e230b6Smaya   nir_op_fany_nequal2,
19010e230b6Smaya   nir_op_fany_nequal3,
19110e230b6Smaya   nir_op_fany_nequal4,
19296c5ddc4Srjs   nir_op_fany_nequal5,
19396c5ddc4Srjs   nir_op_fany_nequal8,
19410e230b6Smaya   nir_op_fceil,
19596c5ddc4Srjs   nir_op_fclamp_pos_mali,
19610e230b6Smaya   nir_op_fcos,
19796c5ddc4Srjs   nir_op_fcos_r600,
19810e230b6Smaya   nir_op_fcsel,
19996c5ddc4Srjs   nir_op_fcsel_ge,
20096c5ddc4Srjs   nir_op_fcsel_gt,
20110e230b6Smaya   nir_op_fddx,
20210e230b6Smaya   nir_op_fddx_coarse,
20310e230b6Smaya   nir_op_fddx_fine,
20496c5ddc4Srjs   nir_op_fddx_must_abs_mali,
20510e230b6Smaya   nir_op_fddy,
20610e230b6Smaya   nir_op_fddy_coarse,
20710e230b6Smaya   nir_op_fddy_fine,
20896c5ddc4Srjs   nir_op_fddy_must_abs_mali,
20910e230b6Smaya   nir_op_fdiv,
21096c5ddc4Srjs   nir_op_fdot16,
21196c5ddc4Srjs   nir_op_fdot16_replicated,
21210e230b6Smaya   nir_op_fdot2,
21396c5ddc4Srjs   nir_op_fdot2_replicated,
21410e230b6Smaya   nir_op_fdot3,
21596c5ddc4Srjs   nir_op_fdot3_replicated,
21610e230b6Smaya   nir_op_fdot4,
21796c5ddc4Srjs   nir_op_fdot4_replicated,
21896c5ddc4Srjs   nir_op_fdot5,
21996c5ddc4Srjs   nir_op_fdot5_replicated,
22096c5ddc4Srjs   nir_op_fdot8,
22196c5ddc4Srjs   nir_op_fdot8_replicated,
22210e230b6Smaya   nir_op_fdph,
22310e230b6Smaya   nir_op_fdph_replicated,
22410e230b6Smaya   nir_op_feq,
22596c5ddc4Srjs   nir_op_feq16,
22610e230b6Smaya   nir_op_feq32,
22796c5ddc4Srjs   nir_op_feq8,
22810e230b6Smaya   nir_op_fexp2,
22910e230b6Smaya   nir_op_ffloor,
23010e230b6Smaya   nir_op_ffma,
23110e230b6Smaya   nir_op_ffract,
23210e230b6Smaya   nir_op_fge,
23396c5ddc4Srjs   nir_op_fge16,
23410e230b6Smaya   nir_op_fge32,
23596c5ddc4Srjs   nir_op_fge8,
23610e230b6Smaya   nir_op_find_lsb,
23796c5ddc4Srjs   nir_op_fisfinite,
23896c5ddc4Srjs   nir_op_fisfinite32,
23996c5ddc4Srjs   nir_op_fisnormal,
24010e230b6Smaya   nir_op_flog2,
24110e230b6Smaya   nir_op_flrp,
24210e230b6Smaya   nir_op_flt,
24396c5ddc4Srjs   nir_op_flt16,
24410e230b6Smaya   nir_op_flt32,
24596c5ddc4Srjs   nir_op_flt8,
24610e230b6Smaya   nir_op_fmax,
24710e230b6Smaya   nir_op_fmin,
24810e230b6Smaya   nir_op_fmod,
24910e230b6Smaya   nir_op_fmul,
25010e230b6Smaya   nir_op_fneg,
25196c5ddc4Srjs   nir_op_fneu,
25296c5ddc4Srjs   nir_op_fneu16,
25396c5ddc4Srjs   nir_op_fneu32,
25496c5ddc4Srjs   nir_op_fneu8,
25510e230b6Smaya   nir_op_fpow,
25610e230b6Smaya   nir_op_fquantize2f16,
25710e230b6Smaya   nir_op_frcp,
25810e230b6Smaya   nir_op_frem,
25910e230b6Smaya   nir_op_frexp_exp,
26010e230b6Smaya   nir_op_frexp_sig,
26110e230b6Smaya   nir_op_fround_even,
26210e230b6Smaya   nir_op_frsq,
26310e230b6Smaya   nir_op_fsat,
26496c5ddc4Srjs   nir_op_fsat_signed_mali,
26510e230b6Smaya   nir_op_fsign,
26610e230b6Smaya   nir_op_fsin,
26796c5ddc4Srjs   nir_op_fsin_agx,
26896c5ddc4Srjs   nir_op_fsin_r600,
26910e230b6Smaya   nir_op_fsqrt,
27010e230b6Smaya   nir_op_fsub,
27196c5ddc4Srjs   nir_op_fsum2,
27296c5ddc4Srjs   nir_op_fsum3,
27396c5ddc4Srjs   nir_op_fsum4,
27410e230b6Smaya   nir_op_ftrunc,
27510e230b6Smaya   nir_op_i2b1,
27696c5ddc4Srjs   nir_op_i2b16,
27710e230b6Smaya   nir_op_i2b32,
27896c5ddc4Srjs   nir_op_i2b8,
27910e230b6Smaya   nir_op_i2f16,
28010e230b6Smaya   nir_op_i2f32,
28110e230b6Smaya   nir_op_i2f64,
28296c5ddc4Srjs   nir_op_i2fmp,
28310e230b6Smaya   nir_op_i2i1,
28410e230b6Smaya   nir_op_i2i16,
28510e230b6Smaya   nir_op_i2i32,
28610e230b6Smaya   nir_op_i2i64,
28710e230b6Smaya   nir_op_i2i8,
28896c5ddc4Srjs   nir_op_i2imp,
28996c5ddc4Srjs   nir_op_i32csel_ge,
29096c5ddc4Srjs   nir_op_i32csel_gt,
29110e230b6Smaya   nir_op_iabs,
29210e230b6Smaya   nir_op_iadd,
29396c5ddc4Srjs   nir_op_iadd3,
29410e230b6Smaya   nir_op_iadd_sat,
29510e230b6Smaya   nir_op_iand,
29610e230b6Smaya   nir_op_ibfe,
29710e230b6Smaya   nir_op_ibitfield_extract,
29810e230b6Smaya   nir_op_idiv,
29910e230b6Smaya   nir_op_ieq,
30096c5ddc4Srjs   nir_op_ieq16,
30110e230b6Smaya   nir_op_ieq32,
30296c5ddc4Srjs   nir_op_ieq8,
30310e230b6Smaya   nir_op_ifind_msb,
30496c5ddc4Srjs   nir_op_ifind_msb_rev,
30510e230b6Smaya   nir_op_ige,
30696c5ddc4Srjs   nir_op_ige16,
30710e230b6Smaya   nir_op_ige32,
30896c5ddc4Srjs   nir_op_ige8,
30910e230b6Smaya   nir_op_ihadd,
31010e230b6Smaya   nir_op_ilt,
31196c5ddc4Srjs   nir_op_ilt16,
31210e230b6Smaya   nir_op_ilt32,
31396c5ddc4Srjs   nir_op_ilt8,
31496c5ddc4Srjs   nir_op_imad24_ir3,
31596c5ddc4Srjs   nir_op_imadsh_mix16,
31610e230b6Smaya   nir_op_imax,
31710e230b6Smaya   nir_op_imin,
31810e230b6Smaya   nir_op_imod,
31910e230b6Smaya   nir_op_imul,
32096c5ddc4Srjs   nir_op_imul24,
32196c5ddc4Srjs   nir_op_imul24_relaxed,
32210e230b6Smaya   nir_op_imul_2x32_64,
32396c5ddc4Srjs   nir_op_imul_32x16,
32410e230b6Smaya   nir_op_imul_high,
32510e230b6Smaya   nir_op_ine,
32696c5ddc4Srjs   nir_op_ine16,
32710e230b6Smaya   nir_op_ine32,
32896c5ddc4Srjs   nir_op_ine8,
32910e230b6Smaya   nir_op_ineg,
33010e230b6Smaya   nir_op_inot,
33196c5ddc4Srjs   nir_op_insert_u16,
33296c5ddc4Srjs   nir_op_insert_u8,
33310e230b6Smaya   nir_op_ior,
33410e230b6Smaya   nir_op_irem,
33510e230b6Smaya   nir_op_irhadd,
33610e230b6Smaya   nir_op_ishl,
33710e230b6Smaya   nir_op_ishr,
33810e230b6Smaya   nir_op_isign,
33910e230b6Smaya   nir_op_isub,
34010e230b6Smaya   nir_op_isub_sat,
34110e230b6Smaya   nir_op_ixor,
34210e230b6Smaya   nir_op_ldexp,
34396c5ddc4Srjs   nir_op_mov,
34410e230b6Smaya   nir_op_pack_32_2x16,
34510e230b6Smaya   nir_op_pack_32_2x16_split,
34696c5ddc4Srjs   nir_op_pack_32_4x8,
34796c5ddc4Srjs   nir_op_pack_32_4x8_split,
34810e230b6Smaya   nir_op_pack_64_2x32,
34910e230b6Smaya   nir_op_pack_64_2x32_split,
35010e230b6Smaya   nir_op_pack_64_4x16,
35196c5ddc4Srjs   nir_op_pack_double_2x32_dxil,
35210e230b6Smaya   nir_op_pack_half_2x16,
35310e230b6Smaya   nir_op_pack_half_2x16_split,
35410e230b6Smaya   nir_op_pack_snorm_2x16,
35510e230b6Smaya   nir_op_pack_snorm_4x8,
35610e230b6Smaya   nir_op_pack_unorm_2x16,
35710e230b6Smaya   nir_op_pack_unorm_4x8,
35810e230b6Smaya   nir_op_pack_uvec2_to_uint,
35910e230b6Smaya   nir_op_pack_uvec4_to_uint,
36096c5ddc4Srjs   nir_op_sad_u8x4,
36196c5ddc4Srjs   nir_op_sdot_2x16_iadd,
36296c5ddc4Srjs   nir_op_sdot_2x16_iadd_sat,
36396c5ddc4Srjs   nir_op_sdot_4x8_iadd,
36496c5ddc4Srjs   nir_op_sdot_4x8_iadd_sat,
36510e230b6Smaya   nir_op_seq,
36610e230b6Smaya   nir_op_sge,
36710e230b6Smaya   nir_op_slt,
36810e230b6Smaya   nir_op_sne,
36996c5ddc4Srjs   nir_op_sudot_4x8_iadd,
37096c5ddc4Srjs   nir_op_sudot_4x8_iadd_sat,
37110e230b6Smaya   nir_op_u2f16,
37210e230b6Smaya   nir_op_u2f32,
37310e230b6Smaya   nir_op_u2f64,
37496c5ddc4Srjs   nir_op_u2fmp,
37510e230b6Smaya   nir_op_u2u1,
37610e230b6Smaya   nir_op_u2u16,
37710e230b6Smaya   nir_op_u2u32,
37810e230b6Smaya   nir_op_u2u64,
37910e230b6Smaya   nir_op_u2u8,
38096c5ddc4Srjs   nir_op_uabs_isub,
38196c5ddc4Srjs   nir_op_uabs_usub,
38210e230b6Smaya   nir_op_uadd_carry,
38310e230b6Smaya   nir_op_uadd_sat,
38410e230b6Smaya   nir_op_ubfe,
38510e230b6Smaya   nir_op_ubitfield_extract,
38696c5ddc4Srjs   nir_op_uclz,
38710e230b6Smaya   nir_op_udiv,
38896c5ddc4Srjs   nir_op_udot_2x16_uadd,
38996c5ddc4Srjs   nir_op_udot_2x16_uadd_sat,
39096c5ddc4Srjs   nir_op_udot_4x8_uadd,
39196c5ddc4Srjs   nir_op_udot_4x8_uadd_sat,
39210e230b6Smaya   nir_op_ufind_msb,
39396c5ddc4Srjs   nir_op_ufind_msb_rev,
39410e230b6Smaya   nir_op_uge,
39596c5ddc4Srjs   nir_op_uge16,
39610e230b6Smaya   nir_op_uge32,
39796c5ddc4Srjs   nir_op_uge8,
39810e230b6Smaya   nir_op_uhadd,
39910e230b6Smaya   nir_op_ult,
40096c5ddc4Srjs   nir_op_ult16,
40110e230b6Smaya   nir_op_ult32,
40296c5ddc4Srjs   nir_op_ult8,
40396c5ddc4Srjs   nir_op_umad24,
40496c5ddc4Srjs   nir_op_umad24_relaxed,
40510e230b6Smaya   nir_op_umax,
40696c5ddc4Srjs   nir_op_umax_4x8_vc4,
40710e230b6Smaya   nir_op_umin,
40896c5ddc4Srjs   nir_op_umin_4x8_vc4,
40910e230b6Smaya   nir_op_umod,
41096c5ddc4Srjs   nir_op_umul24,
41196c5ddc4Srjs   nir_op_umul24_relaxed,
41210e230b6Smaya   nir_op_umul_2x32_64,
41396c5ddc4Srjs   nir_op_umul_32x16,
41410e230b6Smaya   nir_op_umul_high,
41596c5ddc4Srjs   nir_op_umul_low,
41696c5ddc4Srjs   nir_op_umul_unorm_4x8_vc4,
41710e230b6Smaya   nir_op_unpack_32_2x16,
41810e230b6Smaya   nir_op_unpack_32_2x16_split_x,
41910e230b6Smaya   nir_op_unpack_32_2x16_split_y,
42096c5ddc4Srjs   nir_op_unpack_32_4x8,
42110e230b6Smaya   nir_op_unpack_64_2x32,
42210e230b6Smaya   nir_op_unpack_64_2x32_split_x,
42310e230b6Smaya   nir_op_unpack_64_2x32_split_y,
42410e230b6Smaya   nir_op_unpack_64_4x16,
42596c5ddc4Srjs   nir_op_unpack_double_2x32_dxil,
42610e230b6Smaya   nir_op_unpack_half_2x16,
42796c5ddc4Srjs   nir_op_unpack_half_2x16_flush_to_zero,
42810e230b6Smaya   nir_op_unpack_half_2x16_split_x,
42996c5ddc4Srjs   nir_op_unpack_half_2x16_split_x_flush_to_zero,
43010e230b6Smaya   nir_op_unpack_half_2x16_split_y,
43196c5ddc4Srjs   nir_op_unpack_half_2x16_split_y_flush_to_zero,
43210e230b6Smaya   nir_op_unpack_snorm_2x16,
43310e230b6Smaya   nir_op_unpack_snorm_4x8,
43410e230b6Smaya   nir_op_unpack_unorm_2x16,
43510e230b6Smaya   nir_op_unpack_unorm_4x8,
43610e230b6Smaya   nir_op_urhadd,
43796c5ddc4Srjs   nir_op_urol,
43896c5ddc4Srjs   nir_op_uror,
43996c5ddc4Srjs   nir_op_usadd_4x8_vc4,
44010e230b6Smaya   nir_op_ushr,
44196c5ddc4Srjs   nir_op_ussub_4x8_vc4,
44210e230b6Smaya   nir_op_usub_borrow,
44310e230b6Smaya   nir_op_usub_sat,
44496c5ddc4Srjs   nir_op_vec16,
44510e230b6Smaya   nir_op_vec2,
44610e230b6Smaya   nir_op_vec3,
44710e230b6Smaya   nir_op_vec4,
44896c5ddc4Srjs   nir_op_vec5,
44996c5ddc4Srjs   nir_op_vec8,
45096c5ddc4Srjs   nir_last_opcode = nir_op_vec8,
45110e230b6Smaya   nir_num_opcodes = nir_last_opcode + 1
45210e230b6Smaya} nir_op;
45310e230b6Smaya
45410e230b6Smaya#endif /* _NIR_OPCODES_ */
455