• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

JuliaLang / julia / 498
78%

Build:
DEFAULT BRANCH: master
Ran 08 Sep 2026 12:01AM UTC
Jobs 0
Files 0
Run time –
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
498

push

buildkite

web-flow
processor: Disable native x86 BFloat16 codegen (#63012)

The x86 `vcvtneps2bf16` instruction unconditionally treats subnormal
`Float32` inputs as signed zero, regardless of MXCSR. LLVM nevertheless
uses it for an ordinary `fptrunc float to bfloat` when AVX512BF16 or
AVXNECONVERT
is enabled.

This makes the result depend on the target CPU. For example, `2f0^-127`
is exactly representable as the BFloat16 value with bits `0x0040`, but
the native instruction produces zero. This is the cause of the
`nextfloat` and `prevfloat` failures reported in
JuliaMath/BFloat16s.jl#125. It is also inconsistent with LLVM's constant
folding, which produces `0x0040` for the same conversion.

llvm/llvm-project#221052 proposed making the instruction respect LLVM's
`denormal-fp-math` setting, as per LangRef. The LLVM reviewers do not
currently want to change the default lowering: they consider BFloat16
denormal semantics unsettled and are concerned about losing native
conversion performance for users who do not care about subnormals.

In order to avoid this miscompilation, we should for now remove
AVX512BF16 and AVXNECONVERT from the feature strings used for JIT and
multiversioning code generation. This is deliberately a
correctness-over-performance workaround. Disabling these feature groups
sadly also prevents LLVM from using other native x86 BFloat16
instructions, not only `vcvtneps2bf16`.

Fixes JuliaMath/BFloat16s.jl#125.

Assisted-by: Fable 5.1, Sol 5.6
Source Files on build 498
Detailed source file information is not available for this build.
  • Back to Repo
  • 0b320ef9 on github
  • Prev Build on master (#489)
  • Next Build on master (#510)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc