aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/i386/pr78310.c
blob: dfeae4c827cf576ad83d714a17da8c1fe5e623ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* { dg-do compile { target { ! ia32 } } } */
/* { dg-options "-O -mbmi2" } */

unsigned long long a;
int b;

int
fn1(int p1)
{
  p1 &= 1;
  p1 &= (short)~p1;
  b = a;
  a = a << p1 | a >> (64 - p1);
  return p1 + 1 + a;
}