diff options
| author | Sai Praveen Bangaru <31557731+saipraveenb25@users.noreply.github.com> | 2023-09-18 23:45:44 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-18 20:45:44 -0700 |
| commit | 95fcf65c38d52ed458a3b11622ea8b55a3864c24 (patch) | |
| tree | 5f07d03893504367466a278d7a1bcf63d4372c57 /source/slang/slang-ir-lower-buffer-element-type.cpp | |
| parent | e884b153f8c29438b818d9930b8342e5ac8f829f (diff) | |
Fix loop inversion issue that caused ordinary blocks with multiple predecessors (#3211)
* Add test case for while loop
* Fix loop inversion issue that caused ordinary blocks with multiple predecessors
The original version can leave the CFG in an invalid state with `e4` not being a break block or merge point, but having multiple predecessors.
The updated version creates a separate jump block for each break instruction to avoid this issue.
* Fixup tests
Diffstat (limited to 'source/slang/slang-ir-lower-buffer-element-type.cpp')
0 files changed, 0 insertions, 0 deletions
