Disable Burst to prevent crash

We are preparing a beta test application. And we have a problem with Burst causing crashes.

We update to 1.2.0 preview.5 and still have crashes on some android devices.

We try disable burst
5064563--497726--upload_2019-10-14_16-1-5.png

But application still crashes
Log

10-14 15:55:24.027: E/AndroidRuntime(32426): FATAL EXCEPTION: UnityMain
10-14 15:55:24.027: E/AndroidRuntime(32426): Process: com.qcore.awars, PID: 32426
10-14 15:55:24.027: E/AndroidRuntime(32426): java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000001
10-14 15:55:24.027: E/AndroidRuntime(32426): Build fingerprint: 'Xiaomi/dipper/dipper:9/PKQ1.180729.001/V10.3.4.0.PEAMIXM:user/release-keys'
10-14 15:55:24.027: E/AndroidRuntime(32426): Revision: '0'
10-14 15:55:24.027: E/AndroidRuntime(32426): pid: 32426, tid: 32442, name: UnityMain  >>> com.qcore.awars <<<
10-14 15:55:24.027: E/AndroidRuntime(32426):     r0 cecfdfb0  r1 00000000  r2 00000001  r3 c4799380
10-14 15:55:24.027: E/AndroidRuntime(32426):     r4 af985d50  r5 00000000  r6 cecfe000  r7 cecfe130
10-14 15:55:24.027: E/AndroidRuntime(32426):     r8 00000001  r9 00000004  sl 02000464  fp cecfdfb0
10-14 15:55:24.027: E/AndroidRuntime(32426):     ip 00000000  sp cecfdf84  lr 00000000  pc af61da2c  cpsr afb39300
10-14 15:55:24.027: E/AndroidRuntime(32426):     at lib_burst_generated.00011a2c(Native Method)

Is it possible to disable burst so that such an error could not occur?

this setting is only in the editor. There is a setting for per platform deployment in the project settings, where you can disable burst for standalone player.

2 Likes

There’s more info about the project settings that @Joachim_Ante_1 mentioned, in the Burst docs:
https://docs.unity3d.com/Packages/com.unity.burst@1.1/manual/index.html#standalone-player-support

Specifically this bit:

3 Likes

thx!

Can you help with advice on what to do. We disabled Burst and switch from mono to il2cpp.
And if there was a crash before
at lib_burst_generated.00011a2c (Native Method)

Then now we could see logs like:

