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