-
Notifications
You must be signed in to change notification settings - Fork 1.6k
ISLE opts for x ± a == y ± b
#10489
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
Merged
Merged
ISLE opts for x ± a == y ± b
#10489
Changes from 1 commit
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -108,46 +108,45 @@ | |
| ;; @003b v39 = load.i64 notrap aligned readonly can_move v0+40 | ||
| ;; @003b v20 = iadd v39, v16 | ||
| ;; @003b v21 = load.i64 notrap aligned v20 | ||
| ;; v67 = iconst.i64 1 | ||
| ;; @003b v22 = iadd v21, v67 ; v67 = 1 | ||
| ;; v73 = iconst.i64 1 | ||
| ;; @003b v22 = iadd v21, v73 ; v73 = 1 | ||
| ;; @003b store notrap aligned v22, v20 | ||
| ;; @003b jump block3 | ||
| ;; | ||
| ;; block3: | ||
| ;; v72 = iadd.i64 v0, v64 ; v64 = 80 | ||
| ;; @003b store.i32 notrap aligned v2, v72 | ||
| ;; v73 = iconst.i32 1 | ||
| ;; v74 = band.i32 v5, v73 ; v73 = 1 | ||
| ;; v75 = iconst.i32 0 | ||
| ;; v76 = icmp.i32 eq v5, v75 ; v75 = 0 | ||
| ;; @003b v36 = uextend.i32 v76 | ||
| ;; @003b v37 = bor v74, v36 | ||
| ;; v85 = iadd.i64 v0, v64 ; v64 = 80 | ||
| ;; @003b store.i32 notrap aligned v2, v85 | ||
| ;; v86 = iconst.i32 1 | ||
| ;; v87 = band.i32 v5, v86 ; v86 = 1 | ||
| ;; v88 = iconst.i32 0 | ||
| ;; v89 = icmp.i32 eq v5, v88 ; v88 = 0 | ||
| ;; @003b v36 = uextend.i32 v89 | ||
| ;; @003b v37 = bor v87, v36 | ||
| ;; @003b brif v37, block7, block4 | ||
| ;; | ||
| ;; block4: | ||
| ;; @003b v42 = uextend.i64 v5 | ||
| ;; v77 = iconst.i64 8 | ||
| ;; @003b v44 = uadd_overflow_trap v42, v77, user1 ; v77 = 8 | ||
| ;; @003b v46 = uadd_overflow_trap v44, v77, user1 ; v77 = 8 | ||
| ;; v78 = load.i64 notrap aligned readonly can_move v0+48 | ||
| ;; @003b v47 = icmp ule v46, v78 | ||
| ;; v90 = iconst.i64 8 | ||
| ;; @003b v44 = uadd_overflow_trap v42, v90, user1 ; v90 = 8 | ||
| ;; @003b v46 = uadd_overflow_trap v44, v90, user1 ; v90 = 8 | ||
| ;; v91 = load.i64 notrap aligned readonly can_move v0+48 | ||
| ;; @003b v47 = icmp ule v46, v91 | ||
| ;; @003b trapz v47, user1 | ||
| ;; v79 = load.i64 notrap aligned readonly can_move v0+40 | ||
| ;; @003b v48 = iadd v79, v44 | ||
| ;; v92 = load.i64 notrap aligned readonly can_move v0+40 | ||
| ;; @003b v48 = iadd v92, v44 | ||
| ;; @003b v49 = load.i64 notrap aligned v48 | ||
| ;; v70 = iconst.i64 -1 | ||
| ;; @003b v50 = iadd v49, v70 ; v70 = -1 | ||
| ;; v71 = iconst.i64 0 | ||
| ;; @003b v51 = icmp eq v50, v71 ; v71 = 0 | ||
| ;; @003b brif v51, block5, block6 | ||
| ;; v93 = iconst.i64 1 | ||
| ;; v83 = icmp eq v49, v93 ; v93 = 1 | ||
| ;; @003b brif v83, block5, block6 | ||
|
Comment on lines
-138
to
+140
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. A case in the wild, here: was |
||
| ;; | ||
| ;; block5 cold: | ||
| ;; @003b call fn0(v0, v5) | ||
| ;; @003b jump block7 | ||
| ;; | ||
| ;; block6: | ||
| ;; v80 = iadd.i64 v49, v70 ; v70 = -1 | ||
| ;; @003b store notrap aligned v80, v48 | ||
| ;; v70 = iconst.i64 -1 | ||
| ;; @003b v50 = iadd.i64 v49, v70 ; v70 = -1 | ||
| ;; @003b store notrap aligned v50, v48 | ||
| ;; @003b jump block7 | ||
| ;; | ||
| ;; block7: | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.