Thread 0 (crashed)
0   libunity.so                        0x00000073cd9cbb90 CrashReporting::Android::SignalHandler(int, siginfo*, void*)
1   libunity.so                        0x00000073cd4e4da8 NativeRuntimeException::signal_handler(int, siginfo*, void*)
2   app_process64                      0x00000061d7023bf8 <system symbols missing>
3   [vdso]                             0x000000746dd0b690 <system symbols missing>
4   libil2cpp.so                       0x00000073c712b4a0 ArchetypeChunk_get_Count_mDA1C82AEE8602D5D742B61D43A287053143AD4F3
5   libil2cpp.so                       0x00000073c6aab814 JobStruct_Process_CC_3_ExecuteChunk_mACCEA17563D529EA8DA18EAC81733FBC21B1E219_gshared
6   libil2cpp.so                       0x00000073c6aab70c JobStruct_Process_CC_3_Execute_m4FEDB7172A926E300F9BB75DE612D93F8406CEA9_gshared
7   libil2cpp.so                       0x00000073c6aab2a8 ExecuteJobFunction_Invoke_mEF8BE63FC98FEE0BFE94208656470D752351FDBA_gshared
8   libil2cpp.so                       0x00000073c6878068 RuntimeInvoker_TrueVoid_t22962CB4C05B1D89B55A6E1139F0E87A90987017_VoidU2A_t3A9D5EB5A83DC9C93DF2C4D6EA67B0F5E885889A_IntPtr_t_IntPtr_t_VoidU2A_t3A9D5EB5A83DC9C93DF2C4D6EA67B0F5E885889A_Int32_t585191389E07734F19F3156FF88FB3EF4800D102(void (*)(), MethodInfo const*, void*, void**)
9   libil2cpp.so                       0x00000073c69d6b94 il2cpp::vm::Runtime::Invoke(MethodInfo const*, void*, void**, Il2CppException**)
10  libunity.so                        0x00000073cd54d9a8 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr*, bool)
11  libunity.so                        0x00000073cd53edf8 ScriptingInvocation::Invoke(ScriptingExceptionPtr*, bool)
12  libunity.so                        0x00000073cd5ed698 SetJobCompilerEnabled(bool)
13  libunity.so                        0x00000073cd5ecc24 ScheduleManagedJob(JobScheduleParameters const&)
14  libunity.so                        0x00000073cd5ee258 JobQueue::Exec(JobInfo*, long long, int)
15  libunity.so                        0x00000073cd5ef03c JobQueue::WaitForJobGroupID(JobGroupID, JobQueue::JobQueueWorkStealFlags)
16  libunity.so                        0x00000073cd5f12d4 CompleteFenceInternal(JobFence&, WorkStealFlags)
17  libunity.so                        0x00000073cd4bae04 JobHandle_CUSTOM_ScheduleBatchedJobsAndComplete(JobFence&)
18  libil2cpp.so                       0x00000073c71354c8 ComponentJobSafetyManager_CompleteReadAndWriteDependencyNoChecks_m2C2E448A9A01E836EA0D96217453047A747743E5
19  libil2cpp.so                       0x00000073c70c4b68 EntityManager_SetComponentDataRaw_mA865897FDD32553001C90BC4A2CBEB3E061700AD
20  libil2cpp.so                       0x00000073c7256f78 EntityCommandBuffer_PlaybackChain_mE434D5200526FD089A5835D88054F705B6127C3D
21  libil2cpp.so                       0x00000073c7256600 EntityCommandBuffer_Playback_m794DA5FE5052C1006886B407387E72459713B5B1
22  libil2cpp.so                       0x00000073c7135e6c ComponentSystem_AfterOnUpdate_mC7F85D3C4165C75BF171E4EE61B5553F2AE907F4
23  libil2cpp.so                       0x00000073c6b318bc GameController_Execute_m55F692BAA2B4C52691DF37AC2095B9E73A02B41F
24  libil2cpp.so                       0x00000073c6b316e8 GameController_Update_mC04873FE3A438216BB5191075601DABBC27E9F6F
25  libil2cpp.so                       0x00000073c6761a20 RuntimeInvoker_TrueVoid_t22962CB4C05B1D89B55A6E1139F0E87A90987017(void (*)(), MethodInfo const*, void*, void**)
26  libil2cpp.so                       0x00000073c69d6b94 il2cpp::vm::Runtime::Invoke(MethodInfo const*, void*, void**, Il2CppException**)
27  libunity.so                        0x00000073cd54d9a8 scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr*, bool)
28  libunity.so                        0x00000073cd53edf8 ScriptingInvocation::Invoke(ScriptingExceptionPtr*, bool)
29  libunity.so                        0x00000073cd5397f4 MonoBehaviour::CallUpdateMethod(int)
30  libunity.so                        0x00000073cd65db68 void BaseBehaviourManager::CommonUpdate<BehaviourManager>()
31  libunity.so                        0x00000073cd5cb1a4 ExecutePlayerLoop(NativePlayerLoopSystem*)
32  libunity.so                        0x00000073cd5cb1d8 ExecutePlayerLoop(NativePlayerLoopSystem*)
33  libunity.so                        0x00000073cd5cb3ac PlayerLoop()
34  libunity.so                        0x00000073cd4e2f08 UnityPlayerLoop()
35  libunity.so                        0x00000073cd4dcec8 nativeRender(_JNIEnv*, _jobject*)
36  base.odex                          0x00000073ce8930d0 <system symbols missing>

How to know what is:

ArchetypeChunk_get_Count_mDA1C82AEE8602D5D742B61D43A287053143AD4F3
5   libil2cpp.so                       0x00000073c6aab814 JobStruct_Process_CC_3_ExecuteChunk_mACCEA17563D529EA8DA18EAC81733FBC21B1E219_gshared

The main problem is that everything is fine in the editor. We have tests that simulate hundreds of levels. But on the device some random crashes…

I found all the methods but I don’t understand crash reason
My research

