13#ifndef LLVM_IR_CMPPREDICATE_H
14#define LLVM_IR_CMPPREDICATE_H
33 : Pred(Pred), HasSameSign(HasSameSign) {
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
This class is the base class for the comparison instructions.
Predicate
This enumeration lists the possible predicates for CmpInst subclasses.
bool isIntPredicate() const
An abstraction over a floating-point predicate, and a pack of an integer predicate with samesign info...
static std::optional< CmpPredicate > getMatching(CmpPredicate A, CmpPredicate B)
Compares two CmpPredicates taking samesign into account and returns the canonicalized CmpPredicate if...
CmpPredicate()
Default constructor.
bool operator==(CmpPredicate) const =delete
There is no operator== defined on CmpPredicate.
static CmpPredicate get(const CmpInst *Cmp)
Do a ICmpInst::getCmpPredicate() or CmpInst::getPredicate(), as appropriate.
bool operator==(CmpInst::Predicate P) const
An operator== on the underlying Predicate.
CmpPredicate(CmpInst::Predicate Pred, bool HasSameSign=false)
Constructed implictly with a either Predicate and samesign information, or just a Predicate,...
bool operator!=(CmpPredicate) const =delete
bool hasSameSign() const
Query samesign information, for optimizations.
bool operator!=(CmpInst::Predicate P) const
static CmpPredicate getSwapped(CmpPredicate P)
Get the swapped predicate of a CmpPredicate.
This is an optimization pass for GlobalISel generic memory operations.