librustc: Stop zeroing out allocas so much. Cuts 300K off librustc.

This commit is contained in:
Patrick Walton 2013-01-29 21:14:09 -08:00
parent 1b613ff9fc
commit 97c593a1ce
3 changed files with 3 additions and 7 deletions

View File

@ -305,7 +305,7 @@ fn malloc_raw_dyn(bcx: block,
// Allocate space:
let tydesc = PointerCast(bcx, static_ti.tydesc, T_ptr(T_i8()));
let rval = alloca_zeroed(bcx, T_ptr(T_i8()));
let rval = alloca(bcx, T_ptr(T_i8()));
let bcx = callee::trans_rtcall_or_lang_call(
bcx,
langcall,
@ -1504,10 +1504,6 @@ fn alloca(cx: block, t: TypeRef) -> ValueRef {
alloca_maybe_zeroed(cx, t, false)
}
fn alloca_zeroed(cx: block, t: TypeRef) -> ValueRef {
alloca_maybe_zeroed(cx, t, true)
}
fn alloca_maybe_zeroed(cx: block, t: TypeRef, zero: bool) -> ValueRef {
let _icx = cx.insn_ctxt("alloca");
if cx.unreachable {

View File

@ -525,7 +525,7 @@ fn make_opaque_cbox_take_glue(
// Allocate memory, update original ptr, and copy existing data
let opaque_tydesc = PointerCast(bcx, tydesc, T_ptr(T_i8()));
let rval = alloca_zeroed(bcx, T_ptr(T_i8()));
let rval = alloca(bcx, T_ptr(T_i8()));
let bcx = callee::trans_rtcall_or_lang_call(
bcx,
bcx.tcx().lang_items.exchange_malloc_fn(),

View File

@ -134,7 +134,7 @@ pub fn free_ty_immediate(bcx: block, v: ValueRef, t: ty::t) -> block {
ty::ty_evec(_, ty::vstore_box) |
ty::ty_estr(ty::vstore_box) |
ty::ty_opaque_closure_ptr(_) => {
let vp = alloca_zeroed(bcx, type_of(bcx.ccx(), t));
let vp = alloca(bcx, type_of(bcx.ccx(), t));
Store(bcx, v, vp);
free_ty(bcx, vp, t)
}