Once optional support for the SPIRV backend is added for --offload-arch=amdgcnspirv
, we need to identify the delta between that and the existing default SPIRV-translator-based implementation.
Likely differences may include:
- relaxing casts
- carrying specific attributes as non-semantic metadata
- incorporating debug information
- etc
We can assess the delta with some initial testing of:
- Directly compare output of translator and backend (and try reverse translating both)
- LLVM LIT spirv-related tests
- Comgr tests
Sub/child/dependent issues can be created as issues are identified. When possible, fixes should land in upstream llvm-project, otherwise they should land in ROCm/llvm-project.