aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/CompilerDriver
diff options
context:
space:
mode:
authorMikhail Glushenkov <foldr@codedgers.com>2008-11-17 17:29:18 +0000
committerMikhail Glushenkov <foldr@codedgers.com>2008-11-17 17:29:18 +0000
commit010887765a9a80ecb5e34b65a3aeacf098298cb3 (patch)
tree1884c821524db37b2afb76a081baa3853f074396 /include/llvm/CompilerDriver
parent6560c000a1327b6a023badafed974f35fa1bdc3b (diff)
Add a layer of indirection to make plugins more flexible.
Use strings instead of TableGen defs in the compilation graph definition. Makes it easier for the plugins to modify an existing graph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59447 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CompilerDriver')
-rw-r--r--include/llvm/CompilerDriver/Common.td16
1 files changed, 6 insertions, 10 deletions
diff --git a/include/llvm/CompilerDriver/Common.td b/include/llvm/CompilerDriver/Common.td
index 45518385e4..e017326069 100644
--- a/include/llvm/CompilerDriver/Common.td
+++ b/include/llvm/CompilerDriver/Common.td
@@ -15,10 +15,6 @@ class Tool<list<dag> l> {
list<dag> properties = l;
}
-// Special Tool instance - the root node of the compilation graph.
-
-def root : Tool<[]>;
-
// Possible Tool properties
def in_language;
@@ -87,19 +83,19 @@ class LanguageMap<list<LangToSuffixes> lst> {
// Compilation graph
-class EdgeBase<Tool t1, Tool t2, dag d> {
- Tool a = t1;
- Tool b = t2;
+class EdgeBase<string t1, string t2, dag d> {
+ string a = t1;
+ string b = t2;
dag weight = d;
}
-class Edge<Tool t1, Tool t2> : EdgeBase<t1, t2, (empty)>;
+class Edge<string t1, string t2> : EdgeBase<t1, t2, (empty)>;
// Edge and SimpleEdge are synonyms.
-class SimpleEdge<Tool t1, Tool t2> : EdgeBase<t1, t2, (empty)>;
+class SimpleEdge<string t1, string t2> : EdgeBase<t1, t2, (empty)>;
// Optionally enabled edge.
-class OptionalEdge<Tool t1, Tool t2, dag props> : EdgeBase<t1, t2, props>;
+class OptionalEdge<string t1, string t2, dag props> : EdgeBase<t1, t2, props>;
class CompilationGraph<list<EdgeBase> lst> {
list<EdgeBase> edges = lst;