summaryrefslogtreecommitdiff
path: root/libguile/whippet/benchmarks/heap-objects.h
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/whippet/benchmarks/heap-objects.h')
-rw-r--r--libguile/whippet/benchmarks/heap-objects.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/libguile/whippet/benchmarks/heap-objects.h b/libguile/whippet/benchmarks/heap-objects.h
new file mode 100644
index 000000000..14ec2e3d8
--- /dev/null
+++ b/libguile/whippet/benchmarks/heap-objects.h
@@ -0,0 +1,19 @@
+#ifndef HEAP_OBJECTS_H
+#define HEAP_OBJECTS_H
+
+#include "gc-inline.h"
+#include "gc-edge.h"
+
+#define DECLARE_NODE_TYPE(name, Name, NAME) \
+ struct Name; \
+ typedef struct Name Name;
+FOR_EACH_HEAP_OBJECT_KIND(DECLARE_NODE_TYPE)
+#undef DECLARE_NODE_TYPE
+
+#define DEFINE_ENUM(name, Name, NAME) ALLOC_KIND_##NAME,
+enum alloc_kind {
+ FOR_EACH_HEAP_OBJECT_KIND(DEFINE_ENUM)
+};
+#undef DEFINE_ENUM
+
+#endif // HEAP_OBJECTS_H