Home | History | Annotate | Download | only in Hexagon

Lines Matching refs:Hexagon

1 //===----- HexagonNewValueJump.cpp - Hexagon Backend New Value Jump -------===//
10 // This implements NewValueJump pass in Hexagon.
25 #include "Hexagon.h"
50 #define DEBUG_TYPE "hexagon-nvj"
86 return "Hexagon NewValueJump";
102 INITIALIZE_PASS_BEGIN(HexagonNewValueJump, "hexagon-nvj",
103 "Hexagon NewValueJump", false, false)
105 INITIALIZE_PASS_END(HexagonNewValueJump, "hexagon-nvj",
106 "Hexagon NewValueJump", false, false)
182 if (MII->getOpcode() == Hexagon::J2_call)
201 // The following pseudo Hexagon instructions sets "use" and "def"
205 if (MII->getOpcode() == Hexagon::LDriw_pred ||
206 MII->getOpcode() == Hexagon::STriw_pred)
230 ((MI->getOpcode() == Hexagon::C2_cmpeqi ||
231 MI->getOpcode() == Hexagon::C2_cmpgti) &&
301 case Hexagon::C2_cmpeq:
302 return taken ? Hexagon::J4_cmpeq_t_jumpnv_t
303 : Hexagon::J4_cmpeq_t_jumpnv_nt;
305 case Hexagon::C2_cmpeqi: {
307 return taken ? Hexagon::J4_cmpeqi_t_jumpnv_t
308 : Hexagon::J4_cmpeqi_t_jumpnv_nt;
310 return taken ? Hexagon::J4_cmpeqn1_t_jumpnv_t
311 : Hexagon::J4_cmpeqn1_t_jumpnv_nt;
314 case Hexagon::C2_cmpgt: {
316 return taken ? Hexagon::J4_cmplt_t_jumpnv_t
317 : Hexagon::J4_cmplt_t_jumpnv_nt;
319 return taken ? Hexagon::J4_cmpgt_t_jumpnv_t
320 : Hexagon::J4_cmpgt_t_jumpnv_nt;
323 case Hexagon::C2_cmpgti: {
325 return taken ? Hexagon::J4_cmpgti_t_jumpnv_t
326 : Hexagon::J4_cmpgti_t_jumpnv_nt;
328 return taken ? Hexagon::J4_cmpgtn1_t_jumpnv_t
329 : Hexagon::J4_cmpgtn1_t_jumpnv_nt;
332 case Hexagon::C2_cmpgtu: {
334 return taken ? Hexagon::J4_cmpltu_t_jumpnv_t
335 : Hexagon::J4_cmpltu_t_jumpnv_nt;
337 return taken ? Hexagon::J4_cmpgtu_t_jumpnv_t
338 : Hexagon::J4_cmpgtu_t_jumpnv_nt;
341 case Hexagon::C2_cmpgtui:
342 return taken ? Hexagon::J4_cmpgtui_t_jumpnv_t
343 : Hexagon::J4_cmpgtui_t_jumpnv_nt;
345 case Hexagon::C4_cmpneq:
346 return taken ? Hexagon::J4_cmpeq_f_jumpnv_t
347 : Hexagon::J4_cmpeq_f_jumpnv_nt;
349 case Hexagon::C4_cmplte:
351 return taken ? Hexagon::J4_cmplt_f_jumpnv_t
352 : Hexagon::J4_cmplt_f_jumpnv_nt;
353 return taken ? Hexagon::J4_cmpgt_f_jumpnv_t
354 : Hexagon::J4_cmpgt_f_jumpnv_nt;
356 case Hexagon::C4_cmplteu:
358 return taken ? Hexagon::J4_cmpltu_f_jumpnv_t
359 : Hexagon::J4_cmpltu_f_jumpnv_nt;
360 return taken ? Hexagon::J4_cmpgtu_f_jumpnv_t
361 : Hexagon::J4_cmpgtu_f_jumpnv_nt;
373 case Hexagon::C2_cmpeq:
374 case Hexagon::C2_cmpeqi:
375 case Hexagon::C2_cmpgt:
376 case Hexagon::C2_cmpgti:
377 case Hexagon::C2_cmpgtu:
378 case Hexagon::C2_cmpgtui:
379 case Hexagon::C4_cmpneq:
380 case Hexagon::C4_cmplte:
381 case Hexagon::C4_cmplteu:
392 DEBUG(dbgs() << "********** Hexagon New Value Jump **********\n"
449 (MI->getOpcode() == Hexagon::J2_jumpt ||
450 MI->getOpcode() == Hexagon::J2_jumpf ||
451 MI->getOpcode() == Hexagon::J2_jumptnewpt ||
452 MI->getOpcode() == Hexagon::J2_jumptnew ||
453 MI->getOpcode() == Hexagon::J2_jumpfnewpt ||
454 MI->getOpcode() == Hexagon::J2_jumpfnew)) {
490 if (MI->getOpcode() == Hexagon::J2_jumpf ||
491 MI->getOpcode() == Hexagon::J2_jumpfnewpt ||
492 MI->getOpcode() == Hexagon::J2_jumpfnew) {
581 if (cmpInstr->getOpcode() == Hexagon::C2_cmpeq &&
648 else if ((cmpInstr->getOpcode() == Hexagon::C2_cmpeqi ||
649 cmpInstr->getOpcode() == Hexagon::C2_cmpgti) &&