|
LLVM 23.0.0git
|
Maps the original instructions to the vectorized instrs and the reverse. More...
#include "llvm/Transforms/Vectorize/SandboxVectorizer/InstrMaps.h"
Public Member Functions | |
| InstrMaps ()=default | |
| ~InstrMaps ()=default | |
| bool | isVectorized (Value *Orig) const |
\Returns true if Orig was vectorized | |
| Action * | getVectorForOrig (Value *Orig) const |
\Returns the vector value that we got from vectorizing Orig, or nullptr if not found. | |
| std::optional< unsigned > | getOrigLane (Action *Vec, Value *Orig) const |
\Returns the lane of Orig before it got vectorized into Vec, or nullopt if not found. | |
| void | registerVector (ArrayRef< Value * > Origs, Action *Vec) |
Update the map to reflect that Origs got vectorized into Vec. | |
| void | clear () |
| void | print (raw_ostream &OS) const |
| LLVM_DUMP_METHOD void | dump () const |
Maps the original instructions to the vectorized instrs and the reverse.
For now an original instr can only map to a single vector.
Definition at line 50 of file InstrMaps.h.
|
default |
|
default |
|
inline |
Definition at line 98 of file InstrMaps.h.
| void llvm::sandboxir::InstrMaps::dump | ( | ) | const |
Definition at line 28 of file InstrMaps.cpp.
References llvm::dbgs(), and print().
|
inline |
\Returns the lane of Orig before it got vectorized into Vec, or nullopt if not found.
Definition at line 76 of file InstrMaps.h.
\Returns the vector value that we got from vectorizing Orig, or nullptr if not found.
Definition at line 70 of file InstrMaps.h.
\Returns true if Orig was vectorized
Definition at line 65 of file InstrMaps.h.
|
inline |
Definition at line 103 of file InstrMaps.h.
Referenced by dump().
Update the map to reflect that Origs got vectorized into Vec.
Definition at line 87 of file InstrMaps.h.
References assert(), and llvm::sandboxir::VecUtils::getNumLanes().