[llvm] [IR] Add intrinsics to represent complex multiply and divide operations (PR #68742)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 1 16:07:08 PDT 2023


efriedma-quic wrote:

> I can't quite tell from AArch64's manual whether or not FCMLA double-rounds or not.

Despite the name, fcmla is just an fma that "rotates" the input (bitwise manipulation of the input floats).  The manual suggests you can implement a complex multiply using two fcmla instructions (so there's a rounding step between the first instruction and the second).

> > How does this interact with strictfp? Do we need separate strictfp intrinsics?
> 
> This does need some form of strictfp support, but I've started to align with @arsenm in that I'm not sure that constrained intrinsics is necessarily the best way to expose strictfp support.

Sure, we just need some way to indicate that it isn't actually readnone in strictfp mode...

https://github.com/llvm/llvm-project/pull/68742


More information about the llvm-commits mailing list