Skip to content

Commit 3b75592

Browse files
committed
---
yaml --- r: 4728 b: refs/heads/master c: 2716938 h: refs/heads/master v: v3
1 parent 6502a10 commit 3b75592

File tree

7 files changed

+13
-824
lines changed

7 files changed

+13
-824
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: 3db300b06e11b3dee9d6f1780f3c7b9ccad575aa
2+
refs/heads/master: 27169387fe615269fa79d0d904d96be0226d628a

trunk/src/comp/driver/rustc.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,6 @@ options:
278278
--sysroot <path> override the system root (default: rustc's directory)
279279
--no-typestate don't run the typestate pass (unsafe!)
280280
--test build test harness
281-
--dps translate via destination-passing style (experimental)
282281
--gc garbage collect shared data (experimental/temporary)
283282
284283
");
@@ -384,7 +383,6 @@ fn build_session_options(binary: str, match: getopts::match, binary_dir: str)
384383
};
385384
let cfg = parse_cfgspecs(getopts::opt_strs(match, "cfg"));
386385
let test = opt_present(match, "test");
387-
let dps = opt_present(match, "dps");
388386
let do_gc = opt_present(match, "gc");
389387
let sopts: @session::options =
390388
@{library: library,
@@ -402,7 +400,6 @@ fn build_session_options(binary: str, match: getopts::match, binary_dir: str)
402400
sysroot: sysroot,
403401
cfg: cfg,
404402
test: test,
405-
dps: dps,
406403
parse_only: parse_only,
407404
no_trans: no_trans,
408405
do_gc: do_gc};
@@ -437,7 +434,7 @@ fn opts() -> [getopts::opt] {
437434
optopt("sysroot"), optflag("stats"), optflag("time-passes"),
438435
optflag("time-llvm-passes"), optflag("no-typestate"),
439436
optflag("noverify"), optmulti("cfg"), optflag("test"),
440-
optflag("lib"), optflag("static"), optflag("dps"), optflag("gc")];
437+
optflag("lib"), optflag("static"), optflag("gc")];
441438
}
442439

443440
fn main(args: vec[str]) {

trunk/src/comp/driver/session.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ type options =
4141
sysroot: str,
4242
cfg: ast::crate_cfg,
4343
test: bool,
44-
dps: bool,
4544
parse_only: bool,
4645
no_trans: bool,
4746
do_gc: bool

trunk/src/comp/middle/trans.rs

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6021,23 +6021,17 @@ fn trans_closure(bcx_maybe: &option::t[@block_ctxt],
60216021
let lltop = bcx.llbb;
60226022
let block_ty = node_id_type(cx.ccx, f.body.node.id);
60236023

6024-
if cx.ccx.sess.get_opts().dps {
6025-
// Call into the new destination-passing-style translation engine.
6026-
let dest = trans_dps::dest_move(cx.ccx.tcx, fcx.llretptr, block_ty);
6027-
bcx = trans_dps::trans_block(bcx, dest, f.body);
6028-
} else {
6029-
// This call to trans_block is the place where we bridge between
6030-
// translation calls that don't have a return value (trans_crate,
6031-
// trans_mod, trans_item, trans_obj, et cetera) and those that do
6032-
// (trans_block, trans_expr, et cetera).
6033-
let rslt =
6034-
if !ty::type_is_nil(cx.ccx.tcx, block_ty) &&
6035-
!ty::type_is_bot(cx.ccx.tcx, block_ty) &&
6036-
f.proto != ast::proto_iter {
6037-
trans_block(bcx, f.body, save_in(fcx.llretptr))
6038-
} else { trans_block(bcx, f.body, return) };
6039-
bcx = rslt.bcx;
6040-
}
6024+
// This call to trans_block is the place where we bridge between
6025+
// translation calls that don't have a return value (trans_crate,
6026+
// trans_mod, trans_item, trans_obj, et cetera) and those that do
6027+
// (trans_block, trans_expr, et cetera).
6028+
let rslt =
6029+
if !ty::type_is_nil(cx.ccx.tcx, block_ty) &&
6030+
!ty::type_is_bot(cx.ccx.tcx, block_ty) &&
6031+
f.proto != ast::proto_iter {
6032+
trans_block(bcx, f.body, save_in(fcx.llretptr))
6033+
} else { trans_block(bcx, f.body, return) };
6034+
bcx = rslt.bcx;
60416035

60426036
if !is_terminated(bcx) {
60436037
// FIXME: until LLVM has a unit type, we are moving around

0 commit comments

Comments
 (0)