aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/i386/sse2-v1ti-logic.c
blob: 130a89b91c99a8562708cbd117270e856283a23e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* { dg-do compile { target int128 } } */
/* { dg-options "-O2 -msse2" } */

typedef unsigned __int128 v1ti __attribute__ ((__vector_size__ (16)));

v1ti and(v1ti x, v1ti y)
{
  return x & y;
}

v1ti ior(v1ti x, v1ti y)
{
  return x | y;
}

v1ti xor(v1ti x, v1ti y)
{
  return x ^ y;
}

v1ti not(v1ti x)
{
  return ~x;
}

/* { dg-final { scan-assembler "pand" } } */
/* { dg-final { scan-assembler "por" } } */
/* { dg-final { scan-assembler-times "pxor" 2 } } */