summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/strcmpopt_9.c
blob: 15f6b63d1911e6e69772d0b119c013b86031ce41 (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
29
30
31
32
33
34
/* PR tree-optimization/92683 - strncmp incorrect result with equal substrings
   and nonconst bound
   { dg-do run }
   { dg-options "-O2 -Wall" } */

#include "strlenopt.h"

#define ident(n) ident (n)

__attribute__ ((noclone, noinline, noipa)) size_t
ident (size_t x)
{
  return x;
}

int nfails;

__attribute__ ((noclone, noinline, noipa)) void
failure_on_line (int line)
{
  __builtin_printf ("failure on line %i\n", line);
  ++nfails;
}

#include "strcmpopt_8.c"

int main (void)
{
  test_literal ();
  test_cst_array ();

  if (nfails)
    __builtin_abort ();
}