1  /* { dg-do compile } */
       2  /* { dg-options "-mgp64" } */
       3  /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
       4  
       5  /* { dg-final { scan-assembler-not "and\t\|andi\t\|ext\t\|sll\t\|srl\t" } } */
       6  /* { dg-final { scan-assembler-times "slt\t\|slti?u\t" 12 } } */
       7  
       8  
       9  #define TEST(N, LHS, REL, RHS) \
      10    NOMIPS16 long long w##N (int a, int b) {return LHS REL RHS;} \
      11    NOMIPS16 int n##N (long long a, long long b) {return LHS REL RHS;} \
      12  
      13  TEST (eq, a, ==, 0);
      14  TEST (ne, a, !=, 0);
      15  TEST (gt, a, >, b);
      16  TEST (ge, a, >=, 1);
      17  TEST (lt, a, <, b);
      18  TEST (le, a, <=, 11);