/* { dg-options "-O2 -mr10k-cache-barrier=store -mips4 -mbranch-likely -mno-abicalls" } */ | |
int bar (int); | |
/* Test that code after a branch-likely does not get an unnecessary | |
cache barrier. */ | |
NOMIPS16 void | |
foo (int n, int *x) | |
{ | |
do | |
n = bar (n * 4 + 1); | |
while (n); | |
/* The preceding branch should be a branch likely, with the shift as | |
its delay slot. We therefore don't need a cache barrier here. */ | |
x[0] = 0; | |
} | |
/* { dg-final { scan-assembler-not "\tcache\t" } } */ |