-
Notifications
You must be signed in to change notification settings - Fork 15.2k
[AMDGPU] Avoid put implicit_def into bundle that break reg's liveness #142563
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
Changes from all commits
Commits
Show all changes
74 commits
Select commit
Hold shift + click to select a range
3dc03fb
avoid put implicit_def into bundle that break reg's liveness
Shoreshen 2fcb149
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 80decd5
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen f58ef06
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 09b8fe5
Merge remote-tracking branch 'origin/main' into bundle-break-phyreg-l…
Shoreshen f3550df
Applying comments from Jayfold and Matthew, using finilizebundle to f…
Shoreshen 915335a
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen c1b220c
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen a002223
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 03e031b
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen f42e25d
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 11659cd
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 77a7133
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 645776b
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen f606540
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen cfa6151
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen b18da74
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 3d8ef74
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen cbbc41e
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen d4db5d5
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 027802b
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 849b834
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 88c1ac8
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen abd5e4b
use regunit, fix matthew's comments
Shoreshen 5f2f332
fix test case with space
Shoreshen d5d3d62
Merge remote-tracking branch 'origin/main' into bundle-break-phyreg-l…
Shoreshen 1f90eda
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen a651fbf
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 44d8db6
remove subreg, fix tests
Shoreshen e422935
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 3d81548
fix bundle tests
Shoreshen 5d5bb3a
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen fa9c8fe
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 48c869d
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 047ef09
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 9f6ea59
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen d90bc62
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 810092f
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 4e8b5c4
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen daffa51
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen b36f3fc
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 51b0d71
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 2e72677
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 49f6ee5
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 5403864
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen eac10fb
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 3c3b15d
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen fc87143
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 09c4b66
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen d75fa3d
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 114ce02
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen cf3344e
fix failing case
Shoreshen 1026e5e
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 8706753
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen e59fe4e
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 23f8c29
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen db3dbfc
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen fb35271
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 957b617
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 500e352
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 39115f1
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 6326f19
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 939051b
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 0e4e1b8
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 63e957e
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen b54bb86
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 002ecc5
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen a9b4c4e
fix failing test
Shoreshen 4ba4334
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 7abccdd
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 6eadc58
fix comments
Shoreshen eee8139
Update llvm/lib/CodeGen/MachineInstrBundle.cpp
Shoreshen 58ebd67
fix comments
Shoreshen c0febed
Merge branch 'main' into bundle-break-phyreg-liveness
Shoreshen 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
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 |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 5 | ||
| # RUN: llc -mtriple=amdgcn -mcpu=gfx1200 -run-pass=si-insert-hard-clauses -verify-machineinstrs %s -o - | FileCheck -check-prefix=GCN-CLAUSE %s | ||
| # RUN: llc -mtriple=amdgcn -mcpu=gfx1200 -run-pass=si-post-ra-bundler -verify-machineinstrs %s -o - | FileCheck -check-prefix=GCN-BUNDLE %s | ||
|
|
||
| --- | ||
| name: clause_implicit_def | ||
| tracksRegLiveness: true | ||
| body: | | ||
| bb.0: | ||
| liveins: $vgpr0, $sgpr32 | ||
|
|
||
| ; GCN-CLAUSE-LABEL: name: clause_implicit_def | ||
| ; GCN-CLAUSE: liveins: $vgpr0, $sgpr32 | ||
| ; GCN-CLAUSE-NEXT: {{ $}} | ||
| ; GCN-CLAUSE-NEXT: BUNDLE implicit-def $vgpr2, implicit-def $vgpr3, implicit $vgpr0, implicit $sgpr32, implicit $exec, implicit $flat_scr { | ||
| ; GCN-CLAUSE-NEXT: S_CLAUSE 1 | ||
| ; GCN-CLAUSE-NEXT: SCRATCH_STORE_DWORD_SADDR $vgpr0, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr | ||
| ; GCN-CLAUSE-NEXT: $vgpr2 = IMPLICIT_DEF | ||
| ; GCN-CLAUSE-NEXT: $vgpr3 = IMPLICIT_DEF | ||
| ; GCN-CLAUSE-NEXT: SCRATCH_STORE_DWORDX2_SADDR internal $vgpr2_vgpr3, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr | ||
| ; GCN-CLAUSE-NEXT: } | ||
| ; | ||
| ; GCN-BUNDLE-LABEL: name: clause_implicit_def | ||
| ; GCN-BUNDLE: liveins: $vgpr0, $sgpr32 | ||
| ; GCN-BUNDLE-NEXT: {{ $}} | ||
| ; GCN-BUNDLE-NEXT: BUNDLE implicit-def $vgpr2, implicit-def $vgpr3, implicit $vgpr0, implicit $sgpr32, implicit $exec, implicit $flat_scr { | ||
| ; GCN-BUNDLE-NEXT: SCRATCH_STORE_DWORD_SADDR $vgpr0, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr | ||
| ; GCN-BUNDLE-NEXT: $vgpr2 = IMPLICIT_DEF | ||
| ; GCN-BUNDLE-NEXT: $vgpr3 = IMPLICIT_DEF | ||
| ; GCN-BUNDLE-NEXT: SCRATCH_STORE_DWORDX2_SADDR internal $vgpr2_vgpr3, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr | ||
| ; GCN-BUNDLE-NEXT: } | ||
| SCRATCH_STORE_DWORD_SADDR $vgpr0, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr | ||
| $vgpr2 = IMPLICIT_DEF | ||
| $vgpr3 = IMPLICIT_DEF | ||
| SCRATCH_STORE_DWORDX2_SADDR $vgpr2_vgpr3, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr | ||
| ... |
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
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.