static void test_glprograms_native(skiatest::Reporter* reporter, const sk_gpu_test::ContextInfo& ctxInfo) { int maxStages = get_glprograms_max_stages(ctxInfo.grContext()); if (maxStages == 0) { return; } REPORTER_ASSERT(reporter, GrDrawingManager::ProgramUnitTest(ctxInfo.grContext(), maxStages)); }
static void test_glprograms_other_contexts( skiatest::Reporter* reporter, const sk_gpu_test::ContextInfo& ctxInfo) { int maxStages = get_glprograms_max_stages(ctxInfo.grContext()); #ifdef SK_BUILD_FOR_WIN // Some long shaders run out of temporary registers in the D3D compiler on ANGLE and // command buffer. maxStages = SkTMin(maxStages, 2); #endif if (maxStages == 0) { return; } REPORTER_ASSERT(reporter, GrDrawingManager::ProgramUnitTest(ctxInfo.grContext(), maxStages)); }
static void test_glprograms(skiatest::Reporter* reporter, const sk_gpu_test::ContextInfo& ctxInfo) { int maxStages = get_glprograms_max_stages(ctxInfo); if (maxStages == 0) { return; } int maxLevels = get_glprograms_max_levels(ctxInfo); if (maxLevels == 0) { return; } // Disable this test on ANGLE D3D9 configurations. We keep hitting a D3D compiler bug. // See skbug.com/6842 and anglebug.com/2098 if (sk_gpu_test::GrContextFactory::kANGLE_D3D9_ES2_ContextType == ctxInfo.type()) { return; } REPORTER_ASSERT(reporter, GrDrawingManager::ProgramUnitTest(ctxInfo.grContext(), maxStages, maxLevels)); }