<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/test/mir-opt/simplify_try/rustc.try_identity.SimplifyArmIdentity.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>2020-07-29T11:41:11+00:00</updated>
<entry>
<title>add crate name to mir dumps</title>
<updated>2020-07-29T11:41:11+00:00</updated>
<author>
<name>Xavier Denis</name>
<email>xldenis@gmail.com</email>
</author>
<published>2020-07-27T19:22:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=86be22ebcdb904cfdc3c223718a32dc6af422621'/>
<id>urn:sha1:86be22ebcdb904cfdc3c223718a32dc6af422621</id>
<content type='text'>
</content>
</entry>
<entry>
<title>mv std libs to library/</title>
<updated>2020-07-28T00:51:13+00:00</updated>
<author>
<name>mark</name>
<email>markm@cs.wisc.edu</email>
</author>
<published>2020-06-12T02:31:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2c31b45ae878b821975c4ebd94cc1e49f6073fd0'/>
<id>urn:sha1:2c31b45ae878b821975c4ebd94cc1e49f6073fd0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix debuginfo so that it points to the correct local</title>
<updated>2020-07-03T01:11:14+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wwiser@gmail.com</email>
</author>
<published>2020-06-21T23:34:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=24bfdc98e9f02ff7974328f92a0e7ef67eab5f46'/>
<id>urn:sha1:24bfdc98e9f02ff7974328f92a0e7ef67eab5f46</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[mir-opt] Prevent mis-optimization when SimplifyArmIdentity runs</title>
<updated>2020-07-03T01:02:57+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wwiser@gmail.com</email>
</author>
<published>2020-06-22T00:55:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9248d90d20601e9d489a4a1c21df9de686b9fd82'/>
<id>urn:sha1:9248d90d20601e9d489a4a1c21df9de686b9fd82</id>
<content type='text'>
If temporaries are used beyond just the temporary chain, then we can't
optimize out the reads and writes.
</content>
</entry>
<entry>
<title>Show the values and computation that would overflow a const evaluation or propagation</title>
<updated>2020-06-26T08:08:52+00:00</updated>
<author>
<name>Oliver Scherer</name>
<email>github35764891676564198441@oli-obk.de</email>
</author>
<published>2020-06-19T16:57:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=819cde5dabd90dab1fb462cd713457421d0ebd36'/>
<id>urn:sha1:819cde5dabd90dab1fb462cd713457421d0ebd36</id>
<content type='text'>
</content>
</entry>
<entry>
<title>further bless tests.</title>
<updated>2020-06-04T16:26:13+00:00</updated>
<author>
<name>Felix S. Klock II</name>
<email>pnkfelix@pnkfx.org</email>
</author>
<published>2020-06-04T16:26:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ce4c953b99ec476ae176bf869b644e1bd7a15e11'/>
<id>urn:sha1:ce4c953b99ec476ae176bf869b644e1bd7a15e11</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Modify SimplifyArmIdentity so it can trigger on mir-opt-level=1</title>
<updated>2020-05-12T00:31:02+00:00</updated>
<author>
<name>Wesley Wiser</name>
<email>wwiser@gmail.com</email>
</author>
<published>2020-05-12T00:13:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6de6d70ae0a21b779d63d885438c7214e17e7a6d'/>
<id>urn:sha1:6de6d70ae0a21b779d63d885438c7214e17e7a6d</id>
<content type='text'>
I also added test cases to make sure the optimization can fire on all of
these cases:

```rust
fn case_1(o: Option&lt;u8&gt;) -&gt; Option&lt;u8&gt; {
  match o {
    Some(u) =&gt; Some(u),
    None =&gt; None,
  }
}

fn case2(r: Result&lt;u8, i32&gt;) -&gt; Result&lt;u8, i32&gt; {
  match r {
    Ok(u) =&gt; Ok(u),
    Err(i) =&gt; Err(i),
  }
}

fn case3(r: Result&lt;u8, i32&gt;) -&gt; Result&lt;u8, i32&gt; {
  let u = r?;
  Ok(u)
}

```

Without MIR inlining, this still does not completely optimize away the
`?` operator because the `Try::into_result()`, `From::from()` and
`Try::from_error()` calls still exist. This does move us a bit closer to
that goal though because:

- We can now run the pass on mir-opt-level=1

- We no longer depend on the copy propagation pass running which is
  unlikely to stabilize anytime soon.
</content>
</entry>
<entry>
<title>Bless mir-opt tests</title>
<updated>2020-05-09T09:51:39+00:00</updated>
<author>
<name>Matthew Jasper</name>
<email>mjjasper1@gmail.com</email>
</author>
<published>2020-05-02T18:59:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a030c923412b0a0f7b02a585debe7bf60357370d'/>
<id>urn:sha1:a030c923412b0a0f7b02a585debe7bf60357370d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Emit basic block ids for statements and terminators in MIR only in -Zverbose mode</title>
<updated>2020-04-27T13:16:12+00:00</updated>
<author>
<name>Oliver Scherer</name>
<email>github35764891676564198441@oli-obk.de</email>
</author>
<published>2020-04-25T09:01:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a2fdc9468600797762cf7cb7ad4fe32e05c3373e'/>
<id>urn:sha1:a2fdc9468600797762cf7cb7ad4fe32e05c3373e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Normalize away pairs of line:col numbers.</title>
<updated>2020-04-07T17:49:14+00:00</updated>
<author>
<name>Ana-Maria Mihalache</name>
<email>mihalacheana.maria@yahoo.com</email>
</author>
<published>2020-04-07T16:36:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ea4aca19c14bd3424d100cf414723a3017f53ce9'/>
<id>urn:sha1:ea4aca19c14bd3424d100cf414723a3017f53ce9</id>
<content type='text'>
</content>
</entry>
</feed>
