|
LLVM 22.0.0git
|
Represents known origin of an individual byte in combine pattern. More...
#include "llvm/CodeGen/ByteProvider.h"
Public Member Functions | |
| ByteProvider ()=default | |
| bool | isConstantZero () const |
| bool | hasSrc () const |
| bool | hasSameSrc (const ByteProvider &Other) const |
| bool | operator== (const ByteProvider &Other) const |
Static Public Member Functions | |
| static ByteProvider | getSrc (std::optional< ISelOp > Val, int64_t ByteOffset, int64_t VectorOffset) |
| static ByteProvider | getConstantZero () |
Public Attributes | |
| std::optional< ISelOp > | Src = std::nullopt |
| int64_t | DestOffset = 0 |
| int64_t | SrcOffset = 0 |
Represents known origin of an individual byte in combine pattern.
The value of the byte is either constant zero, or comes from memory / some other productive instruction (e.g. arithmetic instructions). Bit manipulation instructions like shifts are not ByteProviders, rather are used to extract Bytes.
Definition at line 32 of file ByteProvider.h.
|
default |
|
inlinestatic |
Definition at line 67 of file ByteProvider.h.
Referenced by calculateByteProvider().
|
inlinestatic |
Definition at line 60 of file ByteProvider.h.
Referenced by calculateSrcByte().
|
inline |
Definition at line 74 of file ByteProvider.h.
|
inline |
Definition at line 72 of file ByteProvider.h.
|
inline |
Definition at line 70 of file ByteProvider.h.
|
inline |
Definition at line 76 of file ByteProvider.h.
| int64_t llvm::ByteProvider< ISelOp >::DestOffset = 0 |
Definition at line 53 of file ByteProvider.h.
| std::optional<ISelOp> llvm::ByteProvider< ISelOp >::Src = std::nullopt |
Definition at line 51 of file ByteProvider.h.
Referenced by placeSources().
| int64_t llvm::ByteProvider< ISelOp >::SrcOffset = 0 |
Definition at line 56 of file ByteProvider.h.
Referenced by placeSources().