about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc/src/errors.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2022-11-15 23:52:22 +0000
committerbors <bors@rust-lang.org>2022-11-15 23:52:22 +0000
commit79146baa9c7e00b716cc41f8660a56cd2acdf8bd (patch)
treed0fe6175d864e6210b871dbe8433d00c87ae80cc /compiler/rustc_codegen_gcc/src/errors.rs
parenta00f8ba7fcac1b27341679c51bf5a3271fa82df3 (diff)
parenta18de7084a729ad2400f5821bf467829660fe184 (diff)
downloadrust-79146baa9c7e00b716cc41f8660a56cd2acdf8bd.tar.gz
rust-79146baa9c7e00b716cc41f8660a56cd2acdf8bd.zip
Auto merge of #102570 - cjgillot:deagg-debuginfo, r=oli-obk
Perform simple scalar replacement of aggregates (SROA) MIR opt

This is a re-open of https://github.com/rust-lang/rust/pull/85796

I copied the debuginfo implementation (first commit) from `@eddyb's` own SROA PR.

This pass replaces plain field accesses by simple locals when possible.
To be eligible, the replaced locals:
- must not be enums or unions;
- must not be used whole;
- must not have their address taken.

The storage and deinit statements are duplicated on each created local.

cc `@tmiasko` who reviewed the former version of this PR.
Diffstat (limited to 'compiler/rustc_codegen_gcc/src/errors.rs')
0 files changed, 0 insertions, 0 deletions