LLVM: llvm::sandboxir::VecUtils::PackPattern Struct Reference (original) (raw)
Helper struct for matchPack(). More...
#include "[llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h](VecUtils%5F8h%5Fsource.html)"
| Public Attributes | |
|---|---|
| SmallVector< Instruction * > | Instrs |
| The insertelement instructions that form the pack pattern in bottom-up order, i.e., the first instruction in Instrs is the bottom-most InsertElement instruction of the pack pattern. | |
| SmallVector< Value * > | Operands |
| The "external" operands of the pack pattern, i.e., the values that get packed into a vector, skipping the ones in Instrs. |
Helper struct for matchPack().
Describes the instructions and operands of a pack pattern.
Definition at line 203 of file VecUtils.h.
◆ Instrs
The insertelement instructions that form the pack pattern in bottom-up order, i.e., the first instruction in Instrs is the bottom-most InsertElement instruction of the pack pattern.
For example in this simple pack pattern: Pack0 = insertelement <2 x i8> poison, i8 v0, i64 0 Pack1 = insertelement <2 x i8> Pack0, i8 v1, i64 1 this is [ Pack1, Pack0 ].
Definition at line 211 of file VecUtils.h.
◆ Operands
The "external" operands of the pack pattern, i.e., the values that get packed into a vector, skipping the ones in Instrs.
The operands are in bottom-up order, starting from the operands of the bottom-most insert. So in our example this would be [ v1, v0 ].
Definition at line 216 of file VecUtils.h.
The documentation for this struct was generated from the following file:
- include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h