UE 5.8.2 Steam Deck Linux: Vulkan compute PSO precaching crashes RADV/ACO (@store_deref)

Summary

A native Linux game packaged with Unreal Engine 5.8.2 consistently crashes on Steam Deck during Vulkan compute PSO precaching.

The crash occurs inside the Steam Deck RADV/ACO shader compiler while Unreal is creating a compute pipeline.

The driver reports:

ACO ERROR:
Unimplemented intrinsic instr: @store_deref

Disabling PSO precaching on Linux with:

r.PSOPrecaching=0

prevents the crash.

With PSO precaching disabled, the same build successfully remained in the main menu and then ran several minutes of gameplay including combat, enemies and fire effects without reproducing the failure.

What Type of Bug are you experiencing?

Rendering (Graphics / Niagara)

Steps to Reproduce

  1. Package a UE 5.8.2 native Linux build using Vulkan / VULKAN_SM6 with the default PSO precaching enabled.

  2. Run the native Linux build on Steam Deck. This is not running through Proton.

  3. Allow the main menu to load or enter gameplay.

  4. Within seconds, the process aborts during asynchronous compute PSO creation.

  5. The crash reports SIGABRT in the Vulkan compute PSO path, including:
    FVulkanPipelineStateCacheManager::CreateComputePipeline
    FCompileComputePipelineStateTask::CompilePSOInternal
    FPSOPrecacheAsyncTask::DoTaskWork

  6. A direct native run with stdout enabled also reports:

    ACO ERROR:
    Unimplemented intrinsic instr: @store_deref

Workaround test:

Add the following to Config/Linux/LinuxEngine.ini:

[ConsoleVariables]
r.PSOPrecaching=0

Rebuild and run the same game on the same Steam Deck.

With this setting the crash no longer occurs.

Expected Result

The UE 5.8.2 native Linux Vulkan build should create and precache compute pipeline states on Steam Deck without causing RADV/ACO to abort. The main menu and gameplay should remain stable with normal PSO precaching enabled.

Observed Result

With normal PSO precaching enabled, the game repeatedly crashes shortly after the main menu loads or shortly after entering gameplay.

Six captured crashes produced the same call-stack signature.

The failure is:

SIGABRT: abort() called

Relevant Unreal frames:

FVulkanPipelineStateCacheManager::CreateComputePipeline
FVulkanPipelineStateCacheManager::GetOrCreateComputePipeline
FVulkanDynamicRHI::RHICreateComputePipelineState
FCompileComputePipelineStateTask::CompilePSOInternal
FPSOPrecacheAsyncTask::DoTaskWork

Direct native execution exposes this RADV/ACO compiler error:

ACO ERROR:
Unimplemented intrinsic instr: @store_deref

With r.PSOPrecaching=0 loaded from the Linux configuration before gameplay, the same build remains stable.

Affects Versions

5.8

Platform(s)

Linux

For crash reports, include your callstack

Fatal error:
SIGABRT: abort() called

Relevant engine frames:

FVulkanPipelineStateCacheManager::CreateComputePipeline
FVulkanPipelineStateCacheManager::GetOrCreateComputePipeline
FVulkanDynamicRHI::RHICreateComputePipelineState
FCompileComputePipelineStateTask::CompilePSOInternal
FPSOPrecacheAsyncTask::DoTaskWork

Driver/compiler:
RADV / libvulkan_radeon.so

ACO ERROR:
Unimplemented intrinsic instr: @store_deref

Additional Notes

Environment:

Unreal Engine 5.8.2
Steam Deck / SteamOS
Native Linux build, not Proton
Vulkan / VULKAN_SM6
AMD Custom GPU 0932 / RADV VANGOGH
Mesa reported by the runtime:
Mesa 26.0.0-devel (git-9cc9241790)

Confirmed workaround:

Config/Linux/LinuxEngine.ini

[ConsoleVariables]
r.PSOPrecaching=0

The runtime confirms that r.PSOPrecaching=0 is loaded.

With the workaround enabled:

  • Main menu remained stable for approximately 84 seconds.
  • The gameplay level loaded successfully.
  • Gameplay ran for approximately 3 minutes 37 seconds.
  • Combat, enemies and fire effects were exercised.
  • No SIGABRT occurred.
  • No ACO @store_deref error occurred.
  • No new crash report was generated.
  • The game was still running when testing ended.

The crash was also reproduced by launching the native Linux executable directly without Steam Fossilize in the fatal stack, so Fossilize does not appear to be required to trigger the issue.

Earlier development versions of this game ran on the same Steam Deck using older Unreal Engine versions. I have not performed a controlled cross-version minimal reproduction, so I cannot confirm exactly when the issue was introduced.

The original crash directories were removed during subsequent clean deployments while testing the workaround.

If useful, I can reproduce the crash again with PSO precaching enabled and provide fresh MoonBurn.log, Diagnostics.txt, CrashContext.runtime-xml, VKhashes.txt, stdout output, or other diagnostics requested by Epic. I can also perform additional reproduction or PSO/shader capture steps if you tell me what information would be most useful.