Commit deae1fce by Le Hoang Quyen Committed by Commit Bot

Enable Metal backend.

Metal will be secondary default backend after OpenGL for now. The tests will be enabled for metal in CL http://crrev.com/c/1906607. Bug: angleproject:2634 Change-Id: I109c641d749c2a207bbb7d500bc281ffb0b13848 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906612 Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarJonah Ryan-Davis <jonahr@google.com>
parent 20f11f58
...@@ -184,14 +184,6 @@ EGLAttrib GetDisplayTypeFromEnvironment() ...@@ -184,14 +184,6 @@ EGLAttrib GetDisplayTypeFromEnvironment()
} }
#endif #endif
#if defined(ANGLE_ENABLE_METAL)
if (rx::IsMetalDisplayAvailable())
{
return EGL_PLATFORM_ANGLE_TYPE_METAL_ANGLE;
}
// else fallthrough to below
#endif
#if defined(ANGLE_ENABLE_D3D11) #if defined(ANGLE_ENABLE_D3D11)
return EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE; return EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE;
#elif defined(ANGLE_ENABLE_D3D9) #elif defined(ANGLE_ENABLE_D3D9)
...@@ -205,11 +197,7 @@ EGLAttrib GetDisplayTypeFromEnvironment() ...@@ -205,11 +197,7 @@ EGLAttrib GetDisplayTypeFromEnvironment()
return EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE; return EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE;
# endif # endif
#elif defined(ANGLE_ENABLE_METAL) #elif defined(ANGLE_ENABLE_METAL)
// If we reach this point, it means rx::IsMetalDisplayAvailable() return false return EGL_PLATFORM_ANGLE_TYPE_METAL_ANGLE;
// and ANGLE_ENABLE_OPENGL is not defined.
// Use default type as a fallback. Just to please the compiler.
// CreateDisplayFromAttribs() will fail regardless.
return EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE;
#elif defined(ANGLE_ENABLE_VULKAN) #elif defined(ANGLE_ENABLE_VULKAN)
return EGL_PLATFORM_ANGLE_TYPE_VULKAN_ANGLE; return EGL_PLATFORM_ANGLE_TYPE_VULKAN_ANGLE;
#elif defined(ANGLE_ENABLE_NULL) #elif defined(ANGLE_ENABLE_NULL)
......
...@@ -24,7 +24,11 @@ namespace rx ...@@ -24,7 +24,11 @@ namespace rx
bool IsMetalDisplayAvailable() bool IsMetalDisplayAvailable()
{ {
UNIMPLEMENTED(); // We only support macos 10.13+ and 11 for now. Since they are requirements for Metal 2.0.
if (ANGLE_APPLE_AVAILABLE_XCI(10.13, 13.0, 11))
{
return true;
}
return false; return false;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment