diff options
author | Markus Wick <markus@selfnet.de> | 2021-06-10 21:07:27 +0200 |
---|---|---|
committer | Markus Wick <markus@selfnet.de> | 2021-06-10 21:07:27 +0200 |
commit | 6755025310335abdb655c11fc65801fee99bb3d9 (patch) | |
tree | 6e4dd0bc6f2feb5e10ac6f101883fd9cfaa27be5 /src/video_core | |
parent | hle: service: Increase arbitrary max sessions limit. (diff) | |
download | yuzu-6755025310335abdb655c11fc65801fee99bb3d9.tar yuzu-6755025310335abdb655c11fc65801fee99bb3d9.tar.gz yuzu-6755025310335abdb655c11fc65801fee99bb3d9.tar.bz2 yuzu-6755025310335abdb655c11fc65801fee99bb3d9.tar.lz yuzu-6755025310335abdb655c11fc65801fee99bb3d9.tar.xz yuzu-6755025310335abdb655c11fc65801fee99bb3d9.tar.zst yuzu-6755025310335abdb655c11fc65801fee99bb3d9.zip |
Diffstat (limited to 'src/video_core')
-rw-r--r-- | src/video_core/buffer_cache/buffer_base.h | 3 | ||||
-rw-r--r-- | src/video_core/texture_cache/util.cpp | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/buffer_cache/buffer_base.h b/src/video_core/buffer_cache/buffer_base.h index 0c00ae280..a39505903 100644 --- a/src/video_core/buffer_cache/buffer_base.h +++ b/src/video_core/buffer_cache/buffer_base.h @@ -476,6 +476,9 @@ private: current_size = 0; on_going = false; } + if (empty_bits == PAGES_PER_WORD) { + break; + } page += empty_bits; const int continuous_bits = std::countr_one(word >> page); diff --git a/src/video_core/texture_cache/util.cpp b/src/video_core/texture_cache/util.cpp index 8c4a5523b..906604a39 100644 --- a/src/video_core/texture_cache/util.cpp +++ b/src/video_core/texture_cache/util.cpp @@ -647,6 +647,9 @@ u32 CalculateLayerSize(const ImageInfo& info) noexcept { } LevelArray CalculateMipLevelOffsets(const ImageInfo& info) noexcept { + if (info.type == ImageType::Linear) { + return {}; + } ASSERT(info.resources.levels <= static_cast<s32>(MAX_MIP_LEVELS)); const LevelInfo level_info = MakeLevelInfo(info); LevelArray offsets{}; |