Home | History | Annotate | Download | only in gcc

Lines Matching refs:relevant

233    Mark STMT_INFO as "relevant for vectorization" and add it to WORKLIST.  */
237 enum vect_relevant relevant, bool live_p)
244 "mark relevant %d, live %d: %G", relevant, live_p,
255 as relevant/live because it's not going to be vectorized.
261 " relevant/live.\n");
270 if (relevant > STMT_VINFO_RELEVANT (stmt_info))
271 STMT_VINFO_RELEVANT (stmt_info) = relevant;
278 "already marked relevant/live.\n");
322 is "relevant for vectorization".
324 A stmt is considered "relevant for vectorization" if:
333 enum vect_relevant *relevant, bool *live_p)
341 *relevant = vect_unused_in_scope;
347 *relevant = vect_used_in_scope;
357 *relevant = vect_used_in_scope;
385 if (*live_p && *relevant == vect_unused_in_scope
390 "vec_stmt_relevant_p: stmt live but not relevant.\n");
391 *relevant = vect_used_only_live;
394 return (*live_p || *relevant);
467 - RELEVANT - enum value to be set in the STMT_VINFO of the stmt
469 the WORKLIST (to add DEF_STMT to the WORKLIST in case it is relevant).
474 Generally, LIVE_P and RELEVANT are used to define the liveness and
477 STMT_VINFO_RELEVANT (DEF_stmt_vinfo) <-- relevant
485 "relevant" will be modified accordingly.
491 enum vect_relevant relevant, vec<stmt_vec_info> *worklist,
498 that are used for address computation are not considered relevant. */
525 vect_mark_relevant (worklist, dstmt_vinfo, relevant, true);
542 switch (relevant)
545 relevant = (STMT_VINFO_DEF_TYPE (stmt_vinfo) == vect_nested_cycle) ?
551 relevant = vect_used_by_reduction;
556 relevant = vect_used_in_scope;
580 switch (relevant)
583 relevant = (STMT_VINFO_DEF_TYPE (stmt_vinfo) == vect_reduction_def
590 relevant = vect_used_in_outer_by_reduction;
594 relevant = vect_used_in_outer;
619 vect_mark_relevant (worklist, dstmt_vinfo, relevant, false);
650 enum vect_relevant relevant;
664 dump_printf_loc (MSG_NOTE, vect_location, "init: phi relevant? %G",
667 if (vect_stmt_relevant_p (phi_info, loop_vinfo, &relevant, &live_p))
668 vect_mark_relevant (&worklist, phi_info, relevant, live_p);
677 "init: stmt relevant? %G", stmt_info->stmt);
679 if (vect_stmt_relevant_p (stmt_info, loop_vinfo, &relevant, &live_p))
680 vect_mark_relevant (&worklist, stmt_info, relevant, live_p);
696 (DEF_STMT) as relevant/irrelevant according to the relevance property
698 relevant = STMT_VINFO_RELEVANT (stmt_vinfo);
705 This is because we distinguish between two kinds of relevant stmts -
714 gcc_assert (relevant != vect_unused_in_scope);
715 if (relevant != vect_unused_in_scope
716 && relevant != vect_used_in_scope
717 && relevant != vect_used_by_reduction
718 && relevant != vect_used_only_live)
724 if (relevant != vect_unused_in_scope
725 && relevant != vect_used_in_outer_by_reduction
726 && relevant != vect_used_in_outer)
732 if (relevant != vect_unused_in_scope
733 && relevant != vect_used_by_reduction
734 && relevant != vect_used_only_live)
758 loop_vinfo, relevant, &worklist, false);
762 loop_vinfo, relevant, &worklist, false);
773 = process_use (stmt_vinfo, op, loop_vinfo, relevant,
786 = process_use (stmt_vinfo, arg, loop_vinfo, relevant,
798 = process_use (stmt_vinfo, op, loop_vinfo, relevant,
810 = process_use (stmt_vinfo, gs_info.offset, loop_vinfo, relevant,
1460 STMT_VINFO_VEC_STMTS of the defining stmt holds the relevant defs.
6424 To vectorize stmt S2 we first need to find the relevant vector
6428 relevant vector def 'vx0'. Having found 'vx0' we can generate
6431 When creating the second copy (VS2_1), we obtain the relevant vector
6433 stmt VS1_0. This way we find the stmt VS1_1 and the relevant
11141 instance, therefore, all the statements are relevant.
11144 if the original statement is not relevant. Otherwise, we analyze both
11298 " relevant stmt not supported: %G",