/* Ensure jlt, jslt, jle and jsle instructions are not generated if
   -mjmpext is not enabled, and no 32-bit jump instructions are generated
   if -mjmp32 is not enabled.  */

/* { dg-do compile } */
/* { dg-options "-mno-jmpext -mno-jmp32" } */

int foo (int a, int b)
{
  if (a == 1)
    b += 1;
  if (a != 3)
    b += 2;
  if (a > 5)
    b += 3;
  if (a >= 7)
    b += 4;
  if (a < 9)
    b += 5;
  if (a <= 10)
    b += 6;

  return a + b;
}

unsigned int bar (unsigned int a, unsigned int b)
{
  if (a == 1)
    b += 1;
  if (a != 3)
    b += 2;
  if (a > 5)
    b += 3;
  if (a >= 7)
    b += 4;
  if (a < 9)
    b += 5;
  if (a <= 10)
    b += 6;

  return a + b;
}

/* { dg-final { scan-assembler-times "jlt\t0" 0 } } */
/* { dg-final { scan-assembler-times "jslt\t0" 0 } } */
/* { dg-final { scan-assembler-times "jle\t0" 0 } } */
/* { dg-final { scan-assembler-times "jsle\t0" 0 } } */
/* { dg-final { scan-assembler-times "jeq32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jne32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jlt32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jgt32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jle32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jge32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jslt32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jsgt32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jsle32\t0" 0 } } */
/* { dg-final { scan-assembler-times "jsge32\t0" 0 } } */
