Browse Source

Revert "[vulkan] simplify numeric type determination"

vkexperiments1
CamilleLaVey 2 days ago
parent
commit
3f1f20185c
  1. 9
      src/shader_recompiler/ir_opt/texture_pass.cpp

9
src/shader_recompiler/ir_opt/texture_pass.cpp

@ -39,7 +39,9 @@ NumericType GetNumericType(TexturePixelFormat format) {
if (!VideoCore::Surface::IsPixelFormatInteger(pixel_format)) { if (!VideoCore::Surface::IsPixelFormatInteger(pixel_format)) {
return NumericType::Float; return NumericType::Float;
} }
return NumericType::UnsignedInt;
return VideoCore::Surface::IsPixelFormatSignedInteger(pixel_format)
? NumericType::SignedInt
: NumericType::UnsignedInt;
} }
IR::Opcode IndexedInstruction(const IR::Inst& inst) { IR::Opcode IndexedInstruction(const IR::Inst& inst) {
@ -448,9 +450,7 @@ public:
u32 Add(const ImageBufferDescriptor& desc) { u32 Add(const ImageBufferDescriptor& desc) {
const u32 index{Add(image_buffer_descriptors, desc, [&desc](const auto& existing) { const u32 index{Add(image_buffer_descriptors, desc, [&desc](const auto& existing) {
return desc.format == existing.format &&
desc.numeric_type == existing.numeric_type &&
desc.cbuf_index == existing.cbuf_index &&
return desc.format == existing.format && desc.cbuf_index == existing.cbuf_index &&
desc.cbuf_offset == existing.cbuf_offset && desc.count == existing.count && desc.cbuf_offset == existing.cbuf_offset && desc.count == existing.count &&
desc.size_shift == existing.size_shift; desc.size_shift == existing.size_shift;
})}; })};
@ -480,7 +480,6 @@ public:
u32 Add(const ImageDescriptor& desc) { u32 Add(const ImageDescriptor& desc) {
const u32 index{Add(image_descriptors, desc, [&desc](const auto& existing) { const u32 index{Add(image_descriptors, desc, [&desc](const auto& existing) {
return desc.type == existing.type && desc.format == existing.format && return desc.type == existing.type && desc.format == existing.format &&
desc.numeric_type == existing.numeric_type &&
desc.cbuf_index == existing.cbuf_index && desc.cbuf_index == existing.cbuf_index &&
desc.cbuf_offset == existing.cbuf_offset && desc.count == existing.count && desc.cbuf_offset == existing.cbuf_offset && desc.count == existing.count &&
desc.size_shift == existing.size_shift; desc.size_shift == existing.size_shift;

Loading…
Cancel
Save