OSDN Git Service

Rename signed normalized formats.
authorNicolas Capens <capn@google.com>
Tue, 19 Dec 2017 20:34:20 +0000 (15:34 -0500)
committerNicolas Capens <nicolascapens@google.com>
Tue, 19 Dec 2017 22:10:44 +0000 (22:10 +0000)
Change-Id: I9c01d1a20920ab7e33d979fc69711c7e69113912
Reviewed-on: https://swiftshader-review.googlesource.com/15368
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
src/OpenGL/common/Image.cpp
src/Renderer/Blitter.cpp
src/Renderer/Surface.cpp
src/Renderer/Surface.hpp
src/Shader/SamplerCore.cpp

index 3ed148e..3336c67 100644 (file)
@@ -720,28 +720,28 @@ namespace egl
                        case GL_R8_SNORM:
                        case GL_R8:
                        case GL_RED:
-                               return sw::FORMAT_R8I_SNORM;
+                               return sw::FORMAT_R8_SNORM;
                        case GL_R8I:
                        case GL_RED_INTEGER:
                                return sw::FORMAT_R8I;
                        case GL_RG8_SNORM:
                        case GL_RG8:
                        case GL_RG:
-                               return sw::FORMAT_G8R8I_SNORM;
+                               return sw::FORMAT_G8R8_SNORM;
                        case GL_RG8I:
                        case GL_RG_INTEGER:
                                return sw::FORMAT_G8R8I;
                        case GL_RGB8_SNORM:
                        case GL_RGB8:
                        case GL_RGB:
-                               return sw::FORMAT_X8B8G8R8I_SNORM;
+                               return sw::FORMAT_X8B8G8R8_SNORM;
                        case GL_RGB8I:
                        case GL_RGB_INTEGER:
                                return sw::FORMAT_X8B8G8R8I;
                        case GL_RGBA8_SNORM:
                        case GL_RGBA8:
                        case GL_RGBA:
-                               return sw::FORMAT_A8B8G8R8I_SNORM;
+                               return sw::FORMAT_A8B8G8R8_SNORM;
                        case GL_RGBA8I:
                        case GL_RGBA_INTEGER:
                                return sw::FORMAT_A8B8G8R8I;
index 81cac44..7045462 100644 (file)
@@ -234,7 +234,7 @@ namespace sw
                        c.w = Float(Int(*Pointer<Byte>(element)));
                        break;
                case FORMAT_R8I:
-               case FORMAT_R8I_SNORM:
+               case FORMAT_R8_SNORM:
                        c.x = Float(Int(*Pointer<SByte>(element)));
                        c.w = float(0x7F);
                        break;
@@ -263,7 +263,7 @@ namespace sw
                        c = Float4(*Pointer<Byte4>(element)).zyxw;
                        break;
                case FORMAT_A8B8G8R8I:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                        c = Float4(*Pointer<SByte4>(element));
                        break;
                case FORMAT_A8B8G8R8:
@@ -288,7 +288,7 @@ namespace sw
                        c.w = float(0xFF);
                        break;
                case FORMAT_X8B8G8R8I:
-               case FORMAT_X8B8G8R8I_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
                        c = Float4(*Pointer<SByte4>(element));
                        c.w = float(0x7F);
                        break;
@@ -328,7 +328,7 @@ namespace sw
                        c.w = float(0xFFFFFFFF);
                        break;
                case FORMAT_G8R8I:
-               case FORMAT_G8R8I_SNORM:
+               case FORMAT_G8R8_SNORM:
                        c.x = Float(Int(*Pointer<SByte>(element + 0)));
                        c.y = Float(Int(*Pointer<SByte>(element + 1)));
                        c.w = float(0x7F);
@@ -535,20 +535,20 @@ namespace sw
                        if(writeR) { *Pointer<Float>(element) = c.x; }
                        break;
                case FORMAT_A8B8G8R8I:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                        if(writeA) { *Pointer<SByte>(element + 3) = SByte(RoundInt(Float(c.w))); }
                case FORMAT_X8B8G8R8I:
-               case FORMAT_X8B8G8R8I_SNORM:
-                       if(writeA && (state.destFormat == FORMAT_X8B8G8R8I || state.destFormat == FORMAT_X8B8G8R8I_SNORM))
+               case FORMAT_X8B8G8R8_SNORM:
+                       if(writeA && (state.destFormat == FORMAT_X8B8G8R8I || state.destFormat == FORMAT_X8B8G8R8_SNORM))
                        {
                                *Pointer<SByte>(element + 3) = SByte(0x7F);
                        }
                        if(writeB) { *Pointer<SByte>(element + 2) = SByte(RoundInt(Float(c.z))); }
                case FORMAT_G8R8I:
-               case FORMAT_G8R8I_SNORM:
+               case FORMAT_G8R8_SNORM:
                        if(writeG) { *Pointer<SByte>(element + 1) = SByte(RoundInt(Float(c.y))); }
                case FORMAT_R8I:
-               case FORMAT_R8I_SNORM:
+               case FORMAT_R8_SNORM:
                        if(writeR) { *Pointer<SByte>(element) = SByte(RoundInt(Float(c.x))); }
                        break;
                case FORMAT_A8B8G8R8UI:
@@ -996,10 +996,10 @@ namespace sw
                case FORMAT_SRGB8_A8:
                        scale = vector(0xFF, 0xFF, 0xFF, 0xFF);
                        break;
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                        scale = vector(0x7F, 0x7F, 0x7F, 0x7F);
                        break;
                case FORMAT_A16B16G16R16:
index cbb7987..03d37f2 100644 (file)
@@ -83,7 +83,7 @@ namespace sw
                case FORMAT_A8:
                        *(unsigned char*)element = unorm<8>(a);
                        break;
-               case FORMAT_R8I_SNORM:
+               case FORMAT_R8_SNORM:
                        *(char*)element = snorm<8>(r);
                        break;
                case FORMAT_R8:
@@ -140,7 +140,7 @@ namespace sw
                case FORMAT_X8R8G8B8:
                        *(unsigned int*)element = 0xFF000000 | (unorm<8>(r) << 16) | (unorm<8>(g) << 8) | (unorm<8>(b) << 0);
                        break;
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                        *(unsigned int*)element = (static_cast<unsigned int>(snorm<8>(a)) << 24) |
                                                  (static_cast<unsigned int>(snorm<8>(b)) << 16) |
                                                  (static_cast<unsigned int>(snorm<8>(g)) << 8) |
@@ -159,7 +159,7 @@ namespace sw
                case FORMAT_A8B8G8R8UI:
                        *(unsigned int*)element = (ucast<8>(a) << 24) | (ucast<8>(b) << 16) | (ucast<8>(g) << 8) | (ucast<8>(r) << 0);
                        break;
-               case FORMAT_X8B8G8R8I_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
                        *(unsigned int*)element = 0x7F000000 |
                                                  (static_cast<unsigned int>(snorm<8>(b)) << 16) |
                                                  (static_cast<unsigned int>(snorm<8>(g)) << 8) |
@@ -184,7 +184,7 @@ namespace sw
                case FORMAT_A2B10G10R10UI:
                        *(unsigned int*)element = (unorm<2>(a) << 30) | (unorm<10>(b) << 20) | (unorm<10>(g) << 10) | (unorm<10>(r) << 0);
                        break;
-               case FORMAT_G8R8I_SNORM:
+               case FORMAT_G8R8_SNORM:
                        *(unsigned short*)element = (static_cast<unsigned short>(snorm<8>(g)) << 8) |
                                                    (static_cast<unsigned short>(snorm<8>(r)) << 0);
                        break;
@@ -437,7 +437,7 @@ namespace sw
                        b = 0;
                        a = *(unsigned char*)element * (1.0f / 0xFF);
                        break;
-               case FORMAT_R8I_SNORM:
+               case FORMAT_R8_SNORM:
                        r = max((*(signed char*)element) * (1.0f / 0x7F), -1.0f);
                        break;
                case FORMAT_R8:
@@ -554,7 +554,7 @@ namespace sw
                                b = (xrgb & 0x000000FF) * (1.0f / 0x000000FF);
                        }
                        break;
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                        {
                                signed char* abgr = (signed char*)element;
 
@@ -595,7 +595,7 @@ namespace sw
                                a = abgr[3];
                        }
                        break;
-               case FORMAT_X8B8G8R8I_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
                        {
                                signed char* bgr = (signed char*)element;
 
@@ -632,7 +632,7 @@ namespace sw
                                b = bgr[2];
                        }
                        break;
