Lines Matching refs:src1

28 bi_pack_fma_arshift_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
30 assert((1 << src1) & 0x8);
35 return 0x335018 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9);
39 bi_pack_fma_arshift_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
41 assert((1 << src1) & 0x8);
54 return 0x334818 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
62 return 0x335818 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
69 bi_pack_fma_arshift_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
71 assert((1 << src1) & 0x8);
84 return 0x334018 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
86 return 0x335818 | (src0 << 0) | (src1 << 3) | (src2 << 6);
93 bi_pack_fma_arshift_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
103 return 0x33e000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10) | (result_word << 11);
107 bi_pack_fma_atom_c_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
110 assert((1 << src1) & 0xf3);
116 return 0x2f4000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (atom_opc << 9);
120 bi_pack_fma_atom_c_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
123 assert((1 << src1) & 0xf3);
129 return 0x2f0000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (atom_opc << 9);
133 bi_pack_fma_atom_c1_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
136 assert((1 << src1) & 0xf3);
141 return 0x2f5e00 | (src0 << 0) | (src1 << 3) | (atom_opc << 6);
145 bi_pack_fma_atom_c1_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
148 assert((1 << src1) & 0xf3);
153 return 0x2f1e00 | (src0 << 0) | (src1 << 3) | (atom_opc << 6);
157 bi_pack_fma_atom_c1_return_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
160 assert((1 << src1) & 0xf3);
165 return 0x2f7e00 | (src0 << 0) | (src1 << 3) | (atom_opc << 6);
169 bi_pack_fma_atom_c1_return_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
172 assert((1 << src1) & 0xf3);
177 return 0x2f3e00 | (src0 << 0) | (src1 << 3) | (atom_opc << 6);
181 bi_pack_fma_atom_c_return_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
184 assert((1 << src1) & 0xf3);
190 return 0x2f6000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (atom_opc << 9);
194 bi_pack_fma_atom_c_return_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
197 assert((1 << src1) & 0xf3);
203 return 0x2f2000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (atom_opc << 9);
207 bi_pack_fma_atom_post_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
213 return 0x6ee400 | (src0 << 0) | (src1 << 3) | (atom_opc << 6);
217 bi_pack_fma_atom_post_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
223 return 0x6ee000 | (src0 << 0) | (src1 << 3) | (atom_opc << 6);
227 bi_pack_fma_atom_pre_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
233 return 0x6ec000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (atom_opc << 9);
237 bi_pack_fma_bitrev_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
244 bi_pack_fma_clz_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
252 bi_pack_fma_clz_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
264 bi_pack_fma_clz_v4u8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
272 bi_pack_fma_csel_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
277 { unsigned temp = src0; src0 = src1; src1 = temp; }
293 return 0x2e0000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
297 bi_pack_fma_csel_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
312 return 0x2e0000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
316 bi_pack_fma_csel_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
323 { unsigned temp = src0; src0 = src1; src1 = temp; }
333 return 0x2e4000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
337 bi_pack_fma_csel_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
344 { unsigned temp = src0; src0 = src1; src1 = temp; }
354 return 0x2e6000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
358 bi_pack_fma_csel_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
363 { unsigned temp = src0; src0 = src1; src1 = temp; }
379 return 0x6e0000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
383 bi_pack_fma_csel_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
398 return 0x6e0000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
402 bi_pack_fma_csel_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
409 { unsigned temp = src0; src0 = src1; src1 = temp; }
419 return 0x6e4000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
423 bi_pack_fma_csel_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
430 { unsigned temp = src0; src0 = src1; src1 = temp; }
440 return 0x6e6000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (derived_12 << 12);
444 bi_pack_fma_cubeface1(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
457 return 0x706800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
461 bi_pack_fma_dtsel_imm(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
471 bi_pack_fma_f16_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
481 bi_pack_fma_fadd_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
504 { unsigned temp = src0; src0 = src1; src1 = temp; }
521 return 0x2c0000 | (src0 << 0) | (src1 << 3) | (abs1 << 6) | (neg0 << 7) | (neg1 << 8) | (abs0 << 12) | (round << 13) | (clamp << 15) | (derived_9 << 9);
525 bi_pack_fma_fadd_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
547 if (((abs0 == 0) && (src0 > src1)) || ((abs1 == 1) && (src0 <= src1))) {
548 { unsigned temp = src0; src0 = src1; src1 = temp; }
555 if (((abs0 == 1) && (abs1 == 0) && (src0 > src1)) || ((abs0 == 0) && (abs1 == 0) && (src0 <= src1))) derived_6 = 0;
556 else if (((abs0 == 1) && (abs1 == 1) && (src0 > src1)) || ((abs0 == 1) && (abs1 == 0) && (src0 <= src1))) derived_6 = 1;
559 return 0x6c0000 | (src0 << 0) | (src1 << 3) | (neg0 << 7) | (neg1 << 8) | (swz0 << 9) | (swz1 << 11) | (round << 13) | (clamp << 15) | (derived_6 << 6);
563 bi_pack_fma_fadd_lscale_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
573 return 0x70f400 | (src0 << 0) | (src1 << 3) | (abs0 << 6) | (neg0 << 7) | (abs1 << 8) | (neg1 << 9);
577 bi_pack_fma_fcmp_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
602 { unsigned temp = src0; src0 = src1; src1 = temp; }
623 return 0x240000 | (src0 << 0) | (src1 << 3) | (abs1 << 6) | (neg0 << 7) | (neg1 << 8) | (abs0 << 12) | (cmpf << 13) | (result_type << 16) | (derived_9 << 9);
627 bi_pack_fma_fcmp_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
651 if (((abs0 == 0) && (src0 > src1)) || ((abs1 == 1) && (src0 <= src1))) {
652 { unsigned temp = src0; src0 = src1; src1 = temp; }
663 if (((abs0 == 1) && (abs1 == 0) && (src0 > src1)) || ((abs0 == 0) && (abs1 == 0) && (src0 <= src1))) derived_6 = 0;
664 else if (((abs0 == 1) && (abs1 == 1) && (src0 > src1)) || ((abs0 == 1) && (abs1 == 0) && (src0 <= src1))) derived_6 = 1;
678 return 0x640000 | (src0 << 0) | (src1 << 3) | (neg0 << 7) | (neg1 << 8) | (swz0 << 9) | (swz1 << 11) | (result_type << 16) | (derived_6 << 6) | (derived_13 << 13);
682 bi_pack_fma_flshift_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
690 return 0x33f800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10);
694 bi_pack_fma_fma_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
721 { unsigned temp = src0; src0 = src1; src1 = temp; }
743 return 0x0 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (abs0 << 12) | (round << 13) | (clamp << 15) | (abs1 << 19) | (neg2 << 18) | (abs2 << 20) | (derived_9 << 9) | (derived_17 << 17);
747 bi_pack_fma_fma_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
776 return 0x400000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (swz0 << 9) | (swz1 << 11) | (round << 13) | (clamp << 15) | (neg2 << 18) | (swz2 << 19) | (derived_17 << 17);
780 bi_pack_fma_fma_rscale_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
814 return 0x280000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (abs0 << 15) | (neg2 << 17) | (derived_16 << 16) | (derived_12 << 12);
818 bi_pack_fma_fma_rscale_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
851 return 0x680000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (abs0 << 15) | (neg2 << 17) | (derived_16 << 16) | (derived_12 << 12);
855 bi_pack_fma_fmul_cslice(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
865 return 0x70d000 | (src0 << 0) | (src1 << 3) | (lane0 << 6) | (abs0 << 7) | (neg0 << 8);
869 bi_pack_fma_fmul_slice_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
872 return 0x70cb40 | (src0 << 0) | (src1 << 3);
876 bi_pack_fma_frexpe_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
898 bi_pack_fma_frexpe_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
920 bi_pack_fma_frexpm_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
944 bi_pack_fma_frexpm_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
968 bi_pack_fma_fround_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
997 bi_pack_fma_fround_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1026 bi_pack_fma_frshift_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1034 return 0x33f000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10);
1038 bi_pack_fma_iaddc_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1041 return 0x27fc00 | (src0 << 0) | (src1 << 3) | (src2 << 6);
1045 bi_pack_fma_idp_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1051 return 0x73e8c0 | (src0 << 0) | (src1 << 3) | (sign0 << 9) | (sign1 << 10);
1055 bi_pack_fma_imul_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1064 return 0x73c0c0 | (src0 << 0) | (src1 << 3);
1076 return 0x73c8c0 | (src0 << 0) | (src1 << 3) | (derived_9 << 9) | (derived_10 << 10);
1090 return 0x73b0c0 | (src0 << 0) | (src1 << 3) | (derived_9 << 9) | (derived_11 << 11);
1097 bi_pack_fma_imul_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1107 return 0x7240c0 | (src0 << 0) | (src1 << 3) | (swz0 << 9) | (swz1 << 11);
1111 bi_pack_fma_imul_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1122 return 0x73e0c0 | (src0 << 0) | (src1 << 3);
1131 return 0x7380c0 | (src0 << 0) | (src1 << 3) | (derived_9 << 9);
1138 bi_pack_fma_imuld(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1141 assert((1 << src1) & 0x33);
1144 return 0x70f100 | (src0 << 0) | (src1 << 3) | (threads << 6);
1148 bi_pack_fma_isubb_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1151 return 0x27fe00 | (src0 << 0) | (src1 << 3) | (src2 << 6);
1155 bi_pack_fma_jump_ex(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1161 return 0x2eb000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (test_mode << 9) | (stack_mode << 10);
1165 bi_pack_fma_lrot_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1175 return 0x33b000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10) | (result_word << 11);
1179 bi_pack_fma_lshift_and_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1190 return 0x311000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9) | (not1 << 14) | (not_result << 15);
1194 bi_pack_fma_lshift_and_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1213 return 0x310800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1221 return 0x311800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1228 bi_pack_fma_lshift_and_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1247 return 0x310000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1249 return 0x311800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15);
1256 bi_pack_fma_lshift_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1266 return 0x33c000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10) | (result_word << 11);
1270 bi_pack_fma_lshift_or_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1281 return 0x313000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9) | (not1 << 14) | (not_result << 15);
1285 bi_pack_fma_lshift_or_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1304 return 0x312800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1312 return 0x313800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1319 bi_pack_fma_lshift_or_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1338 return 0x312000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1340 return 0x313800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15);
1347 bi_pack_fma_lshift_xor_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1355 return 0x325000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9) | (not_result << 13);
1359 bi_pack_fma_lshift_xor_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1375 return 0x324800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13) | (derived_9 << 9);
1383 return 0x325800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13) | (derived_9 << 9);
1390 bi_pack_fma_lshift_xor_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1406 return 0x324000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13) | (derived_9 << 9);
1408 return 0x325800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13);
1415 bi_pack_fma_mkvec_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1425 return 0x70f000 | (src0 << 0) | (src1 << 3) | (lane0 << 6) | (lane1 << 7);
1429 bi_pack_fma_mkvec_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1447 return 0x710000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (lane0 << 12) | (lane1 << 13) | (lane2 << 14) | (lane3 << 15);
1451 bi_pack_fma_mov_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1458 bi_pack_fma_nop(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1465 bi_pack_fma_popcount_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1472 bi_pack_fma_quiet_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1479 bi_pack_fma_quiet_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1489 bi_pack_fma_rrot_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1499 return 0x33a000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10) | (result_word << 11);
1503 bi_pack_fma_rshift_and_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1514 return 0x301000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9) | (not1 << 14) | (not_result << 15);
1518 bi_pack_fma_rshift_and_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1537 return 0x300800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1545 return 0x301800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1552 bi_pack_fma_rshift_and_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1571 return 0x300000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1573 return 0x301800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15);
1580 bi_pack_fma_rshift_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1590 return 0x33d000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (bytes2 << 9) | (lane2 << 10) | (result_word << 11);
1594 bi_pack_fma_rshift_or_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1605 return 0x303000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9) | (not1 << 14) | (not_result << 15);
1609 bi_pack_fma_rshift_or_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1628 return 0x302800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1636 return 0x303800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1643 bi_pack_fma_rshift_or_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1662 return 0x302000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15) | (derived_9 << 9);
1664 return 0x303800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not1 << 14) | (not_result << 15);
1671 bi_pack_fma_rshift_xor_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1679 return 0x321000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (lane2 << 9) | (not_result << 13);
1683 bi_pack_fma_rshift_xor_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1699 return 0x320800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13) | (derived_9 << 9);
1707 return 0x321800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13) | (derived_9 << 9);
1714 bi_pack_fma_rshift_xor_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1730 return 0x320000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13) | (derived_9 << 9);
1732 return 0x321800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (not_result << 13);
1739 bi_pack_fma_s16_to_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1749 bi_pack_fma_s8_to_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1759 bi_pack_fma_seg_add(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1771 bi_pack_fma_shaddxl_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1775 return 0x70e600 | (src0 << 0) | (src1 << 3) | (shift << 6);
1779 bi_pack_fma_shaddxl_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1787 return 0x70e800 | (src0 << 0) | (src1 << 3) | (lane1 << 9) | (shift << 6);
1791 bi_pack_fma_shaddxl_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1799 return 0x70e000 | (src0 << 0) | (src1 << 3) | (lane1 << 9) | (shift << 6);
1803 bi_pack_fma_u16_to_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1813 bi_pack_fma_u8_to_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1823 bi_pack_fma_v2f32_to_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1847 return 0x6e8000 | (src0 << 0) | (src1 << 3) | (clamp << 8) | (round << 10) | (derived_6 << 6) | (derived_7 << 7);
1851 bi_pack_fma_vn_asst1_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1859 return 0x6eb000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (h << 9) | (l << 10) | (neg2 << 11);
1863 bi_pack_fma_vn_asst1_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1867 return 0x27c000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (src3 << 9) | (neg2 << 12);
1871 bi_pack_add_acmpstore_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1875 return 0x648c0 | (src0 << 0) | (src1 << 3) | (seg << 9);
1879 bi_pack_add_acmpstore_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1883 return 0x64900 | (src0 << 0) | (src1 << 3) | (seg << 9);
1887 bi_pack_add_acmpxchg_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1891 return 0x644c0 | (src0 << 0) | (src1 << 3) | (seg << 9);
1895 bi_pack_add_acmpxchg_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1899 return 0x64500 | (src0 << 0) | (src1 << 3) | (seg << 9);
1903 bi_pack_add_atest(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1906 assert((1 << src1) & 0xf7);
1911 return 0xc8f00 | (src0 << 0) | (src1 << 3) | (widen1 << 6);
1915 bi_pack_add_atom_cx(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1918 return 0xd7400 | (src0 << 0) | (src1 << 3) | (src2 << 6);
1922 bi_pack_add_axchg_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1926 return 0x640c0 | (src0 << 0) | (src1 << 3) | (seg << 9);
1930 bi_pack_add_axchg_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1934 return 0x64100 | (src0 << 0) | (src1 << 3) | (seg << 9);
1938 bi_pack_add_barrier(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1945 bi_pack_add_blend(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1947 assert((1 << src1) & 0xf7);
1949 return 0xca800 | (src0 << 0) | (src1 << 3) | (src2 << 6);
1953 bi_pack_add_branch_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
1966 if (((widen0 == 1) && (widen1 == 2)) || ((widen0 == widen1) && (src0 > src1) && ((cmpf == 0) || (cmpf == 1) || (cmpf == 4))) || ((widen0 == widen1) && (src0 < src1) && ((cmpf == 3) || (cmpf == 2) || (cmpf == 5)))) {
1967 { unsigned temp = src0; src0 = src1; src1 = temp; }
1983 if ((widen0 == widen1) && (src0 == src1) && ((cmpf == 1) || (cmpf == 4))) derived_9 = 4;
1984 else if (((widen0 == 2) && (widen1 == 1) && ((cmpf == 0) || (cmpf == 3))) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 0)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 3))) derived_9 = 5;
1985 else if (((widen0 == 2) && (widen1 == 1) && ((cmpf == 1) || (cmpf == 2))) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 1)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 2))) derived_9 = 6;
1986 else if (((widen0 == 2) && (widen1 == 1) && ((cmpf == 4) || (cmpf == 5))) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 4)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 5)) || ((widen0 == widen1) && (src0 == src1) && (cmpf == 0))) derived_9 = 7;
1989 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
1993 bi_pack_add_branch_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2006 if (((widen0 != 0) && (widen1 == 0)) || ((widen0 == 0) && (widen1 == 0) && (src0 > src1) && ((cmpf == 0) || (cmpf == 1) || (cmpf == 4))) || ((widen0 == 0) && (widen1 == 0) && (src0 < src1) && ((cmpf == 3) || (cmpf == 2) || (cmpf == 5)))) {
2007 { unsigned temp = src0; src0 = src1; src1 = temp; }
2025 else if ((widen0 == 0) && (widen1 == 0) && (src0 == src1) && ((cmpf == 1) || (cmpf == 4))) derived_9 = 4;
2026 else if (((widen0 == 0) && (widen1 != 0) && (cmpf == 0)) || ((widen0 == 0) && (widen1 == 0) && (src0 < src1) && (cmpf == 0)) || ((widen0 == 0) && (widen1 == 0) && (src0 >= src1) && (cmpf == 3))) derived_9 = 5;
2027 else if (((widen0 == 0) && (widen1 != 0) && (cmpf == 1)) || ((widen0 == 0) && (widen1 == 0) && (src0 < src1) && (cmpf == 1)) || ((widen0 == 0) && (widen1 == 0) && (src0 >= src1) && (cmpf == 2))) derived_9 = 6;
2028 else if (((widen0 == 0) && (widen1 != 0) && (cmpf == 4)) || ((widen0 == 0) && (widen1 == 0) && (src0 < src1) && (cmpf == 4)) || ((widen0 == 0) && (widen1 == 0) && (src0 >= src1) && (cmpf == 5)) || ((widen0 == 0) && (widen1 == 0) && (src0 == src1) && (cmpf == 0))) derived_9 = 7;
2031 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2035 bi_pack_add_branch_i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2050 if (((widen0 == 1) && (widen1 == 2)) || ((widen0 == widen1) && (src0 > src1) && (cmpf == 0)) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 1))) {
2051 { unsigned temp = src0; src0 = src1; src1 = temp; }
2063 if ((widen0 == widen1) && (src0 == src1) && (cmpf == 0)) derived_9 = 1;
2064 else if (((widen0 == 2) && (widen1 == 1)) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 0)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 1))) derived_9 = 4;
2067 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2071 bi_pack_add_branch_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2086 if (((src0 > src1) && (cmpf == 0)) || ((src0 < src1) && (cmpf == 1))) {
2087 { unsigned temp = src0; src0 = src1; src1 = temp; }
2096 if ((src0 == src1) && (cmpf == 0)) derived_9 = 1;
2097 else if (((src0 < src1) && (cmpf == 0)) || ((src0 >= src1) && (cmpf == 1))) derived_9 = 4;
2100 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2104 bi_pack_add_branch_s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2119 if (((widen0 == 1) && (widen1 == 2)) || ((widen0 == widen1) && (src0 > src1))) {
2120 { unsigned temp = src0; src0 = src1; src1 = temp; }
2135 if (((widen0 == 2) && (widen1 == 1) && (cmpf == 2)) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 2))) derived_9 = 0;
2136 else if (((widen0 == 2) && (widen1 == 1) && (cmpf == 3)) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 3)) || ((widen0 == widen1) && (src0 == src1) && ((cmpf == 3) || (cmpf == 1)))) derived_9 = 1;
2137 else if (((widen0 == 2) && (widen1 == 1) && (cmpf == 1)) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 1))) derived_9 = 2;
2138 else if (((widen0 == 2) && (widen1 == 1) && (cmpf == 0)) || ((widen0 == widen1) && (src0 < src1) && (cmpf == 0))) derived_9 = 3;
2139 else if ((widen0 == widen1) && (src0 == src1) && ((cmpf == 2) || (cmpf == 0))) derived_9 = 4;
2142 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2146 bi_pack_add_branch_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2161 if (src0 > src1) {
2162 { unsigned temp = src0; src0 = src1; src1 = temp; }
2175 if ((src0 < src1) && (cmpf == 2)) derived_9 = 0;
2176 else if (((src0 < src1) && (cmpf == 3)) || ((src0 == src1) && ((cmpf == 3) || (cmpf == 1)))) derived_9 = 1;
2177 else if ((src0 < src1) && (cmpf == 1)) derived_9 = 2;
2178 else if ((src0 < src1) && (cmpf == 0)) derived_9 = 3;
2179 else if ((src0 == src1) && ((cmpf == 2) || (cmpf == 0))) derived_9 = 4;
2182 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2186 bi_pack_add_branch_u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2201 if (((widen0 == 1) && (widen1 == 2)) || ((widen0 == widen1) && (src0 < src1))) {
2202 { unsigned temp = src0; src0 = src1; src1 = temp; }
2217 if (((widen0 == 2) && (widen1 == 1) && (cmpf == 2)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 2))) derived_9 = 0;
2218 else if (((widen0 == 2) && (widen1 == 1) && (cmpf == 3)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 3))) derived_9 = 1;
2219 else if (((widen0 == 2) && (widen1 == 1) && (cmpf == 1)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 1))) derived_9 = 2;
2220 else if (((widen0 == 2) && (widen1 == 1) && (cmpf == 0)) || ((widen0 == widen1) && (src0 >= src1) && (cmpf == 0))) derived_9 = 3;
2223 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2227 bi_pack_add_branch_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2242 if (src0 < src1) {
2243 { unsigned temp = src0; src0 = src1; src1 = temp; }
2256 if ((src0 >= src1) && (cmpf == 2)) derived_9 = 0;
2257 else if ((src0 >= src1) && (cmpf == 3)) derived_9 = 1;
2258 else if ((src0 >= src1) && (cmpf == 1)) derived_9 = 2;
2259 else if ((src0 >= src1) && (cmpf == 0)) derived_9 = 3;
2262 return 0x68000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_12 << 12) | (derived_9 << 9);
2266 bi_pack_add_branchc_i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2268 assert((1 << src1) & 0xf7);
2285 return 0x6f030 | (src0 << 0) | (src1 << 6) | (combine << 10) | (derived_9 << 9) | (derived_3 << 3);
2289 bi_pack_add_branchc_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2291 assert((1 << src1) & 0xf7);
2294 return 0x6f238 | (src0 << 0) | (src1 << 6) | (combine << 10);
2298 bi_pack_add_branchz_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2300 assert((1 << src1) & 0xf7);
2323 return 0x6f000 | (src0 << 0) | (src1 << 6) | (derived_4 << 4) | (derived_3 << 3) | (derived_9 << 9);
2327 bi_pack_add_branchz_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2329 assert((1 << src1) & 0xf7);
2343 return 0x6f000 | (src0 << 0) | (src1 << 6) | (derived_3 << 3) | (derived_9 << 9);
2347 bi_pack_add_branchz_i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2349 assert((1 << src1) & 0xf7);
2368 return 0x6f800 | (src0 << 0) | (src1 << 6) | (derived_4 << 4) | (derived_3 << 3);
2372 bi_pack_add_branchz_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2374 assert((1 << src1) & 0xf7);
2384 return 0x6f800 | (src0 << 0) | (src1 << 6) | (derived_3 << 3);
2388 bi_pack_add_branchz_s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2390 assert((1 << src1) & 0xf7);
2411 return 0x6f008 | (src0 << 0) | (src1 << 6) | (derived_4 << 4) | (derived_9 << 9);
2415 bi_pack_add_branchz_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2417 assert((1 << src1) & 0xf7);
2429 return 0x6f008 | (src0 << 0) | (src1 << 6) | (derived_9 << 9);
2433 bi_pack_add_branchz_u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2435 assert((1 << src1) & 0xf7);
2456 return 0x6f000 | (src0 << 0) | (src1 << 6) | (derived_4 << 4) | (derived_9 << 9);
2460 bi_pack_add_branchz_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2462 assert((1 << src1) & 0xf7);
2474 return 0x6f000 | (src0 << 0) | (src1 << 6) | (derived_9 << 9);
2478 bi_pack_add_branch_diverg(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2485 bi_pack_add_branch_lowbits_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2487 assert((1 << src1) & 0xf7);
2488 return 0x6fa38 | (src0 << 0) | (src1 << 6);
2492 bi_pack_add_branch_no_diverg(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2499 bi_pack_add_clper_v6_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2502 return 0x3f0c0 | (src0 << 0) | (src1 << 3);
2506 bi_pack_add_clper_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2515 return 0x7c000 | (src0 << 0) | (src1 << 3) | (lane_op << 6) | (subgroup << 8) | (inactive_result << 10);
2519 bi_pack_add_cubeface2(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2526 bi_pack_add_cube_ssel(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2537 return 0x3e000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
2541 bi_pack_add_cube_tsel(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2552 return 0x3e400 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
2556 bi_pack_add_discard_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2569 { unsigned temp = src0; src0 = src1; src1 = temp; }
2590 return 0xc8800 | (src0 << 0) | (src1 << 3) | (derived_6 << 6) | (derived_8 << 8);
2594 bi_pack_add_f16_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2604 bi_pack_add_f16_to_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2629 bi_pack_add_f16_to_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2654 bi_pack_add_f32_to_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2675 bi_pack_add_f32_to_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2696 bi_pack_add_fadd_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2721 { unsigned temp = src0; src0 = src1; src1 = temp; }
2742 return 0x20000 | (src0 << 0) | (src1 << 3) | (abs1 << 6) | (neg0 << 7) | (neg1 << 8) | (clamp << 11) | (abs0 << 15) | (derived_13 << 13) | (derived_9 << 9);
2744 return 0x75200 | (src0 << 0) | (src1 << 3);
2751 bi_pack_add_fadd_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2771 return 0xa0000 | (src0 << 0) | (src1 << 3) | (abs1 << 6) | (neg0 << 7) | (neg1 << 8) | (swz0 << 9) | (swz1 << 11) | (round << 13) | (abs0 << 15);
2775 bi_pack_add_fadd_rscale_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2803 return 0x88000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (abs1 << 12) | (neg0 << 13) | (neg1 << 14) | (abs0 << 16) | (derived_9 << 9);
2807 bi_pack_add_fcmp_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2832 { unsigned temp = src0; src0 = src1; src1 = temp; }
2854 return 0x30000 | (src0 << 0) | (src1 << 3) | (cmpf << 6) | (abs0 << 11) | (abs1 << 12) | (result_type << 14) | (derived_9 << 9) | (derived_13 << 13);
2858 bi_pack_add_fcmp_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2879 { unsigned temp = src0; src0 = src1; src1 = temp; }
2893 return 0xb0000 | (src0 << 0) | (src1 << 3) | (cmpf << 6) | (swz0 << 9) | (swz1 << 11) | (result_type << 14) | (derived_13 << 13);
2897 bi_pack_add_fcos_table_u6(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2906 bi_pack_add_fexp_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2909 assert((1 << src1) & 0xf7);
2910 return 0x66ac0 | (src0 << 0) | (src1 << 3);
2914 bi_pack_add_fexp_table_u4(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2923 bi_pack_add_flogd_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2930 bi_pack_add_flog_table_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
2993 bi_pack_add_fmax_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3007 return 0x0 | (src0 << 0) | (src1 << 3) | (abs1 << 6) | (neg0 << 7) | (neg1 << 8) | (clamp << 11) | (sem << 13) | (abs0 << 15);
3011 bi_pack_add_fmax_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3031 if (((abs0 == 0) && (src0 > src1)) || ((abs1 == 1) && (src0 <= src1))) {
3032 { unsigned temp = src0; src0 = src1; src1 = temp; }
3041 if (((abs0 == 1) && (abs1 == 0) && (src0 > src1)) || ((abs0 == 0) && (abs1 == 0) && (src0 <= src1))) derived_6 = 0;
3042 else if (((abs0 == 1) && (abs1 == 1) && (src0 > src1)) || ((abs0 == 1) && (abs1 == 0) && (src0 <= src1))) derived_6 = 1;
3045 return 0x80000 | (src0 << 0) | (src1 << 3) | (neg0 << 7) | (neg1 << 8) | (swz0 << 9) | (swz1 << 11) | (sem << 13) | (derived_6 << 6);
3049 bi_pack_add_fmin_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3063 return 0x10000 | (src0 << 0) | (src1 << 3) | (abs1 << 6) | (neg0 << 7) | (neg1 << 8) | (clamp << 11) | (sem << 13) | (abs0 << 15);
3067 bi_pack_add_fmin_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3087 if (((abs0 == 0) && (src0 > src1)) || ((abs1 == 1) && (src0 <= src1))) {
3088 { unsigned temp = src0; src0 = src1; src1 = temp; }
3097 if (((abs0 == 1) && (abs1 == 0) && (src0 > src1)) || ((abs0 == 0) && (abs1 == 0) && (src0 <= src1))) derived_6 = 0;
3098 else if (((abs0 == 1) && (abs1 == 1) && (src0 > src1)) || ((abs0 == 1) && (abs1 == 0) && (src0 <= src1))) derived_6 = 1;
3101 return 0x90000 | (src0 << 0) | (src1 << 3) | (neg0 << 7) | (neg1 << 8) | (swz0 << 9) | (swz1 << 11) | (sem << 13) | (derived_6 << 6);
3105 bi_pack_add_fpclass_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3116 bi_pack_add_fpclass_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3123 bi_pack_add_fpow_sc_apply(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3126 return 0x75080 | (src0 << 0) | (src1 << 3);
3130 bi_pack_add_fpow_sc_det_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3133 assert((1 << src1) & 0xf7);
3155 return 0x67400 | (src0 << 0) | (src1 << 3) | (lane0 << 7) | (derived_6 << 6) | (derived_8 << 8);
3162 return 0x67600 | (src0 << 0) | (src1 << 3) | (lane0 << 7) | (derived_8 << 8);
3169 bi_pack_add_fpow_sc_det_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3172 assert((1 << src1) & 0xf7);
3175 return 0x67640 | (src0 << 0) | (src1 << 3) | (func << 7);
3179 bi_pack_add_frcp_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3196 bi_pack_add_frcp_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3215 bi_pack_add_frcp_approx_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3243 bi_pack_add_frexpe_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3265 bi_pack_add_frexpe_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3287 bi_pack_add_frexpm_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3311 bi_pack_add_frexpm_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3335 bi_pack_add_fround_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3351 bi_pack_add_fround_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3367 bi_pack_add_frsq_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3384 bi_pack_add_frsq_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3403 bi_pack_add_frsq_approx_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3431 bi_pack_add_fsincos_offset_u6(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3440 bi_pack_add_fsin_table_u6(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3449 bi_pack_add_hadd_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3455 return 0xbc640 | (src0 << 0) | (src1 << 3) | (round << 12);
3459 bi_pack_add_hadd_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3465 return 0xbc6c0 | (src0 << 0) | (src1 << 3) | (round << 12);
3469 bi_pack_add_hadd_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3483 return 0xbc840 | (src0 << 0) | (src1 << 3) | (round << 12) | (swap1 << 9) | (swap0 << 10);
3487 bi_pack_add_hadd_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3501 return 0xbc8c0 | (src0 << 0) | (src1 << 3) | (round << 12) | (swap1 << 9) | (swap0 << 10);
3505 bi_pack_add_hadd_v4s8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3511 return 0xbc440 | (src0 << 0) | (src1 << 3) | (round << 12);
3515 bi_pack_add_hadd_v4u8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3521 return 0xbc4c0 | (src0 << 0) | (src1 << 3) | (round << 12);
3525 bi_pack_add_iabs_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3532 bi_pack_add_iabs_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3542 bi_pack_add_iabs_v4s8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3549 bi_pack_add_iadd_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3558 return 0xbc600 | (src0 << 0) | (src1 << 3) | (saturate << 8);
3565 return 0xbec00 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
3574 return 0xbe000 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
3581 bi_pack_add_iadd_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3595 return 0xbc600 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7);
3607 return 0xbec00 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
3621 return 0xbe000 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
3628 bi_pack_add_iadd_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3651 return 0xbc800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9) | (derived_10 << 10);
3658 return 0xbec40 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
3665 return 0xbe800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
3672 bi_pack_add_iadd_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3700 return 0xbc800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9) | (derived_10 << 10);
3712 return 0xbec40 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
3724 return 0xbe800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
3731 bi_pack_add_iadd_v4s8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3744 return 0xbc400 | (src0 << 0) | (src1 << 3) | (saturate << 8);
3753 return 0xbe040 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
3760 return 0xbe840 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
3767 bi_pack_add_iadd_v4u8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3785 return 0xbc400 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7);
3799 return 0xbe040 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
3811 return 0xbe840 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
3818 bi_pack_add_icmp_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3828 return 0x7b300 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (cmpf << 6);
3832 bi_pack_add_icmp_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3843 { unsigned temp = src0; src0 = src1; src1 = temp; }
3853 return 0x7b200 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (derived_6 << 6);
3857 bi_pack_add_icmp_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3868 { unsigned temp = src0; src0 = src1; src1 = temp; }
3878 return 0x7b280 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (derived_6 << 6);
3882 bi_pack_add_icmp_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3900 return 0x7a000 | (src0 << 0) | (src1 << 3) | (swz0 << 6) | (swz1 << 8) | (result_type << 10) | (cmpf << 11);
3904 bi_pack_add_icmp_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3923 { unsigned temp = src0; src0 = src1; src1 = temp; }
3934 return 0x78000 | (src0 << 0) | (src1 << 3) | (swz0 << 6) | (swz1 << 8) | (result_type << 10) | (derived_12 << 12);
3938 bi_pack_add_icmp_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3957 { unsigned temp = src0; src0 = src1; src1 = temp; }
3968 return 0x78800 | (src0 << 0) | (src1 << 3) | (swz0 << 6) | (swz1 << 8) | (result_type << 10) | (derived_12 << 12);
3972 bi_pack_add_icmp_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3982 return 0x7b100 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (cmpf << 6);
3986 bi_pack_add_icmp_v4s8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
3997 { unsigned temp = src0; src0 = src1; src1 = temp; }
4007 return 0x7b000 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (derived_6 << 6);
4011 bi_pack_add_icmp_v4u8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4022 { unsigned temp = src0; src0 = src1; src1 = temp; }
4032 return 0x7b080 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (derived_6 << 6);
4036 bi_pack_add_icmpf_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4039 return 0x7be00 | (src0 << 0) | (src1 << 3) | (src2 << 6);
4043 bi_pack_add_icmpi_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4053 return 0x7b900 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (cmpf << 6);
4057 bi_pack_add_icmpi_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4067 return 0x7b800 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (cmpf << 6);
4071 bi_pack_add_icmpi_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4081 return 0x7b880 | (src0 << 0) | (src1 << 3) | (result_type << 10) | (cmpf << 6);
4085 bi_pack_add_icmpm_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4088 return 0x7ba00 | (src0 << 0) | (src1 << 3) | (src2 << 6);
4092 bi_pack_add_ilogb_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4102 bi_pack_add_ilogb_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4112 bi_pack_add_imov_fma(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4120 bi_pack_add_isub_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4129 return 0xbd600 | (src0 << 0) | (src1 << 3) | (saturate << 8);
4136 return 0xbfc00 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
4145 return 0xbf000 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
4152 bi_pack_add_isub_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4166 return 0xbd600 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7);
4178 return 0xbfc00 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
4192 return 0xbf000 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
4199 bi_pack_add_isub_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4222 return 0xbd800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9) | (derived_10 << 10);
4229 return 0xbfc40 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
4236 return 0xbf800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
4243 bi_pack_add_isub_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4271 return 0xbd800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9) | (derived_10 << 10);
4283 return 0xbfc40 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
4295 return 0xbf800 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
4302 bi_pack_add_isub_v4s8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4315 return 0xbd400 | (src0 << 0) | (src1 << 3) | (saturate << 8);
4324 return 0xbf040 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
4331 return 0xbf840 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_9 << 9);
4338 bi_pack_add_isub_v4u8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4356 return 0xbd400 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7);
4370 return 0xbf040 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
4382 return 0xbf840 | (src0 << 0) | (src1 << 3) | (saturate << 8) | (derived_7 << 7) | (derived_9 << 9);
4389 bi_pack_add_jump(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4396 bi_pack_add_ldexp_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4402 return 0x74c00 | (src0 << 0) | (src1 << 3) | (round << 6);
4406 bi_pack_add_ldexp_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4412 return 0x74e00 | (src0 << 0) | (src1 << 3) | (round << 6);
4416 bi_pack_add_ld_attr(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4434 return 0x40400 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 11) | (derived_13 << 13);
4436 return 0xc4400 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 11);
4443 bi_pack_add_ld_attr_imm(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4463 return 0x40000 | (src0 << 0) | (src1 << 3) | (vecsize << 11) | (attribute_index << 6) | (derived_13 << 13);
4465 return 0xc4000 | (src0 << 0) | (src1 << 3) | (vecsize << 11) | (attribute_index << 6);
4472 bi_pack_add_ld_attr_tex(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4490 return 0x40600 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 11) | (derived_13 << 13);
4492 return 0xc4600 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 11);
4499 bi_pack_add_ld_cvt(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4504 return 0xc9000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 9);
4508 bi_pack_add_ld_gclk_u64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4518 bi_pack_add_ld_tile(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4523 return 0xcb000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 9);
4527 bi_pack_add_ld_var(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4559 return 0x500c0 | (src0 << 0) | (src1 << 3) | (vecsize << 8) | (derived_19 << 19) | (derived_10 << 10);
4575 return 0xcc0c0 | (src0 << 0) | (src1 << 3) | (vecsize << 8) | (derived_10 << 10);
4582 bi_pack_add_ld_var_flat(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4614 bi_pack_add_ld_var_flat_imm(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4648 bi_pack_add_ld_var_imm(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4705 bi_pack_add_ld_var_special(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4774 bi_pack_add_lea_attr(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4790 return 0xc0400 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_11 << 11);
4792 return 0xc8400 | (src0 << 0) | (src1 << 3) | (src2 << 6);
4799 bi_pack_add_lea_attr_imm(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4817 return 0xc0000 | (src0 << 0) | (src1 << 3) | (attribute_index << 6) | (derived_11 << 11);
4819 return 0xc8000 | (src0 << 0) | (src1 << 3) | (attribute_index << 6);
4826 bi_pack_add_lea_attr_tex(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4842 return 0xc0600 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_11 << 11);
4844 return 0xc8600 | (src0 << 0) | (src1 << 3) | (src2 << 6);
4851 bi_pack_add_lea_tex(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4855 return 0xd6600 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (format << 11);
4859 bi_pack_add_lea_tex_imm(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4865 return 0xd6000 | (src0 << 0) | (src1 << 3) | (format << 11) | (texture_index << 6);
4869 bi_pack_add_load_i128(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4875 return 0x61000 | (src0 << 0) | (src1 << 3) | (seg << 6);
4879 bi_pack_add_load_i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4897 return 0x60800 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
4904 return 0x63000 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
4911 return 0x61800 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
4918 bi_pack_add_load_i24(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4924 return 0x65000 | (src0 << 0) | (src1 << 3) | (seg << 6);
4928 bi_pack_add_load_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4941 return 0x60c00 | (src0 << 0) | (src1 << 3) | (seg << 6);
4948 return 0x61c00 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
4955 bi_pack_add_load_i48(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4961 return 0x65200 | (src0 << 0) | (src1 << 3) | (seg << 6);
4965 bi_pack_add_load_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4971 return 0x60e00 | (src0 << 0) | (src1 << 3) | (seg << 6);
4975 bi_pack_add_load_i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
4995 return 0x60000 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
5007 return 0x63800 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9) | (derived_10 << 10);
5014 return 0x63400 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
5021 return 0x61400 | (src0 << 0) | (src1 << 3) | (seg << 6) | (derived_9 << 9);
5028 bi_pack_add_load_i96(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5034 return 0x65400 | (src0 << 0) | (src1 << 3) | (seg << 6);
5038 bi_pack_add_logb_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5048 bi_pack_add_logb_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5058 bi_pack_add_mkvec_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5068 return 0x75300 | (src0 << 0) | (src1 << 3) | (lane0 << 6) | (lane1 << 7);
5072 bi_pack_add_mov_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5079 bi_pack_add_mux_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5083 return 0x74000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (mux << 9);
5087 bi_pack_add_mux_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5103 return 0x70000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (mux << 9) | (swap2 << 11) | (swap1 << 12) | (swap0 << 13);
5107 bi_pack_add_mux_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5111 return 0x74800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (mux << 9);
5115 bi_pack_add_nop(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5122 bi_pack_add_quiet_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5129 bi_pack_add_quiet_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5139 bi_pack_add_s16_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5149 bi_pack_add_s16_to_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5159 bi_pack_add_s32_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5180 bi_pack_add_s8_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5190 bi_pack_add_s8_to_s32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5200 bi_pack_add_seg_add(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5212 bi_pack_add_shaddxh_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5215 return 0x3f8c0 | (src0 << 0) | (src1 << 3);
5219 bi_pack_add_shift_double_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5222 return 0xefe00 | (src0 << 0) | (src1 << 3) | (src2 << 6);
5226 bi_pack_add_store_i128(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5232 return 0x61200 | (src0 << 0) | (src1 << 3) | (seg << 6);
5236 bi_pack_add_store_i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5242 return 0x62800 | (src0 << 0) | (src1 << 3) | (seg << 6);
5246 bi_pack_add_store_i24(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5252 return 0x65800 | (src0 << 0) | (src1 << 3) | (seg << 6);
5256 bi_pack_add_store_i32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5262 return 0x62c00 | (src0 << 0) | (src1 << 3) | (seg << 6);
5266 bi_pack_add_store_i48(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5272 return 0x65a00 | (src0 << 0) | (src1 << 3) | (seg << 6);
5276 bi_pack_add_store_i64(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5282 return 0x62e00 | (src0 << 0) | (src1 << 3) | (seg << 6);
5286 bi_pack_add_store_i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5292 return 0x62000 | (src0 << 0) | (src1 << 3) | (seg << 6);
5296 bi_pack_add_store_i96(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5302 return 0x65c00 | (src0 << 0) | (src1 << 3) | (seg << 6);
5306 bi_pack_add_st_cvt(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5311 return 0xc9800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 9);
5315 bi_pack_add_st_tile(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5320 return 0xcb800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (vecsize << 9);
5324 bi_pack_add_swz_v2i16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5334 bi_pack_add_swz_v4i8(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5344 bi_pack_add_texc(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5349 return 0xd7000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (skip << 9);
5353 bi_pack_add_texs_2d_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5363 return 0xd8000 | (src0 << 0) | (src1 << 3) | (skip << 9) | (lod_mode << 13) | (texture_index << 6) | (sampler_index << 10);
5367 bi_pack_add_texs_2d_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5377 return 0x58000 | (src0 << 0) | (src1 << 3) | (skip << 9) | (lod_mode << 13) | (texture_index << 6) | (sampler_index << 10);
5381 bi_pack_add_texs_cube_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5389 return 0xdc000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (skip << 9) | (sampler_index << 10) | (texture_index << 12);
5393 bi_pack_add_texs_cube_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5401 return 0x5c000 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (skip << 9) | (sampler_index << 10) | (texture_index << 12);
5405 bi_pack_add_u16_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5415 bi_pack_add_u16_to_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5425 bi_pack_add_u32_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5446 bi_pack_add_u8_to_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5456 bi_pack_add_u8_to_u32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5466 bi_pack_add_v2f16_to_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5491 bi_pack_add_v2f16_to_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5516 bi_pack_add_v2f32_to_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5540 return 0x76000 | (src0 << 0) | (src1 << 3) | (clamp << 8) | (round << 10) | (derived_6 << 6) | (derived_7 << 7);
5544 bi_pack_add_v2s16_to_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5569 bi_pack_add_v2s8_to_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5579 bi_pack_add_v2s8_to_v2s16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5589 bi_pack_add_v2u16_to_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5614 bi_pack_add_v2u8_to_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5624 bi_pack_add_v2u8_to_v2u16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5634 bi_pack_add_var_tex_f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5659 bi_pack_add_var_tex_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5684 bi_pack_add_vn_asst2_f32(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5700 bi_pack_add_vn_asst2_v2f16(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5708 bi_pack_add_wmask(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5718 bi_pack_add_zs_emit(bi_instr *I, enum bifrost_packed_src src0, enum bifrost_packed_src src1, enum bifrost_packed_src src2, enum bifrost_packed_src src3)
5730 return 0xd7800 | (src0 << 0) | (src1 << 3) | (src2 << 6) | (derived_9 << 9);
5736 enum bifrost_packed_src src1,
5741 return bi_pack_fma_nop(I, src0, src1, src2, src3);
5744 assert((1 << src1) & 0xfb);
5748 return bi_pack_fma_arshift_i32(I, src0, src1, src2, src3);
5750 return bi_pack_fma_arshift_v2i16(I, src0, src1, src2, src3);
5752 return bi_pack_fma_arshift_v4i8(I, src0, src1, src2, src3);
5754 return bi_pack_fma_arshift_double_i32(I, src0, src1, src2, src3);
5756 return bi_pack_fma_atom_c_i32(I, src0, src1, src2, src3);
5758 return bi_pack_fma_atom_c_i64(I, src0, src1, src2, src3);
5760 return bi_pack_fma_atom_c1_i32(I, src0, src1, src2, src3);
5762 return bi_pack_fma_atom_c1_i64(I, src0, src1, src2, src3);
5764 return bi_pack_fma_atom_c1_return_i32(I, src0, src1, src2, src3);
5766 return bi_pack_fma_atom_c1_return_i64(I, src0, src1, src2, src3);
5768 return bi_pack_fma_atom_c_return_i32(I, src0, src1, src2, src3);
5770 return bi_pack_fma_atom_c_return_i64(I, src0, src1, src2, src3);
5772 return bi_pack_fma_atom_post_i32(I, src0, src1, src2, src3);
5774 return bi_pack_fma_atom_post_i64(I, src0, src1, src2, src3);
5776 return bi_pack_fma_atom_pre_i64(I, src0, src1, src2, src3);
5778 return bi_pack_fma_bitrev_i32(I, src0, src1, src2, src3);
5780 return bi_pack_fma_clz_u32(I, src0, src1, src2, src3);
5782 return bi_pack_fma_clz_v2u16(I, src0, src1, src2, src3);
5784 return bi_pack_fma_clz_v4u8(I, src0, src1, src2, src3);
5786 return bi_pack_fma_csel_f32(I, src0, src1, src2, src3);
5788 return bi_pack_fma_csel_i32(I, src0, src1, src2, src3);
5790 return bi_pack_fma_csel_s32(I, src0, src1, src2, src3);
5792 return bi_pack_fma_csel_u32(I, src0, src1, src2, src3);
5794 return bi_pack_fma_csel_v2f16(I, src0, src1, src2, src3);
5796 return bi_pack_fma_csel_v2i16(I, src0, src1, src2, src3);
5798 return bi_pack_fma_csel_v2s16(I, src0, src1, src2, src3);
5800 return bi_pack_fma_csel_v2u16(I, src0, src1, src2, src3);
5802 return bi_pack_fma_cubeface1(I, src0, src1, src2, src3);
5804 return bi_pack_fma_dtsel_imm(I, src0, src1, src2, src3);
5806 return bi_pack_fma_f16_to_f32(I, src0, src1, src2, src3);
5808 return bi_pack_fma_fadd_f32(I, src0, src1, src2, src3);
5810 return bi_pack_fma_fadd_v2f16(I, src0, src1, src2, src3);
5812 return bi_pack_fma_fadd_lscale_f32(I, src0, src1, src2, src3);
5814 return bi_pack_fma_fcmp_f32(I, src0, src1, src2, src3);
5816 return bi_pack_fma_fcmp_v2f16(I, src0, src1, src2, src3);
5818 return bi_pack_fma_flshift_double_i32(I, src0, src1, src2, src3);
5820 return bi_pack_fma_fma_f32(I, src0, src1, src2, src3);
5822 return bi_pack_fma_fma_v2f16(I, src0, src1, src2, src3);
5824 return bi_pack_fma_fma_rscale_f32(I, src0, src1, src2, src3);
5826 return bi_pack_fma_fma_rscale_v2f16(I, src0, src1, src2, src3);
5828 return bi_pack_fma_fmul_cslice(I, src0, src1, src2, src3);
5830 return bi_pack_fma_fmul_slice_f32(I, src0, src1, src2, src3);
5832 return bi_pack_fma_frexpe_f32(I, src0, src1, src2, src3);
5834 return bi_pack_fma_frexpe_v2f16(I, src0, src1, src2, src3);
5836 return bi_pack_fma_frexpm_f32(I, src0, src1, src2, src3);
5838 return bi_pack_fma_frexpm_v2f16(I, src0, src1, src2, src3);
5840 return bi_pack_fma_fround_f32(I, src0, src1, src2, src3);
5842 return bi_pack_fma_fround_v2f16(I, src0, src1, src2, src3);
5844 return bi_pack_fma_frshift_double_i32(I, src0, src1, src2, src3);
5846 return bi_pack_fma_iaddc_i32(I, src0, src1, src2, src3);
5848 return bi_pack_fma_idp_v4i8(I, src0, src1, src2, src3);
5850 return bi_pack_fma_imul_i32(I, src0, src1, src2, src3);
5852 return bi_pack_fma_imul_v2i16(I, src0, src1, src2, src3);
5854 return bi_pack_fma_imul_v4i8(I, src0, src1, src2, src3);
5856 return bi_pack_fma_imuld(I, src0, src1, src2, src3);
5858 return bi_pack_fma_isubb_i32(I, src0, src1, src2, src3);
5860 return bi_pack_fma_jump_ex(I, src0, src1, src2, src3);
5862 return bi_pack_fma_lrot_double_i32(I, src0, src1, src2, src3);
5864 return bi_pack_fma_lshift_and_i32(I, src0, src1, src2, src3);
5866 return bi_pack_fma_lshift_and_v2i16(I, src0, src1, src2, src3);
5868 return bi_pack_fma_lshift_and_v4i8(I, src0, src1, src2, src3);
5870 return bi_pack_fma_lshift_double_i32(I, src0, src1, src2, src3);
5872 return bi_pack_fma_lshift_or_i32(I, src0, src1, src2, src3);
5874 return bi_pack_fma_lshift_or_v2i16(I, src0, src1, src2, src3);
5876 return bi_pack_fma_lshift_or_v4i8(I, src0, src1, src2, src3);
5878 return bi_pack_fma_lshift_xor_i32(I, src0, src1, src2, src3);
5880 return bi_pack_fma_lshift_xor_v2i16(I, src0, src1, src2, src3);
5882 return bi_pack_fma_lshift_xor_v4i8(I, src0, src1, src2, src3);
5884 return bi_pack_fma_mkvec_v2i16(I, src0, src1, src2, src3);
5886 return bi_pack_fma_mkvec_v4i8(I, src0, src1, src2, src3);
5888 return bi_pack_fma_mov_i32(I, src0, src1, src2, src3);
5890 return bi_pack_fma_nop(I, src0, src1, src2, src3);
5892 return bi_pack_fma_popcount_i32(I, src0, src1, src2, src3);
5894 return bi_pack_fma_quiet_f32(I, src0, src1, src2, src3);
5896 return bi_pack_fma_quiet_v2f16(I, src0, src1, src2, src3);
5898 return bi_pack_fma_rrot_double_i32(I, src0, src1, src2, src3);
5900 return bi_pack_fma_rshift_and_i32(I, src0, src1, src2, src3);
5902 return bi_pack_fma_rshift_and_v2i16(I, src0, src1, src2, src3);
5904 return bi_pack_fma_rshift_and_v4i8(I, src0, src1, src2, src3);
5906 return bi_pack_fma_rshift_double_i32(I, src0, src1, src2, src3);
5908 return bi_pack_fma_rshift_or_i32(I, src0, src1, src2, src3);
5910 return bi_pack_fma_rshift_or_v2i16(I, src0, src1, src2, src3);
5912 return bi_pack_fma_rshift_or_v4i8(I, src0, src1, src2, src3);
5914 return bi_pack_fma_rshift_xor_i32(I, src0, src1, src2, src3);
5916 return bi_pack_fma_rshift_xor_v2i16(I, src0, src1, src2, src3);
5918 return bi_pack_fma_rshift_xor_v4i8(I, src0, src1, src2, src3);
5920 return bi_pack_fma_s16_to_s32(I, src0, src1, src2, src3);
5922 return bi_pack_fma_s8_to_s32(I, src0, src1, src2, src3);
5924 return bi_pack_fma_seg_add(I, src0, src1, src2, src3);
5926 return bi_pack_fma_shaddxl_i64(I, src0, src1, src2, src3);
5928 return bi_pack_fma_shaddxl_s32(I, src0, src1, src2, src3);
5930 return bi_pack_fma_shaddxl_u32(I, src0, src1, src2, src3);
5932 return bi_pack_fma_u16_to_u32(I, src0, src1, src2, src3);
5934 return bi_pack_fma_u8_to_u32(I, src0, src1, src2, src3);
5936 return bi_pack_fma_v2f32_to_v2f16(I, src0, src1, src2, src3);
5938 return bi_pack_fma_vn_asst1_f16(I, src0, src1, src2, src3);
5940 return bi_pack_fma_vn_asst1_f32(I, src0, src1, src2, src3);
5952 enum bifrost_packed_src src1,
5957 return bi_pack_add_nop(I, src0, src1, src2, src3);
5961 return bi_pack_add_acmpstore_i32(I, src0, src1, src2, src3);
5963 return bi_pack_add_acmpstore_i64(I, src0, src1, src2, src3);
5965 return bi_pack_add_acmpxchg_i32(I, src0, src1, src2, src3);
5967 return bi_pack_add_acmpxchg_i64(I, src0, src1, src2, src3);
5969 return bi_pack_add_atest(I, src0, src1, src2, src3);
5971 return bi_pack_add_atom_cx(I, src0, src1, src2, src3);
5973 return bi_pack_add_axchg_i32(I, src0, src1, src2, src3);
5975 return bi_pack_add_axchg_i64(I, src0, src1, src2, src3);
5977 return bi_pack_add_barrier(I, src0, src1, src2, src3);
5979 return bi_pack_add_blend(I, src0, src1, src2, src3);
5981 return bi_pack_add_branch_f16(I, src0, src1, src2, src3);
5983 return bi_pack_add_branch_f32(I, src0, src1, src2, src3);
5985 return bi_pack_add_branch_i16(I, src0, src1, src2, src3);
5987 return bi_pack_add_branch_i32(I, src0, src1, src2, src3);
5989 return bi_pack_add_branch_s16(I, src0, src1, src2, src3);
5991 return bi_pack_add_branch_s32(I, src0, src1, src2, src3);
5993 return bi_pack_add_branch_u16(I, src0, src1, src2, src3);
5995 return bi_pack_add_branch_u32(I, src0, src1, src2, src3);
5997 return bi_pack_add_branchc_i16(I, src0, src1, src2, src3);
5999 return bi_pack_add_branchc_i32(I, src0, src1, src2, src3);
6001 return bi_pack_add_branchz_f16(I, src0, src1, src2, src3);
6003 return bi_pack_add_branchz_f32(I, src0, src1, src2, src3);
6005 return bi_pack_add_branchz_i16(I, src0, src1, src2, src3);
6007 return bi_pack_add_branchz_i32(I, src0, src1, src2, src3);
6009 return bi_pack_add_branchz_s16(I, src0, src1, src2, src3);
6011 return bi_pack_add_branchz_s32(I, src0, src1, src2, src3);
6013 return bi_pack_add_branchz_u16(I, src0, src1, src2, src3);
6015 return bi_pack_add_branchz_u32(I, src0, src1, src2, src3);
6017 return bi_pack_add_branch_diverg(I, src0, src1, src2, src3);
6019 return bi_pack_add_branch_lowbits_f32(I, src0, src1, src2, src3);
6021 return bi_pack_add_branch_no_diverg(I, src0, src1, src2, src3);
6023 return bi_pack_add_clper_i32(I, src0, src1, src2, src3);
6025 return bi_pack_add_clper_v6_i32(I, src0, src1, src2, src3);
6027 return bi_pack_add_cubeface2(I, src0, src1, src2, src3);
6029 return bi_pack_add_cube_ssel(I, src0, src1, src2, src3);
6031 return bi_pack_add_cube_tsel(I, src0, src1, src2, src3);
6033 return bi_pack_add_discard_f32(I, src0, src1, src2, src3);
6035 return bi_pack_add_f16_to_f32(I, src0, src1, src2, src3);
6037 return bi_pack_add_f16_to_s32(I, src0, src1, src2, src3);
6039 return bi_pack_add_f16_to_u32(I, src0, src1, src2, src3);
6041 return bi_pack_add_f32_to_s32(I, src0, src1, src2, src3);
6043 return bi_pack_add_f32_to_u32(I, src0, src1, src2, src3);
6045 return bi_pack_add_fadd_f32(I, src0, src1, src2, src3);
6047 return bi_pack_add_fadd_v2f16(I, src0, src1, src2, src3);
6049 return bi_pack_add_fadd_rscale_f32(I, src0, src1, src2, src3);
6051 return bi_pack_add_fcmp_f32(I, src0, src1, src2, src3);
6053 return bi_pack_add_fcmp_v2f16(I, src0, src1, src2, src3);
6055 return bi_pack_add_fcos_table_u6(I, src0, src1, src2, src3);
6057 return bi_pack_add_fexp_f32(I, src0, src1, src2, src3);
6059 return bi_pack_add_fexp_table_u4(I, src0, src1, src2, src3);
6061 return bi_pack_add_flogd_f32(I, src0, src1, src2, src3);
6063 return bi_pack_add_flog_table_f32(I, src0, src1, src2, src3);
6065 return bi_pack_add_fmax_f32(I, src0, src1, src2, src3);
6067 return bi_pack_add_fmax_v2f16(I, src0, src1, src2, src3);
6069 return bi_pack_add_fmin_f32(I, src0, src1, src2, src3);
6071 return bi_pack_add_fmin_v2f16(I, src0, src1, src2, src3);
6073 return bi_pack_add_fpclass_f16(I, src0, src1, src2, src3);
6075 return bi_pack_add_fpclass_f32(I, src0, src1, src2, src3);
6077 return bi_pack_add_fpow_sc_apply(I, src0, src1, src2, src3);
6079 return bi_pack_add_fpow_sc_det_f16(I, src0, src1, src2, src3);
6081 return bi_pack_add_fpow_sc_det_f32(I, src0, src1, src2, src3);
6083 return bi_pack_add_frcp_f16(I, src0, src1, src2, src3);
6085 return bi_pack_add_frcp_f32(I, src0, src1, src2, src3);
6087 return bi_pack_add_frcp_approx_f32(I, src0, src1, src2, src3);
6089 return bi_pack_add_frexpe_f32(I, src0, src1, src2, src3);
6091 return bi_pack_add_frexpe_v2f16(I, src0, src1, src2, src3);
6093 return bi_pack_add_frexpm_f32(I, src0, src1, src2, src3);
6095 return bi_pack_add_frexpm_v2f16(I, src0, src1, src2, src3);
6097 return bi_pack_add_fround_f32(I, src0, src1, src2, src3);
6099 return bi_pack_add_fround_v2f16(I, src0, src1, src2, src3);
6101 return bi_pack_add_frsq_f16(I, src0, src1, src2, src3);
6103 return bi_pack_add_frsq_f32(I, src0, src1, src2, src3);
6105 return bi_pack_add_frsq_approx_f32(I, src0, src1, src2, src3);
6107 return bi_pack_add_fsincos_offset_u6(I, src0, src1, src2, src3);
6109 return bi_pack_add_fsin_table_u6(I, src0, src1, src2, src3);
6111 return bi_pack_add_hadd_s32(I, src0, src1, src2, src3);
6113 return bi_pack_add_hadd_u32(I, src0, src1, src2, src3);
6115 return bi_pack_add_hadd_v2s16(I, src0, src1, src2, src3);
6117 return bi_pack_add_hadd_v2u16(I, src0, src1, src2, src3);
6119 return bi_pack_add_hadd_v4s8(I, src0, src1, src2, src3);
6121 return bi_pack_add_hadd_v4u8(I, src0, src1, src2, src3);
6123 return bi_pack_add_iabs_s32(I, src0, src1, src2, src3);
6125 return bi_pack_add_iabs_v2s16(I, src0, src1, src2, src3);
6127 return bi_pack_add_iabs_v4s8(I, src0, src1, src2, src3);
6129 return bi_pack_add_iadd_s32(I, src0, src1, src2, src3);
6131 return bi_pack_add_iadd_u32(I, src0, src1, src2, src3);
6133 return bi_pack_add_iadd_v2s16(I, src0, src1, src2, src3);
6135 return bi_pack_add_iadd_v2u16(I, src0, src1, src2, src3);
6137 return bi_pack_add_iadd_v4s8(I, src0, src1, src2, src3);
6139 return bi_pack_add_iadd_v4u8(I, src0, src1, src2, src3);
6141 return bi_pack_add_icmp_i32(I, src0, src1, src2, src3);
6143 return bi_pack_add_icmp_s32(I, src0, src1, src2, src3);
6145 return bi_pack_add_icmp_u32(I, src0, src1, src2, src3);
6147 return bi_pack_add_icmp_v2i16(I, src0, src1, src2, src3);
6149 return bi_pack_add_icmp_v2s16(I, src0, src1, src2, src3);
6151 return bi_pack_add_icmp_v2u16(I, src0, src1, src2, src3);
6153 return bi_pack_add_icmp_v4i8(I, src0, src1, src2, src3);
6155 return bi_pack_add_icmp_v4s8(I, src0, src1, src2, src3);
6157 return bi_pack_add_icmp_v4u8(I, src0, src1, src2, src3);
6159 return bi_pack_add_icmpf_i32(I, src0, src1, src2, src3);
6161 return bi_pack_add_icmpi_i32(I, src0, src1, src2, src3);
6163 return bi_pack_add_icmpi_s32(I, src0, src1, src2, src3);
6165 return bi_pack_add_icmpi_u32(I, src0, src1, src2, src3);
6167 return bi_pack_add_icmpm_i32(I, src0, src1, src2, src3);
6169 return bi_pack_add_ilogb_f32(I, src0, src1, src2, src3);
6171 return bi_pack_add_ilogb_v2f16(I, src0, src1, src2, src3);
6173 return bi_pack_add_imov_fma(I, src0, src1, src2, src3);
6175 return bi_pack_add_isub_s32(I, src0, src1, src2, src3);
6177 return bi_pack_add_isub_u32(I, src0, src1, src2, src3);
6179 return bi_pack_add_isub_v2s16(I, src0, src1, src2, src3);
6181 return bi_pack_add_isub_v2u16(I, src0, src1, src2, src3);
6183 return bi_pack_add_isub_v4s8(I, src0, src1, src2, src3);
6185 return bi_pack_add_isub_v4u8(I, src0, src1, src2, src3);
6187 return bi_pack_add_jump(I, src0, src1, src2, src3);
6189 return bi_pack_add_ldexp_f32(I, src0, src1, src2, src3);
6191 return bi_pack_add_ldexp_v2f16(I, src0, src1, src2, src3);
6193 return bi_pack_add_ld_attr(I, src0, src1, src2, src3);
6195 return bi_pack_add_ld_attr_imm(I, src0, src1, src2, src3);
6197 return bi_pack_add_ld_attr_tex(I, src0, src1, src2, src3);
6199 return bi_pack_add_ld_cvt(I, src0, src1, src2, src3);
6201 return bi_pack_add_ld_gclk_u64(I, src0, src1, src2, src3);
6203 return bi_pack_add_ld_tile(I, src0, src1, src2, src3);
6205 return bi_pack_add_ld_var(I, src0, src1, src2, src3);
6207 return bi_pack_add_ld_var_flat(I, src0, src1, src2, src3);
6209 return bi_pack_add_ld_var_flat_imm(I, src0, src1, src2, src3);
6211 return bi_pack_add_ld_var_imm(I, src0, src1, src2, src3);
6213 return bi_pack_add_ld_var_special(I, src0, src1, src2, src3);
6215 return bi_pack_add_lea_attr(I, src0, src1, src2, src3);
6217 return bi_pack_add_lea_attr_imm(I, src0, src1, src2, src3);
6219 return bi_pack_add_lea_attr_tex(I, src0, src1, src2, src3);
6221 return bi_pack_add_lea_tex(I, src0, src1, src2, src3);
6223 return bi_pack_add_lea_tex_imm(I, src0, src1, src2, src3);
6225 return bi_pack_add_load_i128(I, src0, src1, src2, src3);
6227 return bi_pack_add_load_i16(I, src0, src1, src2, src3);
6229 return bi_pack_add_load_i24(I, src0, src1, src2, src3);
6231 return bi_pack_add_load_i32(I, src0, src1, src2, src3);
6233 return bi_pack_add_load_i48(I, src0, src1, src2, src3);
6235 return bi_pack_add_load_i64(I, src0, src1, src2, src3);
6237 return bi_pack_add_load_i8(I, src0, src1, src2, src3);
6239 return bi_pack_add_load_i96(I, src0, src1, src2, src3);
6241 return bi_pack_add_logb_f32(I, src0, src1, src2, src3);
6243 return bi_pack_add_logb_v2f16(I, src0, src1, src2, src3);
6245 return bi_pack_add_mkvec_v2i16(I, src0, src1, src2, src3);
6247 return bi_pack_add_mov_i32(I, src0, src1, src2, src3);
6249 return bi_pack_add_mux_i32(I, src0, src1, src2, src3);
6251 return bi_pack_add_mux_v2i16(I, src0, src1, src2, src3);
6253 return bi_pack_add_mux_v4i8(I, src0, src1, src2, src3);
6255 return bi_pack_add_nop(I, src0, src1, src2, src3);
6257 return bi_pack_add_quiet_f32(I, src0, src1, src2, src3);
6259 return bi_pack_add_quiet_v2f16(I, src0, src1, src2, src3);
6261 return bi_pack_add_s16_to_f32(I, src0, src1, src2, src3);
6263 return bi_pack_add_s16_to_s32(I, src0, src1, src2, src3);
6265 return bi_pack_add_s32_to_f32(I, src0, src1, src2, src3);
6267 return bi_pack_add_s8_to_f32(I, src0, src1, src2, src3);
6269 return bi_pack_add_s8_to_s32(I, src0, src1, src2, src3);
6271 return bi_pack_add_seg_add(I, src0, src1, src2, src3);
6273 return bi_pack_add_shaddxh_i32(I, src0, src1, src2, src3);
6275 return bi_pack_add_shift_double_i32(I, src0, src1, src2, src3);
6277 return bi_pack_add_store_i128(I, src0, src1, src2, src3);
6279 return bi_pack_add_store_i16(I, src0, src1, src2, src3);
6281 return bi_pack_add_store_i24(I, src0, src1, src2, src3);
6283 return bi_pack_add_store_i32(I, src0, src1, src2, src3);
6285 return bi_pack_add_store_i48(I, src0, src1, src2, src3);
6287 return bi_pack_add_store_i64(I, src0, src1, src2, src3);
6289 return bi_pack_add_store_i8(I, src0, src1, src2, src3);
6291 return bi_pack_add_store_i96(I, src0, src1, src2, src3);
6293 return bi_pack_add_st_cvt(I, src0, src1, src2, src3);
6295 return bi_pack_add_st_tile(I, src0, src1, src2, src3);
6297 return bi_pack_add_swz_v2i16(I, src0, src1, src2, src3);
6299 return bi_pack_add_swz_v4i8(I, src0, src1, src2, src3);
6301 return bi_pack_add_texc(I, src0, src1, src2, src3);
6303 return bi_pack_add_texs_2d_f16(I, src0, src1, src2, src3);
6305 return bi_pack_add_texs_2d_f32(I, src0, src1, src2, src3);
6307 return bi_pack_add_texs_cube_f16(I, src0, src1, src2, src3);
6309 return bi_pack_add_texs_cube_f32(I, src0, src1, src2, src3);
6311 return bi_pack_add_u16_to_f32(I, src0, src1, src2, src3);
6313 return bi_pack_add_u16_to_u32(I, src0, src1, src2, src3);
6315 return bi_pack_add_u32_to_f32(I, src0, src1, src2, src3);
6317 return bi_pack_add_u8_to_f32(I, src0, src1, src2, src3);
6319 return bi_pack_add_u8_to_u32(I, src0, src1, src2, src3);
6321 return bi_pack_add_v2f16_to_v2s16(I, src0, src1, src2, src3);
6323 return bi_pack_add_v2f16_to_v2u16(I, src0, src1, src2, src3);
6325 return bi_pack_add_v2f32_to_v2f16(I, src0, src1, src2, src3);
6327 return bi_pack_add_v2s16_to_v2f16(I, src0, src1, src2, src3);
6329 return bi_pack_add_v2s8_to_v2f16(I, src0, src1, src2, src3);
6331 return bi_pack_add_v2s8_to_v2s16(I, src0, src1, src2, src3);
6333 return bi_pack_add_v2u16_to_v2f16(I, src0, src1, src2, src3);
6335 return bi_pack_add_v2u8_to_v2f16(I, src0, src1, src2, src3);
6337 return bi_pack_add_v2u8_to_v2u16(I, src0, src1, src2, src3);
6339 return bi_pack_add_var_tex_f16(I, src0, src1, src2, src3);
6341 return bi_pack_add_var_tex_f32(I, src0, src1, src2, src3);
6343 return bi_pack_add_vn_asst2_f32(I, src0, src1, src2, src3);
6345 return bi_pack_add_vn_asst2_v2f16(I, src0, src1, src2, src3);
6347 return bi_pack_add_wmask(I, src0, src1, src2, src3);
6349 return bi_pack_add_zs_emit(I, src0, src1, src2, src3);