[GH-ISSUE #1835] Some games' compute shaders fail to compile if the game window's height is bigger than 1080 #630

Closed
opened 2026-02-27 21:07:19 +03:00 by kerem · 3 comments
Owner

Originally created by @kalaposfos13 on GitHub (Dec 21, 2024).
Original GitHub issue: https://github.com/shadps4-emu/shadPS4/issues/1835

This is the most baffling error I have ever come across: This setting shouldn't impact the emulator at all, so it's very strange that it happens. On the latest main build, GR2 reaches menus if unmodded and loads the test_player if you decide to mod it, so this is not because of a change in my gr2-hacks branch.

How to reproduce: On the default 720p setting, the game loads no problem. If you set the height to 1080, it is still fine, but even 1081 makes it crash on boot.

Width doesn't seem to make a difference, and the game boots fine on 9999x720 and 9999x1080.

By attaching a debugger, I can get a stack trace of the problem, and it seems like most, if not all compute shaders fail to compile: Skipping all compute shaders work (but with the expected graphical issues), and I gave up after skipping all these and concluding it's a general occurrence:

0x9bc992ef,
0xddf2322d,
0xaafa61e8,
0x2a8c3ba9, 
0x8503bcb7, 
0x3615273f, 
0x12bb8982,
0xc12dbba7, 
0xe172c821,

Update: It seems like only these are the only two games in my library that have this problem:
CUSA04943 Gravity Rush 2
Hits the following assert:
ASSERT(image.GetType() != AmdGpu::ImageType::Color2DMsaa && image.GetType() != AmdGpu::ImageType::Color2DMsaaArray);
CUSA03745 The Last Guardian
Hits the following assert:
ASSERT_MSG(instFormat.src_type != ScalarType::Undefined && instFormat.dst_type != ScalarType::Undefined, "Instruction format table incomplete for opcode {} ({}, encoding = {})", magic_enum::enum_name(m_instruction.opcode), u32(m_instruction.opcode), magic_enum::enum_name(encoding));

On the hardware and OS side, so far I have confirmed it happens both on Windows and Linux with my 3060 Laptop GPU, and on a 3080 on Windows, from iExplosiveRage.
This was first reported by iExplosiveRage on Discord a few weeks ago, but we didn't realize this was the root problem until recently.

Originally created by @kalaposfos13 on GitHub (Dec 21, 2024). Original GitHub issue: https://github.com/shadps4-emu/shadPS4/issues/1835 This is the most baffling error I have ever come across: This setting shouldn't impact the emulator at all, so it's very strange that it happens. On the latest main build, GR2 reaches menus if unmodded and loads the test_player if you decide to mod it, so this is not because of a change in my gr2-hacks branch. How to reproduce: On the default 720p setting, the game loads no problem. If you set the height to 1080, it is still fine, but even 1081 makes it crash on boot. Width doesn't seem to make a difference, and the game boots fine on 9999x720 and 9999x1080. By attaching a debugger, I can get a stack trace of the problem, and it seems like most, if not all compute shaders fail to compile: Skipping all compute shaders work (but with the expected graphical issues), and I gave up after skipping all these and concluding it's a general occurrence: ``` 0x9bc992ef, 0xddf2322d, 0xaafa61e8, 0x2a8c3ba9, 0x8503bcb7, 0x3615273f, 0x12bb8982, 0xc12dbba7, 0xe172c821, ``` Update: It seems like only these are the only two games in my library that have this problem: CUSA04943 Gravity Rush 2 Hits the following assert: `ASSERT(image.GetType() != AmdGpu::ImageType::Color2DMsaa && image.GetType() != AmdGpu::ImageType::Color2DMsaaArray);` CUSA03745 The Last Guardian Hits the following assert: `ASSERT_MSG(instFormat.src_type != ScalarType::Undefined && instFormat.dst_type != ScalarType::Undefined, "Instruction format table incomplete for opcode {} ({}, encoding = {})", magic_enum::enum_name(m_instruction.opcode), u32(m_instruction.opcode), magic_enum::enum_name(encoding));` On the hardware and OS side, so far I have confirmed it happens both on Windows and Linux with my 3060 Laptop GPU, and on a 3080 on Windows, from iExplosiveRage. This was first reported by iExplosiveRage on Discord a few weeks ago, but we didn't realize this was the root problem until recently.
kerem closed this issue 2026-02-27 21:07:19 +03:00
Author
Owner

@Hermiten commented on GitHub (Feb 12, 2025):

This one is still open, did you investigate again ? Is it still revelant ?

<!-- gh-comment-id:2654559911 --> @Hermiten commented on GitHub (Feb 12, 2025): This one is still open, did you investigate again ? Is it still revelant ?
Author
Owner

@kalaposfos13 commented on GitHub (Feb 12, 2025):

I just tested again, and yes, this still happens at least on The Last Guardian, though the error has changed:

[Debug] <Critical> decode.cpp:264 operator(): Assertion Failed!
Instruction format table incomplete for opcode  (13, encoding = 0x80000000)
<!-- gh-comment-id:2654570760 --> @kalaposfos13 commented on GitHub (Feb 12, 2025): I just tested again, and yes, this still happens at least on The Last Guardian, though the error has changed: ``` [Debug] <Critical> decode.cpp:264 operator(): Assertion Failed! Instruction format table incomplete for opcode (13, encoding = 0x80000000) ```
Author
Owner

@kalaposfos13 commented on GitHub (Jul 7, 2025):

Fixed by #3194.

<!-- gh-comment-id:3045790833 --> @kalaposfos13 commented on GitHub (Jul 7, 2025): Fixed by #3194.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/shadPS4#630
No description provided.