New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO NOT MERGE] try to improve the pass manager order #101

Merged
merged 1 commit into from Jan 5, 2018

Conversation

Projects
None yet
2 participants
@arielb1

arielb1 commented Dec 23, 2017

This changes the order of the GVNs a bit.

I removed @eddyb's GVN added in #35662 - I checked the original
examples, and it does not seem to do anything. Instead of it, I added a
GVN to the start of the optimization pipeline, to remove junk.

I moved the second GVN to after memcpyopt, so that we'll have a GVN
after MemCpy optimizations - we already have a GVN "before" it.

Also, I duplicated IndVarSimplify instead of adding a SimplifyCfg -
looking at benchmarks, it should have the same performance impact.

try to improve the pass manager order
This changes the order of the GVNs a bit.

I removed @eddyb's GVN added in #35662 - I checked the original
examples, and it does not seem to do anything. Instead of it, I added a
GVN to the *start* of the optimization pipeline, to remove junk.

I moved the second GVN to after memcpyopt, so that we'll have a GVN
after MemCpy optimizations - we already have a GVN "before" it.

Also, I duplicated IndVarSimplify instead of adding a SimplifyCfg -
looking at benchmarks, it should have the same performance impact.

@arielb1 arielb1 changed the title from try to improve the pass manager order to [DO NOT MERGE] try to improve the pass manager order Dec 23, 2017

@alexcrichton alexcrichton merged commit 2717444 into rust-lang:rust-llvm-release-4-0-1 Jan 5, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment