forked from NVIDIA/cuda-quantum
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix NVIDIA#781 Loop unrolling with break statement and mid-circuit me…
…asurement. Due to an interaction between the revised memtoreg pass and loop unrolling, the test with a mid-circuit measurement and a break statement still wasn't being unrolled. These changes fix that issue. Primarily, these changes allow structured operations that accept region arguments to straddle the fence and allow some values to be promoted as dominating uses (when only used) while other values to be threaded as region arguments exactly as before (when written). This change simplifies the register-semantics IR. There may be a bit of performance lossage in memtoreg as a result however as promoted values may later be discovered to be written and the changes will need to be reapplied.
- Loading branch information
1 parent
b431631
commit c5e3189
Showing
7 changed files
with
110 additions
and
75 deletions.
There are no files selected for viewing
This file contains 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 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 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 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 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 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.