Improve CHECK_<op> logging.
This patch lets us show the lhs and rhs when a relational check fails. (I show
both, even though that looks silly in cases like CHECK_EQ(rc, 0) where we'll
say "rc=-1, 0=0", because it's helpful in cases like CHECK_LT(i, size()) where
we want "i=4, size=2".)
I had to add a few operator<<s for enums, and fix a bunch of signed/unsigned
mismatches, and put the StringPiece operator<< in the right namespace.
Change-Id: I390f38bd97b3f50e12182f36ff027ca067c48d69
diff --git a/src/constants_x86.h b/src/constants_x86.h
index 70a79e9..d96e6dc 100644
--- a/src/constants_x86.h
+++ b/src/constants_x86.h
@@ -7,6 +7,8 @@
#include "src/logging.h"
#include "src/macros.h"
+#include <iosfwd>
+
namespace art {
enum Register {
@@ -22,6 +24,7 @@
kFirstByteUnsafeRegister = 4,
kNoRegister = -1 // Signals an illegal register.
};
+std::ostream& operator<<(std::ostream& os, const Register& rhs);
enum ByteRegister {