Search Issue Tracker
By Design
By Design in 1.8.X
Votes
1
Found in [Package]
1.8.4
Issue ID
BUR-2409
Regression
No
Burst does not auto-vectorize a method when the SinCos method is used
Reproduction steps:
1. Open the attached “ASDQWE” project
2. Open the “Asset/Scenes/SampleScene.unity” Scene
3. Open the Burst Inspector (Jobs > Burst > Open Inspector…)
4. Observe the “SinCos128Floats” method
Expected result: The method is automatically vectorized
Actual result: The method is not automatically vectorized and remains unoptimized
Reproducible with: 1.7.4 (2021.3.27f1), 1.8.3(2021.3.27f1), 1.8.4 (2022.3.1f1, 2023.1.0b21, 2023.2.0a18)
Reproducible on: Intel MacOS 13.3.1
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Cannot disable auto-capitalization for mobile devices inside the Unity Editor for UI Toolkit text fields
- Assistant window shows a “A new version of Assistant is available” log with an update prompt when the Assistant package is already updated
- Prompt tooltip stretches to screen height when prompt contains large amount of lines in AI Generator
- Some AI Models are marked as "Favorite" in “Select AI Model” window
- Material is not blitted onto the screen when the Camera is rendering to a Render Texture
Resolution Note:
This is, unfortunately, by-design. LLVM's loop vectorizer is currently unable to vectorize calls that have pointer-type parameters, such as sincos.
There's some initial community [effort|https://reviews.llvm.org/D116879] to improve this situation, but that PR is from 2022 and hasn't landed yet. If LLVM gains the ability to vectorize such calls, then we'd be able to make use of it in Burst.
Resolution Note (1.8.X):
This is, unfortunately, by-design. LLVM's loop vectorizer is currently unable to vectorize calls that have pointer-type parameters, such as sincos.
There's some initial community [effort|https://reviews.llvm.org/D116879] to improve this situation, but that PR is from 2022 and hasn't landed yet. If LLVM gains the ability to vectorize such calls, then we'd be able to make use of it in Burst.