summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-01-24 18:06:05 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-01-24 18:06:05 +0000
commit60e70e8fcf2828f77828945fbd9cc54c28b5945d (patch)
tree7b9050adc4aaf303b8f75d69e52571f6fe5f4150 /llvm/test
parent3c4225a8581f0b865fd0de3125d5f1a195febe72 (diff)
downloadbcm5719-llvm-60e70e8fcf2828f77828945fbd9cc54c28b5945d.tar.gz
bcm5719-llvm-60e70e8fcf2828f77828945fbd9cc54c28b5945d.zip
Add an (interleave A, B, ...) SetTheory operator.
This will interleave the elements from two or more lists. llvm-svn: 148824
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/TableGen/SetTheory.td7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/test/TableGen/SetTheory.td b/llvm/test/TableGen/SetTheory.td
index a4acea907d8..4d85aa3e6f2 100644
--- a/llvm/test/TableGen/SetTheory.td
+++ b/llvm/test/TableGen/SetTheory.td
@@ -165,3 +165,10 @@ def S9d : Set<(sequence "S%ua", 7, 9)>;
// CHECK: S9b = [ e7 e6 e5 e4 e3 ]
// CHECK: S9c = [ e0 ]
// CHECK: S9d = [ a b c d e0 e3 e6 e9 e4 e5 e7 ]
+
+// The 'interleave' operator is almost the inverse of 'decimate'.
+def interleave;
+def T0a : Set<(interleave S9a, S9b)>;
+def T0b : Set<(interleave S8e, S8d)>;
+// CHECK: T0a = [ e3 e7 e4 e6 e5 ]
+// CHECK: T0b = [ e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ]
OpenPOWER on IntegriCloud