From: Pierre Moreau Date: Tue, 3 Oct 2017 19:07:45 +0000 (+0200) Subject: clover: Add an helper for checking if an IR is supported X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=505ec3a530f1ffd85f384cda9a472a0bae56c8e4;p=mesa.git clover: Add an helper for checking if an IR is supported Reviewed-by: Aaron Watry Reviewed-by: Karol Herbst Reviewed-by: Francisco Jerez --- diff --git a/src/gallium/state_trackers/clover/core/device.cpp b/src/gallium/state_trackers/clover/core/device.cpp index 1fae465dae4..010bae81403 100644 --- a/src/gallium/state_trackers/clover/core/device.cpp +++ b/src/gallium/state_trackers/clover/core/device.cpp @@ -272,3 +272,9 @@ device::device_clc_version() const { debug_get_option("CLOVER_DEVICE_CLC_VERSION_OVERRIDE", "1.1"); return device_clc_version; } + +bool +device::supports_ir(enum pipe_shader_ir ir) const { + return pipe->get_shader_param(pipe, PIPE_SHADER_COMPUTE, + PIPE_SHADER_CAP_SUPPORTED_IRS) & (1 << ir); +} diff --git a/src/gallium/state_trackers/clover/core/device.hpp b/src/gallium/state_trackers/clover/core/device.hpp index 85cd031676d..ebe15f28e93 100644 --- a/src/gallium/state_trackers/clover/core/device.hpp +++ b/src/gallium/state_trackers/clover/core/device.hpp @@ -82,6 +82,7 @@ namespace clover { enum pipe_shader_ir ir_format() const; std::string ir_target() const; enum pipe_endian endianness() const; + bool supports_ir(enum pipe_shader_ir ir) const; friend class command_queue; friend class root_resource;