1 /* { dg-options "-mgp64" } */
2 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
3 
4 #define TEST(ID, TYPE, SHIFT)				\
5   int NOMIPS16						\
6   f##ID (long long y)					\
7   {							\
8     return (TYPE) ((TYPE) (y >> SHIFT) + 1);		\
9   }
10 
11 TEST (1, int, 32)
12 TEST (2, short, 32)
13 TEST (3, char, 32)
14 TEST (4, int, 33)
15 TEST (5, short, 33)
16 TEST (6, char, 33)
17 TEST (7, int, 61)
18 TEST (8, short, 61)
19 TEST (9, char, 61)
20 
21 /* { dg-final { scan-assembler-not "\tsll\t\[^\n\]*,0" } } */
22