Extend maps with raygeneration types
authorBoris Zanin <boris.zanin@mobica.com>
Tue, 15 Oct 2019 13:36:57 +0000 (15:36 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Tue, 19 Nov 2019 08:27:22 +0000 (03:27 -0500)
Make QP to recognize ray tracing types
 * RayGenShader
 * AnyHitShader
 * ClosestHitShader
 * MissShader
 * IntersectionShader
 * CallableShader

Affects:
 * dEQP-VK.binding_model.descriptorset_random.*

Components: framework, vulkan

VK-GL-CTS issue: 2058, 1995

Change-Id: Idaba22c1fe07e040dbdcc143db2c9a5e52f2ae01

framework/opengl/gluShaderProgram.cpp
framework/qphelper/qpTestLog.c
framework/qphelper/qpTestLog.h

index a11814d744e21c0e03793c9a456a00db692c5868..87f02be921cd6126c309398f3e7f65fa8850513d 100644 (file)
@@ -588,12 +588,12 @@ qpShaderType getLogShaderType (ShaderType shaderType)
                QP_SHADER_TYPE_TESS_CONTROL,
                QP_SHADER_TYPE_TESS_EVALUATION,
                QP_SHADER_TYPE_COMPUTE,
-               QP_SHADER_TYPE_LAST,
-               QP_SHADER_TYPE_LAST,
-               QP_SHADER_TYPE_LAST,
-               QP_SHADER_TYPE_LAST,
-               QP_SHADER_TYPE_LAST,
-               QP_SHADER_TYPE_LAST
+               QP_SHADER_TYPE_RAYGEN,
+               QP_SHADER_TYPE_ANY_HIT,
+               QP_SHADER_TYPE_CLOSEST_HIT,
+               QP_SHADER_TYPE_MISS,
+               QP_SHADER_TYPE_INTERSECTION,
+               QP_SHADER_TYPE_CALLABLE,
        };
        DE_STATIC_ASSERT(DE_LENGTH_OF_ARRAY(s_typeMap) == SHADERTYPE_LAST);
        DE_ASSERT(de::inBounds<int>(shaderType, 0, DE_LENGTH_OF_ARRAY(s_typeMap)));
@@ -639,12 +639,12 @@ static void logShaderProgram (tcu::TestLog& log, const ProgramInfo& programInfo,
                        { "TessControlCompileTime",             "Tesselation control shader compile time"               },
                        { "TessEvaluationCompileTime",  "Tesselation evaluation shader compile time"    },
                        { "ComputeCompileTime",                 "Compute shader compile time"                                   },
-                       { "ERROR Unused for GL",                "ERROR Unused for GL"                                                   },
-                       { "ERROR Unused for GL",                "ERROR Unused for GL"                                                   },
-                       { "ERROR Unused for GL",                "ERROR Unused for GL"                                                   },
-                       { "ERROR Unused for GL",                "ERROR Unused for GL"                                                   },
-                       { "ERROR Unused for GL",                "ERROR Unused for GL"                                                   },
-                       { "ERROR Unused for GL",                "ERROR Unused for GL"                                                   },
+                       { "RaygenCompileTime",                  "Raygen shader compile time"                                    },
+                       { "AnyHitCompileTime",                  "Any hit shader compile time"                                   },
+                       { "ClosestHitCompileTime",              "Closest hit shader compile time"                               },
+                       { "MissCompileTime",                    "Miss shader compile time"                                              },
+                       { "IntersectionCompileTime",    "Intersection shader compile time"                              },
+                       { "CallableCompileTime",                "Callable shader compile time"                                  },
                };
                DE_STATIC_ASSERT(DE_LENGTH_OF_ARRAY(s_compileTimeDesc) == SHADERTYPE_LAST);
 
index 58e8a8e9e79667aaf98a58e7f79dcaa4f6301cdd..9a2cb0203e346ab46a5d660e626c270131a6b9a5 100644 (file)
@@ -242,6 +242,12 @@ static const qpKeyStringMap s_qpShaderTypeMap[] =
        { QP_SHADER_TYPE_TESS_CONTROL,          "TessControlShader"             },
        { QP_SHADER_TYPE_TESS_EVALUATION,       "TessEvaluationShader"  },
        { QP_SHADER_TYPE_COMPUTE,                       "ComputeShader"                 },
+       { QP_SHADER_TYPE_RAYGEN,                        "RaygenShader"                  },
+       { QP_SHADER_TYPE_ANY_HIT,                       "AnyHitShader"                  },
+       { QP_SHADER_TYPE_CLOSEST_HIT,           "ClosestHitShader"              },
+       { QP_SHADER_TYPE_MISS,                          "MissShader"                    },
+       { QP_SHADER_TYPE_INTERSECTION,          "IntersectionShader"    },
+       { QP_SHADER_TYPE_CALLABLE,                      "CallableShader"                },
 
        { QP_SHADER_TYPE_LAST,                          DE_NULL                                 }
 };
index 8e2e290fa64a65ea4392b1f94cc077ffe166df29..7c24ed98efb2435ee2a43d8b2e6d28f59881b930 100644 (file)
@@ -146,6 +146,12 @@ typedef enum qpShaderType_e
        QP_SHADER_TYPE_TESS_CONTROL,
        QP_SHADER_TYPE_TESS_EVALUATION,
        QP_SHADER_TYPE_COMPUTE,
+       QP_SHADER_TYPE_RAYGEN,
+       QP_SHADER_TYPE_ANY_HIT,
+       QP_SHADER_TYPE_CLOSEST_HIT,
+       QP_SHADER_TYPE_MISS,
+       QP_SHADER_TYPE_INTERSECTION,
+       QP_SHADER_TYPE_CALLABLE,
 
        QP_SHADER_TYPE_LAST
 } qpShaderType;