diff options
| author | Mikhail Glushenkov <foldr@codedgers.com> | 2008-12-07 16:41:50 +0000 |
|---|---|---|
| committer | Mikhail Glushenkov <foldr@codedgers.com> | 2008-12-07 16:41:50 +0000 |
| commit | 7429d925f02182f357969683d0ba69c412057c34 (patch) | |
| tree | 60328361cc4b5bd1112fdd4bcacd946013e49f8a /llvm | |
| parent | 85467c71d26cd37ccc42615242c5489aa4ce143f (diff) | |
| download | bcm5719-llvm-7429d925f02182f357969683d0ba69c412057c34.tar.gz bcm5719-llvm-7429d925f02182f357969683d0ba69c412057c34.zip | |
Add tests for tblgen's LLVMC backend.
llvm-svn: 60657
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/test/LLVMC/EmptyCompilationGraph.td | 6 | ||||
| -rw-r--r-- | llvm/test/LLVMC/ExternOptions.td | 20 | ||||
| -rw-r--r-- | llvm/test/LLVMC/MultipleCompilationGraphs.td | 8 | ||||
| -rw-r--r-- | llvm/test/LLVMC/NoActions.td | 12 | ||||
| -rw-r--r-- | llvm/test/LLVMC/NoCompilationGraph.td | 4 | ||||
| -rw-r--r-- | llvm/test/LLVMC/TestWarnings.td | 8 | ||||
| -rw-r--r-- | llvm/test/LLVMC/llvmc.exp | 1 |
7 files changed, 59 insertions, 0 deletions
diff --git a/llvm/test/LLVMC/EmptyCompilationGraph.td b/llvm/test/LLVMC/EmptyCompilationGraph.td new file mode 100644 index 00000000000..f4a304730c5 --- /dev/null +++ b/llvm/test/LLVMC/EmptyCompilationGraph.td @@ -0,0 +1,6 @@ +// Check that the compilation graph can be empty. +// RUN: tblgen -I $srcroot/include --gen-llvmc %s + +include "llvm/CompilerDriver/Common.td" + +def Graph : CompilationGraph<[]>; diff --git a/llvm/test/LLVMC/ExternOptions.td b/llvm/test/LLVMC/ExternOptions.td new file mode 100644 index 00000000000..d38675c55e0 --- /dev/null +++ b/llvm/test/LLVMC/ExternOptions.td @@ -0,0 +1,20 @@ +// Check that extern options work. +// The dummy tool and graph are required to silence warnings. +// RUN: tblgen -I $srcroot/include --gen-llvmc %s | grep extern + +include "llvm/CompilerDriver/Common.td" + +def OptList : OptionList<[(extern_switch "Wall"), + (extern_parameter "std"), (extern_list "L")]>; + +def dummy_tool : Tool<[ +(cmd_line "dummy_cmd"), +(in_language "dummy"), +(out_language "dummy"), +(actions (case + (switch_on "Wall"), (stop_compilation), + (not_empty "std"), (stop_compilation), + (not_empty "L"), (stop_compilation))) +]>; + +def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>; diff --git a/llvm/test/LLVMC/MultipleCompilationGraphs.td b/llvm/test/LLVMC/MultipleCompilationGraphs.td new file mode 100644 index 00000000000..3305fc6121e --- /dev/null +++ b/llvm/test/LLVMC/MultipleCompilationGraphs.td @@ -0,0 +1,8 @@ +// Check that multiple compilation graphs are allowed. +// RUN: tblgen -I $srcroot/include --gen-llvmc %s + +include "llvm/CompilerDriver/Common.td" + +def Graph1 : CompilationGraph<[]>; +def Graph2 : CompilationGraph<[]>; +def Graph3 : CompilationGraph<[]>; diff --git a/llvm/test/LLVMC/NoActions.td b/llvm/test/LLVMC/NoActions.td new file mode 100644 index 00000000000..43fd0079eee --- /dev/null +++ b/llvm/test/LLVMC/NoActions.td @@ -0,0 +1,12 @@ +// Check that tools without associated actions are accepted. +// RUN: tblgen -I $srcroot/include --gen-llvmc %s | grep dummy_tool + +include "llvm/CompilerDriver/Common.td" + +def dummy_tool : Tool<[ +(cmd_line "dummy_cmd"), +(in_language "dummy"), +(out_language "dummy") +]>; + +def DummyGraph : CompilationGraph<[SimpleEdge<"root", "dummy_tool">]>; diff --git a/llvm/test/LLVMC/NoCompilationGraph.td b/llvm/test/LLVMC/NoCompilationGraph.td new file mode 100644 index 00000000000..6476a371cfb --- /dev/null +++ b/llvm/test/LLVMC/NoCompilationGraph.td @@ -0,0 +1,4 @@ +// Check that the compilation graph is not required. +// RUN: tblgen -I $srcroot/include --gen-llvmc %s + +include "llvm/CompilerDriver/Common.td" diff --git a/llvm/test/LLVMC/TestWarnings.td b/llvm/test/LLVMC/TestWarnings.td new file mode 100644 index 00000000000..5010c61b6ad --- /dev/null +++ b/llvm/test/LLVMC/TestWarnings.td @@ -0,0 +1,8 @@ +// Check that the compiler warns about unused options!. +// RUN: tblgen -I $srcroot/include --gen-llvmc %s | grep extern +// XFAIL: * + +include "llvm/CompilerDriver/Common.td" + +def OptList : OptionList<[(extern_switch "Wall"), + (extern_parameter "std"), (extern_list "L")]>; diff --git a/llvm/test/LLVMC/llvmc.exp b/llvm/test/LLVMC/llvmc.exp index a2e44b99859..8354097ed8e 100644 --- a/llvm/test/LLVMC/llvmc.exp +++ b/llvm/test/LLVMC/llvmc.exp @@ -8,3 +8,4 @@ if [ llvm_gcc_supports c++ ] then { RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{cpp}]] } +RunLLVMTests [lsort [glob -nocomplain $srcdir/$subdir/*.{td}]] |

