]> git.lizzy.rs Git - rust.git/commit
Auto merge of #37429 - camlorn:univariant_layout_optimization, r=eddyb
authorbors <bors@rust-lang.org>
Sun, 18 Dec 2016 07:59:32 +0000 (07:59 +0000)
committerbors <bors@rust-lang.org>
Sun, 18 Dec 2016 07:59:32 +0000 (07:59 +0000)
commit8327b5afafde7cdd6fd4e939d9a8fe12f76503ef
tree950ad46079b3258847e8452903faff3d9d715a93
parentd54e72317998cfe1df90256ad0669dd193cf2f66
parentff59474ed356d69d75447af79278bdd28db16710
Auto merge of #37429 - camlorn:univariant_layout_optimization, r=eddyb

struct field reordering and optimization

This is work in progress.  The goal is to divorce the order of fields in source code from the order of fields in the LLVM IR, then optimize structs (and tuples/enum variants)by always ordering fields from least to most aligned.  It does not work yet.  I intend to check compiler memory usage as a benchmark, and a crater run will probably be required.

I don't know enough of the compiler to complete this work unaided.  If you see places that still need updating, please mention them.  The only one I know of currently is debuginfo, which I'm putting off intentionally until a bit later.

r? @eddyb
src/librustc_trans/debuginfo/metadata.rs