summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/shader_ir.h
diff options
context:
space:
mode:
authornamkazy <nam.kazt.91@gmail.com>2020-04-06 08:09:19 +0200
committernamkazy <nam.kazt.91@gmail.com>2020-04-06 08:09:19 +0200
commit2906372ba18b1c6238062c7ac91ccf9536fc649b (patch)
tree97dabf3cdb1f74a02ad6e725e6eceadccd8e943a /src/video_core/shader/shader_ir.h
parentsilent warning (conversion error) (diff)
downloadyuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.tar
yuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.tar.gz
yuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.tar.bz2
yuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.tar.lz
yuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.tar.xz
yuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.tar.zst
yuzu-2906372ba18b1c6238062c7ac91ccf9536fc649b.zip
Diffstat (limited to 'src/video_core/shader/shader_ir.h')
-rw-r--r--src/video_core/shader/shader_ir.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/video_core/shader/shader_ir.h b/src/video_core/shader/shader_ir.h
index e531181cd..408cce71e 100644
--- a/src/video_core/shader/shader_ir.h
+++ b/src/video_core/shader/shader_ir.h
@@ -68,8 +68,8 @@ struct GlobalMemoryUsage {
class ShaderIR final {
public:
- explicit ShaderIR(const ProgramCode& program_code, Tegra::Engines::ShaderType shader_stage,
- u32 main_offset, CompilerSettings settings, Registry& registry);
+ explicit ShaderIR(const ProgramCode& program_code, u32 main_offset, CompilerSettings settings,
+ Registry& registry);
~ShaderIR();
const std::map<u32, NodeBlock>& GetBasicBlocks() const {
@@ -312,6 +312,10 @@ private:
/// Conditionally saturates a half float pair
Node GetSaturatedHalfFloat(Node value, bool saturate = true);
+ /// Get image component value by type and size
+ Node GetComponentValue(Tegra::Texture::ComponentType component_type, u32 component_size,
+ const Node original_value, bool* is_signed);
+
/// Returns a predicate comparing two floats
Node GetPredicateComparisonFloat(Tegra::Shader::PredCondition condition, Node op_a, Node op_b);
/// Returns a predicate comparing two integers
@@ -419,7 +423,6 @@ private:
u32 NewCustomVariable();
const ProgramCode& program_code;
- const Tegra::Engines::ShaderType shader_stage;
const u32 main_offset;
const CompilerSettings settings;
Registry& registry;