aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
diff options
context:
space:
mode:
authorGravatar Greg Daniel <egdaniel@google.com>2017-11-16 17:59:22 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-11-16 17:59:33 +0000
commit3b2f5b60ff9a82ade01746d7e7cbbcc9348d6c03 (patch)
tree2231d093c5854d90efe4e7e2e74c8575e8c365fe /src/gpu
parent7970765f7db5919ef5c6ad04b1a1bfe6505355c6 (diff)
Revert "Revert "Revert "Add private grpixelconfigs for alpha_8 and alpha_half"""
This reverts commit b5fb7cf0163ccb939f90ecf53ef70732c01f23ae. Reason for revert: breaking more devices Original change's description: > Revert "Revert "Add private grpixelconfigs for alpha_8 and alpha_half"" > > This reverts commit 0fb6db4be6e30777cc5c87f1b601e8c4aacff2b1. > > Reason for revert: fixed bug > > Original change's description: > > Revert "Add private grpixelconfigs for alpha_8 and alpha_half" > > > > This reverts commit 33d17cbb003975fff895954435183756f9893c17. > > > > Reason for revert: broke intel bots > > > > Original change's description: > > > Add private grpixelconfigs for alpha_8 and alpha_half > > > > > > Bug: skia: > > > Change-Id: I5191b6e045aea2a5af2b305b5972ad1e638a7ace > > > Reviewed-on: https://skia-review.googlesource.com/71763 > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > > > TBR=egdaniel@google.com,bsalomon@google.com > > > > Change-Id: I6fff9241f7878f1ec7fad2663df9922c9cd8f628 > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Bug: skia: > > Reviewed-on: https://skia-review.googlesource.com/72180 > > Reviewed-by: Greg Daniel <egdaniel@google.com> > > Commit-Queue: Greg Daniel <egdaniel@google.com> > > TBR=egdaniel@google.com,bsalomon@google.com > > Change-Id: Ie028961ecbf5934c53cb859e019e548935b3af79 > Reviewed-on: https://skia-review.googlesource.com/72241 > Commit-Queue: Greg Daniel <egdaniel@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> TBR=egdaniel@google.com,bsalomon@google.com Change-Id: Ieaac3eca2fc4919699c7de61a3c33348e92a7da0 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/72660 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
Diffstat (limited to 'src/gpu')
-rw-r--r--src/gpu/GrCaps.cpp3
-rw-r--r--src/gpu/GrShaderCaps.cpp33
-rw-r--r--src/gpu/SkGr.cpp4
-rw-r--r--src/gpu/effects/GrDitherEffect.fp3
-rw-r--r--src/gpu/effects/GrDitherEffect.h3
-rw-r--r--src/gpu/gl/GrGLCaps.cpp123
-rw-r--r--src/gpu/gl/GrGLGpu.cpp3
-rw-r--r--src/gpu/mtl/GrMtlUtil.mm10
-rw-r--r--src/gpu/vk/GrVkCaps.cpp4
-rw-r--r--src/gpu/vk/GrVkUtil.cpp8
10 files changed, 76 insertions, 118 deletions
diff --git a/src/gpu/GrCaps.cpp b/src/gpu/GrCaps.cpp
index 845deca920..2e25845876 100644
--- a/src/gpu/GrCaps.cpp
+++ b/src/gpu/GrCaps.cpp
@@ -14,8 +14,6 @@ static const char* pixel_config_name(GrPixelConfig config) {
switch (config) {
case kUnknown_GrPixelConfig: return "Unknown";
case kAlpha_8_GrPixelConfig: return "Alpha8";
- case kAlpha_8_as_Alpha_GrPixelConfig: return "Alpha8_asAlpha";
- case kAlpha_8_as_Red_GrPixelConfig: return "Alpha8_asRed";
case kGray_8_GrPixelConfig: return "Gray8";
case kRGB_565_GrPixelConfig: return "RGB565";
case kRGBA_4444_GrPixelConfig: return "RGBA444";
@@ -27,7 +25,6 @@ static const char* pixel_config_name(GrPixelConfig config) {
case kRGBA_float_GrPixelConfig: return "RGBAFloat";
case kRG_float_GrPixelConfig: return "RGFloat";
case kAlpha_half_GrPixelConfig: return "AlphaHalf";
- case kAlpha_half_as_Red_GrPixelConfig: return "AlphaHalf_asRed";
case kRGBA_half_GrPixelConfig: return "RGBAHalf";
}
SK_ABORT("Invalid pixel config");
diff --git a/src/gpu/GrShaderCaps.cpp b/src/gpu/GrShaderCaps.cpp
index c2f7aaa82d..124fd4de40 100644
--- a/src/gpu/GrShaderCaps.cpp
+++ b/src/gpu/GrShaderCaps.cpp
@@ -212,23 +212,22 @@ void GrShaderCaps::initSamplerPrecisionTable() {
}
uint8_t* table = fSamplerPrecisions[visibility];
- table[kUnknown_GrPixelConfig] = lowp;
- table[kAlpha_8_GrPixelConfig] = lowp;
- table[kAlpha_8_as_Alpha_GrPixelConfig] = lowp;
- table[kAlpha_8_as_Red_GrPixelConfig] = lowp;
- table[kGray_8_GrPixelConfig] = lowp;
- table[kRGB_565_GrPixelConfig] = lowp;
- table[kRGBA_4444_GrPixelConfig] = lowp;
- table[kRGBA_8888_GrPixelConfig] = lowp;
- table[kBGRA_8888_GrPixelConfig] = lowp;
- table[kSRGBA_8888_GrPixelConfig] = lowp;
- table[kSBGRA_8888_GrPixelConfig] = lowp;
- table[kRGBA_8888_sint_GrPixelConfig] = lowp;
- table[kRGBA_float_GrPixelConfig] = kHigh_GrSLPrecision;
- table[kRG_float_GrPixelConfig] = kHigh_GrSLPrecision;
- table[kAlpha_half_GrPixelConfig] = mediump;
- table[kAlpha_half_as_Red_GrPixelConfig] = mediump;
- table[kRGBA_half_GrPixelConfig] = mediump;
+ table[kUnknown_GrPixelConfig] = lowp;
+ table[kAlpha_8_GrPixelConfig] = lowp;
+ table[kGray_8_GrPixelConfig] = lowp;
+ table[kRGB_565_GrPixelConfig] = lowp;
+ table[kRGBA_4444_GrPixelConfig] = lowp;
+ table[kRGBA_8888_GrPixelConfig] = lowp;
+ table[kBGRA_8888_GrPixelConfig] = lowp;
+ table[kSRGBA_8888_GrPixelConfig] = lowp;
+ table[kSBGRA_8888_GrPixelConfig] = lowp;
+ table[kRGBA_8888_sint_GrPixelConfig] = lowp;
+ table[kRGBA_float_GrPixelConfig] = kHigh_GrSLPrecision;
+ table[kRG_float_GrPixelConfig] = kHigh_GrSLPrecision;
+ table[kAlpha_half_GrPixelConfig] = mediump;
+ table[kRGBA_half_GrPixelConfig] = mediump;
+
+ GR_STATIC_ASSERT(14 == kGrPixelConfigCnt);
}
}
diff --git a/src/gpu/SkGr.cpp b/src/gpu/SkGr.cpp
index 63d0f260b0..026a7482b4 100644
--- a/src/gpu/SkGr.cpp
+++ b/src/gpu/SkGr.cpp
@@ -368,9 +368,7 @@ GrPixelConfig SkImageInfo2GrPixelConfig(const SkImageInfo& info, const GrCaps& c
bool GrPixelConfigToColorType(GrPixelConfig config, SkColorType* ctOut) {
SkColorType ct;
switch (config) {
- case kAlpha_8_GrPixelConfig: // fall through
- case kAlpha_8_as_Alpha_GrPixelConfig: // fall through
- case kAlpha_8_as_Red_GrPixelConfig:
+ case kAlpha_8_GrPixelConfig:
ct = kAlpha_8_SkColorType;
break;
case kGray_8_GrPixelConfig:
diff --git a/src/gpu/effects/GrDitherEffect.fp b/src/gpu/effects/GrDitherEffect.fp
index 1f4f3039b1..f2d54cf2eb 100644
--- a/src/gpu/effects/GrDitherEffect.fp
+++ b/src/gpu/effects/GrDitherEffect.fp
@@ -20,14 +20,11 @@ layout(key) in int rangeType;
break;
case kUnknown_GrPixelConfig:
case kAlpha_half_GrPixelConfig:
- case kAlpha_half_as_Red_GrPixelConfig:
case kRGBA_8888_sint_GrPixelConfig:
case kRGBA_float_GrPixelConfig:
case kRG_float_GrPixelConfig:
case kRGBA_half_GrPixelConfig:
case kAlpha_8_GrPixelConfig:
- case kAlpha_8_as_Alpha_GrPixelConfig:
- case kAlpha_8_as_Red_GrPixelConfig:
return nullptr;
}
return std::unique_ptr<GrFragmentProcessor>(new GrDitherEffect(rangeType));
diff --git a/src/gpu/effects/GrDitherEffect.h b/src/gpu/effects/GrDitherEffect.h
index a11ea666a1..deb20852ca 100644
--- a/src/gpu/effects/GrDitherEffect.h
+++ b/src/gpu/effects/GrDitherEffect.h
@@ -36,14 +36,11 @@ public:
break;
case kUnknown_GrPixelConfig:
case kAlpha_half_GrPixelConfig:
- case kAlpha_half_as_Red_GrPixelConfig:
case kRGBA_8888_sint_GrPixelConfig:
case kRGBA_float_GrPixelConfig:
case kRG_float_GrPixelConfig:
case kRGBA_half_GrPixelConfig:
case kAlpha_8_GrPixelConfig:
- case kAlpha_8_as_Alpha_GrPixelConfig:
- case kAlpha_8_as_Red_GrPixelConfig:
return nullptr;
}
return std::unique_ptr<GrFragmentProcessor>(new GrDitherEffect(rangeType));
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
index f290050ef1..fe9bce8528 100644
--- a/src/gpu/gl/GrGLCaps.cpp
+++ b/src/gpu/gl/GrGLCaps.cpp
@@ -1911,48 +1911,33 @@ void GrGLCaps::initConfigTable(const GrContextOptions& contextOptions,
}
fConfigTable[kRGBA_4444_GrPixelConfig].fSwizzle = GrSwizzle::RGBA();
- bool alpha8IsValidForGL = kGL_GrGLStandard == standard &&
- (!fIsCoreProfile || version <= GR_GL_VER(3, 0));
-
- ConfigInfo& alphaInfo = fConfigTable[kAlpha_8_as_Alpha_GrPixelConfig];
- alphaInfo.fFormats.fExternalType = GR_GL_UNSIGNED_BYTE;
- alphaInfo.fFormatType = kNormalizedFixedPoint_FormatType;
- if (alpha8IsValidForGL || version <= GR_GL_VER(3, 0)) {
- alphaInfo.fFlags = ConfigInfo::kTextureable_Flag;
- }
- alphaInfo.fFormats.fBaseInternalFormat = GR_GL_ALPHA;
- alphaInfo.fFormats.fSizedInternalFormat = GR_GL_ALPHA8;
- alphaInfo.fFormats.fExternalFormat[kOther_ExternalFormatUsage] = GR_GL_ALPHA;
- alphaInfo.fSwizzle = GrSwizzle::AAAA();
- if (fAlpha8IsRenderable && alpha8IsValidForGL) {
- alphaInfo.fFlags |= allRenderFlags;
- }
-
- ConfigInfo& redInfo = fConfigTable[kAlpha_8_as_Red_GrPixelConfig];
- redInfo.fFormats.fExternalType = GR_GL_UNSIGNED_BYTE;
- redInfo.fFormatType = kNormalizedFixedPoint_FormatType;
- redInfo.fFormats.fBaseInternalFormat = GR_GL_RED;
- redInfo.fFormats.fSizedInternalFormat = GR_GL_R8;
- redInfo.fFormats.fExternalFormat[kOther_ExternalFormatUsage] = GR_GL_RED;
- redInfo.fSwizzle = GrSwizzle::RRRR();
-
- // ES2 Command Buffer does not allow TexStorage with R8_EXT (so Alpha_8 and Gray_8)
- if (texStorageSupported && !isCommandBufferES2) {
- alphaInfo.fFlags |= ConfigInfo::kCanUseTexStorage_Flag;
- redInfo.fFlags |= ConfigInfo::kCanUseTexStorage_Flag;
- }
-
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fExternalType = GR_GL_UNSIGNED_BYTE;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormatType = kNormalizedFixedPoint_FormatType;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFlags = ConfigInfo::kTextureable_Flag;
if (this->textureRedSupport()) {
- redInfo.fFlags = ConfigInfo::kTextureable_Flag | allRenderFlags;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fBaseInternalFormat = GR_GL_RED;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fSizedInternalFormat = GR_GL_R8;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fExternalFormat[kOther_ExternalFormatUsage] =
+ GR_GL_RED;
+ fConfigTable[kAlpha_8_GrPixelConfig].fSwizzle = GrSwizzle::RRRR();
if (texelBufferSupport) {
- redInfo.fFlags |= ConfigInfo::kCanUseWithTexelBuffer_Flag;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFlags |= ConfigInfo::kCanUseWithTexelBuffer_Flag;
}
-
- fConfigTable[kAlpha_8_GrPixelConfig] = redInfo;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFlags |= allRenderFlags;
} else {
- redInfo.fFlags = 0;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fBaseInternalFormat = GR_GL_ALPHA;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fSizedInternalFormat = GR_GL_ALPHA8;
+ fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fExternalFormat[kOther_ExternalFormatUsage] =
+ GR_GL_ALPHA;
+ fConfigTable[kAlpha_8_GrPixelConfig].fSwizzle = GrSwizzle::AAAA();
+ if (fAlpha8IsRenderable) {
+ fConfigTable[kAlpha_8_GrPixelConfig].fFlags |= allRenderFlags;
+ }
+ }
- fConfigTable[kAlpha_8_GrPixelConfig] = alphaInfo;
+ // ES2 Command Buffer does not allow TexStorage with R8_EXT (so Alpha_8 and Gray_8)
+ if (texStorageSupported && !isCommandBufferES2) {
+ fConfigTable[kAlpha_8_GrPixelConfig].fFlags |= ConfigInfo::kCanUseTexStorage_Flag;
}
fConfigTable[kGray_8_GrPixelConfig].fFormats.fExternalType = GR_GL_UNSIGNED_BYTE;
@@ -1999,13 +1984,13 @@ void GrGLCaps::initConfigTable(const GrContextOptions& contextOptions,
uint32_t fpRenderFlags = (kGL_GrGLStandard == standard) ? allRenderFlags : nonMSAARenderFlags;
if (kGL_GrGLStandard == standard) {
- if (version >= GR_GL_VER(3, 0)) {
+ if (version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_ARB_texture_float")) {
hasFPTextures = true;
hasHalfFPTextures = true;
rgIsTexturable = true;
}
} else {
- if (version >= GR_GL_VER(3, 0)) {
+ if (version >= GR_GL_VER(3, 1)) {
hasFPTextures = true;
hasHalfFPTextures = true;
rgIsTexturable = true;
@@ -2047,38 +2032,42 @@ void GrGLCaps::initConfigTable(const GrContextOptions& contextOptions,
fConfigTable[fpconfig].fSwizzle = GrSwizzle::RGBA();
}
- if (this->textureRedSupport() && hasHalfFPTextures) {
- GrGLenum redHalfExternalType;
- if (kGL_GrGLStandard == ctxInfo.standard() || ctxInfo.version() >= GR_GL_VER(3, 0)) {
- redHalfExternalType = GR_GL_HALF_FLOAT;
- } else {
- redHalfExternalType = GR_GL_HALF_FLOAT_OES;
+ if (this->textureRedSupport()) {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fBaseInternalFormat = GR_GL_RED;
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fSizedInternalFormat = GR_GL_R16F;
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fExternalFormat[kOther_ExternalFormatUsage]
+ = GR_GL_RED;
+ fConfigTable[kAlpha_half_GrPixelConfig].fSwizzle = GrSwizzle::RRRR();
+ if (texelBufferSupport) {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFlags |=
+ ConfigInfo::kCanUseWithTexelBuffer_Flag;
}
+ } else {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fBaseInternalFormat = GR_GL_ALPHA;
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fSizedInternalFormat = GR_GL_ALPHA16F;
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fExternalFormat[kOther_ExternalFormatUsage]
+ = GR_GL_ALPHA;
+ fConfigTable[kAlpha_half_GrPixelConfig].fSwizzle = GrSwizzle::AAAA();
+ }
- ConfigInfo& redHalf = fConfigTable[kAlpha_half_as_Red_GrPixelConfig];
- redHalf.fFormats.fExternalType = redHalfExternalType;
- redHalf.fFormatType = kFloat_FormatType;
- redHalf.fFormats.fBaseInternalFormat = GR_GL_RED;
- redHalf.fFormats.fSizedInternalFormat = GR_GL_R16F;
- redHalf.fFormats.fExternalFormat[kOther_ExternalFormatUsage] = GR_GL_RED;
- redHalf.fSwizzle = GrSwizzle::RRRR();
- redHalf.fFlags = ConfigInfo::kTextureable_Flag;
-
+ if (kGL_GrGLStandard == ctxInfo.standard() || ctxInfo.version() >= GR_GL_VER(3, 0)) {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fExternalType = GR_GL_HALF_FLOAT;
+ } else {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormats.fExternalType = GR_GL_HALF_FLOAT_OES;
+ }
+ fConfigTable[kAlpha_half_GrPixelConfig].fFormatType = kFloat_FormatType;
+ if (texStorageSupported) {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFlags |= ConfigInfo::kCanUseTexStorage_Flag;
+ }
+ if (hasHalfFPTextures) {
+ fConfigTable[kAlpha_half_GrPixelConfig].fFlags = ConfigInfo::kTextureable_Flag;
+ // ES requires either 3.2 or the combination of EXT_color_buffer_half_float and support for
+ // GL_RED internal format.
if (kGL_GrGLStandard == standard || version >= GR_GL_VER(3, 2) ||
(this->textureRedSupport() &&
ctxInfo.hasExtension("GL_EXT_color_buffer_half_float"))) {
- redHalf.fFlags |= fpRenderFlags;
- }
-
- if (texStorageSupported) {
- redHalf.fFlags |= ConfigInfo::kCanUseTexStorage_Flag;
+ fConfigTable[kAlpha_half_GrPixelConfig].fFlags |= fpRenderFlags;
}
-
- if (texelBufferSupport) {
- redHalf.fFlags |= ConfigInfo::kCanUseWithTexelBuffer_Flag;
- }
-
- fConfigTable[kAlpha_half_GrPixelConfig] = redHalf;
}
fConfigTable[kRGBA_half_GrPixelConfig].fFormats.fBaseInternalFormat = GR_GL_RGBA;
@@ -2132,12 +2121,8 @@ void GrGLCaps::initConfigTable(const GrContextOptions& contextOptions,
// kAlpha_8_GrPixelConfig. Alpha8 is not a valid signed internal format so we must use the base
// internal format for that config when doing TexImage calls.
if(kGalliumLLVM_GrGLRenderer == ctxInfo.renderer()) {
- SkASSERT(fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fBaseInternalFormat ==
- fConfigTable[kAlpha_8_as_Alpha_GrPixelConfig].fFormats.fBaseInternalFormat);
fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fInternalFormatTexImage =
fConfigTable[kAlpha_8_GrPixelConfig].fFormats.fBaseInternalFormat;
- fConfigTable[kAlpha_8_as_Alpha_GrPixelConfig].fFormats.fInternalFormatTexImage =
- fConfigTable[kAlpha_8_as_Alpha_GrPixelConfig].fFormats.fBaseInternalFormat;
}
// OpenGL ES 2.0 + GL_EXT_sRGB allows GL_SRGB_ALPHA to be specified as the <format>
diff --git a/src/gpu/gl/GrGLGpu.cpp b/src/gpu/gl/GrGLGpu.cpp
index 59aa14f37c..2e832e4447 100644
--- a/src/gpu/gl/GrGLGpu.cpp
+++ b/src/gpu/gl/GrGLGpu.cpp
@@ -780,14 +780,11 @@ bool GrGLGpu::onWritePixels(GrSurface* surface, GrSurfaceOrigin origin,
static inline GrGLint config_alignment(GrPixelConfig config) {
switch (config) {
case kAlpha_8_GrPixelConfig:
- case kAlpha_8_as_Alpha_GrPixelConfig:
- case kAlpha_8_as_Red_GrPixelConfig:
case kGray_8_GrPixelConfig:
return 1;
case kRGB_565_GrPixelConfig:
case kRGBA_4444_GrPixelConfig:
case kAlpha_half_GrPixelConfig:
- case kAlpha_half_as_Red_GrPixelConfig:
case kRGBA_half_GrPixelConfig:
return 2;
case kRGBA_8888_GrPixelConfig:
diff --git a/src/gpu/mtl/GrMtlUtil.mm b/src/gpu/mtl/GrMtlUtil.mm
index cc40e47c0b..24643669ea 100644
--- a/src/gpu/mtl/GrMtlUtil.mm
+++ b/src/gpu/mtl/GrMtlUtil.mm
@@ -7,8 +7,6 @@
#include "GrMtlUtil.h"
-#include "GrTypesPriv.h"
-
bool GrPixelConfigToMTLFormat(GrPixelConfig config, MTLPixelFormat* format) {
MTLPixelFormat dontCare;
if (!format) {
@@ -47,12 +45,9 @@ bool GrPixelConfigToMTLFormat(GrPixelConfig config, MTLPixelFormat* format) {
#else
return false;
#endif
- case kAlpha_8_GrPixelConfig: // fall through
- case kAlpha_8_as_Red_GrPixelConfig:
+ case kAlpha_8_GrPixelConfig:
*format = MTLPixelFormatR8Unorm;
return true;
- case kAlpha_8_as_Alpha_GrPixelConfig:
- return false;
case kGray_8_GrPixelConfig:
*format = MTLPixelFormatR8Unorm;
return true;
@@ -65,8 +60,7 @@ bool GrPixelConfigToMTLFormat(GrPixelConfig config, MTLPixelFormat* format) {
case kRGBA_half_GrPixelConfig:
*format = MTLPixelFormatRGBA16Float;
return true;
- case kAlpha_half_GrPixelConfig: // fall through
- case kAlpha_half_as_Red_GrPixelConfig:
+ case kAlpha_half_GrPixelConfig:
*format = MTLPixelFormatR16Float;
return true;
}
diff --git a/src/gpu/vk/GrVkCaps.cpp b/src/gpu/vk/GrVkCaps.cpp
index 4ab1f024e0..2b24205af8 100644
--- a/src/gpu/vk/GrVkCaps.cpp
+++ b/src/gpu/vk/GrVkCaps.cpp
@@ -208,9 +208,7 @@ void GrVkCaps::initShaderCaps(const VkPhysicalDeviceProperties& properties, uint
// fConfigOutputSwizzle will default to RGBA so we only need to set it for alpha only config.
for (int i = 0; i < kGrPixelConfigCnt; ++i) {
GrPixelConfig config = static_cast<GrPixelConfig>(i);
- // Vulkan doesn't support a single channel format stored in alpha.
- if (GrPixelConfigIsAlphaOnly(config) &&
- kAlpha_8_as_Alpha_GrPixelConfig != config) {
+ if (GrPixelConfigIsAlphaOnly(config)) {
shaderCaps->fConfigTextureSwizzle[i] = GrSwizzle::RRRR();
shaderCaps->fConfigOutputSwizzle[i] = GrSwizzle::AAAA();
} else {
diff --git a/src/gpu/vk/GrVkUtil.cpp b/src/gpu/vk/GrVkUtil.cpp
index 2f4e9b1d1d..0ce47cb962 100644
--- a/src/gpu/vk/GrVkUtil.cpp
+++ b/src/gpu/vk/GrVkUtil.cpp
@@ -42,12 +42,9 @@ bool GrPixelConfigToVkFormat(GrPixelConfig config, VkFormat* format) {
// store the data is if it was B4G4R4A4 and swizzle in shaders
*format = VK_FORMAT_B4G4R4A4_UNORM_PACK16;
return true;
- case kAlpha_8_GrPixelConfig: // fall through
- case kAlpha_8_as_Red_GrPixelConfig:
+ case kAlpha_8_GrPixelConfig:
*format = VK_FORMAT_R8_UNORM;
return true;
- case kAlpha_8_as_Alpha_GrPixelConfig:
- return false;
case kGray_8_GrPixelConfig:
*format = VK_FORMAT_R8_UNORM;
return true;
@@ -60,8 +57,7 @@ bool GrPixelConfigToVkFormat(GrPixelConfig config, VkFormat* format) {
case kRGBA_half_GrPixelConfig:
*format = VK_FORMAT_R16G16B16A16_SFLOAT;
return true;
- case kAlpha_half_GrPixelConfig: // fall through
- case kAlpha_half_as_Red_GrPixelConfig:
+ case kAlpha_half_GrPixelConfig:
*format = VK_FORMAT_R16_SFLOAT;
return true;
}