Skip to content
This repository has been archived by the owner on Feb 5, 2019. It is now read-only.

Backport fix for encoding_rs performance regression #115

Merged

Conversation

nikic
Copy link

@nikic nikic commented May 15, 2018

This backports llvm-mirror/llvm@4c64dfe, which fixes the performance regression reported in rust-lang/rust#49873.

The commit rL308422 introduces a restriction for folding unconditional
branches. Specifically if empty block with unconditional branch leads to
header of the loop then elimination of this basic block is prohibited.
However it seems this condition is redundantly strict.
If elimination of this basic block does not introduce more back edges
then we can eliminate this block.

The patch implements this relax of restriction.

The test profile/Linux/counter_promo_nest.c in compiler-rt project
is updated to meet this change.

Reviewers: efriedma, mcrosier, pacxx, hsung, davidxl
Reviewed By: pacxx
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D42691

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@324572 91177308-0d34-0410-b5e6-96231b3b80d8
@alexcrichton alexcrichton merged commit ff78b27 into rust-lang:rust-llvm-release-6-0-0 May 15, 2018
@alexcrichton
Copy link
Member

Looks good, thanks!

nox added a commit to nox/rust that referenced this pull request May 18, 2018
kennytm added a commit to kennytm/rust that referenced this pull request May 19, 2018
Update LLVM to 56c931901cfb85cd6f7ed44c7d7520a8de1edf97

This brings in rust-lang/llvm#115, which fixes rust-lang#49873.
bors pushed a commit to rust-lang/rust that referenced this pull request Jun 1, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants