<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/test/mir-opt/simplify_arm.id.SimplifyBranchSame.diff, branch master</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=master</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2022-09-02T06:01:53+00:00</updated>
<entry>
<title>Simplify MIR opt tests</title>
<updated>2022-09-02T06:01:53+00:00</updated>
<author>
<name>Jakob Degen</name>
<email>jakob.e.degen@gmail.com</email>
</author>
<published>2022-08-21T04:47:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e5d60af3c6f44be48371e32ef553416d277c92ec'/>
<id>urn:sha1:e5d60af3c6f44be48371e32ef553416d277c92ec</id>
<content type='text'>
This commit removes many cases of MIR opt tests emitting `.diff`s for more than one pass. These
tests cannot be `unit-test`s, and so they are easy to break, and they also provide little value due
to having excessively strong opinions over *how* a piece of code should be optimized.

Where reasonable, we instead add separate test files that only emit the `PreCodegen.after` MIR for
code where we want to track what the result of the net result of the optimization pipeline's output
is.
</content>
</entry>
<entry>
<title>bless mir opt tests</title>
<updated>2022-07-28T12:24:44+00:00</updated>
<author>
<name>Nilstrieb</name>
<email>48135649+Nilstrieb@users.noreply.github.com</email>
</author>
<published>2022-07-27T18:47:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=11c0280798da8f4d65dec25764237d2354e65273'/>
<id>urn:sha1:11c0280798da8f4d65dec25764237d2354e65273</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix tests broken by deaggregation change</title>
<updated>2022-04-11T13:26:26+00:00</updated>
<author>
<name>Jakob Degen</name>
<email>jakob.e.degen@gmail.com</email>
</author>
<published>2022-04-05T23:02:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2a040284a5bc3bee1e78a7bea60e15a0033ef2b5'/>
<id>urn:sha1:2a040284a5bc3bee1e78a7bea60e15a0033ef2b5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix debugger stepping behavior around `match` expressions</title>
<updated>2021-08-25T19:17:22+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wesleywiser@microsoft.com</email>
</author>
<published>2021-07-23T22:55:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0a42dfc2fa2b373aedf7a169da3f0ec0e996fc9f'/>
<id>urn:sha1:0a42dfc2fa2b373aedf7a169da3f0ec0e996fc9f</id>
<content type='text'>
Previously, we would set up the source lines for `match` expressions so
that the code generated to perform the test of the scrutinee was matched
to the line of the arm that required the test and then jump from the arm
block to the "next" block was matched to all of the lines in the `match`
expression.

While that makes sense, it has the side effect of causing strange
stepping behavior in debuggers.

I've changed the source information so that all of the generated tests
are sourced to `match {scrutinee}` and the jumps are sourced to the last
line of the block they are inside. This resolves the weird stepping
behavior in all debuggers and resolves some instances of "ambiguous
symbol" errors in WinDbg preventing the user from setting breakpoints at
`match` expressions.
</content>
</entry>
<entry>
<title>Fix #76803</title>
<updated>2020-09-19T13:40:15+00:00</updated>
<author>
<name>Simon Vandel Sillesen</name>
<email>simon.vandel@gmail.com</email>
</author>
<published>2020-09-17T17:10:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=738ed9b5ec62259eb0f2aced549feec2f7e7c75a'/>
<id>urn:sha1:738ed9b5ec62259eb0f2aced549feec2f7e7c75a</id>
<content type='text'>
Check that the variant index matches the target value from the SwitchInt we came from
</content>
</entry>
<entry>
<title>[mir-opt] Disable the `ConsideredEqual` logic in SimplifyBranchSame opt</title>
<updated>2020-09-17T13:36:50+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wwiser@gmail.com</email>
</author>
<published>2020-09-17T13:29:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=dbd7226d299ac23647975068bea1168cf56e0feb'/>
<id>urn:sha1:dbd7226d299ac23647975068bea1168cf56e0feb</id>
<content type='text'>
The logic is currently broken and we need to disable it to fix a beta
regression (see #76803)
</content>
</entry>
<entry>
<title>pretty: trim paths of unique symbols</title>
<updated>2020-09-02T19:26:37+00:00</updated>
<author>
<name>Dan Aloni</name>
<email>alonid@gmail.com</email>
</author>
<published>2020-09-02T07:40:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=07e7823c01be1733df2480de19fbbe6b8e9384cf'/>
<id>urn:sha1:07e7823c01be1733df2480de19fbbe6b8e9384cf</id>
<content type='text'>
If a symbol name can only be imported from one place for a type, and
as long as it was not glob-imported anywhere in the current crate, we
can trim its printed path and print only the name.

This has wide implications on error messages with types, for example,
shortening `std::vec::Vec` to just `Vec`, as long as there is no other
`Vec` importable anywhere.

This adds a new '-Z trim-diagnostic-paths=false' option to control this
feature.

On the good path, with no diagnosis printed, we should try to avoid
issuing this query, so we need to prevent trimmed_def_paths query on
several cases.

This change also relies on a previous commit that differentiates
between `Debug` and `Display` on various rustc types, where the latter
is trimmed and presented to the user and the former is not.
</content>
</entry>
<entry>
<title>Implement 'considered equal' for statements, so that for example `_0 = _1` and `discriminant(_0) = discriminant(0)` are considered equal if 0 is a fieldless variant of an enum</title>
<updated>2020-08-16T20:04:58+00:00</updated>
<author>
<name>Simon Vandel Sillesen</name>
<email>simon.vandel@gmail.com</email>
</author>
<published>2020-07-25T15:46:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=293756c93d13985557e3670d5ac91959ad273d0a'/>
<id>urn:sha1:293756c93d13985557e3670d5ac91959ad273d0a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move mir-opt tests to toplevel</title>
<updated>2020-07-29T15:36:03+00:00</updated>
<author>
<name>Xavier Denis</name>
<email>xldenis@gmail.com</email>
</author>
<published>2020-07-28T13:22:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f07607f47ab40837c92035e35602731cc80baa81'/>
<id>urn:sha1:f07607f47ab40837c92035e35602731cc80baa81</id>
<content type='text'>
</content>
</entry>
</feed>
