summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/old-style-asm-1.c
blob: 8af007795a72302f4f29ae65e32221bb8f268f73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* PR inline-asm/8832 */
/* { dg-do compile } */
/* { dg-options "-O2 -dP" } */

/* Verify that GCC doesn't optimize
   old style asm instructions.  */

void foo(int v)
{
  if (v)
    asm ("dummy1");

  asm ("dummy2");

  if (v)
    asm ("dummy3");
}

/* The purpose of the test below is to check that there are two branches
   in the generated code, supposedly corresponding to the if-statements.
   It tries to check for jump_insn (set (pc) pattern, so that jump_insns
   corresponding to return are not taken into account.  */
/* { dg-final { scan-assembler "jump_insn.*set \\(pc\\).*jump_insn.*set \\(pc\\)"} } */