texture_cache: Style and Corrections
This commit is contained in:
		
							parent
							
								
									51ba60b27e
								
							
						
					
					
						commit
						d1812316e1
					
				@ -104,7 +104,7 @@ constexpr std::tuple<const char*, const char*, u32> GetPrimitiveDescription(GLen
 | 
			
		||||
std::size_t CalculateProgramSize(const GLShader::ProgramCode& program) {
 | 
			
		||||
    constexpr std::size_t start_offset = 10;
 | 
			
		||||
    constexpr u64 key = 0xE2400FFFFF07000FULL;
 | 
			
		||||
    constexpr u64 mask =0xFFFFFFFFFF7FFFFFULL;
 | 
			
		||||
    constexpr u64 mask = 0xFFFFFFFFFF7FFFFFULL;
 | 
			
		||||
    std::size_t offset = start_offset;
 | 
			
		||||
    std::size_t size = start_offset * sizeof(u64);
 | 
			
		||||
    while (offset < program.size()) {
 | 
			
		||||
 | 
			
		||||
@ -339,7 +339,8 @@ struct MetaImage {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/// Parameters that modify an operation but are not part of any particular operand
 | 
			
		||||
using Meta = std::variant<MetaArithmetic, MetaTexture, MetaImage, MetaStackClass, Tegra::Shader::HalfType>;
 | 
			
		||||
using Meta =
 | 
			
		||||
    std::variant<MetaArithmetic, MetaTexture, MetaImage, MetaStackClass, Tegra::Shader::HalfType>;
 | 
			
		||||
 | 
			
		||||
/// Holds any kind of operation that can be done in the IR
 | 
			
		||||
class OperationNode final {
 | 
			
		||||
 | 
			
		||||
@ -447,70 +447,70 @@ enum class SurfaceCompression : u8 {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
inline constexpr std::array<SurfaceCompression, MaxPixelFormat> compression_type_table = {{
 | 
			
		||||
    SurfaceCompression::None,           // ABGR8U
 | 
			
		||||
    SurfaceCompression::None,           // ABGR8S
 | 
			
		||||
    SurfaceCompression::None,           // ABGR8UI
 | 
			
		||||
    SurfaceCompression::None,           // B5G6R5U
 | 
			
		||||
    SurfaceCompression::None,           // A2B10G10R10U
 | 
			
		||||
    SurfaceCompression::None,           // A1B5G5R5U
 | 
			
		||||
    SurfaceCompression::None,           // R8U
 | 
			
		||||
    SurfaceCompression::None,           // R8UI
 | 
			
		||||
    SurfaceCompression::None,           // RGBA16F
 | 
			
		||||
    SurfaceCompression::None,           // RGBA16U
 | 
			
		||||
    SurfaceCompression::None,           // RGBA16UI
 | 
			
		||||
    SurfaceCompression::None,           // R11FG11FB10F
 | 
			
		||||
    SurfaceCompression::None,           // RGBA32UI
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXT1
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXT23
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXT45
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXN1
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXN2UNORM
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXN2SNORM
 | 
			
		||||
    SurfaceCompression::Compressed,     // BC7U
 | 
			
		||||
    SurfaceCompression::Compressed,     // BC6H_UF16
 | 
			
		||||
    SurfaceCompression::Compressed,     // BC6H_SF16
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_4X4
 | 
			
		||||
    SurfaceCompression::None,           // BGRA8
 | 
			
		||||
    SurfaceCompression::None,           // RGBA32F
 | 
			
		||||
    SurfaceCompression::None,           // RG32F
 | 
			
		||||
    SurfaceCompression::None,           // R32F
 | 
			
		||||
    SurfaceCompression::None,           // R16F
 | 
			
		||||
    SurfaceCompression::None,           // R16U
 | 
			
		||||
    SurfaceCompression::None,           // R16S
 | 
			
		||||
    SurfaceCompression::None,           // R16UI
 | 
			
		||||
    SurfaceCompression::None,           // R16I
 | 
			
		||||
    SurfaceCompression::None,           // RG16
 | 
			
		||||
    SurfaceCompression::None,           // RG16F
 | 
			
		||||
    SurfaceCompression::None,           // RG16UI
 | 
			
		||||
    SurfaceCompression::None,           // RG16I
 | 
			
		||||
    SurfaceCompression::None,           // RG16S
 | 
			
		||||
    SurfaceCompression::None,           // RGB32F
 | 
			
		||||
    SurfaceCompression::None,           // RGBA8_SRGB
 | 
			
		||||
    SurfaceCompression::None,           // RG8U
 | 
			
		||||
    SurfaceCompression::None,           // RG8S
 | 
			
		||||
    SurfaceCompression::None,           // RG32UI
 | 
			
		||||
    SurfaceCompression::None,           // R32UI
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_8X8
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_8X5
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_5X4
 | 
			
		||||
    SurfaceCompression::None,           // BGRA8_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXT1_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXT23_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed,     // DXT45_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed,     // BC7U_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_4X4_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_8X8_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_8X5_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_5X4_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_5X5
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_5X5_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_10X8
 | 
			
		||||
    SurfaceCompression::Converted,      // ASTC_2D_10X8_SRGB
 | 
			
		||||
    SurfaceCompression::None,           // Z32F
 | 
			
		||||
    SurfaceCompression::None,           // Z16
 | 
			
		||||
    SurfaceCompression::None,           // Z24S8
 | 
			
		||||
    SurfaceCompression::Rearranged,     // S8Z24
 | 
			
		||||
    SurfaceCompression::None,           // Z32FS8
 | 
			
		||||
    SurfaceCompression::None,       // ABGR8U
 | 
			
		||||
    SurfaceCompression::None,       // ABGR8S
 | 
			
		||||
    SurfaceCompression::None,       // ABGR8UI
 | 
			
		||||
    SurfaceCompression::None,       // B5G6R5U
 | 
			
		||||
    SurfaceCompression::None,       // A2B10G10R10U
 | 
			
		||||
    SurfaceCompression::None,       // A1B5G5R5U
 | 
			
		||||
    SurfaceCompression::None,       // R8U
 | 
			
		||||
    SurfaceCompression::None,       // R8UI
 | 
			
		||||
    SurfaceCompression::None,       // RGBA16F
 | 
			
		||||
    SurfaceCompression::None,       // RGBA16U
 | 
			
		||||
    SurfaceCompression::None,       // RGBA16UI
 | 
			
		||||
    SurfaceCompression::None,       // R11FG11FB10F
 | 
			
		||||
    SurfaceCompression::None,       // RGBA32UI
 | 
			
		||||
    SurfaceCompression::Compressed, // DXT1
 | 
			
		||||
    SurfaceCompression::Compressed, // DXT23
 | 
			
		||||
    SurfaceCompression::Compressed, // DXT45
 | 
			
		||||
    SurfaceCompression::Compressed, // DXN1
 | 
			
		||||
    SurfaceCompression::Compressed, // DXN2UNORM
 | 
			
		||||
    SurfaceCompression::Compressed, // DXN2SNORM
 | 
			
		||||
    SurfaceCompression::Compressed, // BC7U
 | 
			
		||||
    SurfaceCompression::Compressed, // BC6H_UF16
 | 
			
		||||
    SurfaceCompression::Compressed, // BC6H_SF16
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_4X4
 | 
			
		||||
    SurfaceCompression::None,       // BGRA8
 | 
			
		||||
    SurfaceCompression::None,       // RGBA32F
 | 
			
		||||
    SurfaceCompression::None,       // RG32F
 | 
			
		||||
    SurfaceCompression::None,       // R32F
 | 
			
		||||
    SurfaceCompression::None,       // R16F
 | 
			
		||||
    SurfaceCompression::None,       // R16U
 | 
			
		||||
    SurfaceCompression::None,       // R16S
 | 
			
		||||
    SurfaceCompression::None,       // R16UI
 | 
			
		||||
    SurfaceCompression::None,       // R16I
 | 
			
		||||
    SurfaceCompression::None,       // RG16
 | 
			
		||||
    SurfaceCompression::None,       // RG16F
 | 
			
		||||
    SurfaceCompression::None,       // RG16UI
 | 
			
		||||
    SurfaceCompression::None,       // RG16I
 | 
			
		||||
    SurfaceCompression::None,       // RG16S
 | 
			
		||||
    SurfaceCompression::None,       // RGB32F
 | 
			
		||||
    SurfaceCompression::None,       // RGBA8_SRGB
 | 
			
		||||
    SurfaceCompression::None,       // RG8U
 | 
			
		||||
    SurfaceCompression::None,       // RG8S
 | 
			
		||||
    SurfaceCompression::None,       // RG32UI
 | 
			
		||||
    SurfaceCompression::None,       // R32UI
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_8X8
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_8X5
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_5X4
 | 
			
		||||
    SurfaceCompression::None,       // BGRA8_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed, // DXT1_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed, // DXT23_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed, // DXT45_SRGB
 | 
			
		||||
    SurfaceCompression::Compressed, // BC7U_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_4X4_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_8X8_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_8X5_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_5X4_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_5X5
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_5X5_SRGB
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_10X8
 | 
			
		||||
    SurfaceCompression::Converted,  // ASTC_2D_10X8_SRGB
 | 
			
		||||
    SurfaceCompression::None,       // Z32F
 | 
			
		||||
    SurfaceCompression::None,       // Z16
 | 
			
		||||
    SurfaceCompression::None,       // Z24S8
 | 
			
		||||
    SurfaceCompression::Rearranged, // S8Z24
 | 
			
		||||
    SurfaceCompression::None,       // Z32FS8
 | 
			
		||||
}};
 | 
			
		||||
 | 
			
		||||
static constexpr SurfaceCompression GetFormatCompressionType(PixelFormat format) {
 | 
			
		||||
 | 
			
		||||
@ -101,7 +101,7 @@ MatchStructureResult SurfaceBaseImpl::MatchesStructure(const SurfaceParams& rhs)
 | 
			
		||||
std::optional<std::pair<u32, u32>> SurfaceBaseImpl::GetLayerMipmap(
 | 
			
		||||
    const GPUVAddr candidate_gpu_addr) const {
 | 
			
		||||
    if (gpu_addr == candidate_gpu_addr) {
 | 
			
		||||
        return {{0,0}};
 | 
			
		||||
        return {{0, 0}};
 | 
			
		||||
    }
 | 
			
		||||
    if (candidate_gpu_addr < gpu_addr) {
 | 
			
		||||
        return {};
 | 
			
		||||
 | 
			
		||||
@ -254,7 +254,8 @@ public:
 | 
			
		||||
            }
 | 
			
		||||
            return {};
 | 
			
		||||
        } else {
 | 
			
		||||
            return GetView(ViewParams(view_params.target, layer, 1, mipmap, end_mipmap - mipmap + 1));
 | 
			
		||||
            return GetView(
 | 
			
		||||
                ViewParams(view_params.target, layer, 1, mipmap, end_mipmap - mipmap + 1));
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -18,6 +18,7 @@
 | 
			
		||||
#include "common/common_types.h"
 | 
			
		||||
#include "common/math_util.h"
 | 
			
		||||
#include "core/memory.h"
 | 
			
		||||
#include "core/settings.h"
 | 
			
		||||
#include "video_core/engines/fermi_2d.h"
 | 
			
		||||
#include "video_core/engines/maxwell_3d.h"
 | 
			
		||||
#include "video_core/gpu.h"
 | 
			
		||||
 | 
			
		||||
@ -256,7 +256,8 @@ std::vector<u8> UnswizzleTexture(u8* address, u32 tile_size_x, u32 tile_size_y,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void SwizzleSubrect(u32 subrect_width, u32 subrect_height, u32 source_pitch, u32 swizzled_width,
 | 
			
		||||
                    u32 bytes_per_pixel, u8* swizzled_data, u8* unswizzled_data, u32 block_height_bit) {
 | 
			
		||||
                    u32 bytes_per_pixel, u8* swizzled_data, u8* unswizzled_data,
 | 
			
		||||
                    u32 block_height_bit) {
 | 
			
		||||
    const u32 block_height = 1U << block_height_bit;
 | 
			
		||||
    const u32 image_width_in_gobs{(swizzled_width * bytes_per_pixel + (gob_size_x - 1)) /
 | 
			
		||||
                                  gob_size_x};
 | 
			
		||||
@ -278,8 +279,8 @@ void SwizzleSubrect(u32 subrect_width, u32 subrect_height, u32 source_pitch, u32
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void UnswizzleSubrect(u32 subrect_width, u32 subrect_height, u32 dest_pitch, u32 swizzled_width,
 | 
			
		||||
                      u32 bytes_per_pixel, u8* swizzled_data, u8* unswizzled_data, u32 block_height_bit,
 | 
			
		||||
                      u32 offset_x, u32 offset_y) {
 | 
			
		||||
                      u32 bytes_per_pixel, u8* swizzled_data, u8* unswizzled_data,
 | 
			
		||||
                      u32 block_height_bit, u32 offset_x, u32 offset_y) {
 | 
			
		||||
    const u32 block_height = 1U << block_height_bit;
 | 
			
		||||
    for (u32 line = 0; line < subrect_height; ++line) {
 | 
			
		||||
        const u32 y2 = line + offset_y;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user