1 /* { dg-do compile } */
2 /* The tests also work with -mgp32. For long long tests, only one of
3 the 32-bit parts is used. */
4 /* { dg-options "-march=octeon" } */
5 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
6 /* { dg-final { scan-assembler-times "\tcins\t" 3 } } */
7 /* { dg-final { scan-assembler-not "\tandi\t|sll\t" } } */
8
9 NOMIPS16 long long
f(long long i)10 f (long long i)
11 {
12 return (i & 0xff) << 34;
13 }
14
15 NOMIPS16 int
g(int i)16 g (int i)
17 {
18 return (i << 4) & 0xff0;
19 }
20
21 NOMIPS16 long long
h(long long i)22 h (long long i)
23 {
24 return (i << 4) & 0xfff;
25 }
26