7   libil2cpp.so                       0x000000762ae762a8 ExecuteJobFunction_Invoke_mEF8BE63FC98FEE0BFE94208656470D752351FDBA_gshared

→

// System.Void Unity.Entities.JobForEachExtensions_JobStruct_Process_CC`3_ExecuteJobFunction<ArcanoidWars.Unity.ECS.SpellMoveSystem_MoveJob,ArcanoidWars.Unity.ECS.SpellVelocity,ArcanoidWars.Unity.ECS.SpellPos>::Invoke(Unity.Entities.JobForEachExtensions_JobStruct_Process_CC`3<T,T0,T1>&,System.IntPtr,System.IntPtr,Unity.Jobs.LowLevel.Unsafe.JobRanges&,System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void ExecuteJobFunction_Invoke_mEF8BE63FC98FEE0BFE94208656470D752351FDBA_gshared (ExecuteJobFunction_t1154D614B02FF848F4AC80848F0CD399AE4BED75 * __this, JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * ___data0, intptr_t ___additionalPtr1, intptr_t ___bufferRangePatchData2, JobRanges_tDC96FA42693E9E49D1423C4E3A98C93331EA9D14 * ___ranges3, int32_t ___jobIndex4, const RuntimeMethod* method)
{

→

    [UpdateBefore(typeof(SpellSpawnV3System))]
    public class SpellMoveSystem : JobComponentSystem
    {
        [BurstCompile]
        private struct MoveJob : IJobForEach<SpellVelocity, SpellPos>
        {
            public int Run;
          
            public void Execute(
                [ReadOnly] ref SpellVelocity vel,
                ref SpellPos pos)
            {
                if (Run==1)
                {
                    pos.Value = pos.Value + vel.Value;
                }
            }
        }

        private int _lastTick = -1;
        protected override JobHandle OnUpdate(JobHandle inputDeps)
        {
            var tick = GetSingleton<Tick>();
            var run = _lastTick != tick.Value?1:0;
            _lastTick = tick.Value;
          
            return new MoveJob
            {
                Run = run
            }.ScheduleSingle(this, inputDeps);
        }
    }
libil2cpp.so                       0x000000762ae7670c JobStruct_Process_CC_3_Execute_m4FEDB7172A926E300F9BB75DE612D93F8406CEA9_gshared
// System.Void Unity.Entities.JobForEachExtensions_JobStruct_Process_CC`3<ArcanoidWars.Unity.ECS.SpellMoveSystem_MoveJob,ArcanoidWars.Unity.ECS.SpellVelocity,ArcanoidWars.Unity.ECS.SpellPos>::Execute(Unity.Entities.JobForEachExtensions_JobStruct_Process_CC`3<T,T0,T1>&,System.IntPtr,System.IntPtr,Unity.Jobs.LowLevel.Unsafe.JobRanges&,System.Int32)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void JobStruct_Process_CC_3_Execute_m4FEDB7172A926E300F9BB75DE612D93F8406CEA9_gshared (JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * ___jobData0, intptr_t ___additionalPtr1, intptr_t ___bufferRangePatchData2, JobRanges_tDC96FA42693E9E49D1423C4E3A98C93331EA9D14 * ___ranges3, int32_t ___jobIndex4, const RuntimeMethod* method)
{
    ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 * V_0 = NULL;
    int32_t* V_1 = NULL;
    int32_t V_2 = 0;
    int32_t V_3 = 0;
    int32_t V_4 = 0;
    {
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_0 = ___jobData0;
        NativeArray_1_tB942A78CFAC276F95E8B08EBB94DF670FFAA0405  L_1 = (NativeArray_1_tB942A78CFAC276F95E8B08EBB94DF670FFAA0405 )L_0->get_PrefilterData_2();
        ComponentChunkIterator_UnpackPrefilterData_m3484D59BA7F60D16904531A30F945970D33E22B5((NativeArray_1_tB942A78CFAC276F95E8B08EBB94DF670FFAA0405 )L_1, (ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 **)(ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 **)(&V_0), (int32_t**)(int32_t**)(&V_1), (int32_t*)(int32_t*)(&V_2), /*hidden argument*/NULL);
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_2 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_3 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_2->get_address_of_Iterator_0();
        bool L_4 = (bool)L_3->get_m_IsParallelFor_13();
        if (!L_4)
        {
            goto IL_003b;
        }
    }
    {
        goto IL_002c;
    }
IL_0020:
    {
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_5 = ___jobData0;
        intptr_t L_6 = ___bufferRangePatchData2;
        int32_t L_7 = V_3;
        int32_t L_8 = V_4;
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 * L_9 = V_0;
        int32_t* L_10 = V_1;
        ((  void (*) (JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 *, intptr_t, int32_t, int32_t, ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *, int32_t*, const RuntimeMethod*))IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 5)->methodPointer)((JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 *)(JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 *)L_5, (intptr_t)L_6, (int32_t)L_7, (int32_t)L_8, (ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)(ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)L_9, (int32_t*)(int32_t*)L_10, /*hidden argument*/IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 5));
    }
