summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile3
-rw-r--r--src/expand/crate_tags.cpp3
-rw-r--r--src/main.cpp11
3 files changed, 8 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index f3690390..1b979dc9 100644
--- a/Makefile
+++ b/Makefile
@@ -140,7 +140,8 @@ output/libgetopts.hir: output/libstd.hir
output/libserialize.hir: $(call fcn_extcrate, std log)
output/librbml.hir: $(call fcn_extcrate, std serialize)
-output/librustc.hir: $(call fcn_extcrate, std arena flate fmt_macros graphviz rbml)
+output/librustc_llvm.hir: $(call fcn_extcrate, std rustc_bitflags)
+output/librustc.hir: $(call fcn_extcrate, std arena flate fmt_macros graphviz rbml rustc_llvm)
output/rustc: $(RUSTCSRC)src/rustc/rustc.rs output/librustc.hir
@echo "--- [MRUSTC] $@"
diff --git a/src/expand/crate_tags.cpp b/src/expand/crate_tags.cpp
index 79d2cbf6..df6b339b 100644
--- a/src/expand/crate_tags.cpp
+++ b/src/expand/crate_tags.cpp
@@ -26,6 +26,9 @@ public:
if( name == "rlib" || name == "lib" ) {
crate.m_crate_type = AST::Crate::Type::RustLib;
}
+ else if( name == "dylib" || name == "rdylib" ) {
+ crate.m_crate_type = AST::Crate::Type::RustDylib;
+ }
else {
ERROR(sp, E0000, "Unknown crate type '" << name << "'");
}
diff --git a/src/main.cpp b/src/main.cpp
index 24a5ad57..a8352dc2 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -372,18 +372,13 @@ int main(int argc, char *argv[])
CompilePhaseV("MIR Validate", [&]() {
MIR_CheckCrate(*hir_crate);
});
-
- if( params.last_stage == ProgramParams::STAGE_MIR ) {
- return 0;
- }
// Optimise the MIR
// TODO: MIR Optimisation
- //CompilePhaseV("Dump MIR", [&]() {
- // ::std::ofstream os (FMT(params.outfile << "_4_mir_opt.rs"));
- // MIR_Dump( os, *hir_crate );
- // });
+ if( params.last_stage == ProgramParams::STAGE_MIR ) {
+ return 0;
+ }
// TODO: Pass to mark items that are
// - Signature Exportable (public)