1
Fork 0

Clean up whitespace oddities perpetrated by pretty-printer.

This commit is contained in:
Lindsey Kuper 2011-06-16 12:02:50 -07:00
parent efc55b2a3d
commit a5563e173e

View file

@ -7086,40 +7086,39 @@ fn trans_obj(@local_ctxt cx, &span sp, &ast::_obj ob, ast::def_id oid,
// there's not much to do. // there's not much to do.
// Store null into pair, if no args or typarams. // Store null into pair, if no args or typarams.
bcx.build.Store(C_null(llbox_ty), pair_box); bcx.build.Store(C_null(llbox_ty), pair_box);
} else { } else {
// Otherwise, we have to synthesize a big structural type for the // Otherwise, we have to synthesize a big structural type for the
// object body. // object body.
let vec[ty::t] obj_fields = []; let vec[ty::t] obj_fields = [];
for (ty::arg a in arg_tys) { vec::push[ty::t](obj_fields, a.ty); } for (ty::arg a in arg_tys) { vec::push[ty::t](obj_fields, a.ty); }
// Tuple type for fields: [field, ...]
// Tuple type for fields: [field, ...]
let ty::t fields_ty = ty::mk_imm_tup(ccx.tcx, obj_fields); let ty::t fields_ty = ty::mk_imm_tup(ccx.tcx, obj_fields);
// Tuple type for typarams: [typaram, ...]
auto tydesc_ty = ty::mk_type(ccx.tcx); auto tydesc_ty = ty::mk_type(ccx.tcx);
let vec[ty::t] tps = []; let vec[ty::t] tps = [];
for (ast::ty_param tp in ty_params) { for (ast::ty_param tp in ty_params) {
vec::push[ty::t](tps, tydesc_ty); vec::push[ty::t](tps, tydesc_ty);
} }
let ty::t typarams_ty = ty::mk_imm_tup(ccx.tcx, tps);
// Tuple type for body: [tydesc_ty, [typaram, ...], [field, ...]]
// Tuple type for typarams: [typaram, ...]
let ty::t typarams_ty = ty::mk_imm_tup(ccx.tcx, tps);
// Tuple type for body: [tydesc_ty, [typaram, ...], [field, ...]]
let ty::t body_ty = let ty::t body_ty =
ty::mk_imm_tup(ccx.tcx, [tydesc_ty, typarams_ty, fields_ty]); ty::mk_imm_tup(ccx.tcx, [tydesc_ty, typarams_ty, fields_ty]);
// Hand this type we've synthesized off to trans_malloc_boxed, which // Hand this type we've synthesized off to trans_malloc_boxed, which
// allocates a box, including space for a refcount. // allocates a box, including space for a refcount.
auto box = trans_malloc_boxed(bcx, body_ty); auto box = trans_malloc_boxed(bcx, body_ty);
bcx = box.bcx; bcx = box.bcx;
// mk_imm_box throws a refcount into the type we're synthesizing, so // mk_imm_box throws a refcount into the type we're synthesizing, so
// that it looks like: [rc, [tydesc_ty, [typaram, ...], [field, ...]]] // that it looks like: [rc, [tydesc_ty, [typaram, ...], [field, ...]]]
let ty::t boxed_body_ty = ty::mk_imm_box(ccx.tcx, body_ty); let ty::t boxed_body_ty = ty::mk_imm_box(ccx.tcx, body_ty);
// Grab onto the refcount and body parts of the box we allocated.
// Grab onto the refcount and body parts of the box we allocated.
auto rc = auto rc =
GEP_tup_like(bcx, boxed_body_ty, box.val, GEP_tup_like(bcx, boxed_body_ty, box.val,
[0, abi::box_rc_field_refcnt]); [0, abi::box_rc_field_refcnt]);
@ -7129,6 +7128,7 @@ fn trans_obj(@local_ctxt cx, &span sp, &ast::_obj ob, ast::def_id oid,
[0, abi::box_rc_field_body]); [0, abi::box_rc_field_body]);
bcx = body.bcx; bcx = body.bcx;
bcx.build.Store(C_int(1), rc.val); bcx.build.Store(C_int(1), rc.val);
// Put together a tydesc for the body, so that the object can later be // Put together a tydesc for the body, so that the object can later be
// freed by calling through its tydesc. // freed by calling through its tydesc.
@ -7148,6 +7148,7 @@ fn trans_obj(@local_ctxt cx, &span sp, &ast::_obj ob, ast::def_id oid,
lazily_emit_tydesc_glue(bcx, abi::tydesc_field_free_glue, ti); lazily_emit_tydesc_glue(bcx, abi::tydesc_field_free_glue, ti);
bcx = body_td.bcx; bcx = body_td.bcx;
bcx.build.Store(body_td.val, body_tydesc.val); bcx.build.Store(body_td.val, body_tydesc.val);
// Copy the object's type parameters and fields into the space we // Copy the object's type parameters and fields into the space we
// allocated for the object body. (This is something like saving the // allocated for the object body. (This is something like saving the
// lexical environment of a function in its closure: the "captured // lexical environment of a function in its closure: the "captured
@ -7156,7 +7157,6 @@ fn trans_obj(@local_ctxt cx, &span sp, &ast::_obj ob, ast::def_id oid,
// Likewise for the object's fields.) // Likewise for the object's fields.)
// Copy typarams into captured typarams. // Copy typarams into captured typarams.
auto body_typarams = auto body_typarams =
GEP_tup_like(bcx, body_ty, body.val, GEP_tup_like(bcx, body_ty, body.val,
[0, abi::obj_body_elt_typarams]); [0, abi::obj_body_elt_typarams]);
@ -7170,8 +7170,8 @@ fn trans_obj(@local_ctxt cx, &span sp, &ast::_obj ob, ast::def_id oid,
bcx = copy_val(bcx, INIT, capture.val, typaram, tydesc_ty).bcx; bcx = copy_val(bcx, INIT, capture.val, typaram, tydesc_ty).bcx;
i += 1; i += 1;
} }
// Copy args into body fields.
// Copy args into body fields.
auto body_fields = auto body_fields =
GEP_tup_like(bcx, body_ty, body.val, GEP_tup_like(bcx, body_ty, body.val,
[0, abi::obj_body_elt_fields]); [0, abi::obj_body_elt_fields]);
@ -7186,14 +7186,14 @@ fn trans_obj(@local_ctxt cx, &span sp, &ast::_obj ob, ast::def_id oid,
bcx = copy_val(bcx, INIT, field.val, arg, arg_tys.(i).ty).bcx; bcx = copy_val(bcx, INIT, field.val, arg, arg_tys.(i).ty).bcx;
i += 1; i += 1;
} }
// Store box ptr in outer pair.
// Store box ptr in outer pair.
auto p = bcx.build.PointerCast(box.val, llbox_ty); auto p = bcx.build.PointerCast(box.val, llbox_ty);
bcx.build.Store(p, pair_box); bcx.build.Store(p, pair_box);
} }
bcx.build.RetVoid(); bcx.build.RetVoid();
// Insert the mandatory first few basic blocks before lltop.
// Insert the mandatory first few basic blocks before lltop.
finish_fn(fcx, lltop); finish_fn(fcx, lltop);
} }