-               case FORMAT_G8R8I_SNORM:
+               case FORMAT_G8R8_SNORM:
                        {
                                signed char* gr = (signed char*)element;
 
@@ -1561,10 +1561,10 @@ namespace sw
                case FORMAT_X8B8G8R8UI:                 return 4;
                case FORMAT_A8B8G8R8UI:                 return 4;
                case FORMAT_A8B8G8R8:                   return 4;
-               case FORMAT_R8I_SNORM:                  return 1;
-               case FORMAT_G8R8I_SNORM:                return 2;
-               case FORMAT_X8B8G8R8I_SNORM:    return 4;
-               case FORMAT_A8B8G8R8I_SNORM:    return 4;
+               case FORMAT_R8_SNORM:                   return 1;
+               case FORMAT_G8R8_SNORM:         return 2;
+               case FORMAT_X8B8G8R8_SNORM:     return 4;
+               case FORMAT_A8B8G8R8_SNORM:     return 4;
                case FORMAT_A2R10G10B10:                return 4;
                case FORMAT_A2B10G10R10:                return 4;
                case FORMAT_A2B10G10R10UI:              return 4;
@@ -2849,10 +2849,10 @@ namespace sw
                case FORMAT_G8R8:
                case FORMAT_A2B10G10R10:
                case FORMAT_A2B10G10R10UI:
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_R16I:
                case FORMAT_R16UI:
                case FORMAT_G16R16I:
@@ -2968,7 +2968,7 @@ namespace sw
                case FORMAT_A8B8G8R8I:
                case FORMAT_A16B16G16R16I:
                case FORMAT_A32B32G32R32I:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_Q8W8V8U8:
                case FORMAT_Q16W16V16U16:
                case FORMAT_A32B32G32R32F:
@@ -2977,7 +2977,7 @@ namespace sw
                case FORMAT_R8I:
                case FORMAT_R16I:
                case FORMAT_R32I:
-               case FORMAT_R8I_SNORM:
+               case FORMAT_R8_SNORM:
                        return component >= 1;
                case FORMAT_V8U8:
                case FORMAT_X8L8V8U8:
@@ -2986,7 +2986,7 @@ namespace sw
                case FORMAT_G8R8I:
                case FORMAT_G16R16I:
                case FORMAT_G32R32I:
-               case FORMAT_G8R8I_SNORM:
+               case FORMAT_G8R8_SNORM:
                        return component >= 2;
                case FORMAT_A16W16V16U16:
                case FORMAT_B32G32R32F:
@@ -2994,7 +2994,7 @@ namespace sw
                case FORMAT_X8B8G8R8I:
                case FORMAT_X16B16G16R16I:
                case FORMAT_X32B32G32R32I:
-               case FORMAT_X8B8G8R8I_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
                        return component >= 3;
                default:
                        ASSERT(false);
@@ -3195,10 +3195,10 @@ namespace sw
                case FORMAT_A8B8G8R8:       return 4;
                case FORMAT_G8R8I:          return 2;
                case FORMAT_G8R8:           return 2;
-               case FORMAT_R8I_SNORM:      return 1;
-               case FORMAT_G8R8I_SNORM:    return 2;
-               case FORMAT_X8B8G8R8I_SNORM:return 3;
-               case FORMAT_A8B8G8R8I_SNORM:return 4;
+               case FORMAT_R8_SNORM:      return 1;
+               case FORMAT_G8R8_SNORM:    return 2;
+               case FORMAT_X8B8G8R8_SNORM:return 3;
+               case FORMAT_A8B8G8R8_SNORM:return 4;
                case FORMAT_R8UI:           return 1;
                case FORMAT_G8R8UI:         return 2;
                case FORMAT_X8B8G8R8UI:     return 3;
@@ -3780,8 +3780,8 @@ namespace sw
                        return FORMAT_R8I;
                case FORMAT_R8UI:
                        return FORMAT_R8UI;
-               case FORMAT_R8I_SNORM:
-                       return FORMAT_R8I_SNORM;
+               case FORMAT_R8_SNORM:
+                       return FORMAT_R8_SNORM;
                case FORMAT_R8:
                        return FORMAT_R8;
                case FORMAT_R16I:
@@ -3818,8 +3818,8 @@ namespace sw
                        return FORMAT_G8R8I;
                case FORMAT_G8R8UI:
                        return FORMAT_G8R8UI;
-               case FORMAT_G8R8I_SNORM:
-                       return FORMAT_G8R8I_SNORM;
+               case FORMAT_G8R8_SNORM:
+                       return FORMAT_G8R8_SNORM;
                case FORMAT_G8R8:
                        return FORMAT_G8R8;
                case FORMAT_G16R16I:
@@ -3845,8 +3845,8 @@ namespace sw
                        return FORMAT_A8B8G8R8I;
                case FORMAT_A8B8G8R8UI:
                        return FORMAT_A8B8G8R8UI;
-               case FORMAT_A8B8G8R8I_SNORM:
-                       return FORMAT_A8B8G8R8I_SNORM;
+               case FORMAT_A8B8G8R8_SNORM:
+                       return FORMAT_A8B8G8R8_SNORM;
                case FORMAT_R5G5B5A1:
                case FORMAT_R4G4B4A4:
                case FORMAT_A8B8G8R8:
@@ -3870,8 +3870,8 @@ namespace sw
                        return FORMAT_X8B8G8R8I;
                case FORMAT_X8B8G8R8UI:
                        return FORMAT_X8B8G8R8UI;
-               case FORMAT_X8B8G8R8I_SNORM:
-                       return FORMAT_X8B8G8R8I_SNORM;
+               case FORMAT_X8B8G8R8_SNORM:
+                       return FORMAT_X8B8G8R8_SNORM;
                case FORMAT_B8G8R8:
                case FORMAT_X8B8G8R8:
                        return FORMAT_X8B8G8R8;
index c32c14f..2ded418 100644 (file)
@@ -67,8 +67,8 @@ namespace sw
                FORMAT_A8,
                FORMAT_R8I,
                FORMAT_R8UI,
-               FORMAT_R8I_SNORM,
-               FORMAT_R8, // UI_SNORM
+               FORMAT_R8_SNORM,
+               FORMAT_R8,
                FORMAT_R16I,
                FORMAT_R16UI,
                FORMAT_R32I,
@@ -85,12 +85,12 @@ namespace sw
                FORMAT_A8R8G8B8,
                FORMAT_X8B8G8R8I,
                FORMAT_X8B8G8R8UI,
-               FORMAT_X8B8G8R8I_SNORM,
-               FORMAT_X8B8G8R8, // UI_SNORM
+               FORMAT_X8B8G8R8_SNORM,
+               FORMAT_X8B8G8R8,
                FORMAT_A8B8G8R8I,
                FORMAT_A8B8G8R8UI,
-               FORMAT_A8B8G8R8I_SNORM,
-               FORMAT_A8B8G8R8, // UI_SNORM
+               FORMAT_A8B8G8R8_SNORM,
+               FORMAT_A8B8G8R8,
                FORMAT_SRGB8_X8,
                FORMAT_SRGB8_A8,
                FORMAT_X1R5G5B5,
@@ -98,9 +98,9 @@ namespace sw
                FORMAT_R5G5B5A1,
                FORMAT_G8R8I,
                FORMAT_G8R8UI,
-               FORMAT_G8R8I_SNORM,
-               FORMAT_G8R8, // UI_SNORM
-               FORMAT_G16R16, // D3D format
+               FORMAT_G8R8_SNORM,
+               FORMAT_G8R8,
+               FORMAT_G16R16,
                FORMAT_G16R16I,
                FORMAT_G16R16UI,
                FORMAT_G32R32I,
@@ -108,7 +108,7 @@ namespace sw
                FORMAT_A2R10G10B10,
                FORMAT_A2B10G10R10,
                FORMAT_A2B10G10R10UI,
-               FORMAT_A16B16G16R16, // D3D format
+               FORMAT_A16B16G16R16,
                FORMAT_X16B16G16R16I,
                FORMAT_X16B16G16R16UI,
                FORMAT_A16B16G16R16I,
index 5686f04..850516d 100644 (file)
@@ -162,10 +162,10 @@ namespace sw
 
                                switch(state.textureFormat)
                                {
-                               case FORMAT_R8I_SNORM:
-                               case FORMAT_G8R8I_SNORM:
-                               case FORMAT_X8B8G8R8I_SNORM:
-                               case FORMAT_A8B8G8R8I_SNORM:
+                               case FORMAT_R8_SNORM:
+                               case FORMAT_G8R8_SNORM:
+                               case FORMAT_X8B8G8R8_SNORM:
+                               case FORMAT_A8B8G8R8_SNORM:
                                case FORMAT_R8:
                                case FORMAT_R5G6B5:
                                case FORMAT_G8R8:
@@ -414,10 +414,10 @@ namespace sw
                                case FORMAT_A32B32G32R32I:
                                case FORMAT_A32B32G32R32UI:
                                        break;
-                               case FORMAT_R8I_SNORM:
-                               case FORMAT_G8R8I_SNORM:
-                               case FORMAT_X8B8G8R8I_SNORM:
-                               case FORMAT_A8B8G8R8I_SNORM:
+                               case FORMAT_R8_SNORM:
+                               case FORMAT_G8R8_SNORM:
+                               case FORMAT_X8B8G8R8_SNORM:
+                               case FORMAT_A8B8G8R8_SNORM:
                                case FORMAT_R8:
                                case FORMAT_R5G6B5:
                                case FORMAT_G8R8:
@@ -1800,7 +1800,7 @@ namespace sw
                                                break;
                                        case FORMAT_A8B8G8R8:
                                        case FORMAT_A8B8G8R8I:
-                                       case FORMAT_A8B8G8R8I_SNORM:
+                                       case FORMAT_A8B8G8R8_SNORM:
                                        case FORMAT_Q8W8V8U8:
                                        case FORMAT_SRGB8_A8:
                                                c.z = As<Short4>(UnpackHigh(c.x, c.y));
@@ -1854,7 +1854,7 @@ namespace sw
                                                c.y = UnpackHigh(As<Byte8>(c.y), As<Byte8>(c.y));
                                                c.x = UnpackLow(As<Byte8>(c.x), As<Byte8>(c.x));
                                                break;
-                                       case FORMAT_X8B8G8R8I_SNORM:
+                                       case FORMAT_X8B8G8R8_SNORM:
                                        case FORMAT_X8B8G8R8I:
                                        case FORMAT_X8B8G8R8:
                                        case FORMAT_X8L8V8U8:
@@ -1895,7 +1895,7 @@ namespace sw
                                switch(state.textureFormat)
                                {
                                case FORMAT_G8R8:
-                               case FORMAT_G8R8I_SNORM:
+                               case FORMAT_G8R8_SNORM:
                                case FORMAT_V8U8:
                                case FORMAT_A8L8:
                                        c.y = (c.x & Short4(0xFF00u)) | As<Short4>(As<UShort4>(c.x) >> 8);
@@ -2590,10 +2590,10 @@ namespace sw
                {
                case FORMAT_R5G6B5:
                        return true;
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_R8I:
                case FORMAT_R8UI:
                case FORMAT_G8R8I:
@@ -2677,10 +2677,10 @@ namespace sw
                case FORMAT_R8:
                case FORMAT_L8:
                case FORMAT_A8L8:
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_R8I:
                case FORMAT_R8UI:
                case FORMAT_G8R8I:
@@ -2739,10 +2739,10 @@ namespace sw
                switch(state.textureFormat)
                {
                case FORMAT_R5G6B5:
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_R8I:
                case FORMAT_R8UI:
                case FORMAT_G8R8I:
@@ -2814,10 +2814,10 @@ namespace sw
                switch(state.textureFormat)
                {
                case FORMAT_R5G6B5:
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_R8I:
                case FORMAT_R8UI:
                case FORMAT_G8R8I:
@@ -2893,10 +2893,10 @@ namespace sw
                case FORMAT_YV12_JFIF:
                        return true;
                case FORMAT_R5G6B5:
-               case FORMAT_R8I_SNORM:
-               case FORMAT_G8R8I_SNORM:
-               case FORMAT_X8B8G8R8I_SNORM:
-               case FORMAT_A8B8G8R8I_SNORM:
+               case FORMAT_R8_SNORM:
+               case FORMAT_G8R8_SNORM:
+               case FORMAT_X8B8G8R8_SNORM:
+               case FORMAT_A8B8G8R8_SNORM:
                case FORMAT_R8I:
                case FORMAT_R8UI:
                case FORMAT_G8R8I:
@@ -2964,10 +2964,10 @@ namespace sw
                switch(state.textureFormat)
                {
                case FORMAT_R5G6B5:         return component < 3;
-               case FORMAT_R8I_SNORM:      return component < 1;
-               case FORMAT_G8R8I_SNORM:    return component < 2;
-               case FORMAT_X8B8G8R8I_SNORM: return component < 3;
-               case FORMAT_A8B8G8R8I_SNORM: return component < 3;
+               case FORMAT_R8_SNORM:      return component < 1;
+               case FORMAT_G8R8_SNORM:    return component < 2;
+               case FORMAT_X8B8G8R8_SNORM: return component < 3;
+               case FORMAT_A8B8G8R8_SNORM: return component < 3;
                case FORMAT_R8I:            return component < 1;
                case FORMAT_R8UI:           return component < 1;
                case FORMAT_G8R8I:          return component < 2;