Merge pull request #10993 from liamwhite/revert-pr-10583
Revert "texture_cache: Fix incorrect logic for AccelerateDMA"
This commit is contained in:
commit
b7c7768e0a
|
@ -865,11 +865,15 @@ void TextureCache<P>::PopAsyncFlushes() {
|
||||||
template <class P>
|
template <class P>
|
||||||
ImageId TextureCache<P>::DmaImageId(const Tegra::DMA::ImageOperand& operand, bool is_upload) {
|
ImageId TextureCache<P>::DmaImageId(const Tegra::DMA::ImageOperand& operand, bool is_upload) {
|
||||||
const ImageInfo dst_info(operand);
|
const ImageInfo dst_info(operand);
|
||||||
const ImageId image_id = FindDMAImage(dst_info, operand.address);
|
const ImageId dst_id = FindDMAImage(dst_info, operand.address);
|
||||||
if (!image_id) {
|
if (!dst_id) {
|
||||||
|
return NULL_IMAGE_ID;
|
||||||
|
}
|
||||||
|
auto& image = slot_images[dst_id];
|
||||||
|
if (False(image.flags & ImageFlagBits::GpuModified)) {
|
||||||
|
// No need to waste time on an image that's synced with guest
|
||||||
return NULL_IMAGE_ID;
|
return NULL_IMAGE_ID;
|
||||||
}
|
}
|
||||||
auto& image = slot_images[image_id];
|
|
||||||
if (image.info.type == ImageType::e3D) {
|
if (image.info.type == ImageType::e3D) {
|
||||||
// Don't accelerate 3D images.
|
// Don't accelerate 3D images.
|
||||||
return NULL_IMAGE_ID;
|
return NULL_IMAGE_ID;
|
||||||
|
@ -883,7 +887,7 @@ ImageId TextureCache<P>::DmaImageId(const Tegra::DMA::ImageOperand& operand, boo
|
||||||
if (!base) {
|
if (!base) {
|
||||||
return NULL_IMAGE_ID;
|
return NULL_IMAGE_ID;
|
||||||
}
|
}
|
||||||
return image_id;
|
return dst_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class P>
|
template <class P>
|
||||||
|
|
Reference in New Issue