aboutsummaryrefslogtreecommitdiff
path: root/src/comp
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2010-12-10 16:29:41 -0800
committerPatrick Walton <[email protected]>2010-12-10 16:29:41 -0800
commit2c472c0de8416d51b87126cd0f9680ccd956f163 (patch)
treed71fc16b60c00c3cdf8c5e9fb80e1b54969971e2 /src/comp
parentrustc: Declare LLVM typedefs appropriately (diff)
downloadrust-2c472c0de8416d51b87126cd0f9680ccd956f163.tar.xz
rust-2c472c0de8416d51b87126cd0f9680ccd956f163.zip
rustc: Add LLVM typedefs for rust_crate and rust_task for good measure
Diffstat (limited to 'src/comp')
-rw-r--r--src/comp/middle/trans.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index bf22b237..ecc40b17 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -2298,6 +2298,11 @@ fn trans_exit_task_glue(@crate_ctxt cx) {
bcx.build.RetVoid();
}
+fn create_typedefs(@crate_ctxt cx) {
+ llvm.LLVMAddTypeName(cx.llmod, _str.buf("rust_crate"), T_crate());
+ llvm.LLVMAddTypeName(cx.llmod, _str.buf("rust_task"), T_task());
+}
+
fn crate_constant(@crate_ctxt cx) -> ValueRef {
let ValueRef crate_ptr =
@@ -2459,6 +2464,8 @@ fn trans_crate(session.session sess, @ast.crate crate, str output) {
names = namegen(0),
path = "_rust");
+ create_typedefs(cx);
+
collect_items(cx, crate);
resolve_tag_types(cx, crate);
trans_constants(cx, crate);