diff options
author | Stephen Hines <srhines@google.com> | 2014-05-29 02:49:00 -0700 |
---|---|---|
committer | Stephen Hines <srhines@google.com> | 2014-05-29 02:49:00 -0700 |
commit | dce4a407a24b04eebc6a376f8e62b41aaa7b071f (patch) | |
tree | dcebc53f2b182f145a2e659393bf9a0472cedf23 /test/TableGen | |
parent | 220b921aed042f9e520c26cffd8282a94c66c3d5 (diff) | |
download | external_llvm-dce4a407a24b04eebc6a376f8e62b41aaa7b071f.zip external_llvm-dce4a407a24b04eebc6a376f8e62b41aaa7b071f.tar.gz external_llvm-dce4a407a24b04eebc6a376f8e62b41aaa7b071f.tar.bz2 |
Update LLVM for 3.5 rebase (r209712).
Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
Diffstat (limited to 'test/TableGen')
-rw-r--r-- | test/TableGen/GeneralList.td | 1 | ||||
-rw-r--r-- | test/TableGen/lisp.td | 1 | ||||
-rw-r--r-- | test/TableGen/listconcat.td | 18 | ||||
-rw-r--r-- | test/TableGen/strconcat.td | 14 |
4 files changed, 31 insertions, 3 deletions
diff --git a/test/TableGen/GeneralList.td b/test/TableGen/GeneralList.td index 9e0c7df..17cc9a5 100644 --- a/test/TableGen/GeneralList.td +++ b/test/TableGen/GeneralList.td @@ -1,5 +1,4 @@ // RUN: llvm-tblgen %s -// XFAIL: vg_leak // // Test to make sure that lists work with any data-type diff --git a/test/TableGen/lisp.td b/test/TableGen/lisp.td index 9e58605..d753fbd 100644 --- a/test/TableGen/lisp.td +++ b/test/TableGen/lisp.td @@ -1,5 +1,4 @@ // RUN: llvm-tblgen %s -// XFAIL: vg_leak // CHECK: def One { // CHECK-NEXT: list<string> names = ["Jeffrey Sinclair"]; diff --git a/test/TableGen/listconcat.td b/test/TableGen/listconcat.td new file mode 100644 index 0000000..870e649 --- /dev/null +++ b/test/TableGen/listconcat.td @@ -0,0 +1,18 @@ +// RUN: llvm-tblgen %s | FileCheck %s + +// CHECK: class Y<list<string> Y:S = ?> { +// CHECK: list<string> T1 = !listconcat(Y:S, ["foo"]); +// CHECK: list<string> T2 = !listconcat(Y:S, !listconcat(["foo"], !listconcat(Y:S, ["bar", "baz"]))); +// CHECK: } + +// CHECK: def Z { +// CHECK: list<string> T1 = ["fu", "foo"]; +// CHECK: list<string> T2 = ["fu", "foo", "fu", "bar", "baz"]; +// CHECK: } + +class Y<list<string> S> { + list<string> T1 = !listconcat(S, ["foo"]); + list<string> T2 = !listconcat(S, ["foo"], S, ["bar", "baz"]); +} + +def Z : Y<["fu"]>; diff --git a/test/TableGen/strconcat.td b/test/TableGen/strconcat.td index dfb1a94..f5d7512 100644 --- a/test/TableGen/strconcat.td +++ b/test/TableGen/strconcat.td @@ -1,9 +1,21 @@ // RUN: llvm-tblgen %s | FileCheck %s -// CHECK: fufoo +// CHECK: class Y<string Y:S = ?> { +// CHECK: string T = !strconcat(Y:S, "foo"); +// CHECK: string T2 = !strconcat(Y:S, !strconcat("foo", !strconcat(Y:S, "bar"))); +// CHECK: string S = "foobar"; +// CHECK: } + +// CHECK: def Z { +// CHECK: string T = "fufoo"; +// CHECK: string T2 = "fufoofubar"; +// CHECK: string S = "foobar"; +// CHECK: } class Y<string S> { string T = !strconcat(S, "foo"); + // More than two arguments is equivalent to nested calls + string T2 = !strconcat(S, "foo", S, "bar"); // String values concatenate lexically, as in C. string S = "foo" "bar"; |