-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Add binary VN funcs to TryGetRangeFromAssertions #123233
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
Conversation
|
Tagging subscribers to this area: @JulieLeeMSFT, @dotnet/jit-contrib |
df7af53 to
7117893
Compare
74bbb1c to
c468b04
Compare
|
@jakobbotsch PTAL again, I still have a few ideas for a refactoring, but those should be zero diffs and will be in a separate PR. Now I am slowly moving towards repeating what SSA-based GetRange does, but only with VNs Some 50-100k improvements are expected - diffs - although, there are regressions from previously semi-legal transformations based on half-defined ranges (e.g. [10..unknown]) PS: I think I also spot a few potential bugs when we could perform a multiplication on top of keBinOpArray or add two keBinOpArrays PS2: I recommend disabling the whitespaces on the review view. |
|
ping @jakobbotsch |
diffs
Fixes #122288
Also, enables more branch foldings based on assertions - basically, mimics what SSA-based GetRange does, but based only on VNs.
I recommend reviewing with whitespaces disabled.