forked from OSchip/llvm-project
Provide static methods in BinaryOperator to determine if an opcode is an equality opcode, a relational opcode, or a logical opcode.
llvm-svn: 53744
This commit is contained in:
parent
9c32a1ecf5
commit
2fe3afca04
|
@ -937,9 +937,16 @@ public:
|
|||
bool isAdditiveOp() const { return Opc == Add || Opc == Sub; }
|
||||
bool isShiftOp() const { return Opc == Shl || Opc == Shr; }
|
||||
bool isBitwiseOp() const { return Opc >= And && Opc <= Or; }
|
||||
bool isRelationalOp() const { return Opc >= LT && Opc <= GE; }
|
||||
bool isEqualityOp() const { return Opc == EQ || Opc == NE; }
|
||||
bool isLogicalOp() const { return Opc == LAnd || Opc == LOr; }
|
||||
|
||||
static bool isRelationalOp(Opcode Opc) { return Opc >= LT && Opc <= GE; }
|
||||
bool isRelationalOp() const { return isRelationalOp(Opc); }
|
||||
|
||||
static bool isEqualityOp(Opcode Opc) { return Opc == EQ || Opc == NE; }
|
||||
bool isEqualityOp() const { return isEqualityOp(Opc); }
|
||||
|
||||
static bool isLogicalOp(Opcode Opc) { return Opc == LAnd || Opc == LOr; }
|
||||
bool isLogicalOp() const { return isLogicalOp(Opc); }
|
||||
|
||||
bool isAssignmentOp() const { return Opc >= Assign && Opc <= OrAssign; }
|
||||
bool isCompoundAssignmentOp() const { return Opc > Assign && Opc <= OrAssign;}
|
||||
bool isShiftAssignOp() const { return Opc == ShlAssign || Opc == ShrAssign; }
|
||||
|
|
Loading…
Reference in New Issue