Add an instruction abstraction and visitor.

Change-Id: I5dc935831471296b6db1affef6e7ddcdddc82dde
diff --git a/src/macros.h b/src/macros.h
index 078628f..047a95e 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -14,6 +14,8 @@
 #ifndef ART_SRC_MACROS_H_
 #define ART_SRC_MACROS_H_
 
+#include <stddef.h>  // for size_t
+
 // The COMPILE_ASSERT macro can be used to verify that a compile time
 // expression is true. For example, you could use it to verify the
 // size of a static array: