Lines Matching refs:i1
165 const struct instruction *i1 = _i1;
170 if (i1->opcode != i2->opcode)
171 return i1->opcode < i2->opcode ? -1 : 1;
173 switch (i1->opcode) {
181 if (i1->src1 == i2->src2 && i1->src2 == i2->src1)
186 if (i1->src3 != i2->src3)
187 return i1->src3 < i2->src3 ? -1 : 1;
210 if (i1->src2 != i2->src2)
211 return i1->src2 < i2->src2 ? -1 : 1;
218 if (i1->src1 != i2->src1)
219 return i1->src1 < i2->src1 ? -1 : 1;
223 if (i1->bb_true != i2->bb_true)
224 return i1->bb_true < i2->bb_true ? -1 : 1;
228 if (i1->val != i2->val)
229 return i1->val < i2->val ? -1 : 1;
233 diff = memcmp(&i1->fvalue, &i2->fvalue, sizeof(i1->fvalue));
240 return phi_list_compare(i1->phi_list, i2->phi_list);
246 if (i1->src != i2->src)
247 return i1->src < i2->src ? -1 : 1;
254 size1 = i1->orig_type->bit_size;
261 warning(i1->pos, "bad instruction on hash chain");
263 if (i1->size != i2->size)
264 return i1->size < i2->size ? -1 : 1;
301 static struct instruction * try_to_cse(struct entrypoint *ep, struct instruction *i1, struct instruction *i2)
306 * OK, i1 and i2 are the same instruction, modulo "target".
309 b1 = i1->bb;
319 if (insn == i1)
320 return cse_one_instruction(i2, i1);
322 return cse_one_instruction(i1, i2);
325 return i1;
328 return cse_one_instruction(i2, i1);
331 return cse_one_instruction(i1, i2);
336 i1 = cse_one_instruction(i2, i1);
337 remove_instruction(&b1->insns, i1, 1);
338 insert_last_instruction(common, i1);
340 i1 = i2;
343 return i1;