Lines Matching refs:ctxInfo

20                    const GrGLContextInfo& ctxInfo,
22 fStandard = ctxInfo.standard();
69 this->init(contextOptions, ctxInfo, glInterface);
73 const GrGLContextInfo& ctxInfo,
75 GrGLStandard standard = ctxInfo.standard();
76 GrGLVersion version = ctxInfo.version();
101 ctxInfo.hasExtension("GL_EXT_unpack_subimage");
102 fUnpackFlipYSupport = ctxInfo.hasExtension("GL_CHROMIUM_flipy");
104 ctxInfo.hasExtension("GL_NV_pack_subimage");
106 ctxInfo.hasExtension("GL_ANGLE_pack_reverse_row_order");
110 ctxInfo.hasExtension("GL_ANGLE_texture_usage");
114 ctxInfo.hasExtension("GL_ARB_texture_barrier") ||
115 ctxInfo.hasExtension("GL_NV_texture_barrier");
117 fTextureBarrierSupport = ctxInfo.hasExtension("GL_NV_texture_barrier");
122 ctxInfo.hasExtension("GL_ARB_texture_multisample");
128 ctxInfo.hasExtension("GL_ARB_imaging");
132 ctxInfo.hasExtension("GL_ARB_invalidate_subdata"))) {
135 } else if (ctxInfo.hasExtension("GL_EXT_discard_framebuffer")) {
146 if (kARM_GrGLVendor == ctxInfo.vendor()) {
151 if (kARM_GrGLVendor == ctxInfo.vendor() ||
152 kImagination_GrGLVendor == ctxInfo.vendor() ||
153 kQualcomm_GrGLVendor == ctxInfo.vendor() ) {
159 ctxInfo.hasExtension("GL_ARB_vertex_array_object") ||
160 ctxInfo.hasExtension("GL_APPLE_vertex_array_object");
163 ctxInfo.hasExtension("GL_OES_vertex_array_object");
167 fDirectStateAccessSupport = ctxInfo.hasExtension("GL_EXT_direct_state_access");
175 fDebugSupport = ctxInfo.hasExtension("GL_KHR_debug");
179 fES2CompatibilitySupport = ctxInfo.hasExtension("GL_ARB_ES2_compatibility");
188 fMultisampleDisableSupport = ctxInfo.hasExtension("GL_EXT_multisample_compatibility");
196 (ctxInfo.hasExtension("GL_ARB_draw_instanced") &&
197 ctxInfo.hasExtension("GL_ARB_instanced_arrays"));
201 (ctxInfo.hasExtension("GL_EXT_draw_instanced") &&
202 ctxInfo.hasExtension("GL_EXT_instanced_arrays"));
210 if (version >= GR_GL_VER(3, 0) && ctxInfo.hasExtension("GL_EXT_blend_func_extended")) {
215 fBindUniformLocationSupport = ctxInfo.hasExtension("GL_CHROMIUM_bind_uniform_location");
218 if (version >= GR_GL_VER(3, 1) || ctxInfo.hasExtension("GL_ARB_texture_rectangle")) {
221 if (ctxInfo.glslGeneration() >= k140_GrGLSLGeneration) {
232 if (version >= GR_GL_VER(3,3) || ctxInfo.hasExtension("GL_ARB_texture_swizzle")) {
251 bool isANGLE = kANGLE_GrGLDriver == ctxInfo.driver() ||
252 kChromium_GrGLDriver == ctxInfo.driver();
260 bool isMESA = kMesa_GrGLDriver == ctxInfo.driver();
271 if (version >= GR_GL_VER(4,4) || ctxInfo.hasExtension("GL_ARB_clear_texture")) {
274 } else if (ctxInfo.hasExtension("GL_EXT_clear_texture")) {
283 this->initGLSL(ctxInfo, gli);
286 shaderCaps->fPathRenderingSupport = this->hasPathRenderingSupport(ctxInfo, gli);
295 shaderCaps->fDualSourceBlendingSupport = (ctxInfo.version() >= GR_GL_VER(3, 3) ||
296 ctxInfo.hasExtension("GL_ARB_blend_func_extended")) &&
297 GrGLSLSupportsNamedFragmentShaderOutputs(ctxInfo.glslGeneration());
302 shaderCaps->fGeometryShaderSupport = ctxInfo.version() >= GR_GL_VER(3, 2) &&
303 ctxInfo.glslGeneration() >= k150_GrGLSLGeneration;
305 if (ctxInfo.glslGeneration() >= k400_GrGLSLGeneration) {
307 } else if (ctxInfo.hasExtension("GL_ARB_gpu_shader5")) {
313 shaderCaps->fIntegerSupport = ctxInfo.version() >= GR_GL_VER(3, 0) &&
314 ctxInfo.glslGeneration() >= k130_GrGLSLGeneration;
316 shaderCaps->fDualSourceBlendingSupport = ctxInfo.hasExtension("GL_EXT_blend_func_extended");
318 shaderCaps->fShaderDerivativeSupport = ctxInfo.version() >= GR_GL_VER(3, 0) ||
319 ctxInfo.hasExtension("GL_OES_standard_derivatives");
323 if (kARM_GrGLVendor != ctxInfo.vendor()) {
324 if (ctxInfo.version() >= GR_GL_VER(3,2)) {
326 } else if (ctxInfo.hasExtension("GL_EXT_geometry_shader")) {
333 shaderCaps->fIntegerSupport = ctxInfo.version() >= GR_GL_VER(3, 0) &&
334 ctxInfo.glslGeneration() >= k330_GrGLSLGeneration; // We use this value for GLSL ES 3.0.
352 switch (ctxInfo.vendor()) {
361 if (kPowerVRRogue_GrGLRenderer == ctxInfo.renderer()) {
381 (kARM_GrGLVendor == ctxInfo.vendor() ||
382 kImagination_GrGLVendor == ctxInfo.vendor() ||
383 kQualcomm_GrGLVendor == ctxInfo.vendor())) {
389 this->initFSAASupport(contextOptions, ctxInfo, gli);
390 this->initStencilSupport(ctxInfo);
394 if (kGL_GrGLStandard != ctxInfo.standard()) {
395 if (ctxInfo.version() >= GR_GL_VER(3, 0)) {
399 } else if (ctxInfo.hasExtension("GL_CHROMIUM_framebuffer_multisample") ||
400 ctxInfo.hasExtension("GL_ANGLE_framebuffer_blit")) {
411 ctxInfo.version() >= GR_GL_VER(3,0) ||
412 ctxInfo.hasExtension("GL_ARB_framebuffer_object") ||
413 ctxInfo.hasExtension("GL_EXT_framebuffer_blit")) {
418 this->initBlendEqationSupport(ctxInfo);
423 if (version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_ARB_map_buffer_range")) {
432 if (ctxInfo.hasExtension("GL_CHROMIUM_map_sub")) {
435 } else if (version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_EXT_map_buffer_range")) {
438 } else if (ctxInfo.hasExtension("GL_OES_mapbuffer")) {
445 if (version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_ARB_pixel_buffer_object")) {
450 (ctxInfo.hasExtension("GL_NV_pixel_buffer_object") &&
452 ctxInfo.hasExtension("GL_EXT_unpack_subimage"))) {
455 // } else if (ctxInfo.hasExtension("GL_CHROMIUM_pixel_transfer_buffer_object")) {
467 fBufferMapThreshold = kChromium_GrGLDriver == ctxInfo.driver() ? 0 : SK_MaxS32;
479 fNPOTTextureTileSupport = ctxInfo.version() >= GR_GL_VER(3,0) ||
480 ctxInfo.hasExtension("GL_OES_texture_npot");
485 fMipMapSupport = fNPOTTextureTileSupport || ctxInfo.hasExtension("GL_IMG_texture_npot");
494 fGpuTracingSupport = ctxInfo.hasExtension("GL_EXT_debug_marker");
497 fReuseScratchTextures = kARM_GrGLVendor != ctxInfo.vendor();
500 fReuseScratchBuffers = kARM_GrGLVendor != ctxInfo.vendor() &&
501 kQualcomm_GrGLVendor != ctxInfo.vendor();
504 if (ctxInfo.hasExtension("GL_EXT_window_rectangles")) {
513 if (kChromium_GrGLDriver == ctxInfo.driver()) {
519 if (ctxInfo.version() >= GR_GL_VER(3, 0) ||
520 ctxInfo.hasExtension("GL_ARB_framebuffer_object")) {
523 SkASSERT(ctxInfo.hasExtension("GL_EXT_framebuffer_object"));
527 fOversizedStencilSupport = ctxInfo.version() >= GR_GL_VER(3, 0);
532 ctxInfo.hasExtension("GL_ARB_draw_indirect");
537 ctxInfo.hasExtension("GL_ARB_multi_draw_indirect"));
542 ctxInfo.hasExtension("GL_EXT_multi_draw_indirect");
544 ctxInfo.hasExtension("GL_EXT_base_instance");
549 if ((version >= GR_GL_VER(4, 0) || ctxInfo.hasExtension("GL_ARB_sample_shading"))) {
552 } else if (ctxInfo.hasExtension("GL_OES_sample_shading")) {
558 if (version >= GR_GL_VER(3, 2) || ctxInfo.hasExtension("GL_ARB_sync")) {
561 } else if (version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_APPLE_sync")) {
568 fSRGBDecodeDisableSupport = ctxInfo.hasExtension("GL_EXT_texture_sRGB_decode");
571 kChromium_GrGLDriver != ctxInfo.driver();
583 this->initConfigTable(contextOptions, ctxInfo, gli, shaderCaps);
586 this->applyDriverCorrectnessWorkarounds(ctxInfo, contextOptions, shaderCaps);
657 bool is_float_fp32(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli, GrGLenum precision) {
658 if (kGLES_GrGLStandard != ctxInfo.standard() &&
659 ctxInfo.version() < GR_GL_VER(4,1) &&
660 !ctxInfo.hasExtension("GL_ARB_ES2_compatibility")) {
677 void GrGLCaps::initGLSL(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) {
678 GrGLStandard standard = ctxInfo.standard();
679 GrGLVersion version = ctxInfo.version();
686 shaderCaps->fGLSLGeneration = ctxInfo.glslGeneration();
688 if (ctxInfo.hasExtension("GL_EXT_shader_framebuffer_fetch")) {
694 else if (ctxInfo.hasExtension("GL_NV_shader_framebuffer_fetch")) {
701 else if (ctxInfo.hasExtension("GL_ARM_shader_framebuffer_fetch")) {
711 shaderCaps->fBindlessTextureSupport = ctxInfo.hasExtension("GL_NV_bindless_texture");
714 shaderCaps->fFlatInterpolationSupport = ctxInfo.glslGeneration() >= k130_GrGLSLGeneration;
717 ctxInfo.glslGeneration() >= k330_GrGLSLGeneration; // This is the value for GLSL ES 3.0.
721 kQualcomm_GrGLVendor != ctxInfo.vendor();
724 ctxInfo.glslGeneration() >= k130_GrGLSLGeneration;
726 if (ctxInfo.hasExtension("GL_NV_shader_noperspective_interpolation")) {
735 ctxInfo.glslGeneration() >= k400_GrGLSLGeneration;
737 if (ctxInfo.glslGeneration() >= k320es_GrGLSLGeneration) {
739 } else if (ctxInfo.hasExtension("GL_OES_shader_multisample_interpolation")) {
747 shaderCaps->fSampleVariablesSupport = ctxInfo.glslGeneration() >= k400_GrGLSLGeneration;
749 if (ctxInfo.glslGeneration() >= k320es_GrGLSLGeneration) {
751 } else if (ctxInfo.hasExtension("GL_OES_sample_variables")) {
758 ctxInfo.hasExtension("GL_NV_sample_mask_override_coverage")) {
772 (ctxInfo.glslGeneration() >= k150_GrGLSLGeneration ||
773 ctxInfo.hasExtension("GL_ARB_fragment_coord_conventions"))) {
781 if (ctxInfo.hasExtension("GL_OES_EGL_image_external")) {
782 if (ctxInfo.glslGeneration() == k110_GrGLSLGeneration) {
784 } else if (ctxInfo.hasExtension("GL_OES_EGL_image_external_essl3") ||
785 ctxInfo.hasExtension("OES_EGL_image_external_essl3")) {
792 if (ctxInfo.glslGeneration() == k110_GrGLSLGeneration) {
800 shaderCaps->fTexelFetchSupport = ctxInfo.glslGeneration() >= k130_GrGLSLGeneration;
803 ctxInfo.glslGeneration() >= k330_GrGLSLGeneration; // We use this value for GLSL ES 3.0.
808 shaderCaps->fTexelBufferSupport = ctxInfo.version() >= GR_GL_VER(3, 1) &&
809 ctxInfo.glslGeneration() >= k330_GrGLSLGeneration;
811 if (ctxInfo.version() >= GR_GL_VER(3, 2) &&
812 ctxInfo.glslGeneration() >= k320es_GrGLSLGeneration) {
814 } else if (ctxInfo.hasExtension("GL_OES_texture_buffer")) {
817 } else if (ctxInfo.hasExtension("GL_EXT_texture_buffer")) {
828 shaderCaps->fVertexIDSupport = ctxInfo.glslGeneration() >= k330_GrGLSLGeneration;
831 shaderCaps->fFloatIs32Bits = is_float_fp32(ctxInfo, gli, GR_GL_HIGH_FLOAT);
832 shaderCaps->fHalfIs32Bits = is_float_fp32(ctxInfo, gli, GR_GL_MEDIUM_FLOAT);
835 bool GrGLCaps::hasPathRenderingSupport(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) {
836 bool hasChromiumPathRendering = ctxInfo.hasExtension("GL_CHROMIUM_path_rendering");
838 if (!(ctxInfo.hasExtension("GL_NV_path_rendering") || hasChromiumPathRendering)) {
842 if (kGL_GrGLStandard == ctxInfo.standard()) {
843 if (ctxInfo.version() < GR_GL_VER(4, 3) &&
844 !ctxInfo.hasExtension("GL_ARB_program_interface_query")) {
849 ctxInfo.version() < GR_GL_VER(3, 1)) {
950 void GrGLCaps::initFSAASupport(const GrContextOptions& contextOptions, const GrGLContextInfo& ctxInfo,
962 fUsesMixedSamples = ctxInfo.hasExtension("GL_NV_framebuffer_mixed_samples") ||
963 ctxInfo.hasExtension("GL_CHROMIUM_framebuffer_mixed_samples");
966 if (kGL_GrGLStandard != ctxInfo.standard()) {
967 if (ctxInfo.version() >= GR_GL_VER(3,0) &&
968 ctxInfo.renderer() != kGalliumLLVM_GrGLRenderer) {
975 if (ctxInfo.hasExtension("GL_EXT_multisampled_render_to_texture")) {
977 } else if (ctxInfo.hasExtension("GL_IMG_multisampled_render_to_texture")) {
981 } else if (ctxInfo.version() >= GR_GL_VER(3,0)) {
983 } else if (ctxInfo.hasExtension("GL_CHROMIUM_framebuffer_multisample")) {
985 } else if (ctxInfo.hasExtension("GL_ANGLE_framebuffer_multisample")) {
987 } else if (ctxInfo.hasExtension("GL_APPLE_framebuffer_multisample")) {
993 } else if (ctxInfo.version() >= GR_GL_VER(3,0) ||
994 ctxInfo.hasExtension("GL_ARB_framebuffer_object")) {
997 if (!fIsCoreProfile && ctxInfo.renderer() != kOSMesa_GrGLRenderer) {
1004 } else if (ctxInfo.hasExtension("GL_EXT_framebuffer_multisample") &&
1005 ctxInfo.hasExtension("GL_EXT_framebuffer_blit")) {
1011 if (kIntel_GrGLVendor == ctxInfo.vendor()) {
1016 if (fUsesMixedSamples && ctxInfo.hasExtension("GL_EXT_raster_multisample")) {
1021 void GrGLCaps::initBlendEqationSupport(const GrGLContextInfo& ctxInfo) {
1030 if (ctxInfo.hasExtension("GL_NV_blend_equation_advanced_coherent")) {
1033 } else if (ctxInfo.hasExtension("GL_KHR_blend_equation_advanced_coherent") &&
1037 } else if (ctxInfo.hasExtension("GL_NV_blend_equation_advanced")) {
1040 } else if (ctxInfo.hasExtension("GL_KHR_blend_equation_advanced") && layoutQualifierSupport) {
1052 void GrGLCaps::initStencilSupport(const GrGLContextInfo& ctxInfo) {
1069 if (kGL_GrGLStandard == ctxInfo.standard()) {
1071 ctxInfo.version() >= GR_GL_VER(3,0) ||
1072 ctxInfo.hasExtension("GL_EXT_packed_depth_stencil") ||
1073 ctxInfo.hasExtension("GL_ARB_framebuffer_object");
1094 if (ctxInfo.version() >= GR_GL_VER(3,0) ||
1095 ctxInfo.hasExtension("GL_OES_packed_depth_stencil")) {
1098 if (ctxInfo.hasExtension("GL_OES_stencil4")) {
1277 const GrGLContextInfo& ctxInfo, const GrGLInterface* gli,
1359 disableTextureRedForMesa = kOSMesa_GrGLRenderer == ctxInfo.renderer();
1363 if (kPowerVRRogue_GrGLRenderer == ctxInfo.renderer()) {
1370 disableSRGBWriteControlForAdreno4xx = kAdreno4xx_GrGLRenderer == ctxInfo.renderer();
1375 disableR8TexStorageForANGLEGL = GrGLANGLEBackend::kOpenGL == ctxInfo.angleBackend();
1379 disableSRGBRenderWithMSAAForMacAMD = kATI_GrGLVendor == ctxInfo.vendor();
1389 GrGLStandard standard = ctxInfo.standard();
1390 GrGLVersion version = ctxInfo.version();
1396 ctxInfo.hasExtension("GL_ARB_texture_storage") ||
1397 ctxInfo.hasExtension("GL_EXT_texture_storage");
1400 ctxInfo.hasExtension("GL_EXT_texture_storage");
1410 version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_ARB_texture_rg");
1413 version >= GR_GL_VER(3, 0) || ctxInfo.hasExtension("GL_EXT_texture_rg");
1435 if (version >= GR_GL_VER(3,0) || ctxInfo.hasExtension("GL_OES_rgb8_rgba8") ||
1436 ctxInfo.hasExtension("GL_ARM_rgba8")) {
1461 if (version >= GR_GL_VER(1, 2) || ctxInfo.hasExtension("GL_EXT_bgra")) {
1471 if (ctxInfo.hasExtension("GL_EXT_texture_format_BGRA8888")) {
1475 if (ctxInfo.hasExtension("GL_EXT_texture_storage")) {
1478 if (ctxInfo.hasExtension("GL_CHROMIUM_renderbuffer_format_BGRA8888") &&
1483 } else if (ctxInfo.hasExtension("GL_APPLE_texture_format_BGRA8888")) {
1507 if (ctxInfo.version() >= GR_GL_VER(3,0)) {
1509 } else if (ctxInfo.hasExtension("GL_EXT_texture_sRGB")) {
1510 if (ctxInfo.hasExtension("GL_ARB_framebuffer_sRGB") ||
1511 ctxInfo.hasExtension("GL_EXT_framebuffer_sRGB")) {
1520 fSRGBSupport = ctxInfo.version() >= GR_GL_VER(3,0) || ctxInfo.hasExtension("GL_EXT_sRGB");
1528 ctxInfo.hasExtension("GL_EXT_sRGB_write_control");
1549 bool isCommandBufferES2 = kChromium_GrGLDriver == ctxInfo.driver() && version < GR_GL_VER(3, 0);
1597 ctxInfo.hasExtension("GL_EXT_texture_integer");
1602 if (ctxInfo.glslGeneration() == k110_GrGLSLGeneration) {
1633 if (version >= GR_GL_VER(4, 2) || ctxInfo.hasExtension("GL_ARB_ES2_compatibility")) {
1741 ctxInfo.renderer() != kOSMesa_GrGLRenderer)) {
1787 if (ctxInfo.hasExtension("GL_OES_texture_float_linear") &&
1788 ctxInfo.hasExtension("GL_OES_texture_float")) {
1791 if (ctxInfo.hasExtension("GL_OES_texture_half_float_linear") &&
1792 ctxInfo.hasExtension("GL_OES_texture_half_float")) {
1811 ctxInfo.hasExtension("GL_EXT_color_buffer_float")*/) {
1825 if (kGL_GrGLStandard == ctxInfo.standard() || ctxInfo.version() >= GR_GL_VER(3, 0)) {
1841 (textureRedSupport && ctxInfo.hasExtension("GL_EXT_color_buffer_half_float"))) {
1859 if (kGL_GrGLStandard == ctxInfo.standard() || ctxInfo.version() >= GR_GL_VER(3, 0)) {
1869 ctxInfo.hasExtension("GL_EXT_color_buffer_half_float")) {
1884 bool useSizedTexFormats = (kGL_GrGLStandard == ctxInfo.standard() ||
1885 ctxInfo.version() >= GR_GL_VER(3,0));
1888 bool useSizedRbFormats = kGLES_GrGLStandard == ctxInfo.standard();
1906 if (useSizedTexFormats && kGLES_GrGLStandard == ctxInfo.standard() && !textureRedSupport) {
1920 if (ctxInfo.standard() == kGLES_GrGLStandard && ctxInfo.version() == GR_GL_VER(2,0)) {
1969 if ((kGL_GrGLStandard == ctxInfo.standard() &&
1970 (ctxInfo.version() >= GR_GL_VER(4,2) ||
1971 ctxInfo.hasExtension("GL_ARB_internalformat_query"))) ||
1972 (kGLES_GrGLStandard == ctxInfo.standard() && ctxInfo.version() >= GR_GL_VER(3,0))) {
2133 void GrGLCaps::applyDriverCorrectnessWorkarounds(const GrGLContextInfo& ctxInfo,
2138 if (kAdreno4xx_GrGLRenderer == ctxInfo.renderer()) {
2145 if (kGL_GrGLStandard == ctxInfo.standard() &&
2146 ctxInfo.driver() == kNVIDIA_GrGLDriver &&
2147 ctxInfo.driverVersion() < GR_GL_DRIVER_VER(367, 57)) {
2152 if (kPowerVRRogue_GrGLRenderer == ctxInfo.renderer()) {
2165 if (kQualcomm_GrGLDriver == ctxInfo.driver() &&
2166 ctxInfo.driverVersion() < GR_GL_DRIVER_VER(127,0)) {
2182 if (ctxInfo.renderer() == kAdreno3xx_GrGLRenderer &&
2183 ctxInfo.driverVersion() > GR_GL_DRIVER_VER(127, 0)) {
2189 if (kANGLE_GrGLDriver == ctxInfo.driver()) {
2194 if (kPowerVR54x_GrGLRenderer == ctxInfo.renderer()) {
2198 if (kPowerVRRogue_GrGLRenderer == ctxInfo.renderer()) {
2206 if (kPowerVR54x_GrGLRenderer == ctxInfo.renderer() ||
2207 kPowerVRRogue_GrGLRenderer == ctxInfo.renderer() ||
2208 (kAdreno3xx_GrGLRenderer == ctxInfo.renderer() &&
2209 ctxInfo.driver() != kChromium_GrGLDriver)) {
2215 if (kAMDRadeonHD7xxx_GrGLRenderer == ctxInfo.renderer() ||
2216 kAMDRadeonR9M4xx_GrGLRenderer == ctxInfo.renderer()) {
2225 if (kIntel_GrGLVendor == ctxInfo.vendor()) {
2234 if (GrGLANGLEBackend::kD3D11 == ctxInfo.angleBackend()) {
2238 if (kAdreno4xx_GrGLRenderer == ctxInfo.renderer()) {
2240 if (ctxInfo.driverVersion() <= GR_GL_DRIVER_VER(219, 0)) {
2254 if (kAdreno3xx_GrGLRenderer == ctxInfo.renderer() &&
2255 ctxInfo.driverVersion() > GR_GL_DRIVER_VER(53, 0)) {
2261 if (kPowerVRRogue_GrGLRenderer == ctxInfo.renderer()) {
2266 if (kTegra3_GrGLRenderer == ctxInfo.renderer()) {
2271 if (kGL_GrGLStandard == ctxInfo.standard() && kIntel_GrGLVendor == ctxInfo.vendor() ) {
2287 (kIntel_GrGLVendor == ctxInfo.vendor()) ||
2288 (kNVIDIA_GrGLDriver == ctxInfo.driver() && isMAC) ||
2289 (kATI_GrGLVendor == ctxInfo.vendor()))) {
2295 if (kIntel6xxx_GrGLRenderer == ctxInfo.renderer()) {
2299 if (kQualcomm_GrGLVendor == ctxInfo.vendor()) {
2306 if (kANGLE_GrGLRenderer == ctxInfo.renderer() &&
2307 GrGLANGLERenderer::kSkylake == ctxInfo.angleRenderer()) {
2317 if (kAdreno5xx_GrGLRenderer == ctxInfo.renderer()) {
2322 if (kNVIDIA_GrGLDriver == ctxInfo.driver() &&
2323 ctxInfo.driverVersion() < GR_GL_DRIVER_VER(361,00)) {
2328 shaderCaps->fDropsTileOnZeroDivide = kQualcomm_GrGLVendor == ctxInfo.vendor();
2335 shaderCaps->fCanUseAnyFunctionInShader = kImagination_GrGLVendor != ctxInfo.vendor();
2339 if (kIntel_GrGLVendor == ctxInfo.vendor()) {
2343 if (kTegra3_GrGLRenderer == ctxInfo.renderer()) {
2355 if (kIntel_GrGLVendor == ctxInfo.vendor()) {
2362 if (kIntel_GrGLVendor == ctxInfo.vendor()) {
2369 if (shaderCaps->fFBFetchSupport && kQualcomm_GrGLVendor == ctxInfo.vendor()) {
2379 if (kMaliT_GrGLRenderer == ctxInfo.renderer()) {
2395 if (kANGLE_GrGLDriver == ctxInfo.driver() || kChromium_GrGLDriver == ctxInfo.driver()) {
2403 if (kAdreno3xx_GrGLRenderer == ctxInfo.renderer()) {
2410 if (kAdreno4xx_GrGLRenderer == ctxInfo.renderer() ||
2411 kAdreno5xx_GrGLRenderer == ctxInfo.renderer() ||
2412 kIntel_GrGLDriver == ctxInfo.driver() ||
2413 kChromium_GrGLDriver == ctxInfo.driver()) {
2419 if (kNVIDIA_GrGLDriver == ctxInfo.driver() &&
2420 ctxInfo.driverVersion() < GR_GL_DRIVER_VER(337,00) &&
2427 if (kNVIDIA_GrGLDriver == ctxInfo.driver() &&
2428 ctxInfo.driverVersion() < GR_GL_DRIVER_VER(355,00)) {
2433 if (kARM_GrGLVendor == ctxInfo.vendor()) {
2447 (kNVIDIA_GrGLDriver == ctxInfo.driver() ||
2448 kChromium_GrGLDriver == ctxInfo.driver())) {