Moving iree_e2e_test_value_t out of tooling/, no clue why it was there.
diff --git a/runtime/src/iree/tooling/trace_replay.h b/runtime/src/iree/tooling/trace_replay.h
index caa157e..db2de14 100644
--- a/runtime/src/iree/tooling/trace_replay.h
+++ b/runtime/src/iree/tooling/trace_replay.h
@@ -89,133 +89,6 @@
yaml_node_t* event_node,
iree_vm_list_t** out_output_list);
-// Defines the type of a primitive value.
-typedef enum iree_e2e_test_value_type_e {
- // Not a value type.
- IREE_E2E_TEST_VALUE_TYPE_NONE = 0,
- // int8_t.
- IREE_E2E_TEST_VALUE_TYPE_I8 = 1,
- // int16_t.
- IREE_E2E_TEST_VALUE_TYPE_I16 = 2,
- // int32_t.
- IREE_E2E_TEST_VALUE_TYPE_I32 = 3,
- // int64_t.
- IREE_E2E_TEST_VALUE_TYPE_I64 = 4,
- // halft_t.
- IREE_E2E_TEST_VALUE_TYPE_F16 = 5,
- // float.
- IREE_E2E_TEST_VALUE_TYPE_F32 = 6,
- // double.
- IREE_E2E_TEST_VALUE_TYPE_F64 = 7,
-} iree_e2e_test_value_type_t;
-
-// Maximum size, in bytes, of any value type we can represent.
-#define IREE_E2E_TEST_VALUE_STORAGE_SIZE 8
-
-// A variant value type.
-typedef struct iree_e2e_test_value_t {
- iree_e2e_test_value_type_t type;
- union {
- int8_t i8;
- int16_t i16;
- int32_t i32;
- int64_t i64;
- float f32;
- uint16_t f16_u16;
- double f64;
-
- uint8_t value_storage[IREE_E2E_TEST_VALUE_STORAGE_SIZE]; // max size of all
- // value types
- };
-} iree_e2e_test_value_t;
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_none() {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_NONE;
- return result;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_i8(int8_t value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_I8;
- result.i8 = value;
- return result;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_i16(
- int16_t value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_I16;
- result.i16 = value;
- return result;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_i32(
- int32_t value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_I32;
- result.i32 = value;
- return result;
-}
-
-// TODO(#5542): check the value type before accessing the union.
-static inline int32_t iree_e2e_test_value_get_i32(
- iree_e2e_test_value_t* value) {
- return value->i32;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_i64(
- int64_t value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_I64;
- result.i64 = value;
- return result;
-}
-
-// TODO(#5542): check the value type before accessing the union.
-static inline int64_t iree_e2e_test_value_get_i64(
- iree_e2e_test_value_t* value) {
- return value->i64;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_f16(
- uint16_t value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_F16;
- result.f16_u16 = value;
- return result;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_f32(float value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_F32;
- result.f32 = value;
- return result;
-}
-
-// TODO(#5542): check the value type before accessing the union.
-static inline float iree_e2e_test_value_get_f32(iree_e2e_test_value_t* value) {
- return value->f32;
-}
-
-// TODO(#5542): check the value type before accessing the union.
-static inline uint16_t iree_e2e_test_value_get_f16(
- iree_e2e_test_value_t* value) {
- return value->f16_u16;
-}
-
-static inline iree_e2e_test_value_t iree_e2e_test_value_make_f64(double value) {
- iree_e2e_test_value_t result;
- result.type = IREE_E2E_TEST_VALUE_TYPE_F64;
- result.f64 = value;
- return result;
-}
-
-// TODO(#5542): check the value type before accessing the union.
-static inline double iree_e2e_test_value_get_f64(iree_e2e_test_value_t* value) {
- return value->f64;
-}
-
#ifdef __cplusplus
} // extern "C"
#endif // __cplusplus
diff --git a/tools/iree-e2e-matmul-test.c b/tools/iree-e2e-matmul-test.c
index 217d4e6..e77a89c 100644
--- a/tools/iree-e2e-matmul-test.c
+++ b/tools/iree-e2e-matmul-test.c
@@ -27,6 +27,132 @@
static const char* emoji(bool good) { return good ? "🦄" : "🐞"; }
+// Defines the type of a primitive value.
+typedef enum iree_e2e_test_value_type_e {
+ // Not a value type.
+ IREE_E2E_TEST_VALUE_TYPE_NONE = 0,
+ // int8_t.
+ IREE_E2E_TEST_VALUE_TYPE_I8 = 1,
+ // int16_t.
+ IREE_E2E_TEST_VALUE_TYPE_I16 = 2,
+ // int32_t.
+ IREE_E2E_TEST_VALUE_TYPE_I32 = 3,
+ // int64_t.
+ IREE_E2E_TEST_VALUE_TYPE_I64 = 4,
+ // halft_t.
+ IREE_E2E_TEST_VALUE_TYPE_F16 = 5,
+ // float.
+ IREE_E2E_TEST_VALUE_TYPE_F32 = 6,
+ // double.
+ IREE_E2E_TEST_VALUE_TYPE_F64 = 7,
+} iree_e2e_test_value_type_t;
+
+// Maximum size, in bytes, of any value type we can represent.
+#define IREE_E2E_TEST_VALUE_STORAGE_SIZE 8
+
+// A variant value type.
+typedef struct iree_e2e_test_value_t {
+ iree_e2e_test_value_type_t type;
+ union {
+ int8_t i8;
+ int16_t i16;
+ int32_t i32;
+ int64_t i64;
+ float f32;
+ uint16_t f16_u16;
+ double f64;
+ uint8_t value_storage[IREE_E2E_TEST_VALUE_STORAGE_SIZE]; // max size of all
+ // value types
+ };
+} iree_e2e_test_value_t;
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_none() {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_NONE;
+ return result;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_i8(int8_t value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_I8;
+ result.i8 = value;
+ return result;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_i16(
+ int16_t value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_I16;
+ result.i16 = value;
+ return result;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_i32(
+ int32_t value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_I32;
+ result.i32 = value;
+ return result;
+}
+
+// TODO(#5542): check the value type before accessing the union.
+static inline int32_t iree_e2e_test_value_get_i32(
+ iree_e2e_test_value_t* value) {
+ return value->i32;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_i64(
+ int64_t value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_I64;
+ result.i64 = value;
+ return result;
+}
+
+// TODO(#5542): check the value type before accessing the union.
+static inline int64_t iree_e2e_test_value_get_i64(
+ iree_e2e_test_value_t* value) {
+ return value->i64;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_f16(
+ uint16_t value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_F16;
+ result.f16_u16 = value;
+ return result;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_f32(float value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_F32;
+ result.f32 = value;
+ return result;
+}
+
+// TODO(#5542): check the value type before accessing the union.
+static inline float iree_e2e_test_value_get_f32(iree_e2e_test_value_t* value) {
+ return value->f32;
+}
+
+// TODO(#5542): check the value type before accessing the union.
+static inline uint16_t iree_e2e_test_value_get_f16(
+ iree_e2e_test_value_t* value) {
+ return value->f16_u16;
+}
+
+static inline iree_e2e_test_value_t iree_e2e_test_value_make_f64(double value) {
+ iree_e2e_test_value_t result;
+ result.type = IREE_E2E_TEST_VALUE_TYPE_F64;
+ result.f64 = value;
+ return result;
+}
+
+// TODO(#5542): check the value type before accessing the union.
+static inline double iree_e2e_test_value_get_f64(iree_e2e_test_value_t* value) {
+ return value->f64;
+}
+
/*****************************************************************************
*
* Part 1: