https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100712

            Bug ID: 100712
           Summary: The vec_splatid instruction allows the creation of
                    XXSPLTIDP instructions which produces undefined
                    results.
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: meissner at gcc dot gnu.org
  Target Milestone: ---

The vec_splatid builtin from altivec.h (i.e. __builtin_vec_xxspltid) allows the
user to create an XXSPLTIDP instruction where the value is a single precision
denormal value.  Right now the compiler warns about this usage, but it should
really not allow it.

In addition, the warning is buried in rs6000_emit_xxspltidp_v2df (in rs6000.c).
 A better place might be in rs6000_expand_binop_builtin (in rs6000-calls.)
where other usage warnings are given.

Reply via email to