/* { dg-do compile } */
/* { dg-options "-mgp64" } */
/* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */

/* { dg-final { scan-assembler-not "and\t\|andi\t\|ext\t\|sll\t\|srl\t" } } */
/* { dg-final { scan-assembler-times "slt\t\|slti?u\t" 12 } } */


#define TEST(N, LHS, REL, RHS) \
  NOMIPS16 long long w##N (int a, int b) {return LHS REL RHS;} \
  NOMIPS16 int n##N (long long a, long long b) {return LHS REL RHS;} \

TEST (eq, a, ==, 0);
TEST (ne, a, !=, 0);
TEST (gt, a, >, b);
TEST (ge, a, >=, 1);
TEST (lt, a, <, b);
TEST (le, a, <=, 11);
