early-access version 3279
This commit is contained in:
@@ -1517,25 +1517,6 @@ void TextureCache<P>::ForEachSparseSegment(ImageBase& image, Func&& func) {
|
||||
}
|
||||
}
|
||||
|
||||
template <class P>
|
||||
void TextureCache<P>::BubbleUpImages(VAddr cpu_addr, size_t size) {
|
||||
ForEachCPUPage(cpu_addr, size, [this](u64 page) {
|
||||
const auto it = page_table.find(page);
|
||||
if (it == page_table.end()) {
|
||||
return;
|
||||
}
|
||||
std::vector<ImageMapId>& map_vector = it->second;
|
||||
for (size_t i = 1; i < map_vector.size(); i++) {
|
||||
ImageMapView& bottom_map = slot_map_views[map_vector[i - 1]];
|
||||
ImageMapView& top_map = slot_map_views[map_vector[i]];
|
||||
if (slot_images[bottom_map.image_id].modification_tick <
|
||||
slot_images[top_map.image_id].modification_tick) {
|
||||
std::swap(map_vector[i - 1], map_vector[i]);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
template <class P>
|
||||
ImageViewId TextureCache<P>::FindOrEmplaceImageView(ImageId image_id, const ImageViewInfo& info) {
|
||||
Image& image = slot_images[image_id];
|
||||
@@ -1849,7 +1830,6 @@ template <class P>
|
||||
void TextureCache<P>::MarkModification(ImageBase& image) noexcept {
|
||||
image.flags |= ImageFlagBits::GpuModified;
|
||||
image.modification_tick = ++modification_tick;
|
||||
BubbleUpImages(image.cpu_addr, image.guest_size_bytes);
|
||||
}
|
||||
|
||||
template <class P>
|
||||
|
||||
@@ -319,8 +319,6 @@ private:
|
||||
template <typename Func>
|
||||
void ForEachSparseSegment(ImageBase& image, Func&& func);
|
||||
|
||||
void BubbleUpImages(VAddr cpu_addr, size_t size);
|
||||
|
||||
/// Find or create an image view in the given image with the passed parameters
|
||||
[[nodiscard]] ImageViewId FindOrEmplaceImageView(ImageId image_id, const ImageViewInfo& info);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user