X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fspirv%2Fspirv_to_nir.c;h=22cbaf4145a7eb7d1dd905173240e34a2668eead;hb=8d07d66180b1523d7e70681ca142955f896ebda9;hp=411212c6b8f1437c34eabe87218d8050bcbff04e;hpb=5bea0cf77956d748ea929e12d12756692f04a33f;p=mesa.git diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index 411212c6b8f..22cbaf4145a 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -32,6 +32,7 @@ #include "nir/nir_deref.h" #include "spirv_info.h" +#include "util/format/u_format.h" #include "util/u_math.h" #include @@ -1057,46 +1058,46 @@ static unsigned translate_image_format(struct vtn_builder *b, SpvImageFormat format) { switch (format) { - case SpvImageFormatUnknown: return 0; /* GL_NONE */ - case SpvImageFormatRgba32f: return 0x8814; /* GL_RGBA32F */ - case SpvImageFormatRgba16f: return 0x881A; /* GL_RGBA16F */ - case SpvImageFormatR32f: return 0x822E; /* GL_R32F */ - case SpvImageFormatRgba8: return 0x8058; /* GL_RGBA8 */ - case SpvImageFormatRgba8Snorm: return 0x8F97; /* GL_RGBA8_SNORM */ - case SpvImageFormatRg32f: return 0x8230; /* GL_RG32F */ - case SpvImageFormatRg16f: return 0x822F; /* GL_RG16F */ - case SpvImageFormatR11fG11fB10f: return 0x8C3A; /* GL_R11F_G11F_B10F */ - case SpvImageFormatR16f: return 0x822D; /* GL_R16F */ - case SpvImageFormatRgba16: return 0x805B; /* GL_RGBA16 */ - case SpvImageFormatRgb10A2: return 0x8059; /* GL_RGB10_A2 */ - case SpvImageFormatRg16: return 0x822C; /* GL_RG16 */ - case SpvImageFormatRg8: return 0x822B; /* GL_RG8 */ - case SpvImageFormatR16: return 0x822A; /* GL_R16 */ - case SpvImageFormatR8: return 0x8229; /* GL_R8 */ - case SpvImageFormatRgba16Snorm: return 0x8F9B; /* GL_RGBA16_SNORM */ - case SpvImageFormatRg16Snorm: return 0x8F99; /* GL_RG16_SNORM */ - case SpvImageFormatRg8Snorm: return 0x8F95; /* GL_RG8_SNORM */ - case SpvImageFormatR16Snorm: return 0x8F98; /* GL_R16_SNORM */ - case SpvImageFormatR8Snorm: return 0x8F94; /* GL_R8_SNORM */ - case SpvImageFormatRgba32i: return 0x8D82; /* GL_RGBA32I */ - case SpvImageFormatRgba16i: return 0x8D88; /* GL_RGBA16I */ - case SpvImageFormatRgba8i: return 0x8D8E; /* GL_RGBA8I */ - case SpvImageFormatR32i: return 0x8235; /* GL_R32I */ - case SpvImageFormatRg32i: return 0x823B; /* GL_RG32I */ - case SpvImageFormatRg16i: return 0x8239; /* GL_RG16I */ - case SpvImageFormatRg8i: return 0x8237; /* GL_RG8I */ - case SpvImageFormatR16i: return 0x8233; /* GL_R16I */ - case SpvImageFormatR8i: return 0x8231; /* GL_R8I */ - case SpvImageFormatRgba32ui: return 0x8D70; /* GL_RGBA32UI */ - case SpvImageFormatRgba16ui: return 0x8D76; /* GL_RGBA16UI */ - case SpvImageFormatRgba8ui: return 0x8D7C; /* GL_RGBA8UI */ - case SpvImageFormatR32ui: return 0x8236; /* GL_R32UI */ - case SpvImageFormatRgb10a2ui: return 0x906F; /* GL_RGB10_A2UI */ - case SpvImageFormatRg32ui: return 0x823C; /* GL_RG32UI */ - case SpvImageFormatRg16ui: return 0x823A; /* GL_RG16UI */ - case SpvImageFormatRg8ui: return 0x8238; /* GL_RG8UI */ - case SpvImageFormatR16ui: return 0x8234; /* GL_R16UI */ - case SpvImageFormatR8ui: return 0x8232; /* GL_R8UI */ + case SpvImageFormatUnknown: return PIPE_FORMAT_NONE; + case SpvImageFormatRgba32f: return PIPE_FORMAT_R32G32B32A32_FLOAT; + case SpvImageFormatRgba16f: return PIPE_FORMAT_R16G16B16A16_FLOAT; + case SpvImageFormatR32f: return PIPE_FORMAT_R32_FLOAT; + case SpvImageFormatRgba8: return PIPE_FORMAT_R8G8B8A8_UNORM; + case SpvImageFormatRgba8Snorm: return PIPE_FORMAT_R8G8B8A8_SNORM; + case SpvImageFormatRg32f: return PIPE_FORMAT_R32G32_FLOAT; + case SpvImageFormatRg16f: return PIPE_FORMAT_R16G16_FLOAT; + case SpvImageFormatR11fG11fB10f: return PIPE_FORMAT_R11G11B10_FLOAT; + case SpvImageFormatR16f: return PIPE_FORMAT_R16_FLOAT; + case SpvImageFormatRgba16: return PIPE_FORMAT_R16G16B16A16_UNORM; + case SpvImageFormatRgb10A2: return PIPE_FORMAT_R10G10B10A2_UNORM; + case SpvImageFormatRg16: return PIPE_FORMAT_R16G16_UNORM; + case SpvImageFormatRg8: return PIPE_FORMAT_R8G8_UNORM; + case SpvImageFormatR16: return PIPE_FORMAT_R16_UNORM; + case SpvImageFormatR8: return PIPE_FORMAT_R8_UNORM; + case SpvImageFormatRgba16Snorm: return PIPE_FORMAT_R16G16B16A16_SNORM; + case SpvImageFormatRg16Snorm: return PIPE_FORMAT_R16G16_SNORM; + case SpvImageFormatRg8Snorm: return PIPE_FORMAT_R8G8_SNORM; + case SpvImageFormatR16Snorm: return PIPE_FORMAT_R16_SNORM; + case SpvImageFormatR8Snorm: return PIPE_FORMAT_R8_SNORM; + case SpvImageFormatRgba32i: return PIPE_FORMAT_R32G32B32A32_SINT; + case SpvImageFormatRgba16i: return PIPE_FORMAT_R16G16B16A16_SINT; + case SpvImageFormatRgba8i: return PIPE_FORMAT_R8G8B8A8_SINT; + case SpvImageFormatR32i: return PIPE_FORMAT_R32_SINT; + case SpvImageFormatRg32i: return PIPE_FORMAT_R32G32_SINT; + case SpvImageFormatRg16i: return PIPE_FORMAT_R16G16_SINT; + case SpvImageFormatRg8i: return PIPE_FORMAT_R8G8_SINT; + case SpvImageFormatR16i: return PIPE_FORMAT_R16_SINT; + case SpvImageFormatR8i: return PIPE_FORMAT_R8_SINT; + case SpvImageFormatRgba32ui: return PIPE_FORMAT_R32G32B32A32_UINT; + case SpvImageFormatRgba16ui: return PIPE_FORMAT_R16G16B16A16_UINT; + case SpvImageFormatRgba8ui: return PIPE_FORMAT_R8G8B8A8_UINT; + case SpvImageFormatR32ui: return PIPE_FORMAT_R32_UINT; + case SpvImageFormatRgb10a2ui: return PIPE_FORMAT_R10G10B10A2_UINT; + case SpvImageFormatRg32ui: return PIPE_FORMAT_R32G32_UINT; + case SpvImageFormatRg16ui: return PIPE_FORMAT_R16G16_UINT; + case SpvImageFormatRg8ui: return PIPE_FORMAT_R8G8_UINT; + case SpvImageFormatR16ui: return PIPE_FORMAT_R16_UINT; + case SpvImageFormatR8ui: return PIPE_FORMAT_R8_UINT; default: vtn_fail("Invalid image format: %s (%u)", spirv_imageformat_to_string(format), format);