lib_burst_generated.dll caused an Illegal Instruction

Some of our players are reporting that the game crashed. They sent the logs and what I found is this “lib_burst_generated.dll caused an Illegal Instruction”. We can’t replicate it ourselves so it’s hard to fix.

Do you have any suggestions on how to investigate this? Attached are the log files that was given to us.

4058266–353251–output_log.txt (10.1 KB)
4058266–353254–errorlog as txt.txt (51.3 KB)

Do you know what CPU they have? Burst currently needs SSE4. Most intel have this but not all older AMD CPUs

How would the player know if his/her CPU supports SSE4? Can I programatically determine if the CPU has it and maybe disable burst on such machine?

Edit: Here are the CPUs of those players where the game crashed:
AMD Phenom II X6 1090T
AMD Phenom II X4 940
Intel(R) Core™2

Are these considered “old”?

Most players would not know. You would have to look up the spec of the CPU. This might not be the reason for your problem but it is a know issue that Unity is working on. In the future the burst compiler will make multiple sets of code using different instruction sets to better fit the capability of the CPU.

I would guess this is fixed when it goes out of preview.

If I disable the one under Jobs > Enable Burst Compilation, would that also disable Burst compilation during build? I’m asking because Unity’s built in systems like TransformSystem is using BurstCompile attribute. Just removing this attribute from my own systems might not fix the issue.

Old AMD’s don’t support SSE4, including old Phenoms (I and II), Athlons, Semprons… In https://discussions.unity.com/t/704978/10 @xoofx mentioned that there is TryGetTargetPlatform on BurstAotCompiler.cs. I dunno if it’s enough to swap the TargetCpu.X64_SSE4 etc to TargetCpu.X64_SSE2 or if Burst will still only build SSE4 target. If you manage to swap this, it would affect all CPUs tho, so you could see more limited gains from Burst.

Om also having such problem:
CPU Type QuadCore AMD Athlon II X4 650, 3215 MHz (16 x 201)
CPU Alias Propus
CPU Stepping BL-C3
Instruction Set x86, x86-64, MMX, 3DNow!, SSE, SSE2, SSE3, SSE4A

And Im Gettiing these chrases every time:

Can anyone can help me solve this ? :roll_eyes::roll_eyes::roll_eyes:

7168300–858700–output_log.txt (84.7 KB)
7168300–858706–error.log.txt (33.1 KB)

@sinaj8118 what version of Burst are you using?