Commit bff9650
committed
Fix parameter decoration metadata overwrite in entry-point wrapper
In the entry-point wrapper pattern two SPIR-V functions map to the same
LLVM function; only one carries decorated parameters.
transOCLMetadata unconditionally set spirv.ParameterDecorations for both,
so the undecorated function could overwrite the decorated one's metadata.
Skip the write when the current function has no decorations and metadata
is already present.
AI-assisted: Claude Sonnet 4.6 (commercial SaaS)1 parent 9c807c1 commit bff9650
2 files changed
Lines changed: 56 additions & 6 deletions
File tree
- lib/SPIRV
- test/extensions/INTEL/SPV_INTEL_cache_controls
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4953 | 4953 | | |
4954 | 4954 | | |
4955 | 4955 | | |
4956 | | - | |
4957 | | - | |
4958 | | - | |
4959 | | - | |
4960 | | - | |
4961 | | - | |
| 4956 | + | |
| 4957 | + | |
| 4958 | + | |
| 4959 | + | |
| 4960 | + | |
| 4961 | + | |
| 4962 | + | |
| 4963 | + | |
| 4964 | + | |
| 4965 | + | |
| 4966 | + | |
| 4967 | + | |
| 4968 | + | |
| 4969 | + | |
4962 | 4970 | | |
4963 | 4971 | | |
4964 | 4972 | | |
| |||
Lines changed: 42 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 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
0 commit comments