rustc: Remove task type defs from trans
This commit is contained in:
parent
d1d855993d
commit
48c7bc17c6
|
@ -3064,9 +3064,6 @@ pub fn trans_crate(sess: session::Session,
|
||||||
}
|
}
|
||||||
let int_type = T_int(targ_cfg);
|
let int_type = T_int(targ_cfg);
|
||||||
let float_type = T_float(targ_cfg);
|
let float_type = T_float(targ_cfg);
|
||||||
let task_type = T_task(targ_cfg);
|
|
||||||
let taskptr_type = T_ptr(task_type);
|
|
||||||
lib::llvm::associate_type(tn, @"taskptr", taskptr_type);
|
|
||||||
let tydesc_type = T_tydesc(targ_cfg);
|
let tydesc_type = T_tydesc(targ_cfg);
|
||||||
lib::llvm::associate_type(tn, @"tydesc", tydesc_type);
|
lib::llvm::associate_type(tn, @"tydesc", tydesc_type);
|
||||||
let crate_map = decl_crate_map(sess, link_meta, llmod);
|
let crate_map = decl_crate_map(sess, link_meta, llmod);
|
||||||
|
@ -3131,7 +3128,6 @@ pub fn trans_crate(sess: session::Session,
|
||||||
tydesc_type: tydesc_type,
|
tydesc_type: tydesc_type,
|
||||||
int_type: int_type,
|
int_type: int_type,
|
||||||
float_type: float_type,
|
float_type: float_type,
|
||||||
task_type: task_type,
|
|
||||||
opaque_vec_type: T_opaque_vec(targ_cfg),
|
opaque_vec_type: T_opaque_vec(targ_cfg),
|
||||||
builder: BuilderRef_res(unsafe { llvm::LLVMCreateBuilder() }),
|
builder: BuilderRef_res(unsafe { llvm::LLVMCreateBuilder() }),
|
||||||
shape_cx: mk_ctxt(llmod),
|
shape_cx: mk_ctxt(llmod),
|
||||||
|
|
|
@ -221,7 +221,6 @@ pub struct CrateContext {
|
||||||
tydesc_type: TypeRef,
|
tydesc_type: TypeRef,
|
||||||
int_type: TypeRef,
|
int_type: TypeRef,
|
||||||
float_type: TypeRef,
|
float_type: TypeRef,
|
||||||
task_type: TypeRef,
|
|
||||||
opaque_vec_type: TypeRef,
|
opaque_vec_type: TypeRef,
|
||||||
builder: BuilderRef_res,
|
builder: BuilderRef_res,
|
||||||
shape_cx: shape::Ctxt,
|
shape_cx: shape::Ctxt,
|
||||||
|
@ -934,28 +933,6 @@ pub fn T_empty_struct() -> TypeRef { return T_struct([], false); }
|
||||||
// they are described by this opaque type.
|
// they are described by this opaque type.
|
||||||
pub fn T_vtable() -> TypeRef { T_array(T_ptr(T_i8()), 1u) }
|
pub fn T_vtable() -> TypeRef { T_array(T_ptr(T_i8()), 1u) }
|
||||||
|
|
||||||
pub fn T_task(targ_cfg: @session::config) -> TypeRef {
|
|
||||||
let t = T_named_struct("task");
|
|
||||||
|
|
||||||
// Refcount
|
|
||||||
// Delegate pointer
|
|
||||||
// Stack segment pointer
|
|
||||||
// Runtime SP
|
|
||||||
// Rust SP
|
|
||||||
// GC chain
|
|
||||||
|
|
||||||
|
|
||||||
// Domain pointer
|
|
||||||
// Crate cache pointer
|
|
||||||
|
|
||||||
let t_int = T_int(targ_cfg);
|
|
||||||
let elems =
|
|
||||||
~[t_int, t_int, t_int, t_int,
|
|
||||||
t_int, t_int, t_int, t_int];
|
|
||||||
set_struct_body(t, elems, false);
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn T_tydesc_field(cx: @CrateContext, field: uint) -> TypeRef {
|
pub fn T_tydesc_field(cx: @CrateContext, field: uint) -> TypeRef {
|
||||||
// Bit of a kludge: pick the fn typeref out of the tydesc..
|
// Bit of a kludge: pick the fn typeref out of the tydesc..
|
||||||
|
|
||||||
|
@ -1085,8 +1062,6 @@ pub fn T_chan(cx: @CrateContext, _t: TypeRef) -> TypeRef {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn T_taskptr(cx: @CrateContext) -> TypeRef { return T_ptr(cx.task_type); }
|
|
||||||
|
|
||||||
|
|
||||||
pub fn T_opaque_cbox_ptr(cx: @CrateContext) -> TypeRef {
|
pub fn T_opaque_cbox_ptr(cx: @CrateContext) -> TypeRef {
|
||||||
// closures look like boxes (even when they are ~fn or &fn)
|
// closures look like boxes (even when they are ~fn or &fn)
|
||||||
|
|
Loading…
Reference in New Issue