https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117542
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |53947 CC| |rguenth at gcc dot gnu.org, | |rsandifo at gcc dot gnu.org --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- It doesn't even unambiguously specify whether the mode is that of the source or the destination. The original idea was of course that the size unambiguously specifies the destination mode and thus specifying it would be redundant. Making all those optabs conversion optabs has some overhead and is useless in 99% of the cases. Can you combine both destination mode variants in vec_pack_trunc_VnSF and use predicates to select? Or is HF/BF mode support not always both present or not present? You could implement truncVnSFVnBF which helps in some cases. I would expect aarch64 has the same issue. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53947 [Bug 53947] [meta-bug] vectorizer missed-optimizations