https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95566
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2021-08-20
Severity|normal |enhancement
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Reduced testcase:
int f(unsigned short *a, unsigned long long d)
{
return *a == (d>>48);
}
---- CUT ----
of the compilers I have compared, only ICX can do this:
shrq $48, %rsi
xorl %eax, %eax
cmpw %si, (%rdi)
sete %al
retq