[PATCH] D120395: [X86] Prohibit arithmetic operations on type `__bfloat16`

Craig Topper via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Mar 7 14:41:28 PST 2022


craig.topper added a comment.

> So at this point we have these options:
>
> 1. Make the `__m[128|256|512]bh` types aliases of `__m[128|256|512]i`
> 2. Deprecate the `__m[128|256|512]bh` types and replace them with `__m[128|256|512]i`
> 3. Add load/store/insert/extract intrinsics for the `__bfloat16` type
>
> Of these, I'd prefer the third option because both of the first two require the an overloaded use of the vector-integer type. I already don't like that we use the same type for any size integer vector. Using it for BF16 vectors just seems wrong.

The third option also needs bitcast intrinsics to/from the same sized ps/pd/i type. We have similar casts between the other 3 types already.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D120395/new/

https://reviews.llvm.org/D120395



More information about the cfe-commits mailing list