SH: Fix outage caused by recently added 2nd combine pass after reg alloc
[official-gcc.git] / gcc / testsuite / gcc.target / mips / ds-schedule-2.c
blob6c5de5dac9276c6126e272deaa84ec212f8c555d
1 /* { dg-options "-mcompact-branches=never -mno-abicalls -G4" } */
2 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" "-O1" "-Os" } { "" } } */
3 /* { dg-final { scan-assembler "beq.*\n\tlw" } } */
4 /* { dg-final { scan-assembler-times "\\(foo\\)" 2 } } */
6 /* Test that when compact branches are explicitly disabled, that a non-compact
7 branch is produced. 'foo' should be referenced twice in the program text as the
8 eager delay slot filler will duplicate the load of foo. */
10 struct list
12 struct list *next;
13 int element;
16 struct list *gr;
18 int foo;
20 extern void t (int, int, int*);
22 void
23 f (struct list **ptr)
25 if (gr)
26 *ptr = gr->next;
27 t (1, foo, &gr->element);