Lines Matching defs:LoopVectorizeHints

64 static cl::opt<LoopVectorizeHints::ScalableForceKind>
66 "scalable-vectorization", cl::init(LoopVectorizeHints::SK_Unspecified),
71 clEnumValN(LoopVectorizeHints::SK_FixedWidthOnly, "off",
74 LoopVectorizeHints::SK_PreferScalable, "preferred",
78 LoopVectorizeHints::SK_PreferScalable, "on",
91 bool LoopVectorizeHints::Hint::validate(unsigned Val) {
107 LoopVectorizeHints::LoopVectorizeHints(const Loop *L,
131 if ((LoopVectorizeHints::ScalableForceKind)Scalable.Value == SK_Unspecified) {
146 LoopVectorizeHints::SK_Unspecified)
150 if ((LoopVectorizeHints::ScalableForceKind)Scalable.Value == SK_Unspecified)
163 void LoopVectorizeHints::setAlreadyVectorized() {
182 bool LoopVectorizeHints::allowVectorization(
184 if (getForce() == LoopVectorizeHints::FK_Disabled) {
190 if (VectorizeOnlyWhenForced && getForce() != LoopVectorizeHints::FK_Enabled) {
215 void LoopVectorizeHints::emitRemarkWithHints() const {
219 if (Force.Value == LoopVectorizeHints::FK_Disabled)
228 if (Force.Value == LoopVectorizeHints::FK_Enabled) {
240 const char *LoopVectorizeHints::vectorizeAnalysisPassName() const {
243 if (getForce() == LoopVectorizeHints::FK_Disabled)
245 if (getForce() == LoopVectorizeHints::FK_Undefined && getWidth().isZero())
250 bool LoopVectorizeHints::allowReordering() const {
255 (getForce() == LoopVectorizeHints::FK_Enabled ||
259 void LoopVectorizeHints::getHintsFromMetadata() {
295 void LoopVectorizeHints::setHint(StringRef Name, Metadata *Arg) {
1857 if (Hints->getForce() == LoopVectorizeHints::FK_Enabled)