arm64: update core. this added a lot more details to cs_arm64_op struct
diff --git a/SStream.c b/SStream.c
index 462aff2..fd72308 100644
--- a/SStream.c
+++ b/SStream.c
@@ -2,12 +2,14 @@
 /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
 
 #include <stdint.h>
+#include <inttypes.h>
 #include <stdarg.h>
 #include <stdio.h>
 #include <string.h>
 
 #include "SStream.h"
 #include "cs_priv.h"
+#include "utils.h"
 
 #ifdef _MSC_VER
 #pragma warning(disable: 4996) // disable MSVC's warning on strcpy()
@@ -40,6 +42,84 @@
 #endif
 }
 
+// print number with prefix #
+void printInt64Bang(SStream *O, int64_t val)
+{
+	if (val >= 0) {
+		if (val > HEX_THRESHOLD)
+			SStream_concat(O, "#0x%"PRIx64, val);
+		else
+			SStream_concat(O, "#%"PRIu64, val);
+	} else {
+		if (val <- HEX_THRESHOLD)
+			SStream_concat(O, "#-0x%"PRIx64, -val);
+		else
+			SStream_concat(O, "#-%"PRIu64, -val);
+	}
+}
+
+// print number
+void printInt64(SStream *O, int64_t val)
+{
+	if (val >= 0) {
+		if (val > HEX_THRESHOLD)
+			SStream_concat(O, "0x%"PRIx64, val);
+		else
+			SStream_concat(O, "%"PRIu64, val);
+	} else {
+		if (val <- HEX_THRESHOLD)
+			SStream_concat(O, "-0x%"PRIx64, -val);
+		else
+			SStream_concat(O, "-%"PRIu64, -val);
+	}
+}
+
+void printInt32Bang(SStream *O, int32_t val)
+{
+	if (val >= 0) {
+		if (val > HEX_THRESHOLD)
+			SStream_concat(O, "#0x%x", val);
+		else
+			SStream_concat(O, "#%u", val);
+	} else {
+		if (val <- HEX_THRESHOLD)
+			SStream_concat(O, "#-0x%x", -val);
+		else
+			SStream_concat(O, "#-%u", -val);
+	}
+}
+
+void printInt32(SStream *O, int32_t val)
+{
+	if (val >= 0) {
+		if (val > HEX_THRESHOLD)
+			SStream_concat(O, "0x%x", val);
+		else
+			SStream_concat(O, "%u", val);
+	} else {
+		if (val <- HEX_THRESHOLD)
+			SStream_concat(O, "-0x%x", -val);
+		else
+			SStream_concat(O, "-%u", -val);
+	}
+}
+
+void printUInt32Bang(SStream *O, uint32_t val)
+{
+	if (val > HEX_THRESHOLD)
+		SStream_concat(O, "#0x%x", val);
+	else
+		SStream_concat(O, "#%u", val);
+}
+
+void printUInt32(SStream *O, uint32_t val)
+{
+	if (val > HEX_THRESHOLD)
+		SStream_concat(O, "0x%x", val);
+	else
+		SStream_concat(O, "%u", val);
+}
+
 /*
    int main()
    {