From: Alan Baker Date: Sun, 25 Aug 2019 17:57:24 +0000 (-0400) Subject: Remove float16 derivatives tests X-Git-Tag: upstream/1.3.5~1624^2~3^2^2~6^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3bb4b927cf67210826108528e2af9e5c9e851641;p=platform%2Fupstream%2FVK-GL-CTS.git Remove float16 derivatives tests SPIR-V restricts derivatives to 32-floating point scalars and vectors only. Component: Vulkan VK-GL-CTS Issue: 1931 Affects: dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_*.* Change-Id: Icc5341e697b797045080cc55428dbc2c02d71def (cherry picked from commit 436d6dd5e7a0c0811bf1b6059542d1cdbccb9566) --- diff --git a/android/cts/master/vk-master.txt b/android/cts/master/vk-master.txt index 7071c38..8a243f1 100755 --- a/android/cts/master/vk-master.txt +++ b/android/cts/master/vk-master.txt @@ -236089,33 +236089,6 @@ dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_tessc dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_tesse dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_geom dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_frag -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidth -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidth -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidth dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_vert dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_tessc dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_tesse diff --git a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp index 8ae92a5..90da693 100644 --- a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp +++ b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp @@ -10383,396 +10383,6 @@ tcu::TestCaseGroup* createFloat16FuncSet (tcu::TestContext& testCtx) return testGroup.release(); } -struct getV_ { deUint32 inline operator()(deUint32 v) const { return v; } getV_(){} }; -struct getV0 { deUint32 inline operator()(deUint32 v) const { return v & (~1); } getV0(){} }; -struct getV1 { deUint32 inline operator()(deUint32 v) const { return v | ( 1); } getV1(){} }; - -template -inline static deUint32 getOffset(deUint32 x, deUint32 y, deUint32 n) -{ - return N * ((R * y) + x) + n; -} - -template -struct getFDelta -{ - float operator() (const deFloat16* data, deUint32 x, deUint32 y, deUint32 n, deUint32 flavor) const - { - DE_STATIC_ASSERT(R%2 == 0); - DE_ASSERT(flavor == 0); - DE_UNREF(flavor); - - const X0 x0; - const X1 x1; - const Y0 y0; - const Y1 y1; - const deFloat16 v0 = data[getOffset(x0(x), y0(y), n)]; - const deFloat16 v1 = data[getOffset(x1(x), y1(y), n)]; - const tcu::Float16 f0 = tcu::Float16(v0); - const tcu::Float16 f1 = tcu::Float16(v1); - const float d0 = f0.asFloat(); - const float d1 = f1.asFloat(); - const float d = d1 - d0; - - return d; - } - - getFDelta(){} -}; - -template -struct getFOneOf -{ - float operator() (const deFloat16* data, deUint32 x, deUint32 y, deUint32 n, deUint32 flavor) const - { - DE_ASSERT(flavor < F); - - if (flavor == 0) - { - Class0 c; - - return c(data, x, y, n, flavor); - } - else - { - Class1 c; - - return c(data, x, y, n, flavor - 1); - } - } - - getFOneOf(){} -}; - -template -struct calcWidthOf4 -{ - float operator() (const deFloat16* data, deUint32 x, deUint32 y, deUint32 n, deUint32 flavor) const - { - DE_ASSERT(flavor < 4); - - const deUint32 flavorX = (flavor & 1) == 0 ? 0 : 1; - const deUint32 flavorY = (flavor & 2) == 0 ? 0 : 1; - const getFOneOf<2, FineX0, FineX1> cx; - const getFOneOf<2, FineY0, FineY1> cy; - float v = 0; - - v += fabsf(cx(data, x, y, n, flavorX)); - v += fabsf(cy(data, x, y, n, flavorY)); - - return v; - } - - calcWidthOf4(){} -}; - -template -bool compareDerivativeWithFlavor (const deFloat16* inputAsFP16, const deFloat16* outputAsFP16, deUint32 flavor, std::string& error) -{ - const deUint32 numDataPointsByAxis = R; - const Derivative derivativeFunc; - - for (deUint32 y = 0; y < numDataPointsByAxis; ++y) - for (deUint32 x = 0; x < numDataPointsByAxis; ++x) - for (deUint32 n = 0; n < N; ++n) - { - const float expectedFloat = derivativeFunc(inputAsFP16, x, y, n, flavor); - deFloat16 expected = deFloat32To16Round(expectedFloat, DE_ROUNDINGMODE_TO_NEAREST_EVEN); - const deFloat16 output = outputAsFP16[getOffset(x, y, n)]; - - bool reportError = !compare16BitFloat(expected, output, error); - - if (reportError) - { - expected = deFloat32To16Round(expectedFloat, DE_ROUNDINGMODE_TO_ZERO); - reportError = !compare16BitFloat(expected, output, error); - } - - if (reportError) - { - error = "subcase at " + de::toString(x) + "," + de::toString(y) + "," + de::toString(n) + ": " + error; - - return false; - } - } - - return true; -} - -template -bool compareDerivative (const std::vector& inputs, const vector& outputAllocs, const std::vector&, TestLog& log) -{ - if (inputs.size() != 1 || outputAllocs.size() != 1) - return false; - - deUint32 successfulRuns = FLAVOUR_COUNT; - std::string results[FLAVOUR_COUNT]; - vector inputBytes; - - inputs[0].getBytes(inputBytes); - - const deFloat16* inputAsFP16 = reinterpret_cast(&inputBytes.front()); - const deFloat16* outputAsFP16 = static_cast(outputAllocs[0]->getHostPtr()); - - DE_ASSERT(inputBytes.size() == R * R * N * sizeof(deFloat16)); - - for (deUint32 flavor = 0; flavor < FLAVOUR_COUNT; ++flavor) - if (compareDerivativeWithFlavor (inputAsFP16, outputAsFP16, flavor, results[flavor])) - { - break; - } - else - { - successfulRuns--; - } - - if (successfulRuns == 0) - for (deUint32 flavor = 0; flavor < FLAVOUR_COUNT; flavor++) - log << TestLog::Message << "At flavor #" << flavor << " " << results[flavor] << TestLog::EndMessage; - - return successfulRuns > 0; -} - -template -tcu::TestCaseGroup* createDerivativeTests (tcu::TestContext& testCtx) -{ - typedef getFDelta getFDxFine; - typedef getFDelta getFDyFine; - - typedef getFDelta getFdxCoarse0; - typedef getFDelta getFdxCoarse1; - typedef getFDelta getFdyCoarse0; - typedef getFDelta getFdyCoarse1; - typedef getFOneOf<2, getFdxCoarse0, getFdxCoarse1> getFDxCoarse; - typedef getFOneOf<2, getFdyCoarse0, getFdyCoarse1> getFDyCoarse; - - typedef calcWidthOf4 getFWidthFine; - typedef calcWidthOf4 getFWidthCoarse; - - typedef getFOneOf<3, getFDxFine, getFDxCoarse> getFDx; - typedef getFOneOf<3, getFDyFine, getFDyCoarse> getFDy; - typedef getFOneOf<5, getFWidthFine, getFWidthCoarse> getFWidth; - - const std::string testGroupName (std::string("derivative_") + de::toString(N)); - de::MovePtr testGroup (new tcu::TestCaseGroup(testCtx, testGroupName.c_str(), "Derivative instruction tests")); - - de::Random rnd (deStringHash(testGroup->getName())); - const deUint32 numDataPointsByAxis = R; - const deUint32 numDataPoints = N * numDataPointsByAxis * numDataPointsByAxis; - vector float16InputX; - vector float16InputY; - vector float16InputW; - vector float16OutputDummy (numDataPoints, 0); - RGBA defaultColors[4]; - - getDefaultColors(defaultColors); - - float16InputX.reserve(numDataPoints); - for (deUint32 y = 0; y < numDataPointsByAxis; ++y) - for (deUint32 x = 0; x < numDataPointsByAxis; ++x) - for (deUint32 n = 0; n < N; ++n) - { - const float arg = static_cast(2 * DE_PI) * static_cast(x * (n + 1)) / static_cast(1 * numDataPointsByAxis); - - if (y%2 == 0) - float16InputX.push_back(tcu::Float16(sin(arg)).bits()); - else - float16InputX.push_back(tcu::Float16(cos(arg)).bits()); - } - - float16InputY.reserve(numDataPoints); - for (deUint32 y = 0; y < numDataPointsByAxis; ++y) - for (deUint32 x = 0; x < numDataPointsByAxis; ++x) - for (deUint32 n = 0; n < N; ++n) - { - const float arg = static_cast(2 * DE_PI) * static_cast(y * (n + 1)) / static_cast(1 * numDataPointsByAxis); - - if (x%2 == 0) - float16InputY.push_back(tcu::Float16(sin(arg)).bits()); - else - float16InputY.push_back(tcu::Float16(cos(arg)).bits()); - } - - const deFloat16 testNumbers[] = - { - tcu::Float16( 2.0 ).bits(), - tcu::Float16( 4.0 ).bits(), - tcu::Float16( 8.0 ).bits(), - tcu::Float16( 16.0 ).bits(), - tcu::Float16( 32.0 ).bits(), - tcu::Float16( 64.0 ).bits(), - tcu::Float16( 128.0).bits(), - tcu::Float16( 256.0).bits(), - tcu::Float16( 512.0).bits(), - tcu::Float16(-2.0 ).bits(), - tcu::Float16(-4.0 ).bits(), - tcu::Float16(-8.0 ).bits(), - tcu::Float16(-16.0 ).bits(), - tcu::Float16(-32.0 ).bits(), - tcu::Float16(-64.0 ).bits(), - tcu::Float16(-128.0).bits(), - tcu::Float16(-256.0).bits(), - tcu::Float16(-512.0).bits(), - }; - - float16InputW.reserve(numDataPoints); - for (deUint32 y = 0; y < numDataPointsByAxis; ++y) - for (deUint32 x = 0; x < numDataPointsByAxis; ++x) - for (deUint32 n = 0; n < N; ++n) - float16InputW.push_back(testNumbers[rnd.getInt(0, DE_LENGTH_OF_ARRAY(testNumbers) - 1)]); - - struct TestOp - { - const char* opCode; - vector& inputData; - VerifyIOFunc verifyFunc; - }; - - const TestOp testOps[] = - { - { "OpDPdxFine" , float16InputX , compareDerivative }, - { "OpDPdyFine" , float16InputY , compareDerivative }, - { "OpFwidthFine" , float16InputW , compareDerivative }, - { "OpDPdxCoarse" , float16InputX , compareDerivative }, - { "OpDPdyCoarse" , float16InputY , compareDerivative }, - { "OpFwidthCoarse" , float16InputW , compareDerivative }, - { "OpDPdx" , float16InputX , compareDerivative }, - { "OpDPdy" , float16InputY , compareDerivative }, - { "OpFwidth" , float16InputW , compareDerivative }, - }; - - struct TestType - { - const deUint32 typeComponents; - const char* typeName; - const char* typeDecls; - }; - - const TestType testTypes[] = - { - { - 1, - "f16", - "" - }, - { - 2, - "v2f16", - " %v2f16 = OpTypeVector %f16 2\n" - }, - { - 4, - "v4f16", - " %v4f16 = OpTypeVector %f16 4\n" - }, - }; - - const deUint32 testTypeNdx = (N == 1) ? 0 - : (N == 2) ? 1 - : (N == 4) ? 2 - : DE_LENGTH_OF_ARRAY(testTypes); - const TestType& testType = testTypes[testTypeNdx]; - - DE_ASSERT(testTypeNdx < DE_LENGTH_OF_ARRAY(testTypes)); - DE_ASSERT(testType.typeComponents == N); - - const StringTemplate preMain - ( - "%c_i32_ndp = OpConstant %i32 ${num_data_points}\n" - " %c_u32_xw = OpConstant %u32 ${items_by_x}\n" - " %f16 = OpTypeFloat 16\n" - "${type_decls}" - " %up_${tt} = OpTypePointer Uniform %${tt}\n" - " %ra_${tt} = OpTypeArray %${tt} %c_i32_ndp\n" - " %SSBO16 = OpTypeStruct %ra_${tt}\n" - "%up_SSBO16 = OpTypePointer Uniform %SSBO16\n" - " %ssbo_src = OpVariable %up_SSBO16 Uniform\n" - " %ssbo_dst = OpVariable %up_SSBO16 Uniform\n" - ); - - const StringTemplate decoration - ( - "OpDecorate %ra_${tt} ArrayStride ${tt_stride}\n" - "OpMemberDecorate %SSBO16 0 Offset 0\n" - "OpDecorate %SSBO16 BufferBlock\n" - "OpDecorate %ssbo_src DescriptorSet 0\n" - "OpDecorate %ssbo_src Binding 0\n" - "OpDecorate %ssbo_dst DescriptorSet 0\n" - "OpDecorate %ssbo_dst Binding 1\n" - ); - - const StringTemplate testFun - ( - "%test_code = OpFunction %v4f32 None %v4f32_v4f32_function\n" - " %param = OpFunctionParameter %v4f32\n" - " %entry = OpLabel\n" - - " %loc_x_c = OpAccessChain %ip_f32 %BP_gl_FragCoord %c_i32_0\n" - " %loc_y_c = OpAccessChain %ip_f32 %BP_gl_FragCoord %c_i32_1\n" - " %x_c = OpLoad %f32 %loc_x_c\n" - " %y_c = OpLoad %f32 %loc_y_c\n" - " %x_idx = OpConvertFToU %u32 %x_c\n" - " %y_idx = OpConvertFToU %u32 %y_c\n" - " %ndx_y = OpIMul %u32 %y_idx %c_u32_xw\n" - " %ndx = OpIAdd %u32 %ndx_y %x_idx\n" - - " %src = OpAccessChain %up_${tt} %ssbo_src %c_i32_0 %ndx\n" - " %val_src = OpLoad %${tt} %src\n" - " %val_dst = ${op_code} %${tt} %val_src\n" - " %dst = OpAccessChain %up_${tt} %ssbo_dst %c_i32_0 %ndx\n" - " OpStore %dst %val_dst\n" - " OpBranch %merge\n" - - " %merge = OpLabel\n" - " OpReturnValue %param\n" - - " OpFunctionEnd\n" - ); - - for (deUint32 testOpsIdx = 0; testOpsIdx < DE_LENGTH_OF_ARRAY(testOps); ++testOpsIdx) - { - const TestOp& testOp = testOps[testOpsIdx]; - const string testName = de::toLower(string(testOp.opCode)); - const size_t typeStride = N * sizeof(deFloat16); - GraphicsResources specResource; - map specs; - VulkanFeatures features; - vector extensions; - map fragments; - SpecConstants noSpecConstants; - PushConstants noPushConstants; - GraphicsInterfaces noInterfaces; - - specs["op_code"] = testOp.opCode; - specs["num_data_points"] = de::toString(testOp.inputData.size() / N); - specs["items_by_x"] = de::toString(numDataPointsByAxis); - specs["tt"] = testType.typeName; - specs["tt_stride"] = de::toString(typeStride); - specs["type_decls"] = testType.typeDecls; - - fragments["extension"] = "OpExtension \"SPV_KHR_16bit_storage\""; - fragments["capability"] = "OpCapability DerivativeControl\nOpCapability StorageUniformBufferBlock16\n"; - fragments["decoration"] = decoration.specialize(specs); - fragments["pre_main"] = preMain.specialize(specs); - fragments["testfun"] = testFun.specialize(specs); - - specResource.inputs.push_back(Resource(BufferSp(new Float16Buffer(testOp.inputData)), VK_DESCRIPTOR_TYPE_STORAGE_BUFFER)); - specResource.outputs.push_back(Resource(BufferSp(new Float16Buffer(float16OutputDummy)), VK_DESCRIPTOR_TYPE_STORAGE_BUFFER)); - specResource.verifyIO = testOp.verifyFunc; - - extensions.push_back("VK_KHR_16bit_storage"); - extensions.push_back("VK_KHR_shader_float16_int8"); - - features.extFloat16Int8 = EXTFLOAT16INT8FEATURES_FLOAT16; - features.ext16BitStorage = EXT16BITSTORAGEFEATURES_UNIFORM_BUFFER_BLOCK; - - createTestForStage(VK_SHADER_STAGE_FRAGMENT_BIT, testName.c_str(), defaultColors, defaultColors, fragments, noSpecConstants, - noPushConstants, specResource, noInterfaces, extensions, features, testGroup.get(), QP_TEST_RESULT_FAIL, string(), true); - } - - return testGroup.release(); -} - bool compareFP16VectorExtractFunc (const std::vector& inputs, const vector& outputAllocs, const std::vector&, TestLog& log) { if (inputs.size() != 2 || outputAllocs.size() != 1) @@ -17677,9 +17287,6 @@ tcu::TestCaseGroup* createFloat16Tests (tcu::TestContext& testCtx) testGroup->addChild(createFloat16LogicalSet(testCtx, TEST_WITH_NAN)); testGroup->addChild(createFloat16LogicalSet(testCtx, TEST_WITHOUT_NAN)); testGroup->addChild(createFloat16FuncSet(testCtx)); - testGroup->addChild(createDerivativeTests<256, 1>(testCtx)); - testGroup->addChild(createDerivativeTests<256, 2>(testCtx)); - testGroup->addChild(createDerivativeTests<256, 4>(testCtx)); testGroup->addChild(createFloat16VectorExtractSet(testCtx)); testGroup->addChild(createFloat16VectorInsertSet(testCtx)); testGroup->addChild(createFloat16VectorShuffleSet(testCtx)); diff --git a/external/vulkancts/mustpass/1.1.3/vk-default-no-waivers.txt b/external/vulkancts/mustpass/1.1.3/vk-default-no-waivers.txt index 24aa466..ea08095 100644 --- a/external/vulkancts/mustpass/1.1.3/vk-default-no-waivers.txt +++ b/external/vulkancts/mustpass/1.1.3/vk-default-no-waivers.txt @@ -235994,33 +235994,6 @@ dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_tessc dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_tesse dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_geom dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_frag -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidth -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidth -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidth dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_vert dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_tessc dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_tesse diff --git a/external/vulkancts/mustpass/1.1.3/vk-default.txt b/external/vulkancts/mustpass/1.1.3/vk-default.txt index f8a63c3..2108d58 100644 --- a/external/vulkancts/mustpass/1.1.3/vk-default.txt +++ b/external/vulkancts/mustpass/1.1.3/vk-default.txt @@ -235994,33 +235994,6 @@ dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_tessc dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_tesse dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_geom dEQP-VK.spirv_assembly.instruction.graphics.float16.function.v4f16_frag -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.opfwidth -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.opfwidth -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdxfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdyfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidthfine -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdxcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdycoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidthcoarse -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdx -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opdpdy -dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.opfwidth dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_vert dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_tessc dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorextractdynamic.v2f16_tesse