Commit 8d87631
authored
Add separate experimental DXIL op table using high OpCode bit (#7947)
Implements:
https://github.com/microsoft/hlsl-specs/blob/main/proposals/0052-experimental-dxil-ops.md
This change adds support for an experimental DXIL operation table, which
provides an independent numeric space from the main OpCode set.
It adds support for indexing into OpCode tables using the high 16-bits
as the table index, and the low 16-bits as the index into the OpCode
table.
While the fundamental change could support more tables for individual
experimental features or extensions, it's currently limited to tables
`0` for `CoreOps` and `0x8000` for `ExperimentalOps` without additional
work to unlock more tables. This maps to the existing opcodes for
`CoreOps` and opcodes with the high bit set for `ExperimentalOps`.
Now, db_dxil_op_table manages dxil op lists, and DXIL ops are built
using table methods.1 parent f687155 commit 8d87631
File tree
14 files changed
+703
-164
lines changed- docs
- include/dxc/DXIL
- lib
- DXIL
- DxilValidation
- tools/clang
- test
- DXC
- LitDXILValidation
- tools/dxcompiler
- utils/hct
14 files changed
+703
-164
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2111 | 2111 | | |
2112 | 2112 | | |
2113 | 2113 | | |
| 2114 | + | |
| 2115 | + | |
2114 | 2116 | | |
2115 | 2117 | | |
2116 | 2118 | | |
| |||
3055 | 3057 | | |
3056 | 3058 | | |
3057 | 3059 | | |
| 3060 | + | |
| 3061 | + | |
| 3062 | + | |
| 3063 | + | |
| 3064 | + | |
| 3065 | + | |
| 3066 | + | |
| 3067 | + | |
| 3068 | + | |
| 3069 | + | |
| 3070 | + | |
| 3071 | + | |
3058 | 3072 | | |
3059 | 3073 | | |
3060 | 3074 | | |
| |||
3134 | 3148 | | |
3135 | 3149 | | |
3136 | 3150 | | |
| 3151 | + | |
3137 | 3152 | | |
3138 | 3153 | | |
3139 | 3154 | | |
3140 | | - | |
| 3155 | + | |
3141 | 3156 | | |
3142 | 3157 | | |
3143 | 3158 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
490 | 490 | | |
491 | 491 | | |
492 | 492 | | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
493 | 527 | | |
494 | 528 | | |
495 | 529 | | |
496 | | - | |
| 530 | + | |
497 | 531 | | |
498 | 532 | | |
499 | 533 | | |
| |||
1089 | 1123 | | |
1090 | 1124 | | |
1091 | 1125 | | |
1092 | | - | |
| 1126 | + | |
| 1127 | + | |
| 1128 | + | |
| 1129 | + | |
| 1130 | + | |
| 1131 | + | |
| 1132 | + | |
| 1133 | + | |
1093 | 1134 | | |
1094 | 1135 | | |
| 1136 | + | |
| 1137 | + | |
| 1138 | + | |
| 1139 | + | |
| 1140 | + | |
| 1141 | + | |
| 1142 | + | |
1095 | 1143 | | |
1096 | 1144 | | |
1097 | 1145 | | |
| |||
1244 | 1292 | | |
1245 | 1293 | | |
1246 | 1294 | | |
| 1295 | + | |
| 1296 | + | |
| 1297 | + | |
1247 | 1298 | | |
1248 | 1299 | | |
1249 | 1300 | | |
| |||
1414 | 1465 | | |
1415 | 1466 | | |
1416 | 1467 | | |
1417 | | - | |
| 1468 | + | |
1418 | 1469 | | |
1419 | 1470 | | |
1420 | 1471 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10231 | 10231 | | |
10232 | 10232 | | |
10233 | 10233 | | |
| 10234 | + | |
| 10235 | + | |
| 10236 | + | |
| 10237 | + | |
| 10238 | + | |
| 10239 | + | |
| 10240 | + | |
| 10241 | + | |
| 10242 | + | |
| 10243 | + | |
| 10244 | + | |
| 10245 | + | |
| 10246 | + | |
| 10247 | + | |
| 10248 | + | |
| 10249 | + | |
| 10250 | + | |
| 10251 | + | |
| 10252 | + | |
| 10253 | + | |
10234 | 10254 | | |
10235 | 10255 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| 40 | + | |
40 | 41 | | |
41 | 42 | | |
42 | 43 | | |
| |||
131 | 132 | | |
132 | 133 | | |
133 | 134 | | |
| 135 | + | |
134 | 136 | | |
135 | 137 | | |
136 | 138 | | |
| |||
226 | 228 | | |
227 | 229 | | |
228 | 230 | | |
229 | | - | |
230 | | - | |
| 231 | + | |
231 | 232 | | |
232 | 233 | | |
233 | 234 | | |
| |||
255 | 256 | | |
256 | 257 | | |
257 | 258 | | |
258 | | - | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
259 | 284 | | |
260 | 285 | | |
261 | 286 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
69 | 72 | | |
70 | 73 | | |
71 | 74 | | |
| |||
0 commit comments