Search Unity

  1. Click here to see what's on sale for the "Best of Super Sale" on the Asset Store
    Dismiss Notice
  2. We are looking for feedback on the naming of a new user research platform that we are working on.
    Dismiss Notice
  3. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

Feedback [Burst] Unexpected exception Burst.Compiler.IL.Aot.AotLinkerException: The native link step failed.

Discussion in 'Data Oriented Technology Stack' started by iamarugin, Mar 27, 2020.

  1. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    538
    Tried to install Burst 1.3.0 preview.8
    When running game I got these errors in console:
    Code (CSharp):
    1. lld: error: undefined symbol: ldexpf
    2. >>> referenced by unknown\unknown:0
    3. >>>               C:\\Unity\\rocket_science\\Temp\\Burst\\burst-aotjojfvldp.r7m\\lib_burst_generated_part_0.obj:(C84D5A21D816CF0F)
    4. >>> referenced by unknown\unknown:0
    5. >>>               C:\\Unity\\rocket_science\\Temp\\Burst\\burst-aotjojfvldp.r7m\\lib_burst_generated_part_0.obj:(C84D5A21D816CF0F)
    6. >>> referenced by unknown\unknown:0
    7. >>>               C:\\Unity\\rocket_science\\Temp\\Burst\\burst-aotjojfvldp.r7m\\lib_burst_generated_part_0.obj:(C84D5A21D816CF0F)
    8. >>> referenced by unknown\unknown:0
    9. >>>               C:\\Unity\\rocket_science\\Temp\\Burst\\burst-aotjojfvldp.r7m\\lib_burst_generated_part_0.obj:(C84D5A21D816CF0F)
    10.  
    11.  
    12. While compiling job: System.Void Unity.Entities.JobChunkExtensions/JobChunkProducer`1<QB.EdgeFansSystem/QB.<>c__DisplayClass_OnUpdate_LambdaJob1>::Execute(Unity.Entities.JobChunkExtensions/JobChunkWrapper`1<T>&,System.IntPtr,System.IntPtr,Unity.Jobs.LowLevel.Unsafe.JobRanges&,System.Int32)
    13. at <empty>:line 0
    Code (CSharp):
    1. Unexpected exception Burst.Compiler.IL.Aot.AotLinkerException: The native link step failed. Check previous exception in the log - linker command line : "C:\Unity\rocket_science\Library\PackageCache\com.unity.burst@1.3.0-preview.8\.Runtime\hostwin\lld -flavor link "@C:\Users\valer\AppData\Local\Temp\tmp2fd5726e.tmp""
    2.   at Burst.Compiler.IL.Aot.AotNativeLinkBase.RunNativeLinkerTool (System.String command, System.String arguments, System.String errorMessage, System.String commandType, System.String workingDirectory) [0x00074] in <db0e45d9997943f08d641850e219b36b>:0
    3.   at Burst.Compiler.IL.Aot.AotNativeLinkLLVMWindows.Link (Burst.Backend.TargetCpu targetCpu, System.Collections.Generic.List`1[T] inputFiles, System.String outputFile, System.Boolean enableDebugInfo) [0x00123] in <db0e45d9997943f08d641850e219b36b>:0
    4.   at Burst.Compiler.IL.Aot.AotNativeLink.LinkNatively (Burst.Compiler.IL.Aot.AotCompilerOptions options, System.Collections.Generic.List`1[T] inputFiles, System.String outputFile, System.Boolean enableDebugInfo, System.IO.TextWriter consoleOut, System.IO.TextWriter consoleError) [0x0001e] in <db0e45d9997943f08d641850e219b36b>:0
    5.   at Burst.Compiler.IL.Aot.AotCompiler.Link (System.Collections.Generic.List`1[T] groups, System.String nameSuffix, Burst.Compiler.IL.Aot.AotCompilerOptions compilerOptions, System.IO.TextWriter consoleOut, System.IO.TextWriter consoleError) [0x00182] in <db0e45d9997943f08d641850e219b36b>:0
    6.   at Burst.Compiler.IL.Jit.Providers.OnDiskJitProvider.BeginCompileModule (Burst.Backend.Module module, Burst.Compiler.IL.NativeCompiler nativeCompiler, Burst.Compiler.IL.NativeCompilerOptions options, Burst.Compiler.IL.Jit.JitOptions jitOptions, Burst.Compiler.IL.Helpers.Hash128& moduleHash, Burst.Compiler.IL.Jit.JitCacheManager jitCacheManager) [0x00089] in <db0e45d9997943f08d641850e219b36b>:0
    7.   at Burst.Compiler.IL.Jit.JitCompiler.CompileMethodInternal (Burst.Compiler.IL.Jit.JitResult result, System.Collections.Generic.List`1[T] methodsToCompile, Burst.Compiler.IL.Jit.JitOptions jitOptions) [0x00554] in <db0e45d9997943f08d641850e219b36b>:0
    8.   at Burst.Compiler.IL.Jit.JitCompiler.CompileMethods (Mono.Cecil.MethodReference[] methodReferences, Burst.Compiler.IL.Jit.JitOptions jitOptions) [0x0024f] in <db0e45d9997943f08d641850e219b36b>:0
    9.   at Burst.Compiler.IL.Jit.JitCompiler.CompileMethod (Mono.Cecil.MethodReference methodReference, Burst.Compiler.IL.Jit.JitOptions jitOptions) [0x0001c] in <db0e45d9997943f08d641850e219b36b>:0
    10.   at Burst.Compiler.IL.Jit.JitCompilerService+CompilerThreadContext.Compile (Burst.Compiler.IL.Jit.JitCompilerService+CompileJob job) [0x003d7] in <db0e45d9997943f08d641850e219b36b>:0
    11.  
    12. While compiling job: System.Void Unity.Entities.JobChunkExtensions/JobChunkProducer`1<QB.EdgeFansSystem/QB.<>c__DisplayClass_OnUpdate_LambdaJob1>::Execute(Unity.Entities.JobChunkExtensions/JobChunkWrapper`1<T>&,System.IntPtr,System.IntPtr,Unity.Jobs.LowLevel.Unsafe.JobRanges&,System.Int32)
    13. at <empty>:line 0
    14.  
    Unity 2019.3.5f1
    Burst Burst 1.3.0 preview.7 works fine
     
  2. sheredom

    sheredom

    Unity Technologies

    Joined:
    Jul 15, 2019
    Posts:
    109
    Hey there! I made some changes to make LLVM optimize our math functions some more, and I'm going to guess that LLVM has introduced the ldexp during optimizations. Can you confirm if you are using pow or exp2 in your code, or could you give us a repro though? It'd speed up me fixing it!
     
  3. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    538
    Yes, I am using pow from Unity.Mathematics in that system. I will try to prepare repro project
     
  4. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    538
    @sheredom Case 1231207
    I've attached repro project to it
     
  5. sheredom

    sheredom

    Unity Technologies

    Joined:
    Jul 15, 2019
    Posts:
    109
    Thanks! I think I've managed to repro it locally - LLVM is optimizing pow(2.0, y) and exp2(x) where x or y came from an int/uint into ldexp basically.

    I should have a fix in the next preview.
     
  6. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    538
    Great, thank you
     
  7. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    538
    Tried 1.3.0 preview.9 looks like everything is working as expected. Thanks again.
     
    sheredom likes this.
unityunity