https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110105
--- Comment #4 from Pavel M ---
To: rsand...@gcc.gnu.org
Thanks! I confused __fp16 with _Float16.
However, if __fp16 is only a “storage type”, then why this code:
__fp16 mul(__fp16 x, __fp16 y)
{
return x * y;
}
compiled with -O3
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110105
rsandifo at gcc dot gnu.org changed:
What|Removed |Added
CC||rsandifo at gcc dot
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110105
--- Comment #2 from Andrew Pinski ---
float mul(float x, float y, float z)
{
return ((double)x) * y + z;
}
Also produces the conversion ...
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110105
--- Comment #1 from Pavel M ---
Demo: https://godbolt.org/z/9s7eb9b1K.