acdbbc9a4139e0530f885823b566a8ed41c57d2b
[platform/upstream/gcc48.git] / gcc / testsuite / gcc.target / mips / ext-3.c
1 /* For MIPS64r2 use DEXT rather than DSLL/DSRL to zero-extend.  */
2 /* { dg-do compile } */
3 /* { dg-options "-O isa_rev>=2 -mgp64" } */
4 /* { dg-final { scan-assembler "\tdext\t" } } */
5 /* { dg-final { scan-assembler-not "sll" } } */
6
7 NOMIPS16 unsigned long long
8 f (unsigned *i)
9 {
10   unsigned j = *i;
11   j >>= 1;                      /* enforce this is all done in SI mode */
12   j++;                          /* don't merge the shift and the extension */
13   return j;
14 }