aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/i386/vartrack-1.c
blob: 15514fc0da77dfee4aa6961855a94f23838507b0 (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-require-effective-target lp64 } */
/* { dg-options "-O1 -g -fdump-rtl-vartrack-details-slim" } */

static volatile int vv = 1;

extern long foo (long x);

int
main ()
{
  long x = vv;
  foo (x);
  foo (x + 1);
  return 0;
}

/* Before adjust_insn:
   26: [--sp:DI]=bx:DI
   29: bx:DI=[sp:DI++]

   after adjust_insn:
   26: {[argp:DI-0x10]=bx:DI;sp:DI=argp:DI-0x10;}
   29: {bx:DI=[argp:DI-0x10];sp:DI=argp:DI-0x8;} */

/* { dg-final { scan-rtl-dump-times {[0-9][0-9]*: \{\[argp:DI-0x10\]=bx:DI;sp:DI=argp:DI-0x10;\}} 1 "vartrack" } } */

/* { dg-final { scan-rtl-dump-times {[0-9][0-9]*: \{bx:DI=\[argp:DI-0x10\];sp:DI=argp:DI-0x8;\}} 1 "vartrack" } } */