summaryrefslogtreecommitdiff
path: root/omega/examples/syr2k
diff options
context:
space:
mode:
authorDerick Huth <derickhuth@gmail.com>2014-10-06 12:42:34 -0600
committerDerick Huth <derickhuth@gmail.com>2014-10-06 12:42:34 -0600
commit8d73c8fcc75556c1df71dd39dd99783f8f86fc3e (patch)
tree157d627863d76a4c256a27cae27ce2e8566c7ea0 /omega/examples/syr2k
parente87b55ad69f0ac6211daae741b32c8ee9dcbe470 (diff)
parent8c646f24570079eac53e58fcf42d0d4fbc437ee3 (diff)
downloadchill-8d73c8fcc75556c1df71dd39dd99783f8f86fc3e.tar.gz
chill-8d73c8fcc75556c1df71dd39dd99783f8f86fc3e.tar.bz2
chill-8d73c8fcc75556c1df71dd39dd99783f8f86fc3e.zip
Merge pull request #2 from dhuth/master
Moved omega into chill.
Diffstat (limited to 'omega/examples/syr2k')
-rw-r--r--omega/examples/syr2k17
1 files changed, 17 insertions, 0 deletions
diff --git a/omega/examples/syr2k b/omega/examples/syr2k
new file mode 100644
index 0000000..29cdf4e
--- /dev/null
+++ b/omega/examples/syr2k
@@ -0,0 +1,17 @@
+# This example of code generation comes from
+# "Access Normalization: Loop Restructuring for NUMA Compilers"
+# by Wei Li and Keshav Pingali
+# Cornell Tech. report TR 92-1278
+
+symbolic n,b;
+
+IS10 := {[i,j,k] : 1 <= i <= j <= n && j <= i+2b-2
+ && i-b+1,j-b+1,1 <= k <= i+b-1,j+b-1,n};
+T10 := {[i,j,k] -> [j-i+1,k-j,k]};
+
+known := {[*,*,*] : 1 <= b <= n};
+
+codegen T10:IS10;
+codegen T10:IS10 given known;
+codegen T10:IS10;
+codegen T10:IS10 given known;