IL_002c:
    {
        JobRanges_tDC96FA42693E9E49D1423C4E3A98C93331EA9D14 * L_11 = ___ranges3;
        int32_t L_12 = ___jobIndex4;
        bool L_13 = JobsUtility_GetWorkStealingRange_m760093A79807BC4741E89A98A6192D41D5451A04((JobRanges_tDC96FA42693E9E49D1423C4E3A98C93331EA9D14 *)(JobRanges_tDC96FA42693E9E49D1423C4E3A98C93331EA9D14 *)L_11, (int32_t)L_12, (int32_t*)(int32_t*)(&V_3), (int32_t*)(int32_t*)(&V_4), /*hidden argument*/NULL);
        if (L_13)
        {
            goto IL_0020;
        }
    }
    {
        return;
    }
IL_003b:
    {
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_14 = ___jobData0;
        intptr_t L_15 = ___bufferRangePatchData2;
        int32_t L_16 = V_2;
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 * L_17 = V_0;
        int32_t* L_18 = V_1;
        ((  void (*) (JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 *, intptr_t, int32_t, int32_t, ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *, int32_t*, const RuntimeMethod*))IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 5)->methodPointer)((JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 *)(JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 *)L_14, (intptr_t)L_15, (int32_t)0, (int32_t)L_16, (ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)(ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)L_17, (int32_t*)(int32_t*)L_18, /*hidden argument*/IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 5));
        return;
    }
}
5   libil2cpp.so                       0x000000762ae76814 JobStruct_Process_CC_3_ExecuteChunk_mACCEA17563D529EA8DA18EAC81733FBC21B1E219_gshared
// System.Void Unity.Entities.JobForEachExtensions_JobStruct_Process_CC`3<ArcanoidWars.Unity.ECS.SpellMoveSystem_MoveJob,ArcanoidWars.Unity.ECS.SpellVelocity,ArcanoidWars.Unity.ECS.SpellPos>::ExecuteChunk(Unity.Entities.JobForEachExtensions_JobStruct_Process_CC`3<T,T0,T1>&,System.IntPtr,System.Int32,System.Int32,Unity.Entities.ArchetypeChunk*,System.Int32*)
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR void JobStruct_Process_CC_3_ExecuteChunk_mACCEA17563D529EA8DA18EAC81733FBC21B1E219_gshared (JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * ___jobData0, intptr_t ___bufferRangePatchData1, int32_t ___begin2, int32_t ___end3, ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 * ___chunks4, int32_t* ___entityIndices5, const RuntimeMethod* method)
{
    int32_t V_0 = 0;
    int32_t V_1 = 0;
    int32_t V_2 = 0;
    ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26  V_3;
    memset((&V_3), 0, sizeof(V_3));
    int32_t V_4 = 0;
    void* V_5 = NULL;
    void* V_6 = NULL;
    int32_t V_7 = 0;
    {
        V_0 = (int32_t)0;
        V_1 = (int32_t)0;
        int32_t L_0 = ___begin2;
        V_2 = (int32_t)L_0;
        goto IL_00f9;
    }
IL_000b:
    {
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 * L_1 = ___chunks4;
        int32_t L_2 = V_2;
        uint32_t L_3 = sizeof(ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 );
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26  L_4 = (*(ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)((ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)il2cpp_codegen_add((intptr_t)L_1, (intptr_t)((intptr_t)il2cpp_codegen_multiply((intptr_t)(((intptr_t)L_2)), (int32_t)L_3)))));
        V_3 = (ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 )L_4;
        int32_t* L_5 = ___entityIndices5;
        int32_t L_6 = V_2;
        int32_t L_7 = *((int32_t*)((int32_t*)il2cpp_codegen_add((intptr_t)L_5, (intptr_t)((intptr_t)il2cpp_codegen_multiply((intptr_t)(((intptr_t)L_6)), (int32_t)4)))));
        int32_t L_8 = ArchetypeChunk_get_Count_mDA1C82AEE8602D5D742B61D43A287053143AD4F3((ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)(ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 *)(&V_3), /*hidden argument*/NULL);
        V_4 = (int32_t)L_8;
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26  L_9 = V_3;
        Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 * L_10 = (Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)L_9.get_m_Chunk_0();
        NullCheck(L_10);
        Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 * L_11 = (Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 *)L_10->get_Archetype_0();
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_12 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_13 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_12->get_address_of_Iterator_0();
        int32_t L_14 = (int32_t)L_13->get_TypeIndex0_1();
        ChunkDataUtility_GetIndexInTypeArray_m49E27315BD05861F6E380D61715D115CEC950056((Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 *)(Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 *)L_11, (int32_t)L_14, (int32_t*)(int32_t*)(&V_0), /*hidden argument*/NULL);
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26  L_15 = V_3;
        Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 * L_16 = (Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)L_15.get_m_Chunk_0();
        NullCheck(L_16);
        Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 * L_17 = (Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 *)L_16->get_Archetype_0();
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_18 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_19 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_18->get_address_of_Iterator_0();
        int32_t L_20 = (int32_t)L_19->get_TypeIndex1_2();
        ChunkDataUtility_GetIndexInTypeArray_m49E27315BD05861F6E380D61715D115CEC950056((Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 *)(Archetype_t9AABCD1D1DA809E18167625CB364DEA6D03F3635 *)L_17, (int32_t)L_20, (int32_t*)(int32_t*)(&V_1), /*hidden argument*/NULL);
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26  L_21 = V_3;
        Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 * L_22 = (Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)L_21.get_m_Chunk_0();
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_23 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_24 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_23->get_address_of_Iterator_0();
        int32_t L_25 = (int32_t)L_24->get_IsReadOnly0_7();
        int32_t L_26 = V_0;
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_27 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_28 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_27->get_address_of_Iterator_0();
        uint32_t L_29 = (uint32_t)L_28->get_GlobalSystemVersion_0();
        void* L_30 = ComponentChunkIterator_GetChunkComponentDataPtr_m11D5CB65A1F1E83C1CE7C41272488DC16E26093A((Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)(Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)L_22, (bool)((((int32_t)L_25) == ((int32_t)0))? 1 : 0), (int32_t)L_26, (uint32_t)L_29, /*hidden argument*/NULL);
        void* L_31 = UnsafeUtilityEx_RestrictNoAlias_mB436834BAD3ABE4CE8216130508829BA93A38E56((void*)(void*)L_30, /*hidden argument*/NULL);
        V_5 = (void*)L_31;
        ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26  L_32 = V_3;
        Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 * L_33 = (Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)L_32.get_m_Chunk_0();
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_34 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_35 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_34->get_address_of_Iterator_0();
        int32_t L_36 = (int32_t)L_35->get_IsReadOnly1_8();
        int32_t L_37 = V_1;
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_38 = ___jobData0;
        ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 * L_39 = (ProcessIterationData_tA6A2CD39EA1546500B4DB7F80E6D7218012D15D8 *)L_38->get_address_of_Iterator_0();
        uint32_t L_40 = (uint32_t)L_39->get_GlobalSystemVersion_0();
        void* L_41 = ComponentChunkIterator_GetChunkComponentDataPtr_m11D5CB65A1F1E83C1CE7C41272488DC16E26093A((Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)(Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 *)L_33, (bool)((((int32_t)L_36) == ((int32_t)0))? 1 : 0), (int32_t)L_37, (uint32_t)L_40, /*hidden argument*/NULL);
        void* L_42 = UnsafeUtilityEx_RestrictNoAlias_mB436834BAD3ABE4CE8216130508829BA93A38E56((void*)(void*)L_41, /*hidden argument*/NULL);
        V_6 = (void*)L_42;
        V_7 = (int32_t)0;
        goto IL_00ef;
    }
IL_00c6:
    {
        JobStruct_Process_CC_3_tEB69143CE58708989C1E4706DBEF80F18ED06963 * L_43 = ___jobData0;
        MoveJob_t0537A53974D2925D36A5D840F24FD20A7749133C * L_44 = (MoveJob_t0537A53974D2925D36A5D840F24FD20A7749133C *)L_43->get_address_of_Data_1();
        void* L_45 = V_5;
        int32_t L_46 = V_7;
        SpellVelocity_tEDF31D05B3B291750B9E16DB64F9BC0B03A800AC * L_47 = ((  SpellVelocity_tEDF31D05B3B291750B9E16DB64F9BC0B03A800AC * (*) (void*, int32_t, const RuntimeMethod*))IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 7)->methodPointer)((void*)(void*)L_45, (int32_t)L_46, /*hidden argument*/IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 7));
        void* L_48 = V_6;
        int32_t L_49 = V_7;
        SpellPos_tB1883E78B36A801F26FC7657622E27D940508529 * L_50 = ((  SpellPos_tB1883E78B36A801F26FC7657622E27D940508529 * (*) (void*, int32_t, const RuntimeMethod*))IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 8)->methodPointer)((void*)(void*)L_48, (int32_t)L_49, /*hidden argument*/IL2CPP_RGCTX_METHOD_INFO(InitializedTypeInfo(method->klass)->rgctx_data, 8));
        MoveJob_Execute_m41B0C237EB3D142760561BEE2E97E982A75FACA0((MoveJob_t0537A53974D2925D36A5D840F24FD20A7749133C *)(MoveJob_t0537A53974D2925D36A5D840F24FD20A7749133C *)L_44, (SpellVelocity_tEDF31D05B3B291750B9E16DB64F9BC0B03A800AC *)(SpellVelocity_tEDF31D05B3B291750B9E16DB64F9BC0B03A800AC *)L_47, (SpellPos_tB1883E78B36A801F26FC7657622E27D940508529 *)(SpellPos_tB1883E78B36A801F26FC7657622E27D940508529 *)L_50, /*hidden argument*/NULL);
        int32_t L_51 = V_7;
        V_7 = (int32_t)((int32_t)il2cpp_codegen_add((int32_t)L_51, (int32_t)1));
    }
