aboutsummaryrefslogtreecommitdiff
path: root/tests/simple_ideal_alloc/testbench.h
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2025-03-02 21:45:51 +0200
committerKimplul <kimi.h.kuparinen@gmail.com>2025-03-02 21:45:51 +0200
commit0464b7765aa4d1fc2178e443a3b37d19cfe541a0 (patch)
tree7df54d44f11bcba1c9271148f085501bc2a02d2e /tests/simple_ideal_alloc/testbench.h
parentad6107d33a8a222d9062aae45d0e8d8483939d5d (diff)
downloadgran-0464b7765aa4d1fc2178e443a3b37d19cfe541a0.tar.gz
gran-0464b7765aa4d1fc2178e443a3b37d19cfe541a0.zip
add ideal allocation tracker
+ Kind of like CHERI, but uses out-of-line pointer information. The idea is that a core that is compatible with ALLOC_IF queries the allocation tracker if an address is legal and gets a response. This ideal tracker effectively has infinite memory and doesn't talk to any other components, but a real implementation might want to limit the allocations per process or chat with some reserved memory region somewhere else in the system to maintain a binary tree or something.
Diffstat (limited to 'tests/simple_ideal_alloc/testbench.h')
-rw-r--r--tests/simple_ideal_alloc/testbench.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/simple_ideal_alloc/testbench.h b/tests/simple_ideal_alloc/testbench.h
new file mode 100644
index 0000000..6f72060
--- /dev/null
+++ b/tests/simple_ideal_alloc/testbench.h
@@ -0,0 +1,9 @@
+#ifndef GRAN_IDEAL_ALLOC_TESTBENCH_H
+#define GRAN_IDEAL_ALLOC_TESTBENCH_H
+
+#include <gran/component.h>
+
+struct component *create_testbench();
+stat testbench_connect(struct component *tb, struct component *dut);
+
+#endif /* GRAN_IDEAL_ALLOC_TESTBENCH_H */