Index: src/IceInst.cpp |
diff --git a/src/IceInst.cpp b/src/IceInst.cpp |
index 004b5550baab037ed52cfab41cad584766990a34..1b2a52d76dfb9097be252428ac42f588b2410fbb 100644 |
--- a/src/IceInst.cpp |
+++ b/src/IceInst.cpp |
@@ -63,9 +63,10 @@ const size_t InstFcmpAttributesSize = llvm::array_lengthof(InstFcmpAttributes); |
// Using non-anonymous struct so that array_lengthof works. |
const struct InstIcmpAttributes_ { |
const char *DisplayString; |
+ bool IsUnsigned; |
} InstIcmpAttributes[] = { |
-#define X(tag, str) \ |
- { str } \ |
+#define X(tag, str, isunsigned) \ |
+ { str, isunsigned } \ |
, |
ICEINSTICMP_TABLE |
#undef X |
@@ -281,6 +282,10 @@ InstFcmp::InstFcmp(Cfg *Func, FCond Condition, Variable *Dest, Operand *Source1, |
addSource(Source2); |
} |
+bool InstIcmp::isUnsigned() const { |
+ return InstIcmpAttributes[getCondition()].IsUnsigned; |
+} |
+ |
InstIcmp::InstIcmp(Cfg *Func, ICond Condition, Variable *Dest, Operand *Source1, |
Operand *Source2) |
: Inst(Func, Inst::Icmp, 2, Dest), Condition(Condition) { |