Home | History | Annotate | Download | only in compiler

Lines Matching defs:merge

8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
766 /* Take two instructions and attempt to merge their raddr fields
907 struct v3d_qpu_instr merge = *a;
913 merge.alu.add = b->alu.add;
915 merge.flags.ac = b->flags.ac;
916 merge.flags.apf = b->flags.apf;
917 merge.flags.auf = b->flags.auf;
924 * so we can merge.
931 merge.alu.mul = mul_inst.alu.mul;
933 merge.flags.mc = b->flags.ac;
934 merge.flags.mpf = b->flags.apf;
935 merge.flags.muf = b->flags.auf;
944 merge = mul_inst;
945 merge.alu.add = b->alu.add;
947 merge.flags.ac = b->flags.ac;
948 merge.flags.apf = b->flags.apf;
949 merge
961 merge.alu.mul = b->alu.mul;
963 merge.flags.mc = b->flags.mc;
964 merge.flags.mpf = b->flags.mpf;
965 merge.flags.muf = b->flags.muf;
972 !qpu_merge_raddrs(&merge, add_instr, mul_instr)) {
976 merge.sig.thrsw |= b->sig.thrsw;
977 merge.sig.ldunif |= b->sig.ldunif;
978 merge.sig.ldunifrf |= b->sig.ldunifrf;
979 merge.sig.ldunifa |= b->sig.ldunifa;
980 merge.sig.ldunifarf |= b->sig.ldunifarf;
981 merge.sig.ldtmu |= b->sig.ldtmu;
982 merge.sig.ldvary |= b->sig.ldvary;
983 merge.sig.ldvpm |= b->sig.ldvpm;
984 merge.sig.small_imm |= b->sig.small_imm;
985 merge.sig.ldtlb |= b->sig.ldtlb;
986 merge.sig.ldtlbu |= b->sig.ldtlbu;
987 merge.sig.ucb |= b->sig.ucb;
988 merge.sig.rotate |= b->sig.rotate;
989 merge.sig.wrtmuc |= b->sig.wrtmuc;
994 merge.sig_addr |= b->sig_addr;
995 merge.sig_magic |= b->sig_magic;
998 bool ok = v3d_qpu_instr_pack(devinfo, &merge, &packed);
1000 *result = merge;
1151 /* Don't merge TLB instructions before we have acquired
1158 * to merge it into the previous instruction if
1180 /* Don't merge an instruction that stalls */
1538 * This is called when trying to merge a thrsw back into the instruction stream
1598 /* We merge thrsw instructions back into the instruction stream
1975 * we will be able to pick up to merge into 'inst', leading to code like this:
2092 struct schedule_node *merge = NULL;
2110 * we're done identifying instructions to merge, so put the
2123 while ((merge =
2126 time = MAX2(merge->unblocked_time, time);
2127 pre_remove_head(scoreboard->dag, merge);
2128 list_addtail(&merge->link, &merged_list);
2130 inst, &merge->inst->qpu);
2131 if (merge->inst->uniform != -1) {
2133 merge->inst->uniform;
2139 v3d_qpu_dump(devinfo, &merge->inst->qpu);
2150 * now so we can try to merge the
2157 time, merge);
2191 list_for_each_entry(struct schedule_node, merge, &merged_list,
2193 mark_instruction_scheduled(devinfo, scoreboard->dag, time, merge);
2198 free(merge->inst);