[MIR] Deaggregate structs to enable further optimizations
Currently, we generate MIR like:
```
tmp0 = ...;
tmp1 = ...;
tmp3 = Foo { a: ..., b: ... };
```
This PR implements "deaggregation," i.e.:
```
tmp3.0 = ...
tmp3.1 = ...
```
Currently, the code only deaggregates structs, not enums. My understanding is that we do not have MIR to set the discriminant of an enum.
|
||
|---|---|---|
| .. | ||
| Cargo.toml | ||
| driver.rs | ||
| lib.rs | ||
| pretty.rs | ||
| target_features.rs | ||
| test.rs | ||