initial import
diff --git a/MCInstrDesc.c b/MCInstrDesc.c
new file mode 100644
index 0000000..5993323
--- /dev/null
+++ b/MCInstrDesc.c
@@ -0,0 +1,18 @@
+/* Capstone Disassembler Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
+
+#include "MCInstrDesc.h"
+
+/// isPredicate - Set if this is one of the operands that made up of
+/// the predicate operand that controls an isPredicable() instruction.
+bool MCOperandInfo_isPredicate(MCOperandInfo *m)
+{
+	return m->Flags & (1 << MCOI_Predicate);
+}
+
+/// isOptionalDef - Set if this operand is a optional def.
+///
+bool MCOperandInfo_isOptionalDef(MCOperandInfo *m)
+{
+	return m->Flags & (1 << MCOI_OptionalDef);
+}