Commit 0855509
authored
[SPIR-V] Fix bool cast on buffers with swizzle (#7497)
HLSL resources can store booleans. SPIR-V resources can't. We handle
this by using integers in resources, and casting at the interface.
Swizzle path was handled a bit differently, and was not going through
the common load/store path which handles the cast.
Fixes #74751 parent 20f291e commit 0855509
3 files changed
Lines changed: 36 additions & 9 deletions
File tree
- tools/clang
- lib/SPIRV
- test/CodeGenSPIRV
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1281 | 1281 | | |
1282 | 1282 | | |
1283 | 1283 | | |
1284 | | - | |
| 1284 | + | |
| 1285 | + | |
1285 | 1286 | | |
1286 | 1287 | | |
1287 | 1288 | | |
| |||
1316 | 1317 | | |
1317 | 1318 | | |
1318 | 1319 | | |
| 1320 | + | |
| 1321 | + | |
1319 | 1322 | | |
1320 | | - | |
1321 | | - | |
| 1323 | + | |
| 1324 | + | |
1322 | 1325 | | |
1323 | 1326 | | |
1324 | 1327 | | |
| |||
7969 | 7972 | | |
7970 | 7973 | | |
7971 | 7974 | | |
7972 | | - | |
7973 | | - | |
7974 | | - | |
7975 | | - | |
| 7975 | + | |
7976 | 7976 | | |
7977 | 7977 | | |
7978 | 7978 | | |
7979 | 7979 | | |
7980 | | - | |
| 7980 | + | |
7981 | 7981 | | |
7982 | 7982 | | |
7983 | 7983 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
176 | 176 | | |
177 | 177 | | |
178 | 178 | | |
179 | | - | |
| 179 | + | |
| 180 | + | |
180 | 181 | | |
181 | 182 | | |
182 | 183 | | |
| |||
Lines changed: 26 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
0 commit comments