summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h
diff options
context:
space:
mode:
authorFernandoS27 <fsahmkow27@gmail.com>2021-03-21 01:03:21 +0100
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:23 +0200
commit28dff6a6298b714019aa10a47f5a9e3f3f689067 (patch)
tree63ddbf5f41f08c9f2300e995598950b86db5ceb3 /src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h
parentspirv: Implement VertexId and InstanceId, refactor code (diff)
downloadyuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.tar
yuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.tar.gz
yuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.tar.bz2
yuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.tar.lz
yuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.tar.xz
yuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.tar.zst
yuzu-28dff6a6298b714019aa10a47f5a9e3f3f689067.zip
Diffstat (limited to 'src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h')
-rw-r--r--src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h b/src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h
index 0933b595e..f26ef0949 100644
--- a/src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h
+++ b/src/shader_recompiler/frontend/maxwell/translate/impl/half_floating_point_helper.h
@@ -23,6 +23,14 @@ enum class Swizzle : u64 {
H1_H1,
};
+enum class HalfPrecision : u64 {
+ None = 0,
+ FTZ = 1,
+ FMZ = 2,
+};
+
+IR::FmzMode HalfPrecision2FmzMode(HalfPrecision precision);
+
std::pair<IR::F16F32F64, IR::F16F32F64> Extract(IR::IREmitter& ir, IR::U32 value, Swizzle swizzle);
IR::U32 MergeResult(IR::IREmitter& ir, IR::Reg dest, const IR::F16& lhs, const IR::F16& rhs,