LLVM 19.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::LoopVectorizeOptions Struct Reference

#include "llvm/Transforms/Vectorize/LoopVectorize.h"

Public Member Functions

 LoopVectorizeOptions ()
 The current defaults when creating the pass with no arguments are: EnableLoopInterleaving = true and EnableLoopVectorization = true.
 
 LoopVectorizeOptions (bool InterleaveOnlyWhenForced, bool VectorizeOnlyWhenForced)
 
LoopVectorizeOptionssetInterleaveOnlyWhenForced (bool Value)
 
LoopVectorizeOptionssetVectorizeOnlyWhenForced (bool Value)
 

Public Attributes

bool InterleaveOnlyWhenForced
 If false, consider all loops for interleaving.
 
bool VectorizeOnlyWhenForced
 If false, consider all loops for vectorization.
 

Detailed Description

Definition at line 115 of file LoopVectorize.h.

Constructor & Destructor Documentation

◆ LoopVectorizeOptions() [1/2]

llvm::LoopVectorizeOptions::LoopVectorizeOptions ( )
inline

The current defaults when creating the pass with no arguments are: EnableLoopInterleaving = true and EnableLoopVectorization = true.

This means that interleaving default is consistent with the cl::opt flag, while vectorization is not. FIXME: The default for EnableLoopVectorization in the cl::opt should be set to true, and the corresponding change to account for this be made in opt.cpp. The initializations below will become: InterleaveOnlyWhenForced(!EnableLoopInterleaving) VectorizeOnlyWhenForced(!EnableLoopVectorization).

Definition at line 133 of file LoopVectorize.h.

◆ LoopVectorizeOptions() [2/2]

llvm::LoopVectorizeOptions::LoopVectorizeOptions ( bool  InterleaveOnlyWhenForced,
bool  VectorizeOnlyWhenForced 
)
inline

Definition at line 135 of file LoopVectorize.h.

Member Function Documentation

◆ setInterleaveOnlyWhenForced()

LoopVectorizeOptions & llvm::LoopVectorizeOptions::setInterleaveOnlyWhenForced ( bool  Value)
inline

Definition at line 140 of file LoopVectorize.h.

References InterleaveOnlyWhenForced.

◆ setVectorizeOnlyWhenForced()

LoopVectorizeOptions & llvm::LoopVectorizeOptions::setVectorizeOnlyWhenForced ( bool  Value)
inline

Definition at line 145 of file LoopVectorize.h.

References VectorizeOnlyWhenForced.

Member Data Documentation

◆ InterleaveOnlyWhenForced

bool llvm::LoopVectorizeOptions::InterleaveOnlyWhenForced

If false, consider all loops for interleaving.

If true, only loops that explicitly request interleaving are considered.

Definition at line 118 of file LoopVectorize.h.

Referenced by setInterleaveOnlyWhenForced().

◆ VectorizeOnlyWhenForced

bool llvm::LoopVectorizeOptions::VectorizeOnlyWhenForced

If false, consider all loops for vectorization.

If true, only loops that explicitly request vectorization are considered.

Definition at line 122 of file LoopVectorize.h.

Referenced by setVectorizeOnlyWhenForced().


The documentation for this struct was generated from the following file: