Skip to content

Commit 70cc899

Browse files
committed
---
yaml --- r: 4019 b: refs/heads/master c: b7a7120 h: refs/heads/master i: 4017: 59c5fc3 4015: 58cc75f v: v3
1 parent 3b4723c commit 70cc899

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

[refs]

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: a467e8e4e6981208b0de4e5fb44885f12c390412
2+
refs/heads/master: b7a7120804520e621950e1ac5f86cdafec106f4d

trunk/src/comp/middle/trans.rs

+11
Original file line numberDiff line numberDiff line change
@@ -8564,6 +8564,17 @@ fn write_metadata(&@trans::crate_ctxt cx, &@ast::crate crate) {
85648564
str::buf("rust_metadata"));
85658565
llvm::LLVMSetInitializer(llglobal, llconst);
85668566
llvm::LLVMSetSection(llglobal, str::buf(x86::get_meta_sect_name()));
8567+
llvm::LLVMSetLinkage(llglobal,
8568+
lib::llvm::LLVMInternalLinkage as llvm::Linkage);
8569+
8570+
auto t_ptr_i8 = T_ptr(T_i8());
8571+
llglobal = llvm::LLVMConstBitCast(llglobal, t_ptr_i8);
8572+
auto llvm_used =
8573+
llvm::LLVMAddGlobal(cx.llmod, T_array(t_ptr_i8, 1u),
8574+
str::buf("llvm_used"));
8575+
llvm::LLVMSetLinkage(llvm_used,
8576+
lib::llvm::LLVMAppendingLinkage as llvm::Linkage);
8577+
llvm::LLVMSetInitializer(llvm_used, C_array(t_ptr_i8, ~[llglobal]));
85678578
}
85688579

85698580
fn trans_crate(&session::session sess, &@ast::crate crate, &ty::ctxt tcx,

0 commit comments

Comments
 (0)