LLVM 22.0.0git
|
The legality outcome is represented by a class rather than an enum class because in some cases the legality checks are expensive and look for a particular instruction that can be passed along to the vectorizer to avoid repeating the same expensive computation. More...
#include "llvm/Transforms/Vectorize/SandboxVectorizer/Legality.h"
Public Member Functions | |
virtual | ~LegalityResult () |
LegalityResultID | getSubclassID () const |
virtual void | print (raw_ostream &OS) const |
LLVM_DUMP_METHOD void | dump () const |
Protected Member Functions | |
LegalityResult (LegalityResultID ID) | |
Only Legality can create LegalityResults. | |
LegalityResult (const LegalityResult &)=delete | |
We shouldn't need copies. | |
LegalityResult & | operator= (const LegalityResult &)=delete |
Protected Attributes | |
LegalityResultID | ID |
Friends | |
class | LegalityAnalysis |
raw_ostream & | operator<< (raw_ostream &OS, const LegalityResult &LR) |
The legality outcome is represented by a class rather than an enum class because in some cases the legality checks are expensive and look for a particular instruction that can be passed along to the vectorizer to avoid repeating the same expensive computation.
Definition at line 158 of file Legality.h.
|
inlineprotected |
Only Legality can create LegalityResults.
Definition at line 162 of file Legality.h.
References ID.
Referenced by llvm::sandboxir::DiamondReuse::classof(), llvm::sandboxir::DiamondReuseMultiInput::classof(), llvm::sandboxir::DiamondReuseWithShuffle::classof(), llvm::sandboxir::Widen::classof(), llvm::sandboxir::DiamondReuse::LegalityAnalysis, llvm::sandboxir::DiamondReuseMultiInput::LegalityAnalysis, llvm::sandboxir::DiamondReuseWithShuffle::LegalityAnalysis, llvm::sandboxir::Widen::LegalityAnalysis, LegalityResult(), operator<<, and operator=().
|
protecteddelete |
We shouldn't need copies.
References LegalityResult().
|
inlinevirtual |
Definition at line 170 of file Legality.h.
void llvm::sandboxir::LegalityResult::dump | ( | ) | const |
Definition at line 26 of file Legality.cpp.
References llvm::dbgs(), and print().
|
inline |
Definition at line 171 of file Legality.h.
References ID.
Referenced by llvm::sandboxir::DiamondReuse::classof(), llvm::sandboxir::DiamondReuseMultiInput::classof(), llvm::sandboxir::DiamondReuseWithShuffle::classof(), llvm::sandboxir::Pack::classof(), and llvm::sandboxir::Widen::classof().
|
protecteddelete |
References LegalityResult().
|
inlinevirtual |
Reimplemented in llvm::sandboxir::LegalityResultWithReason.
Definition at line 173 of file Legality.h.
References llvm::sandboxir::ToStr::getLegalityResultID(), and ID.
Referenced by dump(), operator<<, and llvm::sandboxir::LegalityResultWithReason::print().
|
friend |
Definition at line 163 of file Legality.h.
References LegalityAnalysis.
Referenced by LegalityAnalysis.
|
friend |
Definition at line 177 of file Legality.h.
References LegalityResult(), and print().
|
protected |
Definition at line 160 of file Legality.h.
Referenced by getSubclassID(), LegalityResult(), and print().