aboutsummaryrefslogtreecommitdiffstats
path: root/benchmarks/polygraph
diff options
context:
space:
mode:
Diffstat (limited to 'benchmarks/polygraph')
-rw-r--r--benchmarks/polygraph/files/patch-src_runtime_StatPhase.cc21
-rw-r--r--benchmarks/polygraph/files/patch-src_xstd_Heap.h11
-rw-r--r--benchmarks/polygraph/files/patch-src_xstd_Ring.h18
3 files changed, 50 insertions, 0 deletions
diff --git a/benchmarks/polygraph/files/patch-src_runtime_StatPhase.cc b/benchmarks/polygraph/files/patch-src_runtime_StatPhase.cc
new file mode 100644
index 000000000000..2eae1027e962
--- /dev/null
+++ b/benchmarks/polygraph/files/patch-src_runtime_StatPhase.cc
@@ -0,0 +1,21 @@
+--- src/runtime/StatPhase.cc.orig 2011-04-04 22:07:36.000000000 +0000
++++ src/runtime/StatPhase.cc
+@@ -413,12 +413,12 @@ void StatPhase::noteXactEvent(BcastChann
+ break;
+ }
+ } else {
+- static CompoundXactInfo &compound = *CompoundXactInfo::Create();
+- compound.exchanges = 1;
+- compound.reqSize = reqSize;
+- compound.repSize = repSize;
+- compound.lifeTime = repTime;
+- compound.record(rec.theIsolated);
++ static CompoundXactInfo &compound2 = *CompoundXactInfo::Create();
++ compound2.exchanges = 1;
++ compound2.reqSize = reqSize;
++ compound2.repSize = repSize;
++ compound2.lifeTime = repTime;
++ compound2.record(rec.theIsolated);
+ }
+
+ if (x->cookiesSent() > 0)
diff --git a/benchmarks/polygraph/files/patch-src_xstd_Heap.h b/benchmarks/polygraph/files/patch-src_xstd_Heap.h
new file mode 100644
index 000000000000..f88d4cae8b8a
--- /dev/null
+++ b/benchmarks/polygraph/files/patch-src_xstd_Heap.h
@@ -0,0 +1,11 @@
+--- src/xstd/Heap.h.orig 2011-04-04 22:07:36.000000000 +0000
++++ src/xstd/Heap.h
+@@ -23,7 +23,7 @@ class Heap: protected Array<Item> {
+ const Item &top() const { return this->theItems[1]; }
+ Item &at(int idx) { return this->theItems[idx+1]; }
+
+- void add(Item v) { append(v); floatUp(++theCnt); }
++ void add(Item v) { this->append(v); floatUp(++theCnt); }
+ void skip() { this->theItems[1] = this->theItems[theCnt--]; this->theCount--; sinkDown(1); }
+ Item shift() { const Item v = this->theItems[1]; skip(); return v; }
+
diff --git a/benchmarks/polygraph/files/patch-src_xstd_Ring.h b/benchmarks/polygraph/files/patch-src_xstd_Ring.h
new file mode 100644
index 000000000000..5b52d2b31bf1
--- /dev/null
+++ b/benchmarks/polygraph/files/patch-src_xstd_Ring.h
@@ -0,0 +1,18 @@
+--- src/xstd/Ring.h.orig 2011-04-04 22:07:36.000000000 +0000
++++ src/xstd/Ring.h
+@@ -22,11 +22,11 @@ class Ring: protected Array<Item> {
+ int size() const { return Array<Item>::size(); }
+ bool empty() const { return this->theInOff <= this->theOutOff; }
+ bool full() const { return count() >= this->theCapacity; }
+- const Item &top(int off = 0) const { return item((this->theOutOff+off) % this->theCapacity); }
++ const Item &top(int off = 0) const { return this->item((this->theOutOff+off) % this->theCapacity); }
+
+- Item &top(int off = 0) { return item((this->theOutOff+off) % this->theCapacity); }
+- void enqueue(Item i) { Assert(!full()); item(this->theInOff++ % this->theCapacity) = i; check(); }
+- Item dequeue() { return item(this->theOutOff++ % this->theCapacity); }
++ Item &top(int off = 0) { return this->item((this->theOutOff+off) % this->theCapacity); }
++ void enqueue(Item i) { Assert(!full()); this->item(this->theInOff++ % this->theCapacity) = i; check(); }
++ Item dequeue() { return this->item(this->theOutOff++ % this->theCapacity); }
+
+ void reset() { this->theInOff = this->theOutOff = 0; }
+ inline void resize(int aCap);