<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_codegen_ssa/src/debuginfo, branch 1.54.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.54.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.54.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2021-06-02T14:23:12+00:00</updated>
<entry>
<title>Respond to review feedback</title>
<updated>2021-06-02T14:23:12+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wesleywiser@microsoft.com</email>
</author>
<published>2021-05-26T16:02:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3127419e2b2cb4ad2e44a06d30af6a015daf4557'/>
<id>urn:sha1:3127419e2b2cb4ad2e44a06d30af6a015daf4557</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Change the type name from `_enum&lt;..&gt;` to `enum$&lt;..&gt;`</title>
<updated>2021-06-02T14:23:12+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wesleywiser@microsoft.com</email>
</author>
<published>2021-05-20T17:58:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ef053fd6f0faa848097ff8b924ac859c667c8d15'/>
<id>urn:sha1:ef053fd6f0faa848097ff8b924ac859c667c8d15</id>
<content type='text'>
This makes the type name inline with the proposed standard in #85269.
</content>
</entry>
<entry>
<title>Generate better debuginfo for niche-layout enums</title>
<updated>2021-06-02T14:23:10+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wesleywiser@microsoft.com</email>
</author>
<published>2021-05-13T20:39:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=141546c355f2de7501c1df75dd97229ed350eeb3'/>
<id>urn:sha1:141546c355f2de7501c1df75dd97229ed350eeb3</id>
<content type='text'>
Previously, we would generate a single struct with the layout of the
dataful variant plus an extra field whose name contained the value of
the niche (this would only really work for things like `Option&lt;&amp;_&gt;`
where we can determine that the `None` case maps to `0` but for enums
that have multiple tag only variants, this doesn't work).

Now, we generate a union of two structs, one which is the layout of the
dataful variant and one which just has a way of reading the
discriminant. We also generate an enum which maps the discriminant value
to the tag only variants.

We also encode information about the range of values which correspond to
the dataful variant in the type name and then use natvis to determine
which union field we should display to the user.

As a result of this change, all niche-layout enums render correctly in
WinDbg and Visual Studio!
</content>
</entry>
<entry>
<title>Generate better debuginfo for directly tagged enums</title>
<updated>2021-06-02T14:23:09+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wesleywiser@microsoft.com</email>
</author>
<published>2021-04-26T18:39:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f353cbf1a145603e1f69c2aaaef171dd60ca4c65'/>
<id>urn:sha1:f353cbf1a145603e1f69c2aaaef171dd60ca4c65</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Stop adding '*' at the end of type names for Ref and Slice when computing debug info for MSVC debuggers</title>
<updated>2020-11-30T22:31:34+00:00</updated>
<author>
<name>Nam Nguyen</name>
<email>nanguye@microsoft.com</email>
</author>
<published>2020-11-18T21:42:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=36e6aa0aa686049736810d7444c1bfca8e14d38d'/>
<id>urn:sha1:36e6aa0aa686049736810d7444c1bfca8e14d38d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>compiler: fold by value</title>
<updated>2020-11-16T21:34:57+00:00</updated>
<author>
<name>Bastian Kauschke</name>
<email>bastian_kauschke@hotmail.de</email>
</author>
<published>2020-10-24T00:21:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2bf93bd852f0636eb4d052ee155bdb6cec592c53'/>
<id>urn:sha1:2bf93bd852f0636eb4d052ee155bdb6cec592c53</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Collapse all uses of `target.options.foo` into `target.foo`</title>
<updated>2020-11-08T14:29:13+00:00</updated>
<author>
<name>Vadim Petrochenkov</name>
<email>vadim.petrochenkov@gmail.com</email>
</author>
<published>2020-11-08T11:27:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=bf66988aa1677d018928c271fed563792f921d28'/>
<id>urn:sha1:bf66988aa1677d018928c271fed563792f921d28</id>
<content type='text'>
with an eye on merging `TargetOptions` into `Target`.

`TargetOptions` as a separate structure is mostly an implementation detail of `Target` construction, all its fields logically belong to `Target` and available from `Target` through `Deref` impls.
</content>
</entry>
<entry>
<title>Replace target.target with target and target.ptr_width with target.pointer_width</title>
<updated>2020-10-15T10:02:24+00:00</updated>
<author>
<name>est31</name>
<email>MTest31@outlook.com</email>
</author>
<published>2020-10-15T09:44:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4fa55787745ac71793253c47c4d6cd5ffe96b741'/>
<id>urn:sha1:4fa55787745ac71793253c47c4d6cd5ffe96b741</id>
<content type='text'>
Preparation for a subsequent change that replaces
rustc_target::config::Config with its wrapped Target.

On its own, this commit breaks the build. I don't like making
build-breaking commits, but in this instance I believe that it
makes review easier, as the "real" changes of this PR can be
seen much more easily.

Result of running:

find compiler/ -type f -exec sed -i -e 's/target\.target\([)\.,; ]\)/target\1/g' {} \;
find compiler/ -type f -exec sed -i -e 's/target\.target$/target/g' {} \;
find compiler/ -type f -exec sed -i -e 's/target.ptr_width/target.pointer_width/g' {} \;
./x.py fmt
</content>
</entry>
<entry>
<title>Simplify some match statements on `DefPathDataName'</title>
<updated>2020-09-25T21:46:15+00:00</updated>
<author>
<name>marmeladema</name>
<email>xademax@gmail.com</email>
</author>
<published>2020-09-01T12:11:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=bb8e1764bb31bc63a6b61f446e28bb567015de01'/>
<id>urn:sha1:bb8e1764bb31bc63a6b61f446e28bb567015de01</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename `DefPathData::get_name()` to `DefPathData::name()`</title>
<updated>2020-09-25T21:46:15+00:00</updated>
<author>
<name>marmeladema</name>
<email>xademax@gmail.com</email>
</author>
<published>2020-08-31T23:42:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=657ecdb75e2a9f8e8295bc75d9fe810f02605130'/>
<id>urn:sha1:657ecdb75e2a9f8e8295bc75d9fe810f02605130</id>
<content type='text'>
</content>
</entry>
</feed>
