1 /* { dg-require-effective-target lp64 } */
2 /* { dg-options "-O1 -g -fomit-frame-pointer -fdump-rtl-vartrack-details-slim" } */
3 
4 static volatile int vv = 1;
5 
6 extern long foo (long x);
7 
8 int
main()9 main ()
10 {
11   long x = vv;
12   foo (x);
13   foo (x + 1);
14   return 0;
15 }
16 
17 /* Before adjust_insn:
18    26: [--sp:DI]=bx:DI
19    29: bx:DI=[sp:DI++]
20 
21    after adjust_insn:
22    26: {[argp:DI-0x10]=bx:DI;sp:DI=argp:DI-0x10;}
23    29: {bx:DI=[argp:DI-0x10];sp:DI=argp:DI-0x8;} */
24 
25 /* { dg-final { scan-rtl-dump-times {[0-9][0-9]*: \{\[argp:DI-0x10\]=bx:DI;sp:DI=argp:DI-0x10;\}} 1 "vartrack" } } */
26 
27 /* { dg-final { scan-rtl-dump-times {[0-9][0-9]*: \{bx:DI=\[argp:DI-0x10\];sp:DI=argp:DI-0x8;\}} 1 "vartrack" } } */
28 
29