about summary refs log tree commit diff
path: root/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-09-06 16:10:11 +0000
committerbors <bors@rust-lang.org>2023-09-06 16:10:11 +0000
commita5b2ac6906d2b688db4938f842057cde6054449c (patch)
treea570cff2253d12e85bb588d893bf576a410ff566 /compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
parenta0c28cd9dc99d9acb015d06f6b27c640adad3550 (diff)
parent26c48e6f95c4075951a21d54cf1e61af68cbb5e0 (diff)
downloadrust-a5b2ac6906d2b688db4938f842057cde6054449c.tar.gz
rust-a5b2ac6906d2b688db4938f842057cde6054449c.zip
Auto merge of #115252 - cjgillot:mir-composite, r=davidtwco
Represent MIR composite debuginfo as projections instead of aggregates

Composite debuginfo for MIR is currently represented as
```
debug name => Type { projection1 => place1, projection2 => place2 };
```
ie. a single `VarDebugInfo` object with that name, and its value a `VarDebugInfoContents::Composite`.

This PR proposes to reverse the representation to be
```
debug name.projection1 => place1;
debug name.projection2 => place2;
```
ie. multiple `VarDebugInfo` objects with each their projection.

This simplifies the handling of composite debuginfo by the compiler by avoiding weird nesting.

Based on https://github.com/rust-lang/rust/pull/115139
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp')
0 files changed, 0 insertions, 0 deletions