← Today's brief

Hardware · Updated 13 Oct, 02:42 am IST

Intel SDM lists vfmaddrnd231pd instruction but toolchains and assemblers lack support

Image: Hacker News (100+ points)

Why it matters for readers: It's an example of the difference between spec documentation and what actually works in compilers and assemblers.

  • Intel Software Development Manual names VFMADDRND231PD as a fused multiply-add with per-instruction rounding control.1
  • Per-instruction rounding allows controlling rounding mode without changing the global FP state, which could speed algorithms that rely on rounding.1
  • GNU assembler does not recognize the VFMADDRND231PD encoding and common compiler intrinsics for it are absent in Clang and ICC.1
  • The SDM opcode listing for the instruction uses a 'DDS' field in the VEX encoding, but that term appears only in that SDM and was reportedly removed from later versions.1

Get a brief like this every morning

Uzha reads hundreds of sources and gives you the stories that matter for your work, with every source linked. Free.

Get started