aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorMikhail Glushenkov <foldr@codedgers.com>2009-10-09 05:45:01 +0000
committerMikhail Glushenkov <foldr@codedgers.com>2009-10-09 05:45:01 +0000
commit3ab68895b4c01cf1a788b49da8f2d61f7d58c108 (patch)
tree40fbe628ce5b5d6b288264c17987a7280eda5fa8 /tools
parent8795070d50d27de68e96164a2c9e5ba2e00c4fbd (diff)
downloadexternal_llvm-3ab68895b4c01cf1a788b49da8f2d61f7d58c108.zip
external_llvm-3ab68895b4c01cf1a788b49da8f2d61f7d58c108.tar.gz
external_llvm-3ab68895b4c01cf1a788b49da8f2d61f7d58c108.tar.bz2
Use llvm-as only for compiling .ll -> .bc.
llc can compile .ll files directly these days. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83618 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r--tools/llvmc/plugins/Base/Base.td.in8
1 files changed, 5 insertions, 3 deletions
diff --git a/tools/llvmc/plugins/Base/Base.td.in b/tools/llvmc/plugins/Base/Base.td.in
index 3f70ae4..be325a0 100644
--- a/tools/llvmc/plugins/Base/Base.td.in
+++ b/tools/llvmc/plugins/Base/Base.td.in
@@ -111,7 +111,8 @@ def llvm_as : Tool<
[(in_language "llvm-assembler"),
(out_language "llvm-bitcode"),
(output_suffix "bc"),
- (cmd_line "llvm-as $INFILE -o $OUTFILE")
+ (cmd_line "llvm-as $INFILE -o $OUTFILE"),
+ (actions (case (switch_on "emit-llvm"), (stop_compilation)))
]>;
def llvm_gcc_assembler : Tool<
@@ -125,7 +126,7 @@ def llvm_gcc_assembler : Tool<
]>;
def llc : Tool<
-[(in_language "llvm-bitcode"),
+[(in_language ["llvm-bitcode", "llvm-assembler"]),
(out_language "assembler"),
(output_suffix "s"),
(cmd_line "llc -f $INFILE -o $OUTFILE"),
@@ -178,7 +179,6 @@ def CompilationGraph : CompilationGraph<[
Edge<"root", "llvm_gcc_cpp">,
Edge<"root", "llvm_gcc_m">,
Edge<"root", "llvm_gcc_mxx">,
- Edge<"root", "llvm_as">,
Edge<"root", "llc">,
Edge<"llvm_gcc_c", "llc">,
@@ -187,6 +187,8 @@ def CompilationGraph : CompilationGraph<[
Edge<"llvm_gcc_mxx", "llc">,
Edge<"llvm_as", "llc">,
+ OptionalEdge<"root", "llvm_as",
+ (case (switch_on "emit-llvm"), (inc_weight))>,
OptionalEdge<"llvm_gcc_c", "opt", (case (switch_on "opt"), (inc_weight))>,
OptionalEdge<"llvm_gcc_cpp", "opt", (case (switch_on "opt"), (inc_weight))>,
OptionalEdge<"llvm_gcc_m", "opt", (case (switch_on "opt"), (inc_weight))>,