about summary refs log tree commit diff
path: root/src/rustc/back
diff options
context:
space:
mode:
Diffstat (limited to 'src/rustc/back')
-rw-r--r--src/rustc/back/link.rs64
-rw-r--r--src/rustc/back/upcall.rs6
2 files changed, 0 insertions, 70 deletions
diff --git a/src/rustc/back/link.rs b/src/rustc/back/link.rs
index 7b0e14b1da6..cf01d9507f2 100644
--- a/src/rustc/back/link.rs
+++ b/src/rustc/back/link.rs
@@ -30,69 +30,6 @@ fn llvm_err(sess: session, msg: str) -> ! unsafe {
     } else { sess.fatal(msg + ": " + str::unsafe::from_c_str(cstr)); }
 }
 
-fn load_intrinsics_bc(sess: session) -> option<ModuleRef> {
-    let path = alt filesearch::search(
-        sess.filesearch,
-        bind filesearch::pick_file("intrinsics.bc", _)) {
-      option::some(path) { path }
-      option::none {
-        sess.warn("couldn't find intrinsics.bc");
-        ret option::none;
-      }
-    };
-    let membuf = str::as_c_str(path, {|buf|
-        llvm::LLVMRustCreateMemoryBufferWithContentsOfFile(buf)
-                                   });
-    if membuf as uint == 0u {
-        llvm_err(sess, "installation problem: couldn't open " + path);
-    }
-    let llintrinsicsmod = llvm::LLVMRustParseBitcode(membuf);
-    llvm::LLVMDisposeMemoryBuffer(membuf);
-    if llintrinsicsmod as uint == 0u {
-        sess.warn("couldn't parse intrinsics.bc");
-        ret option::none;
-    }
-
-    ret option::some(llintrinsicsmod);
-}
-
-fn load_intrinsics_ll(sess: session) -> ModuleRef {
-    let path = alt filesearch::search(
-        sess.filesearch,
-        bind filesearch::pick_file("intrinsics.ll", _)) {
-      option::some(path) { path }
-      option::none { sess.fatal("couldn't find intrinsics.ll") }
-    };
-    let llintrinsicsmod = str::as_c_str(path, { |buf|
-        llvm::LLVMRustParseAssemblyFile(buf)
-                                        });
-    if llintrinsicsmod as uint == 0u {
-        llvm_err(sess, "couldn't parse intrinsics.ll");
-    }
-    ret llintrinsicsmod;
-}
-
-fn link_intrinsics(sess: session, llmod: ModuleRef) {
-    let llintrinsicsmod = {
-        alt load_intrinsics_bc(sess) {
-          option::some(m) { m }
-          option::none {
-            // When the bitcode format changes we can't parse a .bc
-            // file produced with a newer LLVM (as happens when stage0
-            // is trying to build against a new LLVM revision), in
-            // that case we'll try to parse the assembly.
-            sess.warn("couldn't parse intrinsics.bc, trying intrinsics.ll");
-            load_intrinsics_ll(sess)
-          }
-        }
-    };
-    let linkres = llvm::LLVMLinkModules(llmod, llintrinsicsmod);
-    llvm::LLVMDisposeModule(llintrinsicsmod);
-    if linkres == False {
-        llvm_err(sess, "couldn't link the module with the intrinsics");
-    }
-}
-
 mod write {
     fn is_object_or_assembly_or_exe(ot: output_type) -> bool {
         if ot == output_type_assembly || ot == output_type_object ||
@@ -115,7 +52,6 @@ mod write {
     fn run_passes(sess: session, llmod: ModuleRef, output: str) {
         let opts = sess.opts;
         if opts.time_llvm_passes { llvm::LLVMRustEnableTimePasses(); }
-        link_intrinsics(sess, llmod);
         let mut pm = mk_pass_manager();
         let td = mk_target_data(
             sess.targ_cfg.target_strs.data_layout);
diff --git a/src/rustc/back/upcall.rs b/src/rustc/back/upcall.rs
index 3d8b051638b..43c924b9595 100644
--- a/src/rustc/back/upcall.rs
+++ b/src/rustc/back/upcall.rs
@@ -17,7 +17,6 @@ type upcalls =
      shared_realloc: ValueRef,
      mark: ValueRef,
      vec_grow: ValueRef,
-     vec_push: ValueRef,
      str_concat: ValueRef,
      cmp_type: ValueRef,
      log_type: ValueRef,
@@ -41,7 +40,6 @@ fn declare_upcalls(targ_cfg: @session::config,
     }
     let d = bind decl(llmod, "upcall_", _, _, _);
     let dv = bind decl(llmod, "upcall_", _, _, T_void());
-    let dvi = bind decl(llmod, "upcall_intrinsic_", _, _, T_void());
 
     let int_t = T_int(targ_cfg);
     let size_t = T_size_t(targ_cfg);
@@ -66,10 +64,6 @@ fn declare_upcalls(targ_cfg: @session::config,
               d("mark", [T_ptr(T_i8())], int_t),
           vec_grow:
               dv("vec_grow", [T_ptr(T_ptr(opaque_vec_t)), int_t]),
-          vec_push:
-              dvi("vec_push",
-                [T_ptr(T_ptr(opaque_vec_t)), T_ptr(tydesc_type),
-                 T_ptr(T_i8())]),
           str_concat:
               d("str_concat", [T_ptr(opaque_vec_t), T_ptr(opaque_vec_t)],
                 T_ptr(opaque_vec_t)),