com.unity.burst 1.7.1

com.unity.burst

Notes: processedReleased April 12, 2022

Browse versions

PreviousNext

Unity Compatibility

Minimum Unity: 2019.4

Package Dependencies

🔧 Bug Fixes

  • Fixed errors when working with paths containing special characters
  • Fixed a bug where if you used `FloatMode.Fast` with `math.pow`, where the `y` argument to `math.pow` was actually sourced from an integer, illegal codegen would be generated (LLVM would try and call out to `powf` from the cstdlib).
  • Right pane vertical scrollbar not always showing correctly.
  • Fixed another rare case of the file-is-locked bug where the Burst IL Post Processor could incorrectly hold a file lock on a pdb.
  • Fixed a bug when calling profiling `CreateMarker` on iOS, Burst could fail at runtime saying it was unable to find `CreateMarker__Unmanaged`.
  • Fixed a bug where using `ReinterpretStore(someIndex, (ushort)someValue)` could cause an internal compiler error in Burst.
  • A potential issue with the debug info mover pass, that meant it only affected the first entry point in a module
  • Fixed a potential deadlock whereby if Burst was compiling in the background (the background tasks window showed Burst in it) and a user switched from release to debug in the editor, Burst could cause a deadlock.
  • Fixed a bug where if you had synchronous compilation on a job, disabled Burst compilation and entered playmode, then exited playmode, and finally re-enabled Burst compilation, a hang could occur.
  • Fixed a memory leak where during hashing we'd pin a GC object and never unpin and free it.
  • Fixed a bug where toggling Burst enable <-> disable during a playmode execution using Burst, and then attaching the managed debugger, could cause an editor crash.
  • Inspector font style changing when entering and exiting play mode.
  • Fixed a super rare hashing bug in Burst whereby it was possible that the Burst Hash Cache for a given assembly was out of sync with the Assembly Loader cache.
  • Fixed hashing error that could occur with unbound generic type
  • Fixed a super rare bug where Burst could hit an internal error with `System.InvalidOperationException: Nullable object must have a value`.

📈 Improvements

  • Made Burst explicitly check for any compilation requests that came from `AssemblyBuilder`, and do not compile these with Burst. These exist outside the normal compilation pipeline, and Burst could not support them (but we now explicitly check for that case).
  • Made Burst's ILPP 22% faster by caching dependent assemblies that the being-processed assembly uses.

API Changes

  • Removed the requirement that `BurstLoader` has to initialize `BurstReflection` during a domain reload, making `BurstLoader` setup 2x faster during domain reloads.

Features

    ⚠️ Known Issues