Convert VK shader type to compiler's
| 154 | // Convert VK shader type to compiler's |
| 155 | // |
| 156 | static EShLanguage FindLanguage(const VkShaderStageFlagBits shader_type) { |
| 157 | switch (shader_type) { |
| 158 | case VK_SHADER_STAGE_VERTEX_BIT: |
| 159 | return EShLangVertex; |
| 160 | |
| 161 | case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT: |
| 162 | return EShLangTessControl; |
| 163 | |
| 164 | case VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT: |
| 165 | return EShLangTessEvaluation; |
| 166 | |
| 167 | case VK_SHADER_STAGE_GEOMETRY_BIT: |
| 168 | return EShLangGeometry; |
| 169 | |
| 170 | case VK_SHADER_STAGE_FRAGMENT_BIT: |
| 171 | return EShLangFragment; |
| 172 | |
| 173 | case VK_SHADER_STAGE_COMPUTE_BIT: |
| 174 | return EShLangCompute; |
| 175 | |
| 176 | case VK_SHADER_STAGE_RAYGEN_BIT_KHR: |
| 177 | return EShLangRayGen; |
| 178 | |
| 179 | case VK_SHADER_STAGE_ANY_HIT_BIT_KHR: |
| 180 | return EShLangAnyHit; |
| 181 | |
| 182 | case VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR: |
| 183 | return EShLangClosestHit; |
| 184 | |
| 185 | case VK_SHADER_STAGE_MISS_BIT_KHR: |
| 186 | return EShLangMiss; |
| 187 | |
| 188 | case VK_SHADER_STAGE_INTERSECTION_BIT_KHR: |
| 189 | return EShLangIntersect; |
| 190 | |
| 191 | case VK_SHADER_STAGE_CALLABLE_BIT_KHR: |
| 192 | return EShLangCallable; |
| 193 | |
| 194 | case VK_SHADER_STAGE_TASK_BIT_EXT: |
| 195 | return EShLangTask; |
| 196 | |
| 197 | case VK_SHADER_STAGE_MESH_BIT_EXT: |
| 198 | return EShLangMesh; |
| 199 | |
| 200 | default: |
| 201 | assert(false); |
| 202 | return EShLangVertex; |
| 203 | } |
| 204 | } |
| 205 | |
| 206 | struct GlslangTargetEnv { |
| 207 | GlslangTargetEnv(const spv_target_env env) { |