This repository was archived by the owner on Apr 23, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 259
[spirv] [tracking] SPIR-V lowering #303
Copy link
Copy link
Open
Description
This is a tracking bug for implementing lowering towards the SPIR-V dialect. It will be periodically updated to provide the current status. Anybody interested in helping is very welcome to pick up tasks here! :)
Common utilities
- Target environment (version, extensions, capabilities)
- Shader interface ABI (descriptor, storage class, etc.) and its lowering
- Entry point ABI (dispatch configuration, etc.) and its lowering
- SPIR-V module and resource variable creation
- Layout decoration utilities
- Recommended pass pipeline/recipe
- Simple end-to-end testing infrastructure
From GPU dialect
- Kernel function
- Non-kernel functions
- Block/grid dim
- Thread/block id
From Std dialect
- Std to spv type converter
- Memref's with dynamic shapes
-
constant- scalar/vector
- composite
-
load,store - Binary ops
-
addi,subi,muli -
divis,remis -
diviu,remiu - float cases
-
- comparison ops
- int eq, ne
- int slt, sle, sgt, sge
- int ult, ule, ugt, uge
- float eq, ne
- float slt, sle, sgt, sge
- float ult, ule, ugt, uge
- Logical ops
-
select
-
- Bit ops
- Cast ops
-
return -
br -
cond_br -
call
From Linalg dialect
- Pass pipeline to go from linalg to spv
Metadata
Metadata
Assignees
Labels
No labels