/third_party/mesa3d/src/intel/compiler/ |
D | brw_fs_lower_regioning.cpp | 39 is_byte_raw_mov(const fs_inst *inst) in is_byte_raw_mov() argument 41 return type_sz(inst->dst.type) == 1 && in is_byte_raw_mov() 42 inst->opcode == BRW_OPCODE_MOV && in is_byte_raw_mov() 43 inst->src[0].type == inst->dst.type && in is_byte_raw_mov() 44 !inst->saturate && in is_byte_raw_mov() 45 !inst->src[0].negate && in is_byte_raw_mov() 46 !inst->src[0].abs; in is_byte_raw_mov() 54 required_dst_byte_stride(const fs_inst *inst) in required_dst_byte_stride() argument 56 if (inst->dst.is_accumulator()) { in required_dst_byte_stride() 69 return inst->dst.stride * type_sz(inst->dst.type); in required_dst_byte_stride() [all …]
|
D | brw_vec4_copy_propagation.cpp | 44 is_direct_copy(vec4_instruction *inst) in is_direct_copy() argument 46 return (inst->opcode == BRW_OPCODE_MOV && in is_direct_copy() 47 !inst->predicate && in is_direct_copy() 48 inst->dst.file == VGRF && in is_direct_copy() 49 inst->dst.offset % REG_SIZE == 0 && in is_direct_copy() 50 !inst->dst.reladdr && in is_direct_copy() 51 !inst->src[0].reladdr && in is_direct_copy() 52 (inst->dst.type == inst->src[0].type || in is_direct_copy() 53 (inst->dst.type == BRW_REGISTER_TYPE_F && in is_direct_copy() 54 inst->src[0].type == BRW_REGISTER_TYPE_VF))); in is_direct_copy() [all …]
|
D | brw_fs_cmod_propagation.cpp | 55 fs_inst *inst) in cmod_propagate_cmp_to_add() argument 58 const unsigned flags_written = inst->flags_written(devinfo); in cmod_propagate_cmp_to_add() 60 foreach_inst_in_block_reverse_starting_from(fs_inst, scan_inst, inst) { in cmod_propagate_cmp_to_add() 63 scan_inst->exec_size == inst->exec_size) { in cmod_propagate_cmp_to_add() 71 if ((inst->src[0].equals(scan_inst->src[0]) && in cmod_propagate_cmp_to_add() 72 inst->src[1].negative_equals(scan_inst->src[1])) || in cmod_propagate_cmp_to_add() 73 (inst->src[0].equals(scan_inst->src[1]) && in cmod_propagate_cmp_to_add() 74 inst->src[1].negative_equals(scan_inst->src[0]))) { in cmod_propagate_cmp_to_add() 76 } else if ((inst->src[0].negative_equals(scan_inst->src[0]) && in cmod_propagate_cmp_to_add() 77 inst->src[1].equals(scan_inst->src[1])) || in cmod_propagate_cmp_to_add() [all …]
|
D | brw_eu_validate.c | 82 struct string __msg = func(devinfo, inst, ##args); \ 93 inst_is_send(const struct intel_device_info *devinfo, const brw_inst *inst) in inst_is_send() argument 95 switch (brw_inst_opcode(devinfo, inst)) { in inst_is_send() 108 const brw_inst *inst) in inst_is_split_send() argument 111 return inst_is_send(devinfo, inst); in inst_is_split_send() 113 switch (brw_inst_opcode(devinfo, inst)) { in inst_is_split_send() 136 inst_dst_type(const struct intel_device_info *devinfo, const brw_inst *inst) in inst_dst_type() argument 138 return (devinfo->ver < 12 || !inst_is_send(devinfo, inst)) ? in inst_dst_type() 139 brw_inst_dst_type(devinfo, inst) : BRW_REGISTER_TYPE_D; in inst_dst_type() 143 inst_is_raw_move(const struct intel_device_info *devinfo, const brw_inst *inst) in inst_is_raw_move() argument [all …]
|
D | brw_fs_copy_propagation.cpp | 203 foreach_inst_in_block(fs_inst, inst, block) { in setup_initial_values() 204 if (inst->dst.file != VGRF) in setup_initial_values() 207 unsigned idx = reg_space(inst->dst) & (acp_table_size - 1); in setup_initial_values() 209 if (regions_overlap(inst->dst, inst->size_written, in setup_initial_values() 229 foreach_inst_in_block(fs_inst, inst, block) { in setup_initial_values() 230 if (inst->dst.file != VGRF && in setup_initial_values() 231 inst->dst.file != FIXED_GRF) in setup_initial_values() 234 unsigned idx = reg_space(inst->dst) & (acp_table_size - 1); in setup_initial_values() 236 if (regions_overlap(inst->dst, inst->size_written, in setup_initial_values() 371 can_take_stride(fs_inst *inst, brw_reg_type dst_type, in can_take_stride() argument [all …]
|
D | brw_vec4.cpp | 413 foreach_inst_in_block_safe(vec4_instruction, inst, block) { in opt_vector_float() 422 if (inst->opcode == BRW_OPCODE_MOV && in opt_vector_float() 423 inst->src[0].file == IMM && in opt_vector_float() 424 inst->predicate == BRW_PREDICATE_NONE && in opt_vector_float() 425 inst->dst.writemask != WRITEMASK_XYZW && in opt_vector_float() 426 type_sz(inst->src[0].type) < 8 && in opt_vector_float() 427 (inst->src[0].type == inst->dst.type || inst->src[0].d == 0)) { in opt_vector_float() 429 vf = brw_float_to_vf(inst->src[0].d); in opt_vector_float() 433 vf = brw_float_to_vf(inst->src[0].f); in opt_vector_float() 444 if (last_reg != inst->dst.nr || in opt_vector_float() [all …]
|
D | brw_schedule_instructions.cpp | 66 schedule_node(backend_instruction *inst, instruction_scheduler *sched); 71 backend_instruction *inst; member in schedule_node 125 switch (inst->opcode) { in set_latency_gfx4() 160 switch (inst->opcode) { in set_latency_gfx7() 384 switch (inst->sfid) { in set_latency_gfx7() 386 unsigned msg_type = (inst->desc >> 12) & 0x1f; in set_latency_gfx7() 403 switch (brw_fb_desc_msg_type(devinfo, inst->desc)) { in set_latency_gfx7() 428 switch ((inst->desc >> 14) & 0x1f) { in set_latency_gfx7() 498 switch ((inst->desc >> 14) & 0x1f) { in set_latency_gfx7() 534 switch (lsc_msg_desc_opcode(devinfo, inst->desc)) { in set_latency_gfx7() [all …]
|
/third_party/mesa3d/src/gallium/drivers/r300/compiler/ |
D | radeon_program_alu.c | 197 static int is_dst_safe_to_reuse(struct rc_instruction *inst) in is_dst_safe_to_reuse() argument 199 const struct rc_opcode_info *info = rc_get_opcode_info(inst->U.I.Opcode); in is_dst_safe_to_reuse() 204 if (inst->U.I.DstReg.File != RC_FILE_TEMPORARY) in is_dst_safe_to_reuse() 208 if (inst->U.I.SrcReg[i].File == RC_FILE_TEMPORARY && in is_dst_safe_to_reuse() 209 inst->U.I.SrcReg[i].Index == inst->U.I.DstReg.Index) in is_dst_safe_to_reuse() 217 struct rc_instruction *inst) in try_to_reuse_dst() argument 221 if (is_dst_safe_to_reuse(inst)) in try_to_reuse_dst() 222 tmp = inst->U.I.DstReg.Index; in try_to_reuse_dst() 226 return dstregtmpmask(tmp, inst->U.I.DstReg.WriteMask); in try_to_reuse_dst() 230 struct rc_instruction* inst) in transform_ABS() argument [all …]
|
D | r500_fragprog.c | 66 struct rc_instruction * inst; in r500_transform_IF() local 86 for (inst = writer->Inst; inst != inst_if; inst = inst->Next) { in r500_transform_IF() 88 rc_get_opcode_info(inst->U.I.Opcode); in r500_transform_IF() 373 uint32_t inst; in r500FragmentProgramDump() local 379 inst0 = inst = code->inst[n].inst0; in r500FragmentProgramDump() 380 fprintf(stderr,"%d\t0:CMN_INST 0x%08x:", n, inst); in r500FragmentProgramDump() 381 switch(inst & 0x3) { in r500FragmentProgramDump() 388 inst & R500_INST_TEX_SEM_WAIT ? "TEX_WAIT" : "", in r500FragmentProgramDump() 389 inst & R500_INST_LAST ? "LAST" : "", in r500FragmentProgramDump() 390 inst & R500_INST_NOP ? "NOP" : "", in r500FragmentProgramDump() [all …]
|
D | r500_fragprog_emit.c | 161 static unsigned int translate_arg_rgb(struct rc_pair_instruction *inst, int arg) in translate_arg_rgb() argument 163 unsigned int t = inst->RGB.Arg[arg].Source; in translate_arg_rgb() 165 t |= inst->RGB.Arg[arg].Negate << 11; in translate_arg_rgb() 166 t |= inst->RGB.Arg[arg].Abs << 12; in translate_arg_rgb() 169 t |= fix_hw_swizzle(GET_SWZ(inst->RGB.Arg[arg].Swizzle, comp)) << (3*comp + 2); in translate_arg_rgb() 174 static unsigned int translate_arg_alpha(struct rc_pair_instruction *inst, int i) in translate_arg_alpha() argument 176 unsigned int t = inst->Alpha.Arg[i].Source; in translate_arg_alpha() 177 t |= fix_hw_swizzle(GET_SWZ(inst->Alpha.Arg[i].Swizzle, 0)) << 2; in translate_arg_alpha() 178 t |= inst->Alpha.Arg[i].Negate << 5; in translate_arg_alpha() 179 t |= inst->Alpha.Arg[i].Abs << 6; in translate_arg_alpha() [all …]
|
/third_party/mesa3d/src/gallium/drivers/vc4/ |
D | vc4_opt_algebraic.c | 41 dump_from(struct vc4_compile *c, struct qinst *inst) in dump_from() argument 47 qir_dump_inst(c, inst); in dump_from() 52 dump_to(struct vc4_compile *c, struct qinst *inst) in dump_to() argument 58 qir_dump_inst(c, inst); in dump_to() 94 replace_with_mov(struct vc4_compile *c, struct qinst *inst, struct qreg arg) in replace_with_mov() argument 96 dump_from(c, inst); in replace_with_mov() 98 inst->src[0] = arg; in replace_with_mov() 99 if (qir_has_implicit_tex_uniform(inst)) in replace_with_mov() 100 inst->src[1] = inst->src[qir_get_tex_uniform_src(inst)]; in replace_with_mov() 102 if (qir_is_mul(inst)) in replace_with_mov() [all …]
|
D | vc4_qpu.c | 33 set_src_raddr(uint64_t inst, struct qpu_reg src) in set_src_raddr() argument 36 assert(QPU_GET_FIELD(inst, QPU_RADDR_A) == QPU_R_NOP || in set_src_raddr() 37 QPU_GET_FIELD(inst, QPU_RADDR_A) == src.addr); in set_src_raddr() 38 return QPU_UPDATE_FIELD(inst, src.addr, QPU_RADDR_A); in set_src_raddr() 42 assert((QPU_GET_FIELD(inst, QPU_RADDR_B) == QPU_R_NOP || in set_src_raddr() 43 QPU_GET_FIELD(inst, QPU_RADDR_B) == src.addr) && in set_src_raddr() 44 QPU_GET_FIELD(inst, QPU_SIG) != QPU_SIG_SMALL_IMM); in set_src_raddr() 45 return QPU_UPDATE_FIELD(inst, src.addr, QPU_RADDR_B); in set_src_raddr() 49 if (QPU_GET_FIELD(inst, QPU_SIG) == QPU_SIG_SMALL_IMM) { in set_src_raddr() 50 assert(QPU_GET_FIELD(inst, QPU_RADDR_B) == src.addr); in set_src_raddr() [all …]
|
D | vc4_qpu_validate.c | 30 fail_instr(uint64_t inst, const char *msg) in fail_instr() argument 33 vc4_qpu_disasm(&inst, 1); in fail_instr() 39 writes_reg(uint64_t inst, uint32_t w) in writes_reg() argument 41 return (QPU_GET_FIELD(inst, QPU_WADDR_ADD) == w || in writes_reg() 42 QPU_GET_FIELD(inst, QPU_WADDR_MUL) == w); in writes_reg() 46 _reads_reg(uint64_t inst, uint32_t r, bool ignore_a, bool ignore_b) in _reads_reg() argument 51 { QPU_GET_FIELD(inst, QPU_ADD_A) }, in _reads_reg() 52 { QPU_GET_FIELD(inst, QPU_ADD_B) }, in _reads_reg() 53 { QPU_GET_FIELD(inst, QPU_MUL_A) }, in _reads_reg() 54 { QPU_GET_FIELD(inst, QPU_MUL_B) }, in _reads_reg() [all …]
|
/third_party/spirv-tools/source/opt/ |
D | eliminate_dead_members_pass.cpp | 42 for (auto& inst : get_module()->types_values()) { in FindLiveMembers() local 43 if (inst.opcode() == SpvOpSpecConstantOp) { in FindLiveMembers() 44 switch (inst.GetSingleWordInOperand(kSpecConstOpOpcodeIdx)) { in FindLiveMembers() 46 MarkMembersAsLiveForExtract(&inst); in FindLiveMembers() 60 } else if (inst.opcode() == SpvOpVariable) { in FindLiveMembers() 61 switch (inst.GetSingleWordInOperand(0)) { in FindLiveMembers() 64 MarkPointeeTypeAsFullUsed(inst.type_id()); in FindLiveMembers() 79 [this](const Instruction* inst) { FindLiveMembers(inst); }); in FindLiveMembers() argument 82 void EliminateDeadMembersPass::FindLiveMembers(const Instruction* inst) { in FindLiveMembers() argument 83 switch (inst->opcode()) { in FindLiveMembers() [all …]
|
D | value_number_table.cpp | 25 uint32_t ValueNumberTable::GetValueNumber(Instruction* inst) const { in GetValueNumber() 26 assert(inst->result_id() != 0 && in GetValueNumber() 30 auto result_id_to_val = id_to_value_.find(inst->result_id()); in GetValueNumber() 41 uint32_t ValueNumberTable::AssignValueNumber(Instruction* inst) { in AssignValueNumber() argument 43 uint32_t value = GetValueNumber(inst); in AssignValueNumber() 52 if (!context()->IsCombinatorInstruction(inst) && in AssignValueNumber() 53 !inst->IsOpenCL100DebugInstr()) { in AssignValueNumber() 55 id_to_value_[inst->result_id()] = value; in AssignValueNumber() 59 switch (inst->opcode()) { in AssignValueNumber() 64 id_to_value_[inst->result_id()] = value; in AssignValueNumber() [all …]
|
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/val/ |
D | validate_image.cpp | 98 const Instruction* inst = _.FindDef(id); in GetImageTypeInfo() local 99 assert(inst); in GetImageTypeInfo() 101 if (inst->opcode() == SpvOpTypeSampledImage) { in GetImageTypeInfo() 102 inst = _.FindDef(inst->word(2)); in GetImageTypeInfo() 103 assert(inst); in GetImageTypeInfo() 106 if (inst->opcode() != SpvOpTypeImage) return false; in GetImageTypeInfo() 108 const size_t num_words = inst->words().size(); in GetImageTypeInfo() 111 info->sampled_type = inst->word(2); in GetImageTypeInfo() 112 info->dim = static_cast<SpvDim>(inst->word(3)); in GetImageTypeInfo() 113 info->depth = inst->word(4); in GetImageTypeInfo() [all …]
|
/third_party/skia/third_party/externals/spirv-tools/source/val/ |
D | validate_image.cpp | 98 const Instruction* inst = _.FindDef(id); in GetImageTypeInfo() local 99 assert(inst); in GetImageTypeInfo() 101 if (inst->opcode() == SpvOpTypeSampledImage) { in GetImageTypeInfo() 102 inst = _.FindDef(inst->word(2)); in GetImageTypeInfo() 103 assert(inst); in GetImageTypeInfo() 106 if (inst->opcode() != SpvOpTypeImage) return false; in GetImageTypeInfo() 108 const size_t num_words = inst->words().size(); in GetImageTypeInfo() 111 info->sampled_type = inst->word(2); in GetImageTypeInfo() 112 info->dim = static_cast<SpvDim>(inst->word(3)); in GetImageTypeInfo() 113 info->depth = inst->word(4); in GetImageTypeInfo() [all …]
|
/third_party/spirv-tools/source/val/ |
D | validate_image.cpp | 93 const Instruction* inst = _.FindDef(id); in GetImageTypeInfo() local 94 assert(inst); in GetImageTypeInfo() 96 if (inst->opcode() == SpvOpTypeSampledImage) { in GetImageTypeInfo() 97 inst = _.FindDef(inst->word(2)); in GetImageTypeInfo() 98 assert(inst); in GetImageTypeInfo() 101 if (inst->opcode() != SpvOpTypeImage) return false; in GetImageTypeInfo() 103 const size_t num_words = inst->words().size(); in GetImageTypeInfo() 106 info->sampled_type = inst->word(2); in GetImageTypeInfo() 107 info->dim = static_cast<SpvDim>(inst->word(3)); in GetImageTypeInfo() 108 info->depth = inst->word(4); in GetImageTypeInfo() [all …]
|
D | validate_extensions.cpp | 52 SpvOp expected_opcode, const Instruction* inst, uint32_t word_index, in ValidateOperandForDebugInfo() argument 54 auto* operand = _.FindDef(inst->word(word_index)); in ValidateOperandForDebugInfo() 59 return _.diag(SPV_ERROR_INVALID_DATA, inst) in ValidateOperandForDebugInfo() 63 return _.diag(SPV_ERROR_INVALID_DATA, inst) in ValidateOperandForDebugInfo() 73 auto result = ValidateOperandForDebugInfo(_, NAME, opcode, inst, index, \ 84 const Instruction* inst, uint32_t word_index) { in DoesDebugInfoOperandMatchExpectation() argument 85 if (inst->words().size() <= word_index) return false; in DoesDebugInfoOperandMatchExpectation() 86 auto* debug_inst = _.FindDef(inst->word(word_index)); in DoesDebugInfoOperandMatchExpectation() 100 OpenCLDebugInfo100Instructions expected_debug_inst, const Instruction* inst, in ValidateDebugInfoOperand() argument 106 if (DoesDebugInfoOperandMatchExpectation(_, expectation, inst, word_index)) in ValidateDebugInfoOperand() [all …]
|
D | validate_composites.cpp | 36 const Instruction* inst, in GetExtractInsertValueType() argument 38 const SpvOp opcode = inst->opcode(); in GetExtractInsertValueType() 41 const uint32_t num_words = static_cast<uint32_t>(inst->words().size()); in GetExtractInsertValueType() 47 return _.diag(SPV_ERROR_INVALID_DATA, inst) in GetExtractInsertValueType() 49 << spvOpcodeString(inst->opcode()) << ", zero found"; in GetExtractInsertValueType() 52 return _.diag(SPV_ERROR_INVALID_DATA, inst) in GetExtractInsertValueType() 58 *member_type = _.GetTypeId(inst->word(composite_id_index)); in GetExtractInsertValueType() 60 return _.diag(SPV_ERROR_INVALID_DATA, inst) in GetExtractInsertValueType() 65 const uint32_t component_index = inst->word(word_index); in GetExtractInsertValueType() 73 return _.diag(SPV_ERROR_INVALID_DATA, inst) in GetExtractInsertValueType() [all …]
|
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/opt/ |
D | eliminate_dead_members_pass.cpp | 43 for (auto& inst : get_module()->types_values()) { in FindLiveMembers() local 44 if (inst.opcode() == SpvOpSpecConstantOp) { in FindLiveMembers() 45 switch (inst.GetSingleWordInOperand(kSpecConstOpOpcodeIdx)) { in FindLiveMembers() 47 MarkMembersAsLiveForExtract(&inst); in FindLiveMembers() 61 } else if (inst.opcode() == SpvOpVariable) { in FindLiveMembers() 62 switch (inst.GetSingleWordInOperand(0)) { in FindLiveMembers() 65 MarkPointeeTypeAsFullUsed(inst.type_id()); in FindLiveMembers() 70 if (inst.IsVulkanStorageBufferVariable()) in FindLiveMembers() 71 MarkPointeeTypeAsFullUsed(inst.type_id()); in FindLiveMembers() 84 [this](const Instruction* inst) { FindLiveMembers(inst); }); in FindLiveMembers() argument [all …]
|
D | value_number_table.cpp | 25 uint32_t ValueNumberTable::GetValueNumber(Instruction* inst) const { in GetValueNumber() 26 assert(inst->result_id() != 0 && in GetValueNumber() 30 auto result_id_to_val = id_to_value_.find(inst->result_id()); in GetValueNumber() 41 uint32_t ValueNumberTable::AssignValueNumber(Instruction* inst) { in AssignValueNumber() argument 43 uint32_t value = GetValueNumber(inst); in AssignValueNumber() 52 if (!context()->IsCombinatorInstruction(inst) && in AssignValueNumber() 53 !inst->IsCommonDebugInstr()) { in AssignValueNumber() 55 id_to_value_[inst->result_id()] = value; in AssignValueNumber() 59 switch (inst->opcode()) { in AssignValueNumber() 64 id_to_value_[inst->result_id()] = value; in AssignValueNumber() [all …]
|
/third_party/skia/third_party/externals/spirv-tools/source/opt/ |
D | eliminate_dead_members_pass.cpp | 43 for (auto& inst : get_module()->types_values()) { in FindLiveMembers() local 44 if (inst.opcode() == SpvOpSpecConstantOp) { in FindLiveMembers() 45 switch (inst.GetSingleWordInOperand(kSpecConstOpOpcodeIdx)) { in FindLiveMembers() 47 MarkMembersAsLiveForExtract(&inst); in FindLiveMembers() 61 } else if (inst.opcode() == SpvOpVariable) { in FindLiveMembers() 62 switch (inst.GetSingleWordInOperand(0)) { in FindLiveMembers() 65 MarkPointeeTypeAsFullUsed(inst.type_id()); in FindLiveMembers() 70 if (inst.IsVulkanStorageBufferVariable()) in FindLiveMembers() 71 MarkPointeeTypeAsFullUsed(inst.type_id()); in FindLiveMembers() 84 [this](const Instruction* inst) { FindLiveMembers(inst); }); in FindLiveMembers() argument [all …]
|
D | value_number_table.cpp | 25 uint32_t ValueNumberTable::GetValueNumber(Instruction* inst) const { in GetValueNumber() 26 assert(inst->result_id() != 0 && in GetValueNumber() 30 auto result_id_to_val = id_to_value_.find(inst->result_id()); in GetValueNumber() 41 uint32_t ValueNumberTable::AssignValueNumber(Instruction* inst) { in AssignValueNumber() argument 43 uint32_t value = GetValueNumber(inst); in AssignValueNumber() 52 if (!context()->IsCombinatorInstruction(inst) && in AssignValueNumber() 53 !inst->IsCommonDebugInstr()) { in AssignValueNumber() 55 id_to_value_[inst->result_id()] = value; in AssignValueNumber() 59 switch (inst->opcode()) { in AssignValueNumber() 64 id_to_value_[inst->result_id()] = value; in AssignValueNumber() [all …]
|
/third_party/mesa3d/src/gallium/drivers/etnaviv/ |
D | etnaviv_asm.c | 36 check_uniforms(const struct etna_inst *inst) in check_uniforms() argument 43 const struct etna_inst_src *src = &inst->src[i]; in check_uniforms() 62 etna_assemble(uint32_t *out, const struct etna_inst *inst) in etna_assemble() argument 65 if (inst->imm && inst->src[2].use) in etna_assemble() 68 if (!inst->halti5 && !check_uniforms(inst)) in etna_assemble() 71 assert(!(inst->opcode&~0x7f)); in etna_assemble() 73 out[0] = VIV_ISA_WORD_0_OPCODE(inst->opcode & 0x3f) | in etna_assemble() 74 VIV_ISA_WORD_0_COND(inst->cond) | in etna_assemble() 75 COND(inst->sat, VIV_ISA_WORD_0_SAT) | in etna_assemble() 76 COND(inst->dst.use, VIV_ISA_WORD_0_DST_USE) | in etna_assemble() [all …]
|