Uh oh!
There was an error while loading. Please reload this page.
Modify SimplifyArmIdentity so it can trigger on mir-opt-level=1 - #69756
Conversation
wesleywiser
commented
Mar 6, 2020
@bors try @rust-timer queue |
rust-timer
commented
Mar 6, 2020
Awaiting bors try build completion |
bors
commented
Mar 6, 2020
[WIP] Modify SimplifyArmIdentity so it can trigger on mir-opt-level=1 r? @ghost
This comment has been minimized.
This comment has been minimized.
bors
commented
Mar 6, 2020
☀️ Try build successful - checks-azure |
rust-timer
commented
Mar 6, 2020
Queued 69665ae with parent b818ccc, future comparison URL. |
rust-timer
commented
Mar 6, 2020
Finished benchmarking try commit 69665ae, comparison URL. |
a77c0f9 to
f0d5e44Comparewesleywiser
commented
Mar 9, 2020
@bors try @rust-timer queue |
rust-timer
commented
Mar 9, 2020
Awaiting bors try build completion |
bors
commented
Mar 9, 2020
[WIP] Modify SimplifyArmIdentity so it can trigger on mir-opt-level=1 r? @ghost
This comment has been minimized.
This comment has been minimized.
bors
commented
Mar 9, 2020
☀️ Try build successful - checks-azure |
rust-timer
commented
Mar 9, 2020
Queued be3cc06 with parent 2cb0b85, future comparison URL. |
rust-timer
commented
Mar 9, 2020
Finished benchmarking try commit be3cc06, comparison URL. |
wesleywiser
commented
Mar 10, 2020
I've manually verified the |
fa55b55 to
1e0048dComparewesleywiser
commented
Mar 10, 2020
r? @oli-obk |
This comment has been minimized.
This comment has been minimized.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
wesleywiser
commented
Mar 11, 2020
@oli-obk The build failure is legit. I've got a repro of the issue with |
49972c8 to
a8189ffComparebors
commented
May 12, 2020
⌛ Testing commit 6de6d70 with merge c892c7cd3cf05930ed4d1fdc7ff025c38dad1969... |
bors
commented
May 12, 2020
💔 Test failed - checks-actions |
wesleywiser
commented
May 12, 2020
@bors retry Spurious macOS failure. |
bors
commented
May 12, 2020
⌛ Testing commit 6de6d70 with merge 618120aeea8892e23b8b466bab4c1f308cfaae42... |
Dylan-DPC-zz
commented
May 12, 2020
@bors retry yield |
bors
commented
May 13, 2020
⌛ Testing commit 6de6d70 with merge c6b39cc0035a644fe95217a97de42d261a53d7c0... |
bors
commented
May 13, 2020
💔 Test failed - checks-actions |
oli-obk
commented
May 13, 2020
@bors retry artifact upload failure |
bors
commented
May 14, 2020
bors
commented
May 14, 2020
☀️ Test successful - checks-actions, checks-azure |
nnethercote
commented
May 19, 2020
This caused a perf regression for |
oli-obk
commented
May 19, 2020
Curious that the regression didn't show up in the perf runs in this PR. Maybe some other change snuck in between that caused this change to become a perf regression? |
oli-obk
commented
May 19, 2020
Also, according to https://perf.rust-lang.org/detailed-query.html?commit=7c34d8d6629506a596215886e5fc4bb2b04b00ae&base_commit=23ffeea307c31f0c20ebb5a15d5171e0c414629d&benchmark=issue-58319-check&run_name=full the regression is entirely inside borrowck, which isn't affected by this change beyond this change affecting the built rustc. So... did we make rustc slower (I honestly fail to see how) |
wesleywiser
commented
May 19, 2020
Total time for the |
I also added test cases to make sure the optimization can fire on all of
these cases:
Without MIR inlining, this still does not completely optimize away the
?operator because theTry::into_result(),From::from()andTry::from_error()calls still exist. This does move us a bit closer tothat 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.
Fixes#66855