blob: 716043cf0711c7e3f32e4d1006717854cf6e3abd [file] [log] [blame]
/* AND with zero extension of operands.
It is matched slightly different than rest of ALU ops. */
/* { dg-do compile } */
/* { dg-options "-O1" } */
/* -O1 in the options is significant. Without it the zero extension might not
be coalesced into the ALU instruction. */
unsigned int
test_zext_and_hi (unsigned short val1, unsigned int val2)
{
/* { dg-final { scan-assembler "and\\tr14, r14.w0, r15" } } */
return val1 & val2;
}