Lines Matching refs:file

760 string(FILE *file, const char *string)
762 fputs(string, file);
801 control(FILE *file, const char *name, const char *const ctrl[],
805 fprintf(file, "*** invalid %s value %d ", name, id);
810 string(file, " ");
811 string(file, ctrl[id]);
819 print_opcode(FILE *file, const struct brw_isa_info *isa,
824 format(file, "*** invalid opcode value %d ", id);
827 string(file, desc->name);
832 reg(FILE *file, unsigned _reg_file, unsigned _reg_nr)
843 string(file, "null");
846 format(file, "a%d", _reg_nr & 0x0f);
849 format(file, "acc%d", _reg_nr & 0x0f);
852 format(file, "f%d", _reg_nr & 0x0f);
855 format(file, "mask%d", _reg_nr & 0x0f);
858 format(file, "ms%d", _reg_nr & 0x0f);
861 format(file, "msd%d", _reg_nr & 0x0f);
864 format(file, "sr%d", _reg_nr & 0x0f);
867 format(file, "cr%d", _reg_nr & 0x0f);
870 format(file, "n%d", _reg_nr & 0x0f);
873 string(file, "ip");
877 format(file, "tdr0");
880 format(file, "tm%d", _reg_nr & 0x0f);
883 format(file, "ARF%d", _reg_nr);
887 err |= control(file, "src reg file", reg_file, _reg_file, NULL);
888 format(file, "%d", _reg_nr);
894 dest(FILE *file, const struct brw_isa_info *isa, const brw_inst *inst)
906 err |= reg(file, brw_inst_send_dst_reg_file(devinfo, inst),
908 string(file, brw_reg_type_to_letters(type));
910 err |= reg(file, brw_inst_send_dst_reg_file(devinfo, inst),
914 format(file, ".%u", subreg_nr);
915 string(file, brw_reg_type_to_letters(type));
917 string(file, "g[a0");
919 format(file, ".%"PRIu64, brw_inst_dst_ia_subreg_nr(devinfo, inst) /
922 format(file, " %d", brw_inst_send_dst_ia16_addr_imm(devinfo, inst));
923 string(file, "]<");
924 string(file, brw_reg_type_to_letters(type));
928 err |= reg(file, brw_inst_dst_reg_file(devinfo, inst),
933 format(file, ".%"PRIu64, brw_inst_dst_da1_subreg_nr(devinfo, inst) /
935 string(file, "<");
936 err |= control(file, "horiz stride", horiz_stride,
938 string(file, ">");
939 string(file, brw_reg_type_to_letters(type));
941 string(file, "g[a0");
943 format(file, ".%"PRIu64, brw_inst_dst_ia_subreg_nr(devinfo, inst) /
946 format(file, " %d", brw_inst_dst_ia1_addr_imm(devinfo, inst));
947 string(file, "]<");
948 err |= control(file, "horiz stride", horiz_stride,
950 string(file, ">");
951 string(file, brw_reg_type_to_letters(type));
955 err |= reg(file, brw_inst_dst_reg_file(devinfo, inst),
960 format(file, ".%u", 16 / elem_size);
961 string(file, "<1>");
962 err |= control(file, "writemask", writemask,
964 string(file, brw_reg_type_to_letters(type));
967 string(file, "Indirect align16 address mode not supported");
975 dest_3src(FILE *file, const struct intel_device_info *devinfo,
996 err |= reg(file, reg_file, brw_inst_3src_dst_reg_nr(devinfo, inst));
1010 format(file, ".%u", subreg_nr);
1011 string(file, "<1>");
1014 err |= control(file, "writemask", writemask,
1017 string(file, brw_reg_type_to_letters(type));
1023 src_align1_region(FILE *file,
1028 string(file, "<");
1029 err |= control(file, "vert stride", vert_stride, _vert_stride, NULL);
1030 string(file, ",");
1031 err |= control(file, "width", width, _width, NULL);
1032 string(file, ",");
1033 err |= control(file, "horiz_stride", horiz_stride, _horiz_stride, NULL);
1034 string(file, ">");
1039 src_da1(FILE *file,
1050 err |= control(file, "bitnot", m_bitnot, _negate, NULL);
1052 err |= control(file, "negate", m_negate, _negate, NULL);
1054 err |= control(file, "abs", _abs, __abs, NULL);
1056 err |= reg(file, _reg_file, reg_num);
1061 format(file, ".%d", sub_reg_num / elem_size); /* use formal style like spec */
1063 src_align1_region(file, _vert_stride, _width, _horiz_stride);
1064 string(file, brw_reg_type_to_letters(type));
1069 src_ia1(FILE *file,
1082 err |= control(file, "bitnot", m_bitnot, _negate, NULL);
1084 err |= control(file, "negate", m_negate, _negate, NULL);
1086 err |= control(file, "abs", _abs, __abs, NULL);
1088 string(file, "g[a0");
1090 format(file, ".%d", _addr_subreg_nr);
1092 format(file, " %d", _addr_imm);
1093 string(file, "]");
1094 src_align1_region(file, _vert_stride, _width, _horiz_stride);
1095 string(file, brw_reg_type_to_letters(type));
1100 src_swizzle(FILE *file, unsigned swiz)
1109 string(file, ".");
1110 err |= control(file, "channel select", chan_sel, x, NULL);
1112 string(file, ".");
1113 err |= control(file, "channel select", chan_sel, x, NULL);
1114 err |= control(file, "channel select", chan_sel, y, NULL);
1115 err |= control(file, "channel select", chan_sel, z, NULL);
1116 err |= control(file, "channel select", chan_sel, w, NULL);
1122 src_da16(FILE *file,
1137 err |= control(file, "bitnot", m_bitnot, _negate, NULL);
1139 err |= control(file, "negate", m_negate, _negate, NULL);
1141 err |= control(file, "abs", _abs, __abs, NULL);
1143 err |= reg(file, _reg_file, _reg_nr);
1151 format(file, ".%d", 16 / elem_size);
1153 string(file, "<");
1154 err |= control(file, "vert stride", vert_stride, _vert_stride, NULL);
1155 string(file, ">");
1156 err |= src_swizzle(file, BRW_SWIZZLE4(swz_x, swz_y, swz_z, swz_w));
1157 string(file, brw_reg_type_to_letters(type));
1248 src0_3src(FILE *file, const struct intel_device_info *devinfo,
1279 format(file, "%dW", imm_val);
1281 format(file, "0x%04xUW", imm_val);
1283 format(file, "0x%04xHF", imm_val);
1318 err |= control(file, "negate", m_negate,
1320 err |= control(file, "abs", _abs, brw_inst_3src_src0_abs(devinfo, inst), NULL);
1322 err |= reg(file, _file, reg_nr);
1326 format(file, ".%d", subreg_nr);
1327 src_align1_region(file, _vert_stride, _width, _horiz_stride);
1329 err |= src_swizzle(file, brw_inst_3src_a16_src0_swizzle(devinfo, inst));
1330 string(file, brw_reg_type_to_letters(type));
1335 src1_3src(FILE *file, const struct intel_device_info *devinfo,
1392 err |= control(file, "negate", m_negate,
1394 err |= control(file, "abs", _abs, brw_inst_3src_src1_abs(devinfo, inst), NULL);
1396 err |= reg(file, _file, reg_nr);
1400 format(file, ".%d", subreg_nr);
1401 src_align1_region(file, _vert_stride, _width, _horiz_stride);
1403 err |= src_swizzle(file, brw_inst_3src_a16_src1_swizzle(devinfo, inst));
1404 string(file, brw_reg_type_to_letters(type));
1409 src2_3src(FILE *file, const struct intel_device_info *devinfo,
1437 format(file, "%dW", imm_val);
1439 format(file, "0x%04xUW", imm_val);
1441 format(file, "0x%04xHF", imm_val);
1480 err |= control(file, "negate", m_negate,
1482 err |= control(file, "abs", _abs, brw_inst_3src_src2_abs(devinfo, inst), NULL);
1484 err |= reg(file, _file, reg_nr);
1488 format(file, ".%d", subreg_nr);
1489 src_align1_region(file, _vert_stride, _width, _horiz_stride);
1491 err |= src_swizzle(file, brw_inst_3src_a16_src2_swizzle(devinfo, inst));
1492 string(file, brw_reg_type_to_letters(type));
1497 imm(FILE *file, const struct brw_isa_info *isa, enum brw_reg_type type,
1504 format(file, "0x%016"PRIx64"UQ", brw_inst_imm_uq(devinfo, inst));
1507 format(file, "0x%016"PRIx64"Q", brw_inst_imm_uq(devinfo, inst));
1510 format(file, "0x%08xUD", brw_inst_imm_ud(devinfo, inst));
1513 format(file, "%dD", brw_inst_imm_d(devinfo, inst));
1516 format(file, "0x%04xUW", (uint16_t) brw_inst_imm_ud(devinfo, inst));
1519 format(file, "%dW", (int16_t) brw_inst_imm_d(devinfo, inst));
1522 format(file, "0x%08xUV", brw_inst_imm_ud(devinfo, inst));
1525 format(file, "0x%"PRIx64"VF", brw_inst_bits(inst, 127, 96));
1526 pad(file, 48);
1527 format(file, "/* [%-gF, %-gF, %-gF, %-gF]VF */",
1534 format(file, "0x%08xV", brw_inst_imm_ud(devinfo, inst));
1541 format(file, "0x%"PRIx64"F", brw_inst_bits(inst, 127, 64));
1542 pad(file, 48);
1543 format(file, "/* %-gF */", brw_inst_imm_df(devinfo, inst));
1545 format(file, "0x%"PRIx64"F", brw_inst_bits(inst, 127, 96));
1546 pad(file, 48);
1547 format(file, " /* %-gF */", brw_inst_imm_f(devinfo, inst));
1551 format(file, "0x%016"PRIx64"DF", brw_inst_bits(inst, 127, 64));
1552 pad(file, 48);
1553 format(file, "/* %-gDF */", brw_inst_imm_df(devinfo, inst));
1556 string(file, "Half Float IMM");
1561 format(file, "*** invalid immediate type %d ", type);
1567 src_sends_da(FILE *file,
1576 err |= reg(file, _reg_file, _reg_nr);
1580 format(file, ".1");
1581 string(file, brw_reg_type_to_letters(type));
1587 src_sends_ia(FILE *file,
1593 string(file, "g[a0");
1595 format(file, ".1");
1597 format(file, " %d", _addr_imm);
1598 string(file, "]");
1599 string(file, brw_reg_type_to_letters(type));
1605 src_send_desc_ia(FILE *file,
1609 string(file, "a0");
1611 format(file, ".%d", _addr_subreg_nr);
1612 format(file, "<0>UD");
1618 src0(FILE *file, const struct brw_isa_info *isa, const brw_inst *inst)
1624 return src_sends_da(file,
1631 return src_sends_da(file,
1638 return src_sends_ia(file,
1645 return imm(file, isa, brw_inst_src0_type(devinfo, inst), inst);
1648 return src_da1(file,
1661 return src_ia1(file,
1675 return src_da16(file,
1690 string(file, "Indirect align16 address mode not supported");
1697 src1(FILE *file, const struct brw_isa_info *isa, const brw_inst *inst)
1702 return src_sends_da(file,
1709 return imm(file, isa, brw_inst_src1_type(devinfo, inst), inst);
1712 return src_da1(file,
1725 return src_ia1(file,
1739 return src_da16(file,
1754 string(file, "Indirect align16 address mode not supported");
1761 qtr_ctrl(FILE *file, const struct intel_device_info *devinfo,
1770 format(file, " %dN", qtr_ctl * 2 + nib_ctl + 1);
1774 string(file, " 1Q");
1777 string(file, " 2Q");
1780 string(file, " 3Q");
1783 string(file, " 4Q");
1788 string(file, " 1H");
1790 string(file, " 2H");
1796 swsb(FILE *file, const struct brw_isa_info *isa, const brw_inst *inst)
1803 format(file, " %s@%d",
1810 format(file, " $%d%s", swsb.sbid,
1829 write_label(FILE *file, const struct intel_device_info *devinfo,
1838 format(file, " LABEL%d", label->number);
1847 FILE *file)
1852 format(file, "base_offset %u ",
1857 format(file, "surface_state_index %u ",
1861 format(file, "BTI %u ",
1863 format(file, "base_offset %u ",
1867 format(file, "unsupported address surface type %d", addr_type);
1888 brw_disassemble_inst(FILE *file, const struct brw_isa_info *isa,
1901 string(file, "(");
1902 err |= control(file, "predicate inverse", pred_inv,
1904 format(file, "f%"PRIu64".%"PRIu64,
1908 err |= control(file, "predicate control align1", pred_ctrl_align1,
1911 err |= control(file, "predicate control align16", pred_ctrl_align16,
1914 string(file, ") ");
1917 err |= print_opcode(file, isa, opcode);
1920 err |= control(file, "saturate", saturate, brw_inst_saturate(devinfo, inst),
1923 err |= control(file, "debug control", debug_ctrl,
1927 string(file, " ");
1928 err |= control(file, "function", math_function,
1932 string(file, " ");
1933 err |= control(file, "function", sync_function,
1937 err |= control(file, "conditional modifier", conditional_modifier,
1949 format(file, ".f%"PRIu64".%"PRIu64,
1956 string(file, "(");
1957 err |= control(file, "execution size", exec_size,
1959 string(file, ")");
1963 format(file, " %"PRIu64, brw_inst_base_mrf(devinfo, inst));
1967 pad(file, 16);
1968 string(file, "JIP: ");
1969 write_label(file, devinfo, root_label, offset, brw_inst_jip(devinfo, inst));
1971 pad(file, 38);
1972 string(file, "UIP: ");
1973 write_label(file, devinfo, root_label, offset, brw_inst_uip(devinfo, inst));
1982 pad(file, 16);
1983 string(file, "JIP: ");
1984 write_label(file, devinfo, root_label, offset, jip);
1988 pad(file, 16);
1989 format(file, "Jump: %d", brw_inst_gfx4_jump_count(devinfo, inst));
1990 pad(file, 32);
1991 format(file, "Pop: %"PRIu64, brw_inst_gfx4_pop_count(devinfo, inst));
1996 pad(file, 16);
1997 format(file, "Jump: %d", brw_inst_gfx4_jump_count(devinfo, inst));
1999 pad(file, 16);
2000 format(file, "Pop: %"PRIu64, brw_inst_gfx4_pop_count(devinfo, inst));
2002 pad(file, 16);
2003 err |= src1(file, isa, inst);
2005 pad(file, 16);
2006 err |= dest_3src(file, devinfo, inst);
2008 pad(file, 32);
2009 err |= src0_3src(file, devinfo, inst);
2011 pad(file, 48);
2012 err |= src1_3src(file, devinfo, inst);
2014 pad(file, 64);
2015 err |= src2_3src(file, devinfo, inst);
2018 pad(file, 16);
2019 err |= dest(file, isa, inst);
2023 pad(file, 32);
2024 err |= src0(file, isa, inst);
2028 pad(file, 48);
2029 err |= src1(file, isa, inst);
2039 pad(file, 64);
2042 err |= src_send_desc_ia(file, devinfo, 0);
2046 fprintf(file, "0x%08"PRIx32, imm_desc);
2049 pad(file, 80);
2052 err |= src_send_desc_ia(file, devinfo,
2057 fprintf(file, "0x%08"PRIx32, imm_ex_desc);
2062 pad(file, 48);
2063 err |= src1(file, isa, inst);
2064 pad(file, 64);
2068 pad(file, 48);
2072 fprintf(file, "0x%08"PRIx64, inst->data[1] >> 32);
2075 newline(file);
2076 pad(file, 16);
2079 fprintf(file, " ");
2080 err |= control(file, "SFID", devinfo->ver >= 6 ? gfx6_sfid : gfx4_sfid,
2082 string(file, " MsgDesc:");
2085 format(file, " indirect");
2090 err |= control(file, "math function", math_function,
2092 err |= control(file, "math saturate", math_saturate,
2094 err |= control(file, "math signed", math_signed,
2096 err |= control(file, "math scalar", math_scalar,
2098 err |= control(file, "math precision", math_precision,
2103 err |= control(file, "sampler message", gfx5_sampler_msg_type,
2106 err |= control(file, "sampler simd mode", gfx5_sampler_simd_mode,
2111 string(file, " HP");
2113 format(file, " Surface = %u Sampler = %u",
2117 format(file, " (bti %u, sampler %u, msg_type %u, ",
2122 err |= control(file, "sampler target format",
2127 string(file, ")");
2134 format(file, " (bti %u, msg_ctrl %u, msg_type %u, write_commit %u)",
2142 err |= control(file, "DP read message type",
2148 format(file, " MsgCtrl = 0x%u",
2151 format(file, " Surface = %u",
2160 err |= control(file, "DP rc message type",
2168 err |= control(file, "RT message type", m_rt_write_subtype,
2171 string(file, " Hi");
2173 string(file, " LastRT");
2176 string(file, " CoarseWrite");
2179 string(file, " WriteCommit");
2181 format(file, " MsgCtrl = 0x%u",
2185 format(file, " Surface = %u",
2193 format(file, " offset %"PRIu64, brw_inst_urb_global_offset(devinfo, inst));
2197 err |= control(file, "urb opcode",
2204 string(file, " per-slot");
2210 string(file, " masked");
2212 err |= control(file, "urb swizzle", urb_swizzle,
2218 err |= control(file, "urb allocate", urb_allocate,
2220 err |= control(file, "urb used", urb_used,
2224 err |= control(file, "urb complete", urb_complete,
2233 format(file, " (%s)",
2241 format(file, " (");
2243 err |= control(file, "operation", lsc_operation,
2245 format(file, ",");
2246 err |= control(file, "addr_size", lsc_addr_size,
2251 format(file, ",");
2252 err |= control(file, "scope", lsc_fence_scope,
2255 format(file, ",");
2256 err |= control(file, "flush_type", lsc_flush_type,
2259 format(file, ",");
2260 err |= control(file, "backup_mode_fence_routing",
2265 format(file, ",");
2266 err |= control(file, "data_size", lsc_data_size,
2269 format(file, ",");
2271 err |= control(file, "component_mask",
2276 err |= control(file, "vector_size",
2281 format(file, ", transpose");
2286 format(file, ",");
2287 err |= control(file, "cache_load",
2293 format(file, ",");
2294 err |= control(file, "cache_store",
2301 format(file, " dst_len = %u,", lsc_msg_desc_dest_len(devinfo, imm_desc));
2302 format(file, " src0_len = %u,", lsc_msg_desc_src0_len(devinfo, imm_desc));
2303 format(file, " src1_len = %d", brw_message_ex_desc_ex_mlen(devinfo, imm_ex_desc));
2304 err |= control(file, "address_type", lsc_addr_surface_type,
2306 format(file, " )");
2312 format(file, " (");
2315 err |= control(file, "DP DC0 message type",
2319 format(file, ", bti %u, ",
2324 control(file, "atomic op", aop,
2332 format(file, "owords = %s, aligned = %d",
2337 format(file, "%u",
2340 format(file, ")");
2348 format(file, " (");
2353 err |= control(file, "DP DC1 message type",
2357 format(file, ", Surface = %u, ",
2364 format(file, "SIMD%d,", (msg_ctrl & (1 << 4)) ? 8 : 16);
2371 control(file, "atomic op", aop, msg_ctrl & 0xf, &space);
2380 format(file, "SIMD%s, Mask = 0x%x",
2387 format(file, "SIMD%d,", (msg_ctrl & (1 << 4)) ? 8 : 16);
2388 control(file, "atomic float op", aop_float, msg_ctrl & 0xf,
2394 format(file, "owords = %s, aligned = %d",
2398 format(file, "0x%x", msg_ctrl);
2400 format(file, ")");
2409 format(file, " (%s, %s, 0x%02"PRIx64")",
2420 format(file, " SIMD%d,",
2433 format(file, "unsupported shared function ID %d", sfid);
2436 string(file, " ");
2439 lsc_disassemble_ex_desc(devinfo, imm_desc, imm_ex_desc, file);
2442 format(file, "mlen %u", brw_message_desc_mlen(devinfo, imm_desc));
2444 format(file, " ex_mlen %u",
2448 format(file, " rlen %u", brw_message_desc_rlen(devinfo, imm_desc));
2451 pad(file, 64);
2453 string(file, "{");
2455 err |= control(file, "access mode", access_mode,
2458 err |= control(file, "write enable control", wectrl,
2461 err |= control(file, "mask control", mask_ctrl,
2466 err |= control(file, "dependency control", dep_ctrl,
2472 err |= qtr_ctrl(file, devinfo, inst);
2478 format(file, " compr4");
2480 err |= control(file, "compression control", compr_ctrl,
2486 err |= swsb(file, isa, inst);
2488 err |= control(file, "compaction", cmpt_ctrl, is_compacted, &space);
2489 err |= control(file, "thread control", thread_ctrl,
2494 err |= control(file, "branch ctrl", branch_ctrl,
2497 err |= control(file, "acc write control", accwr,
2501 err |= control(file, "end of thread", end_of_thread,
2504 string(file, " ");
2505 string(file, "}");
2507 string(file, ";");
2508 newline(file);