annotate gcc/testsuite/gcc.dg/pr44194-1.c @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-do compile { target { { { { { { { { { { i?86-*-* x86_64-*-* } && x32 } || lp64 } && { ! s390*-*-* } } && { ! hppa*64*-*-* } } && { ! alpha*-*-* } } && { { ! powerpc*-*-linux* } || powerpc_elfv2 } } && { ! nvptx-*-* } } } } } } */
kono
parents:
diff changeset
2 /* { dg-options "-O2 -fdump-rtl-dse1 -fdump-rtl-final" } */
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 /* Restrict to 64-bit targets since 32-bit targets usually return small
kono
parents:
diff changeset
5 structures in memory. */
kono
parents:
diff changeset
6
kono
parents:
diff changeset
7 struct ints { int a, b, c; } foo();
kono
parents:
diff changeset
8 void bar(int a, int b);
kono
parents:
diff changeset
9
kono
parents:
diff changeset
10 void func() {
kono
parents:
diff changeset
11 struct ints s = foo();
kono
parents:
diff changeset
12 bar(s.a, s.b);
kono
parents:
diff changeset
13 }
kono
parents:
diff changeset
14
kono
parents:
diff changeset
15 /* { dg-final { scan-rtl-dump "global deletions = (2|3)" "dse1" } } */
kono
parents:
diff changeset
16
kono
parents:
diff changeset
17 /* Here we want to ignore frame-related instructions, marked as insn/f,
kono
parents:
diff changeset
18 that do things like store the link register to the stack. We also want
kono
parents:
diff changeset
19 to treat insns the same regardless of whether they have a scheduling
kono
parents:
diff changeset
20 :TI marker, so match both "insn " and "insn:". */
kono
parents:
diff changeset
21 /* { dg-final { scan-rtl-dump-not "insn\[: \]\[^\n\]*set \\(mem(?!\[^\n\]*scratch)" "final" } } */