[Bug target/100712] New: The vec_splatid instruction allows the creation of XXSPLTIDP instructions which produces undefined results.
meissner at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri May 21 02:37:11 GMT 2021
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.
More information about the Gcc-bugs
mailing list