Use edge weights to choose the right linker based on input language names.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50759 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvmc2/Example.td b/tools/llvmc2/Example.td
index 2270902..6fb998b 100644
--- a/tools/llvmc2/Example.td
+++ b/tools/llvmc2/Example.td
@@ -34,12 +34,14 @@
Edge<llc, llvm_gcc_assembler>,
Edge<llvm_gcc_assembler, llvm_gcc_linker>,
OptionalEdge<llvm_gcc_assembler, llvm_gcc_cpp_linker,
- [(parameter_equals "linker", "g++"),
- (parameter_equals "linker", "c++")]>,
+ [(if_input_languages_contain "c++"),
+ (or (parameter_equals "linker", "g++"),
+ (parameter_equals "linker", "c++"))]>,
Edge<root, llvm_gcc_linker>,
OptionalEdge<root, llvm_gcc_cpp_linker,
- [(parameter_equals "linker", "g++"),
- (parameter_equals "linker", "c++")]>
+ [(if_input_languages_contain "c++"),
+ (or (parameter_equals "linker", "g++"),
+ (parameter_equals "linker", "c++"))]>
]>;