From: Tina Zhou Date: Fri, 20 Jan 2017 18:27:40 +0000 (+0000) Subject: Merge "Fix internal format/type for ES3 3D + depth/stencil negative API tests." into... X-Git-Tag: upstream/0.1.0~445^2~52^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0991459ed144317b4788df123ef5d10d522f6c7a;hp=2ed3a5a66fb924af3d6e0fcddf5bf37527288262;p=platform%2Fupstream%2FVK-GL-CTS.git Merge "Fix internal format/type for ES3 3D + depth/stencil negative API tests." into nougat-cts-dev --- diff --git a/android/cts/master/com.drawelements.deqp.egl.xml b/android/cts/master/com.drawelements.deqp.egl.xml index 82622de..3cf885a 100644 --- a/android/cts/master/com.drawelements.deqp.egl.xml +++ b/android/cts/master/com.drawelements.deqp.egl.xml @@ -7492,9 +7492,15 @@ + + + + + + @@ -7507,6 +7513,9 @@ + + + @@ -7525,6 +7534,9 @@ + + + @@ -7549,6 +7561,9 @@ + + + @@ -7585,6 +7600,15 @@ + + + + + + + + + @@ -7702,6 +7726,12 @@ + + + + + + @@ -7744,9 +7774,15 @@ + + + + + + @@ -7756,9 +7792,15 @@ + + + + + + @@ -7780,6 +7822,9 @@ + + + @@ -7792,9 +7837,15 @@ + + + + + + @@ -7810,9 +7861,15 @@ + + + + + + @@ -7855,6 +7912,9 @@ + + + diff --git a/android/cts/master/egl-master.txt b/android/cts/master/egl-master.txt index a43d137..9485b15 100644 --- a/android/cts/master/egl-master.txt +++ b/android/cts/master/egl-master.txt @@ -2364,17 +2364,21 @@ dEQP-EGL.functional.multithread.pbuffer_context dEQP-EGL.functional.multithread.single_window_context dEQP-EGL.functional.multithread.pbuffer_single_window_context dEQP-EGL.functional.get_proc_address.extension.egl_android_blob_cache +dEQP-EGL.functional.get_proc_address.extension.egl_android_create_native_client_buffer dEQP-EGL.functional.get_proc_address.extension.egl_android_native_fence_sync +dEQP-EGL.functional.get_proc_address.extension.egl_android_presentation_time dEQP-EGL.functional.get_proc_address.extension.egl_angle_query_surface_pointer dEQP-EGL.functional.get_proc_address.extension.egl_ext_device_base dEQP-EGL.functional.get_proc_address.extension.egl_ext_device_enumeration dEQP-EGL.functional.get_proc_address.extension.egl_ext_device_query +dEQP-EGL.functional.get_proc_address.extension.egl_ext_image_dma_buf_import_modifiers dEQP-EGL.functional.get_proc_address.extension.egl_ext_output_base dEQP-EGL.functional.get_proc_address.extension.egl_ext_platform_base dEQP-EGL.functional.get_proc_address.extension.egl_ext_stream_consumer_egloutput dEQP-EGL.functional.get_proc_address.extension.egl_ext_swap_buffers_with_damage dEQP-EGL.functional.get_proc_address.extension.egl_hi_clientpixmap dEQP-EGL.functional.get_proc_address.extension.egl_khr_cl_event2 +dEQP-EGL.functional.get_proc_address.extension.egl_khr_debug dEQP-EGL.functional.get_proc_address.extension.egl_khr_fence_sync dEQP-EGL.functional.get_proc_address.extension.egl_khr_image dEQP-EGL.functional.get_proc_address.extension.egl_khr_image_base @@ -2383,6 +2387,7 @@ dEQP-EGL.functional.get_proc_address.extension.egl_khr_lock_surface3 dEQP-EGL.functional.get_proc_address.extension.egl_khr_partial_update dEQP-EGL.functional.get_proc_address.extension.egl_khr_reusable_sync dEQP-EGL.functional.get_proc_address.extension.egl_khr_stream +dEQP-EGL.functional.get_proc_address.extension.egl_khr_stream_attrib dEQP-EGL.functional.get_proc_address.extension.egl_khr_stream_consumer_gltexture dEQP-EGL.functional.get_proc_address.extension.egl_khr_stream_cross_process_fd dEQP-EGL.functional.get_proc_address.extension.egl_khr_stream_fifo @@ -2395,6 +2400,9 @@ dEQP-EGL.functional.get_proc_address.extension.egl_nok_swap_region dEQP-EGL.functional.get_proc_address.extension.egl_nok_swap_region2 dEQP-EGL.functional.get_proc_address.extension.egl_nv_native_query dEQP-EGL.functional.get_proc_address.extension.egl_nv_post_sub_buffer +dEQP-EGL.functional.get_proc_address.extension.egl_nv_stream_consumer_gltexture_yuv +dEQP-EGL.functional.get_proc_address.extension.egl_nv_stream_metadata +dEQP-EGL.functional.get_proc_address.extension.egl_nv_stream_reset dEQP-EGL.functional.get_proc_address.extension.egl_nv_stream_sync dEQP-EGL.functional.get_proc_address.extension.egl_nv_sync dEQP-EGL.functional.get_proc_address.extension.egl_nv_system_time @@ -2434,6 +2442,8 @@ dEQP-EGL.functional.get_proc_address.extension.gl_angle_framebuffer_multisample dEQP-EGL.functional.get_proc_address.extension.gl_angle_instanced_arrays dEQP-EGL.functional.get_proc_address.extension.gl_angle_translated_shader_source dEQP-EGL.functional.get_proc_address.extension.gl_ext_base_instance +dEQP-EGL.functional.get_proc_address.extension.gl_ext_blend_func_extended +dEQP-EGL.functional.get_proc_address.extension.gl_ext_buffer_storage dEQP-EGL.functional.get_proc_address.extension.gl_ext_copy_image dEQP-EGL.functional.get_proc_address.extension.gl_ext_debug_label dEQP-EGL.functional.get_proc_address.extension.gl_ext_debug_marker @@ -2448,11 +2458,15 @@ dEQP-EGL.functional.get_proc_address.extension.gl_ext_multi_draw_indirect dEQP-EGL.functional.get_proc_address.extension.gl_ext_multiview_draw_buffers dEQP-EGL.functional.get_proc_address.extension.gl_ext_occlusion_query_boolean dEQP-EGL.functional.get_proc_address.extension.gl_ext_primitive_bounding_box +dEQP-EGL.functional.get_proc_address.extension.gl_ext_raster_multisample dEQP-EGL.functional.get_proc_address.extension.gl_ext_separate_shader_objects +dEQP-EGL.functional.get_proc_address.extension.gl_ext_sparse_texture dEQP-EGL.functional.get_proc_address.extension.gl_ext_tessellation_shader dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_border_clamp dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_buffer +dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_filter_minmax dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_view +dEQP-EGL.functional.get_proc_address.extension.gl_intel_framebuffer_cmaa dEQP-EGL.functional.get_proc_address.extension.gl_intel_performance_query dEQP-EGL.functional.get_proc_address.extension.gl_khr_blend_equation_advanced dEQP-EGL.functional.get_proc_address.extension.gl_khr_debug @@ -2460,17 +2474,22 @@ dEQP-EGL.functional.get_proc_address.extension.gl_khr_robustness dEQP-EGL.functional.get_proc_address.extension.gl_nv_bindless_texture dEQP-EGL.functional.get_proc_address.extension.gl_nv_blend_equation_advanced dEQP-EGL.functional.get_proc_address.extension.gl_nv_conditional_render +dEQP-EGL.functional.get_proc_address.extension.gl_nv_conservative_raster dEQP-EGL.functional.get_proc_address.extension.gl_nv_copy_buffer dEQP-EGL.functional.get_proc_address.extension.gl_nv_coverage_sample dEQP-EGL.functional.get_proc_address.extension.gl_nv_draw_buffers dEQP-EGL.functional.get_proc_address.extension.gl_nv_draw_instanced +dEQP-EGL.functional.get_proc_address.extension.gl_nv_fragment_coverage_to_color dEQP-EGL.functional.get_proc_address.extension.gl_nv_framebuffer_blit +dEQP-EGL.functional.get_proc_address.extension.gl_nv_framebuffer_mixed_samples dEQP-EGL.functional.get_proc_address.extension.gl_nv_framebuffer_multisample dEQP-EGL.functional.get_proc_address.extension.gl_nv_instanced_arrays dEQP-EGL.functional.get_proc_address.extension.gl_nv_internalformat_sample_query dEQP-EGL.functional.get_proc_address.extension.gl_nv_non_square_matrices dEQP-EGL.functional.get_proc_address.extension.gl_nv_path_rendering +dEQP-EGL.functional.get_proc_address.extension.gl_nv_polygon_mode dEQP-EGL.functional.get_proc_address.extension.gl_nv_read_buffer +dEQP-EGL.functional.get_proc_address.extension.gl_nv_sample_locations dEQP-EGL.functional.get_proc_address.extension.gl_nv_viewport_array dEQP-EGL.functional.get_proc_address.extension.gl_oes_copy_image dEQP-EGL.functional.get_proc_address.extension.gl_oes_draw_buffers_indexed @@ -2485,6 +2504,7 @@ dEQP-EGL.functional.get_proc_address.extension.gl_oes_texture_border_clamp dEQP-EGL.functional.get_proc_address.extension.gl_oes_texture_buffer dEQP-EGL.functional.get_proc_address.extension.gl_oes_texture_storage_multisample_2d_array dEQP-EGL.functional.get_proc_address.extension.gl_oes_texture_view +dEQP-EGL.functional.get_proc_address.extension.gl_ovr_multiview dEQP-EGL.functional.get_proc_address.extension.gl_qcom_alpha_test dEQP-EGL.functional.get_proc_address.core.egl dEQP-EGL.functional.get_proc_address.core.gles diff --git a/framework/egl/egluCallLogWrapper.inl b/framework/egl/egluCallLogWrapper.inl index fa4f5e7..ee49459 100644 --- a/framework/egl/egluCallLogWrapper.inl +++ b/framework/egl/egluCallLogWrapper.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ eglw::EGLBoolean CallLogWrapper::eglBindAPI (eglw::EGLenum api) diff --git a/framework/egl/egluCallLogWrapperApi.inl b/framework/egl/egluCallLogWrapperApi.inl index ba90ce8..99df24b 100644 --- a/framework/egl/egluCallLogWrapperApi.inl +++ b/framework/egl/egluCallLogWrapperApi.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ eglw::EGLBoolean eglBindAPI (eglw::EGLenum api); eglw::EGLBoolean eglBindTexImage (eglw::EGLDisplay dpy, eglw::EGLSurface surface, eglw::EGLint buffer); diff --git a/framework/egl/egluConfigFilter.cpp b/framework/egl/egluConfigFilter.cpp index c6d06ad..bd1a5c7 100644 --- a/framework/egl/egluConfigFilter.cpp +++ b/framework/egl/egluConfigFilter.cpp @@ -25,6 +25,7 @@ #include "egluUtil.hpp" #include "egluConfigInfo.hpp" #include "eglwEnums.hpp" +#include "deSTLUtil.hpp" #include @@ -55,19 +56,32 @@ int CandidateConfig::get (deUint32 attrib) const if (m_type == TYPE_CONFIG_INFO) return m_cfg.configInfo->getAttribute(attrib); else - return getConfigAttribInt(*m_cfg.object.egl, m_cfg.object.display, m_cfg.object.config, attrib); + { + if (attrib == EGL_COLOR_COMPONENT_TYPE_EXT) + { + const std::vector extensions = getDisplayExtensions(*m_cfg.object.egl, m_cfg.object.display); + + if (de::contains(extensions.begin(), extensions.end(), "EGL_EXT_pixel_format_float")) + return getConfigAttribInt(*m_cfg.object.egl, m_cfg.object.display, m_cfg.object.config, attrib); + else + return EGL_COLOR_COMPONENT_TYPE_FIXED_EXT; + } + else + return getConfigAttribInt(*m_cfg.object.egl, m_cfg.object.display, m_cfg.object.config, attrib); + } } -int CandidateConfig::id (void) const { return get(EGL_CONFIG_ID); } -int CandidateConfig::redSize (void) const { return get(EGL_RED_SIZE); } -int CandidateConfig::greenSize (void) const { return get(EGL_GREEN_SIZE); } -int CandidateConfig::blueSize (void) const { return get(EGL_BLUE_SIZE); } -int CandidateConfig::alphaSize (void) const { return get(EGL_ALPHA_SIZE); } -int CandidateConfig::depthSize (void) const { return get(EGL_DEPTH_SIZE); } -int CandidateConfig::stencilSize (void) const { return get(EGL_STENCIL_SIZE); } -int CandidateConfig::samples (void) const { return get(EGL_SAMPLES); } -deUint32 CandidateConfig::renderableType (void) const { return (deUint32)get(EGL_RENDERABLE_TYPE); } -deUint32 CandidateConfig::surfaceType (void) const { return (deUint32)get(EGL_SURFACE_TYPE); } +int CandidateConfig::id (void) const { return get(EGL_CONFIG_ID); } +int CandidateConfig::redSize (void) const { return get(EGL_RED_SIZE); } +int CandidateConfig::greenSize (void) const { return get(EGL_GREEN_SIZE); } +int CandidateConfig::blueSize (void) const { return get(EGL_BLUE_SIZE); } +int CandidateConfig::alphaSize (void) const { return get(EGL_ALPHA_SIZE); } +int CandidateConfig::depthSize (void) const { return get(EGL_DEPTH_SIZE); } +int CandidateConfig::stencilSize (void) const { return get(EGL_STENCIL_SIZE); } +int CandidateConfig::samples (void) const { return get(EGL_SAMPLES); } +deUint32 CandidateConfig::renderableType (void) const { return (deUint32)get(EGL_RENDERABLE_TYPE); } +deUint32 CandidateConfig::surfaceType (void) const { return (deUint32)get(EGL_SURFACE_TYPE); } +deUint32 CandidateConfig::colorComponentType (void) const { return (deUint32)get(EGL_COLOR_COMPONENT_TYPE_EXT); } FilterList& FilterList::operator<< (ConfigFilter filter) { diff --git a/framework/egl/egluConfigFilter.hpp b/framework/egl/egluConfigFilter.hpp index 2f316fe..baddad5 100644 --- a/framework/egl/egluConfigFilter.hpp +++ b/framework/egl/egluConfigFilter.hpp @@ -59,6 +59,7 @@ public: deUint32 renderableType (void) const; deUint32 surfaceType (void) const; + deUint32 colorComponentType (void) const; tcu::RGBA colorBits (void) const { return tcu::RGBA(redSize(), greenSize(), blueSize(), alphaSize()); } diff --git a/framework/egl/egluConfigInfo.cpp b/framework/egl/egluConfigInfo.cpp index aed08f3..ab6081c 100644 --- a/framework/egl/egluConfigInfo.cpp +++ b/framework/egl/egluConfigInfo.cpp @@ -77,6 +77,9 @@ deInt32 ConfigInfo::getAttribute (deUint32 attribute) const case EGL_YUV_CSC_STANDARD_EXT: return yuvCscStandard; case EGL_YUV_PLANE_BPP_EXT: return yuvPlaneBpp; + // EGL_EXT_pixel_format_float + case EGL_COLOR_COMPONENT_TYPE_EXT: return colorComponentType; + default: TCU_THROW(InternalError, "Unknown attribute"); } } @@ -132,6 +135,15 @@ void queryExtConfigInfo (const eglw::Library& egl, eglw::EGLDisplay display, egl EGLU_CHECK_MSG(egl, "Failed to query EGL_EXT_yuv_surface config attribs"); } + + if (de::contains(extensions.begin(), extensions.end(), "EGL_EXT_pixel_format_float")) + { + egl.getConfigAttrib(display, config, EGL_COLOR_COMPONENT_TYPE_EXT, (EGLint*)&dst->colorComponentType); + + EGLU_CHECK_MSG(egl, "Failed to query EGL_EXT_pixel_format_float config attribs"); + } + else + dst->colorComponentType = EGL_COLOR_COMPONENT_TYPE_FIXED_EXT; } } // eglu diff --git a/framework/egl/egluConfigInfo.hpp b/framework/egl/egluConfigInfo.hpp index 356c50a..2c0ae24 100644 --- a/framework/egl/egluConfigInfo.hpp +++ b/framework/egl/egluConfigInfo.hpp @@ -81,6 +81,9 @@ public: deUint32 yuvCscStandard; deInt32 yuvPlaneBpp; + // EGL_EXT_pixel_format_float + deUint32 colorComponentType; + ConfigInfo (void) : bufferSize (0) , redSize (0) @@ -119,6 +122,7 @@ public: , yuvDepthRange (EGL_NONE) , yuvCscStandard (EGL_NONE) , yuvPlaneBpp (EGL_YUV_PLANE_BPP_0_EXT) + , colorComponentType (EGL_NONE) { } diff --git a/framework/egl/egluStrUtil.inl b/framework/egl/egluStrUtil.inl index aab161d..d01e55b 100644 --- a/framework/egl/egluStrUtil.inl +++ b/framework/egl/egluStrUtil.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ const char* getBooleanName (int value) @@ -159,6 +159,16 @@ const char* getYuvPlaneBppName (int value) } } +const char* getColorComponentTypeName (int value) +{ + switch (value) + { + case EGL_COLOR_COMPONENT_TYPE_FIXED_EXT: return "EGL_COLOR_COMPONENT_TYPE_FIXED_EXT"; + case EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT: return "EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT"; + default: return DE_NULL; + } +} + const char* getSurfaceTargetName (int value) { switch (value) diff --git a/framework/egl/egluStrUtilPrototypes.inl b/framework/egl/egluStrUtilPrototypes.inl index 7ceac62..839837f 100644 --- a/framework/egl/egluStrUtilPrototypes.inl +++ b/framework/egl/egluStrUtilPrototypes.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ const char* getBooleanName (int value); const char* getBoolDontCareName (int value); @@ -12,6 +12,7 @@ const char* getConfigAttribName (int value); const char* getSurfaceAttribName (int value); const char* getYuvOrderName (int value); const char* getYuvPlaneBppName (int value); +const char* getColorComponentTypeName (int value); const char* getSurfaceTargetName (int value); const char* getColorBufferTypeName (int value); const char* getConfigCaveatName (int value); @@ -34,6 +35,7 @@ inline tcu::Format::Enum getConfigAttribStr (int value) { return tcu: inline tcu::Format::Enum getSurfaceAttribStr (int value) { return tcu::Format::Enum(getSurfaceAttribName, value); } inline tcu::Format::Enum getYuvOrderStr (int value) { return tcu::Format::Enum(getYuvOrderName, value); } inline tcu::Format::Enum getYuvPlaneBppStr (int value) { return tcu::Format::Enum(getYuvPlaneBppName, value); } +inline tcu::Format::Enum getColorComponentTypeStr (int value) { return tcu::Format::Enum(getColorComponentTypeName, value); } inline tcu::Format::Enum getSurfaceTargetStr (int value) { return tcu::Format::Enum(getSurfaceTargetName, value); } inline tcu::Format::Enum getColorBufferTypeStr (int value) { return tcu::Format::Enum(getColorBufferTypeName, value); } inline tcu::Format::Enum getConfigCaveatStr (int value) { return tcu::Format::Enum(getConfigCaveatName, value); } diff --git a/framework/egl/wrapper/eglwEnums.inl b/framework/egl/wrapper/eglwEnums.inl index 2e8a460..5f1dcaa 100644 --- a/framework/egl/wrapper/eglwEnums.inl +++ b/framework/egl/wrapper/eglwEnums.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ #define EGL_PBUFFER_BIT 0x0001 #define EGL_PIXMAP_BIT 0x0002 @@ -176,7 +176,6 @@ #define EGL_GL_TEXTURE_ZOFFSET 0x30BD #define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD #define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF -#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF #define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0 #define EGL_FORMAT_RGB_565_KHR 0x30C1 #define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2 @@ -227,6 +226,7 @@ #define EGL_NATIVE_BUFFER_ANDROID 0x3140 #define EGL_CONTEXT_OPENGL_DEBUG 0x31B0 #define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1 +#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2 #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD #define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD #define EGL_NO_RESET_NOTIFICATION 0x31BE @@ -262,3 +262,6 @@ #define EGL_YUV_PLANE_BPP_0_EXT 0x331B #define EGL_YUV_PLANE_BPP_8_EXT 0x331C #define EGL_YUV_PLANE_BPP_10_EXT 0x331D +#define EGL_COLOR_COMPONENT_TYPE_EXT 0x3339 +#define EGL_COLOR_COMPONENT_TYPE_FIXED_EXT 0x333A +#define EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT 0x333B diff --git a/framework/egl/wrapper/eglwFuncPtrLibraryDecl.inl b/framework/egl/wrapper/eglwFuncPtrLibraryDecl.inl index b65985c..e7d1327 100644 --- a/framework/egl/wrapper/eglwFuncPtrLibraryDecl.inl +++ b/framework/egl/wrapper/eglwFuncPtrLibraryDecl.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ EGLBoolean bindAPI (EGLenum api) const; EGLBoolean bindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer) const; diff --git a/framework/egl/wrapper/eglwFuncPtrLibraryImpl.inl b/framework/egl/wrapper/eglwFuncPtrLibraryImpl.inl index 007b950..1678c71 100644 --- a/framework/egl/wrapper/eglwFuncPtrLibraryImpl.inl +++ b/framework/egl/wrapper/eglwFuncPtrLibraryImpl.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ EGLBoolean FuncPtrLibrary::bindAPI (EGLenum api) const diff --git a/framework/egl/wrapper/eglwFunctionTypes.inl b/framework/egl/wrapper/eglwFunctionTypes.inl index e02039a..d57105e 100644 --- a/framework/egl/wrapper/eglwFunctionTypes.inl +++ b/framework/egl/wrapper/eglwFunctionTypes.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ typedef EGLW_APICALL EGLBoolean (EGLW_APIENTRY* eglBindAPIFunc) (EGLenum api); typedef EGLW_APICALL EGLBoolean (EGLW_APIENTRY* eglBindTexImageFunc) (EGLDisplay dpy, EGLSurface surface, EGLint buffer); diff --git a/framework/egl/wrapper/eglwFunctions.inl b/framework/egl/wrapper/eglwFunctions.inl index 3ea39ba..af0d1b2 100644 --- a/framework/egl/wrapper/eglwFunctions.inl +++ b/framework/egl/wrapper/eglwFunctions.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ eglBindAPIFunc bindAPI; eglBindTexImageFunc bindTexImage; diff --git a/framework/egl/wrapper/eglwInitCore.inl b/framework/egl/wrapper/eglwInitCore.inl index 563cfbd..15f941d 100644 --- a/framework/egl/wrapper/eglwInitCore.inl +++ b/framework/egl/wrapper/eglwInitCore.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ dst->bindAPI = (eglBindAPIFunc) loader->get("eglBindAPI"); dst->bindTexImage = (eglBindTexImageFunc) loader->get("eglBindTexImage"); diff --git a/framework/egl/wrapper/eglwInitExtensions.inl b/framework/egl/wrapper/eglwInitExtensions.inl index 9488633..90d00a1 100644 --- a/framework/egl/wrapper/eglwInitExtensions.inl +++ b/framework/egl/wrapper/eglwInitExtensions.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ dst->clientWaitSyncKHR = (eglClientWaitSyncKHRFunc) loader->get("eglClientWaitSyncKHR"); dst->createImageKHR = (eglCreateImageKHRFunc) loader->get("eglCreateImageKHR"); diff --git a/framework/egl/wrapper/eglwLibrary.inl b/framework/egl/wrapper/eglwLibrary.inl index d46e459..a3d617d 100644 --- a/framework/egl/wrapper/eglwLibrary.inl +++ b/framework/egl/wrapper/eglwLibrary.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ virtual EGLBoolean bindAPI (EGLenum api) const = 0; virtual EGLBoolean bindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer) const = 0; diff --git a/framework/egl/wrapper/eglwStaticLibrary14.inl b/framework/egl/wrapper/eglwStaticLibrary14.inl index 0a02afc..22a2c5c 100644 --- a/framework/egl/wrapper/eglwStaticLibrary14.inl +++ b/framework/egl/wrapper/eglwStaticLibrary14.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ { "eglBindAPI", (deFunctionPtr)eglBindAPI }, { "eglBindTexImage", (deFunctionPtr)eglBindTexImage }, diff --git a/framework/egl/wrapper/eglwStaticLibrary15.inl b/framework/egl/wrapper/eglwStaticLibrary15.inl index 4ffe3e6..a44c589 100644 --- a/framework/egl/wrapper/eglwStaticLibrary15.inl +++ b/framework/egl/wrapper/eglwStaticLibrary15.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ { "eglBindAPI", (deFunctionPtr)eglBindAPI }, { "eglBindTexImage", (deFunctionPtr)eglBindTexImage }, diff --git a/modules/egl/teglChooseConfigReference.cpp b/modules/egl/teglChooseConfigReference.cpp index 50a2769..aab0156 100644 --- a/modules/egl/teglChooseConfigReference.cpp +++ b/modules/egl/teglChooseConfigReference.cpp @@ -142,6 +142,17 @@ private: } } + static int getColorComponentTypeRank (EGLenum compType) + { + switch (compType) + { + case EGL_COLOR_COMPONENT_TYPE_FIXED_EXT: return 0; + case EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT: return 1; + default: + TCU_THROW(TestError, (std::string("Unknown color component type: ") + eglu::getColorComponentTypeStr(compType).toString()).c_str()); + } + } + typedef bool (*CompareFunc) (const SurfaceConfig& a, const SurfaceConfig& b); static bool compareCaveat (const SurfaceConfig& a, const SurfaceConfig& b) @@ -159,6 +170,11 @@ private: return getYuvOrderRank((EGLenum)a.m_info.yuvOrder) < getYuvOrderRank((EGLenum)b.m_info.yuvOrder); } + static bool compareColorComponentType (const SurfaceConfig& a, const SurfaceConfig& b) + { + return getColorComponentTypeRank((EGLenum)a.m_info.colorComponentType) < getColorComponentTypeRank((EGLenum)b.m_info.colorComponentType); + } + static bool compareColorBufferBits (const SurfaceConfig& a, const SurfaceConfig& b, const tcu::BVec4& specifiedRGBColors, const tcu::BVec2& specifiedLuminanceColors, bool yuvPlaneBppSpecified) { DE_ASSERT(a.m_info.colorBufferType == b.m_info.colorBufferType); @@ -229,6 +245,7 @@ public: { SurfaceConfig::compareCaveat, SurfaceConfig::compareColorBufferType, + SurfaceConfig::compareColorComponentType, DE_NULL, // SurfaceConfig::compareColorBufferBits, SurfaceConfig::compareAttributeSmaller, SurfaceConfig::compareAttributeSmaller, @@ -307,6 +324,9 @@ public: rules[EGL_YUV_CSC_STANDARD_EXT] = AttribRule(EGL_YUV_CSC_STANDARD_EXT, EGL_DONT_CARE, CRITERIA_EXACT, SORTORDER_NONE); rules[EGL_YUV_PLANE_BPP_EXT] = AttribRule(EGL_YUV_PLANE_BPP_EXT, EGL_DONT_CARE, CRITERIA_AT_LEAST, SORTORDER_SPECIAL); // 3 + // EGL_EXT_pixel_format_float + rules[EGL_COLOR_COMPONENT_TYPE_EXT] = AttribRule(EGL_COLOR_COMPONENT_TYPE_EXT, EGL_COLOR_COMPONENT_TYPE_FIXED_EXT, CRITERIA_EXACT, SORTORDER_SPECIAL); // 2 + return rules; } private: diff --git a/modules/egl/teglGetProcAddressTests.inl b/modules/egl/teglGetProcAddressTests.inl index 23c88c4..33fde9b 100644 --- a/modules/egl/teglGetProcAddressTests.inl +++ b/modules/egl/teglGetProcAddressTests.inl @@ -1,7 +1,7 @@ /* WARNING: This is auto-generated file. Do not modify, since changes will * be lost! Modify the generating script instead. * - * Generated from Khronos EGL API description (egl.xml) revision 31042. + * Generated from Khronos EGL API description (egl.xml) revision 33315. */ static const char* s_EGL14[] = @@ -449,11 +449,21 @@ static const char* s_EGL_ANDROID_blob_cache[] = "eglSetBlobCacheFuncsANDROID", }; +static const char* s_EGL_ANDROID_create_native_client_buffer[] = +{ + "eglCreateNativeClientBufferANDROID", +}; + static const char* s_EGL_ANDROID_native_fence_sync[] = { "eglDupNativeFenceFDANDROID", }; +static const char* s_EGL_ANDROID_presentation_time[] = +{ + "eglPresentationTimeANDROID", +}; + static const char* s_EGL_ANGLE_query_surface_pointer[] = { "eglQuerySurfacePointerANGLE", @@ -479,6 +489,12 @@ static const char* s_EGL_EXT_device_query[] = "eglQueryDisplayAttribEXT", }; +static const char* s_EGL_EXT_image_dma_buf_import_modifiers[] = +{ + "eglQueryDmaBufFormatsEXT", + "eglQueryDmaBufModifiersEXT", +}; + static const char* s_EGL_EXT_output_base[] = { "eglGetOutputLayersEXT", @@ -518,6 +534,13 @@ static const char* s_EGL_KHR_cl_event2[] = "eglCreateSync64KHR", }; +static const char* s_EGL_KHR_debug[] = +{ + "eglDebugMessageControlKHR", + "eglLabelObjectKHR", + "eglQueryDebugKHR", +}; + static const char* s_EGL_KHR_fence_sync[] = { "eglClientWaitSyncKHR", @@ -574,6 +597,15 @@ static const char* s_EGL_KHR_stream[] = "eglStreamAttribKHR", }; +static const char* s_EGL_KHR_stream_attrib[] = +{ + "eglCreateStreamAttribKHR", + "eglQueryStreamAttribKHR", + "eglSetStreamAttribKHR", + "eglStreamConsumerAcquireAttribKHR", + "eglStreamConsumerReleaseAttribKHR", +}; + static const char* s_EGL_KHR_stream_consumer_gltexture[] = { "eglStreamConsumerAcquireKHR", @@ -641,6 +673,23 @@ static const char* s_EGL_NV_post_sub_buffer[] = "eglPostSubBufferNV", }; +static const char* s_EGL_NV_stream_consumer_gltexture_yuv[] = +{ + "eglStreamConsumerGLTextureExternalAttribsNV", +}; + +static const char* s_EGL_NV_stream_metadata[] = +{ + "eglQueryDisplayAttribNV", + "eglQueryStreamMetadataNV", + "eglSetStreamMetadataNV", +}; + +static const char* s_EGL_NV_stream_reset[] = +{ + "eglResetStreamNV", +}; + static const char* s_EGL_NV_stream_sync[] = { "eglCreateStreamSyncNV", @@ -815,7 +864,6 @@ static const char* s_GL_OES_fixed_point[] = "glPointSizexOES", "glPolygonOffsetxOES", "glRotatexOES", - "glSampleCoverageOES", "glSampleCoveragexOES", "glScalexOES", "glTexEnvxOES", @@ -978,6 +1026,19 @@ static const char* s_GL_EXT_base_instance[] = "glDrawElementsInstancedBaseVertexBaseInstanceEXT", }; +static const char* s_GL_EXT_blend_func_extended[] = +{ + "glBindFragDataLocationEXT", + "glBindFragDataLocationIndexedEXT", + "glGetFragDataIndexEXT", + "glGetProgramResourceLocationIndexEXT", +}; + +static const char* s_GL_EXT_buffer_storage[] = +{ + "glBufferStorageEXT", +}; + static const char* s_GL_EXT_copy_image[] = { "glCopyImageSubDataEXT", @@ -1083,6 +1144,11 @@ static const char* s_GL_EXT_primitive_bounding_box[] = "glPrimitiveBoundingBoxEXT", }; +static const char* s_GL_EXT_raster_multisample[] = +{ + "glRasterSamplesEXT", +}; + static const char* s_GL_EXT_separate_shader_objects[] = { "glActiveShaderProgramEXT", @@ -1131,6 +1197,11 @@ static const char* s_GL_EXT_separate_shader_objects[] = "glValidateProgramPipelineEXT", }; +static const char* s_GL_EXT_sparse_texture[] = +{ + "glTexPageCommitmentEXT", +}; + static const char* s_GL_EXT_tessellation_shader[] = { "glPatchParameteriEXT", @@ -1154,11 +1225,21 @@ static const char* s_GL_EXT_texture_buffer[] = "glTexBufferRangeEXT", }; +static const char* s_GL_EXT_texture_filter_minmax[] = +{ + "glRasterSamplesEXT", +}; + static const char* s_GL_EXT_texture_view[] = { "glTextureViewEXT", }; +static const char* s_GL_INTEL_framebuffer_CMAA[] = +{ + "glApplyFramebufferAttachmentCMAAINTEL", +}; + static const char* s_GL_INTEL_performance_query[] = { "glBeginPerfQueryINTEL", @@ -1231,6 +1312,11 @@ static const char* s_GL_NV_conditional_render[] = "glEndConditionalRenderNV", }; +static const char* s_GL_NV_conservative_raster[] = +{ + "glSubpixelPrecisionBiasNV", +}; + static const char* s_GL_NV_copy_buffer[] = { "glCopyBufferSubDataNV", @@ -1253,11 +1339,24 @@ static const char* s_GL_NV_draw_instanced[] = "glDrawElementsInstancedNV", }; +static const char* s_GL_NV_fragment_coverage_to_color[] = +{ + "glFragmentCoverageColorNV", +}; + static const char* s_GL_NV_framebuffer_blit[] = { "glBlitFramebufferNV", }; +static const char* s_GL_NV_framebuffer_mixed_samples[] = +{ + "glCoverageModulationNV", + "glCoverageModulationTableNV", + "glGetCoverageModulationTableNV", + "glRasterSamplesEXT", +}; + static const char* s_GL_NV_framebuffer_multisample[] = { "glRenderbufferStorageMultisampleNV", @@ -1344,11 +1443,23 @@ static const char* s_GL_NV_path_rendering[] = "glWeightPathsNV", }; +static const char* s_GL_NV_polygon_mode[] = +{ + "glPolygonModeNV", +}; + static const char* s_GL_NV_read_buffer[] = { "glReadBufferNV", }; +static const char* s_GL_NV_sample_locations[] = +{ + "glFramebufferSampleLocationsfvNV", + "glNamedFramebufferSampleLocationsfvNV", + "glResolveDepthValuesNV", +}; + static const char* s_GL_NV_viewport_array[] = { "glDepthRangeArrayfvNV", @@ -1454,6 +1565,11 @@ static const char* s_GL_OES_texture_view[] = "glTextureViewOES", }; +static const char* s_GL_OVR_multiview[] = +{ + "glFramebufferTextureMultiviewOVR", +}; + static const char* s_GL_QCOM_alpha_test[] = { "glAlphaFuncQCOM", @@ -1467,17 +1583,21 @@ static const struct } s_extensions[] = { { "EGL_ANDROID_blob_cache", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_blob_cache), s_EGL_ANDROID_blob_cache }, + { "EGL_ANDROID_create_native_client_buffer", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_create_native_client_buffer), s_EGL_ANDROID_create_native_client_buffer }, { "EGL_ANDROID_native_fence_sync", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_native_fence_sync), s_EGL_ANDROID_native_fence_sync }, + { "EGL_ANDROID_presentation_time", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_presentation_time), s_EGL_ANDROID_presentation_time }, { "EGL_ANGLE_query_surface_pointer", DE_LENGTH_OF_ARRAY(s_EGL_ANGLE_query_surface_pointer), s_EGL_ANGLE_query_surface_pointer }, { "EGL_EXT_device_base", DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_base), s_EGL_EXT_device_base }, { "EGL_EXT_device_enumeration", DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_enumeration), s_EGL_EXT_device_enumeration }, { "EGL_EXT_device_query", DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_query), s_EGL_EXT_device_query }, + { "EGL_EXT_image_dma_buf_import_modifiers", DE_LENGTH_OF_ARRAY(s_EGL_EXT_image_dma_buf_import_modifiers), s_EGL_EXT_image_dma_buf_import_modifiers }, { "EGL_EXT_output_base", DE_LENGTH_OF_ARRAY(s_EGL_EXT_output_base), s_EGL_EXT_output_base }, { "EGL_EXT_platform_base", DE_LENGTH_OF_ARRAY(s_EGL_EXT_platform_base), s_EGL_EXT_platform_base }, { "EGL_EXT_stream_consumer_egloutput", DE_LENGTH_OF_ARRAY(s_EGL_EXT_stream_consumer_egloutput), s_EGL_EXT_stream_consumer_egloutput }, { "EGL_EXT_swap_buffers_with_damage", DE_LENGTH_OF_ARRAY(s_EGL_EXT_swap_buffers_with_damage), s_EGL_EXT_swap_buffers_with_damage }, { "EGL_HI_clientpixmap", DE_LENGTH_OF_ARRAY(s_EGL_HI_clientpixmap), s_EGL_HI_clientpixmap }, { "EGL_KHR_cl_event2", DE_LENGTH_OF_ARRAY(s_EGL_KHR_cl_event2), s_EGL_KHR_cl_event2 }, + { "EGL_KHR_debug", DE_LENGTH_OF_ARRAY(s_EGL_KHR_debug), s_EGL_KHR_debug }, { "EGL_KHR_fence_sync", DE_LENGTH_OF_ARRAY(s_EGL_KHR_fence_sync), s_EGL_KHR_fence_sync }, { "EGL_KHR_image", DE_LENGTH_OF_ARRAY(s_EGL_KHR_image), s_EGL_KHR_image }, { "EGL_KHR_image_base", DE_LENGTH_OF_ARRAY(s_EGL_KHR_image_base), s_EGL_KHR_image_base }, @@ -1486,6 +1606,7 @@ static const struct { "EGL_KHR_partial_update", DE_LENGTH_OF_ARRAY(s_EGL_KHR_partial_update), s_EGL_KHR_partial_update }, { "EGL_KHR_reusable_sync", DE_LENGTH_OF_ARRAY(s_EGL_KHR_reusable_sync), s_EGL_KHR_reusable_sync }, { "EGL_KHR_stream", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream), s_EGL_KHR_stream }, + { "EGL_KHR_stream_attrib", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_attrib), s_EGL_KHR_stream_attrib }, { "EGL_KHR_stream_consumer_gltexture", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_consumer_gltexture), s_EGL_KHR_stream_consumer_gltexture }, { "EGL_KHR_stream_cross_process_fd", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_cross_process_fd), s_EGL_KHR_stream_cross_process_fd }, { "EGL_KHR_stream_fifo", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_fifo), s_EGL_KHR_stream_fifo }, @@ -1498,6 +1619,9 @@ static const struct { "EGL_NOK_swap_region2", DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region2), s_EGL_NOK_swap_region2 }, { "EGL_NV_native_query", DE_LENGTH_OF_ARRAY(s_EGL_NV_native_query), s_EGL_NV_native_query }, { "EGL_NV_post_sub_buffer", DE_LENGTH_OF_ARRAY(s_EGL_NV_post_sub_buffer), s_EGL_NV_post_sub_buffer }, + { "EGL_NV_stream_consumer_gltexture_yuv", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_consumer_gltexture_yuv), s_EGL_NV_stream_consumer_gltexture_yuv }, + { "EGL_NV_stream_metadata", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_metadata), s_EGL_NV_stream_metadata }, + { "EGL_NV_stream_reset", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_reset), s_EGL_NV_stream_reset }, { "EGL_NV_stream_sync", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_sync), s_EGL_NV_stream_sync }, { "EGL_NV_sync", DE_LENGTH_OF_ARRAY(s_EGL_NV_sync), s_EGL_NV_sync }, { "EGL_NV_system_time", DE_LENGTH_OF_ARRAY(s_EGL_NV_system_time), s_EGL_NV_system_time }, @@ -1537,6 +1661,8 @@ static const struct { "GL_ANGLE_instanced_arrays", DE_LENGTH_OF_ARRAY(s_GL_ANGLE_instanced_arrays), s_GL_ANGLE_instanced_arrays }, { "GL_ANGLE_translated_shader_source", DE_LENGTH_OF_ARRAY(s_GL_ANGLE_translated_shader_source), s_GL_ANGLE_translated_shader_source }, { "GL_EXT_base_instance", DE_LENGTH_OF_ARRAY(s_GL_EXT_base_instance), s_GL_EXT_base_instance }, + { "GL_EXT_blend_func_extended", DE_LENGTH_OF_ARRAY(s_GL_EXT_blend_func_extended), s_GL_EXT_blend_func_extended }, + { "GL_EXT_buffer_storage", DE_LENGTH_OF_ARRAY(s_GL_EXT_buffer_storage), s_GL_EXT_buffer_storage }, { "GL_EXT_copy_image", DE_LENGTH_OF_ARRAY(s_GL_EXT_copy_image), s_GL_EXT_copy_image }, { "GL_EXT_debug_label", DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_label), s_GL_EXT_debug_label }, { "GL_EXT_debug_marker", DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_marker), s_GL_EXT_debug_marker }, @@ -1551,11 +1677,15 @@ static const struct { "GL_EXT_multiview_draw_buffers", DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers), s_GL_EXT_multiview_draw_buffers }, { "GL_EXT_occlusion_query_boolean", DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean), s_GL_EXT_occlusion_query_boolean }, { "GL_EXT_primitive_bounding_box", DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box), s_GL_EXT_primitive_bounding_box }, + { "GL_EXT_raster_multisample", DE_LENGTH_OF_ARRAY(s_GL_EXT_raster_multisample), s_GL_EXT_raster_multisample }, { "GL_EXT_separate_shader_objects", DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects), s_GL_EXT_separate_shader_objects }, + { "GL_EXT_sparse_texture", DE_LENGTH_OF_ARRAY(s_GL_EXT_sparse_texture), s_GL_EXT_sparse_texture }, { "GL_EXT_tessellation_shader", DE_LENGTH_OF_ARRAY(s_GL_EXT_tessellation_shader), s_GL_EXT_tessellation_shader }, { "GL_EXT_texture_border_clamp", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_border_clamp), s_GL_EXT_texture_border_clamp }, { "GL_EXT_texture_buffer", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer), s_GL_EXT_texture_buffer }, + { "GL_EXT_texture_filter_minmax", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_filter_minmax), s_GL_EXT_texture_filter_minmax }, { "GL_EXT_texture_view", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view), s_GL_EXT_texture_view }, + { "GL_INTEL_framebuffer_CMAA", DE_LENGTH_OF_ARRAY(s_GL_INTEL_framebuffer_CMAA), s_GL_INTEL_framebuffer_CMAA }, { "GL_INTEL_performance_query", DE_LENGTH_OF_ARRAY(s_GL_INTEL_performance_query), s_GL_INTEL_performance_query }, { "GL_KHR_blend_equation_advanced", DE_LENGTH_OF_ARRAY(s_GL_KHR_blend_equation_advanced), s_GL_KHR_blend_equation_advanced }, { "GL_KHR_debug", DE_LENGTH_OF_ARRAY(s_GL_KHR_debug), s_GL_KHR_debug }, @@ -1563,17 +1693,22 @@ static const struct { "GL_NV_bindless_texture", DE_LENGTH_OF_ARRAY(s_GL_NV_bindless_texture), s_GL_NV_bindless_texture }, { "GL_NV_blend_equation_advanced", DE_LENGTH_OF_ARRAY(s_GL_NV_blend_equation_advanced), s_GL_NV_blend_equation_advanced }, { "GL_NV_conditional_render", DE_LENGTH_OF_ARRAY(s_GL_NV_conditional_render), s_GL_NV_conditional_render }, + { "GL_NV_conservative_raster", DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster), s_GL_NV_conservative_raster }, { "GL_NV_copy_buffer", DE_LENGTH_OF_ARRAY(s_GL_NV_copy_buffer), s_GL_NV_copy_buffer }, { "GL_NV_coverage_sample", DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample), s_GL_NV_coverage_sample }, { "GL_NV_draw_buffers", DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers), s_GL_NV_draw_buffers }, { "GL_NV_draw_instanced", DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced), s_GL_NV_draw_instanced }, + { "GL_NV_fragment_coverage_to_color", DE_LENGTH_OF_ARRAY(s_GL_NV_fragment_coverage_to_color), s_GL_NV_fragment_coverage_to_color }, { "GL_NV_framebuffer_blit", DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit), s_GL_NV_framebuffer_blit }, + { "GL_NV_framebuffer_mixed_samples", DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_mixed_samples), s_GL_NV_framebuffer_mixed_samples }, { "GL_NV_framebuffer_multisample", DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_multisample), s_GL_NV_framebuffer_multisample }, { "GL_NV_instanced_arrays", DE_LENGTH_OF_ARRAY(s_GL_NV_instanced_arrays), s_GL_NV_instanced_arrays }, { "GL_NV_internalformat_sample_query", DE_LENGTH_OF_ARRAY(s_GL_NV_internalformat_sample_query), s_GL_NV_internalformat_sample_query }, { "GL_NV_non_square_matrices", DE_LENGTH_OF_ARRAY(s_GL_NV_non_square_matrices), s_GL_NV_non_square_matrices }, { "GL_NV_path_rendering", DE_LENGTH_OF_ARRAY(s_GL_NV_path_rendering), s_GL_NV_path_rendering }, + { "GL_NV_polygon_mode", DE_LENGTH_OF_ARRAY(s_GL_NV_polygon_mode), s_GL_NV_polygon_mode }, { "GL_NV_read_buffer", DE_LENGTH_OF_ARRAY(s_GL_NV_read_buffer), s_GL_NV_read_buffer }, + { "GL_NV_sample_locations", DE_LENGTH_OF_ARRAY(s_GL_NV_sample_locations), s_GL_NV_sample_locations }, { "GL_NV_viewport_array", DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_array), s_GL_NV_viewport_array }, { "GL_OES_copy_image", DE_LENGTH_OF_ARRAY(s_GL_OES_copy_image), s_GL_OES_copy_image }, { "GL_OES_draw_buffers_indexed", DE_LENGTH_OF_ARRAY(s_GL_OES_draw_buffers_indexed), s_GL_OES_draw_buffers_indexed }, @@ -1588,5 +1723,6 @@ static const struct { "GL_OES_texture_buffer", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_buffer), s_GL_OES_texture_buffer }, { "GL_OES_texture_storage_multisample_2d_array", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_storage_multisample_2d_array), s_GL_OES_texture_storage_multisample_2d_array }, { "GL_OES_texture_view", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_view), s_GL_OES_texture_view }, + { "GL_OVR_multiview", DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview), s_GL_OVR_multiview }, { "GL_QCOM_alpha_test", DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test), s_GL_QCOM_alpha_test }, }; diff --git a/modules/egl/teglRenderCase.cpp b/modules/egl/teglRenderCase.cpp index fc30091..a0ff8ae 100644 --- a/modules/egl/teglRenderCase.cpp +++ b/modules/egl/teglRenderCase.cpp @@ -397,6 +397,11 @@ static bool isConformant (const eglu::CandidateConfig& c) return c.get(EGL_CONFIG_CAVEAT) != EGL_NON_CONFORMANT_CONFIG; } +static bool notFloat (const eglu::CandidateConfig& c) +{ + return c.colorComponentType() != EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT; +} + void getDefaultRenderFilterLists (vector& filterLists, const eglu::FilterList& baseFilters) { static const struct @@ -450,7 +455,8 @@ void getDefaultRenderFilterLists (vector& filterLists, const e << notColorBits<4, 4, 4, 4> << notColorBits<5, 5, 5, 1> << notColorBits<8, 8, 8, 8> - << isConformant; + << isConformant + << notFloat; filterLists.push_back(filters); } diff --git a/modules/egl/teglSimpleConfigCase.cpp b/modules/egl/teglSimpleConfigCase.cpp index c528178..fc02455 100644 --- a/modules/egl/teglSimpleConfigCase.cpp +++ b/modules/egl/teglSimpleConfigCase.cpp @@ -143,6 +143,11 @@ static bool isConformant (const eglu::CandidateConfig& c) return c.get(EGL_CONFIG_CAVEAT) != EGL_NON_CONFORMANT_CONFIG; } +static bool notFloat (const eglu::CandidateConfig& c) +{ + return c.colorComponentType() != EGL_COLOR_COMPONENT_TYPE_FLOAT_EXT; +} + void getDefaultFilterLists (vector& lists, const FilterList& baseFilters) { static const struct @@ -209,7 +214,8 @@ void getDefaultFilterLists (vector& lists, const FilterList& ba << notColorBits<4, 4, 4, 4> << notColorBits<5, 5, 5, 1> << notColorBits<8, 8, 8, 8> - << isConformant; + << isConformant + << notFloat; lists.push_back(filters); } diff --git a/scripts/egl/common.py b/scripts/egl/common.py index 64690dd..7e3c630 100644 --- a/scripts/egl/common.py +++ b/scripts/egl/common.py @@ -39,8 +39,8 @@ EGL_WRAPPER_DIR = os.path.normpath(os.path.join(EGL_DIR, "wrapper")) EGL_SOURCE = khr_util.registry_cache.RegistrySource( "egl.xml", - 31042, - "f5a731f46958a7cb6a5a96c811086fbaede9cc078541a26de009228eb089ae2c") + 33315, + "19f3b517f0dede56a6a94b820d08149ef5e1726f58202f47d69fa27f6f483bd2") VERSION = '1.5' @@ -63,7 +63,8 @@ EXTENSIONS = [ "EGL_EXT_yuv_surface", "EGL_EXT_buffer_age", "EGL_KHR_partial_update", - "EGL_KHR_swap_buffers_with_damage" + "EGL_KHR_swap_buffers_with_damage", + "EGL_EXT_pixel_format_float" ] PROTECTS = [ "KHRONOS_SUPPORT_INT64" diff --git a/scripts/egl/str_util.py b/scripts/egl/str_util.py index 4372932..b77e69b 100644 --- a/scripts/egl/str_util.py +++ b/scripts/egl/str_util.py @@ -141,6 +141,7 @@ ENUM_GROUPS = [ "YUV_PLANE_BPP_8_EXT", "YUV_PLANE_BPP_10_EXT", ]), + ("ColorComponentType", ["COLOR_COMPONENT_TYPE_FIXED_EXT", "COLOR_COMPONENT_TYPE_FLOAT_EXT"]), ("SurfaceTarget", ["READ", "DRAW"]), # ConfigAttrib values