IL_00ef:
    {
        int32_t L_52 = V_7;
        int32_t L_53 = V_4;
        if ((!(((uint32_t)L_52) == ((uint32_t)L_53))))
        {
            goto IL_00c6;
        }
    }
    {
        int32_t L_54 = V_2;
        V_2 = (int32_t)((int32_t)il2cpp_codegen_add((int32_t)L_54, (int32_t)1));
    }
IL_00f9:
    {
        int32_t L_55 = V_2;
        int32_t L_56 = ___end3;
        if ((!(((uint32_t)L_55) == ((uint32_t)L_56))))
        {
            goto IL_000b;
        }
    }
    {
        return;
    }
}
// System.Int32 Unity.Entities.ArchetypeChunk::get_Count()
IL2CPP_EXTERN_C IL2CPP_METHOD_ATTR int32_t ArchetypeChunk_get_Count_mDA1C82AEE8602D5D742B61D43A287053143AD4F3 (ArchetypeChunk_tD1A74CD2B8C7E5906156F5D2F81052BCCD972A26 * __this, const RuntimeMethod* method)
{
    {
        Chunk_t6BEA5ACE4335AB76A7CD504541A1F55183260898 * L_0 = __this->get_m_Chunk_0();
        NullCheck(L_0);
        int32_t L_1 = L_0->get_Count_2();
        return L_1;
    }
}
[code]

I’m not sure I can help you with the new problem, but for future reference: Here is an explanation of how to find out how the hashes in the log map to the jobs compiled by Burst.

1 Like

Yes it is useful. But we disable burst ) And have “normal” il2cpp crash. il2cpp generate project_path\Temp\StagingArea\Il2Cpp\il2cppOutput and we found all methods.
But thanks so we can explore burst crash