about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarijn Haverbeke <marijnh@gmail.com>2011-04-17 21:41:38 +0200
committerMarijn Haverbeke <marijnh@gmail.com>2011-04-18 15:28:47 +0200
commit0984d1db2e523d4c012b59dbcc87d53021f67cd2 (patch)
tree0570f1e4a6c10bb8d2891e01e27a5582db93e677
parent36c332a24174e77c8f651879ffb71e918e7a96d1 (diff)
downloadrust-0984d1db2e523d4c012b59dbcc87d53021f67cd2.tar.gz
rust-0984d1db2e523d4c012b59dbcc87d53021f67cd2.zip
move rust_crate structure into the actual crate code
-rw-r--r--src/comp/middle/trans.rs6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index c3945dccadb..1643ba6426b 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -7145,15 +7145,12 @@ fn make_common_glue(str output, bool optimize,
     llvm.LLVMSetTarget(llmod, _str.buf(x86.get_target_triple()));
     auto td = mk_target_data(x86.get_data_layout());
     auto tn = mk_type_names();
-    let ValueRef crate_ptr =
-        llvm.LLVMAddGlobal(llmod, T_crate(tn), _str.buf("rust_crate"));
 
     auto intrinsics = declare_intrinsics(llmod);
 
     llvm.LLVMSetModuleInlineAsm(llmod, _str.buf(x86.get_module_asm()));
 
     auto glues = make_glues(llmod, tn);
-    create_crate_constant(crate_ptr, glues);
     make_memcpy_glue(glues.memcpy_glue);
     make_bzero_glue(glues.bzero_glue);
 
@@ -7223,7 +7220,8 @@ fn trans_crate(session.session sess, @ast.crate crate,
     trans_mod(cx, crate.node.module);
     trans_vec_append_glue(cx);
     if (!shared) {
-        trans_main_fn(cx, cx.ccx.crate_ptr);
+        trans_main_fn(cx, crate_ptr);
+        create_crate_constant(crate_ptr, ccx.glues);
     }
 
     // Translate the metadata.