summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README2
-rw-r--r--src/chain.h7
2 files changed, 8 insertions, 1 deletions
diff --git a/README b/README
index 327e1e1..8cca0b0 100644
--- a/README
+++ b/README
@@ -17,5 +17,5 @@ History
pChase was originally written by Doug Pase, during the years 2007-2008.
-In 2011, as part of a graduate project on advanced computer architecture, Tim Besard added a few features in order to benchmark the software prefetching capabilities of modern processor generations.
+In 2011, as part of a graduate project on advanced computer architecture, Tim Besard added a few features in order to benchmark the software prefetching capabilities of modern processor generations. This included moving the benchmarking code to be generated by a x86 JIT compiler, allowing the benchmark to be parameterised without overhead within the hotpath.
diff --git a/src/chain.h b/src/chain.h
index d33fa2d..ee3d36a 100644
--- a/src/chain.h
+++ b/src/chain.h
@@ -23,6 +23,13 @@
// Struct definition
//
+/*
+ * Note that the Chain object should always be a Plain Old Data (POD) object,
+ * because it is used from within JIT-generated assembly code, so we need to
+ * be able to refer to its data members using the C macro offsetof. This is
+ * only possible in case of a POD object.
+ */
+
struct Chain {
Chain* next;
};