Lines Matching refs:new_insn

778 	ir_insn *insn, *new_insn;  in ir_schedule()  local
1046 new_insn = &new_ctx.ir_base[ref]; in ir_schedule()
1048 memcpy(new_insn, insn, sizeof(ir_insn) * (IR_TRUE - ref)); in ir_schedule()
1051 if (new_insn->op == IR_FUNC_ADDR) { in ir_schedule()
1052 if (new_insn->proto) { in ir_schedule()
1054 const char *proto = ir_get_strl(ctx, new_insn->proto, &len); in ir_schedule()
1055 new_insn->proto = ir_strl(&new_ctx, proto, len); in ir_schedule()
1057 } else if (new_insn->op == IR_FUNC) { in ir_schedule()
1058 new_insn->val.u64 = ir_str(&new_ctx, ir_get_str(ctx, new_insn->val.name)); in ir_schedule()
1059 if (new_insn->proto) { in ir_schedule()
1061 const char *proto = ir_get_strl(ctx, new_insn->proto, &len); in ir_schedule()
1062 new_insn->proto = ir_strl(&new_ctx, proto, len); in ir_schedule()
1064 } else if (new_insn->op == IR_SYM || new_insn->op == IR_STR) { in ir_schedule()
1065 new_insn->val.u64 = ir_str(&new_ctx, ir_get_str(ctx, new_insn->val.name)); in ir_schedule()
1067 new_insn++; in ir_schedule()
1073 new_insn = &new_ctx.ir_base[new_ref]; in ir_schedule()
1078 new_insn->optx = insn->optx; in ir_schedule()
1079 new_insn->prev_const = 0; in ir_schedule()
1081 new_insn->val.u64 = insn->val.u64; in ir_schedule()
1085 new_insn->proto = ir_strl(&new_ctx, proto, len); in ir_schedule()
1087 new_insn->proto = 0; in ir_schedule()
1090 new_insn->val.u64 = ir_str(&new_ctx, ir_get_str(ctx, insn->val.name)); in ir_schedule()
1094 new_insn->proto = ir_strl(&new_ctx, proto, len); in ir_schedule()
1096 new_insn->proto = 0; in ir_schedule()
1099 new_insn->val.u64 = ir_str(&new_ctx, ir_get_str(ctx, insn->val.name)); in ir_schedule()
1101 new_insn->val.u64 = insn->val.u64; in ir_schedule()
1105 new_insn--; in ir_schedule()
1152 new_insn = &new_ctx.ir_base[new_ref]; in ir_schedule()
1154 new_insn->optx = insn->optx; in ir_schedule()
1155 n = new_insn->inputs_count; in ir_schedule()
1158 new_insn->op1 = insn->op1; in ir_schedule()
1159 new_insn->op2 = insn->op2; in ir_schedule()
1160 new_insn->op3 = insn->op3; in ir_schedule()
1163 new_insn->op1 = _xlat[insn->op1]; in ir_schedule()
1164 if (new_insn->op == IR_PARAM || insn->op == IR_VAR) { in ir_schedule()
1165 new_insn->op2 = ir_str(&new_ctx, ir_get_str(ctx, insn->op2)); in ir_schedule()
1166 } else if (new_insn->op == IR_PROTO) { in ir_schedule()
1169 new_insn->op2 = ir_strl(&new_ctx, proto, len); in ir_schedule()
1171 new_insn->op2 = insn->op2; in ir_schedule()
1173 new_insn->op3 = insn->op3; in ir_schedule()
1176 new_insn->op1 = _xlat[insn->op1]; in ir_schedule()
1177 new_insn->op2 = _xlat[insn->op2]; in ir_schedule()
1178 new_insn->op3 = insn->op3; in ir_schedule()
1181 if (new_insn->op1 < new_insn->op2) { in ir_schedule()
1182 switch (new_insn->op) { in ir_schedule()
1194 SWAP_REFS(new_insn->op1, new_insn->op2); in ir_schedule()
1204 SWAP_REFS(new_insn->op1, new_insn->op2); in ir_schedule()
1205 new_insn->op ^= 3; /* [U]LT <-> [U]GT, [U]LE <-> [U]GE */ in ir_schedule()
1212 new_insn->op1 = _xlat[insn->op1]; in ir_schedule()
1213 new_insn->op2 = _xlat[insn->op2]; in ir_schedule()
1214 new_insn->op3 = _xlat[insn->op3]; in ir_schedule()
1217 for (j = n, p = insn->ops + 1, q = new_insn->ops + 1; j > 0; p++, q++, j--) { in ir_schedule()