LLVM
8.0.1
|
#include "llvm/CodeGen/GlobalISel/CombinerInfo.h"
Public Member Functions | |
CombinerInfo (bool AllowIllegalOps, bool ShouldLegalizeIllegal, LegalizerInfo *LInfo) | |
virtual | ~CombinerInfo ()=default |
virtual bool | combine (GISelChangeObserver &Observer, MachineInstr &MI, MachineIRBuilder &B) const =0 |
Attempt to combine instructions using MI as the root. More... | |
Public Attributes | |
bool | IllegalOpsAllowed |
If IllegalOpsAllowed is false, the CombinerHelper will make use of the legalizerInfo to check for legality before each transformation. More... | |
bool | LegalizeIllegalOps |
If LegalizeIllegalOps is true, the Combiner will also legalize the illegal ops that are created. More... | |
const LegalizerInfo * | LInfo |
Definition at line 28 of file CombinerInfo.h.
|
inline |
Definition at line 30 of file CombinerInfo.h.
References assert(), LegalizeIllegalOps, and ~CombinerInfo().
|
virtualdefault |
Referenced by CombinerInfo().
|
pure virtual |
Attempt to combine instructions using MI as the root.
Use Observer to report the creation, modification, and erasure of instructions. GISelChangeObserver will automatically report certain kinds of operations. These operations are:
However, it is important to report instruction modification and this is not automatic.
Referenced by llvm::Combiner::combineMachineInstrs().
bool llvm::CombinerInfo::IllegalOpsAllowed |
If IllegalOpsAllowed
is false, the CombinerHelper will make use of the legalizerInfo to check for legality before each transformation.
Definition at line 40 of file CombinerInfo.h.
bool llvm::CombinerInfo::LegalizeIllegalOps |
If LegalizeIllegalOps
is true, the Combiner will also legalize the illegal ops that are created.
Definition at line 44 of file CombinerInfo.h.
Referenced by CombinerInfo().
const LegalizerInfo* llvm::CombinerInfo::LInfo |
Definition at line 45 of file CombinerInfo.h.