blob: 4c7d5bf26f0f96b1a9016c90e7ebb65e43e12ff5 [file] [log] [blame]
/* Check that no unnecessary sign or zero extension insn is generated after
a negc or movrt insn that stores the inverted T bit in a reg. */
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler-not "extu|exts" } } */
int
test_00 (int a, int b, int* c, short* d, int x)
{
*d = x != 0;
*c = -1;
if (x != 0)
return a > 0;
return 0;
}
unsigned char
test_01 (int x)
{
if (x < 58 && x > 47)
return 1;
return 0;
}
char
test_02 (int x)
{
if (x < 58 && x > 47)
return 1;
return 0;
}
unsigned short
test_03 (int x)
{
if (x < 58 && x > 47)
return 1;
return 0;
}
short
test_04 (int x)
{
if (x < 58 && x > 47)
return 1;
return 0;
}