summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr105333.c
blob: bd8bd4cd56ce03f8b803ca5ab6923440d879a953 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* PR rtl-optimization/105333 */
/* { dg-do compile { target int128 } } */
/* { dg-options "-Og -fno-tree-coalesce-vars -fno-tree-fre" } */

int g;
short s;

static inline unsigned short
bar (short a, __int128 b)
{
  b ^= (unsigned long) -a;
  __builtin_strncpy ((void *) &s, (void *) &a, 1);
  b *= 14;
  return b;
}

void
foo (void)
{
  g *= (__int128) bar (1, 1);
}