blob: cf3df13e7e4cbe0275e99cc586e50aab45121867 [file] [log] [blame]
/* { dg-do compile } */
/* { dg-require-effective-target arm_arch_v8_1m_main_ok } */
/* { dg-options "-O2" } */
/* { dg-add-options arm_arch_v8_1m_main } */
int
test_csneg32_condasn1(int w0, int w1, int w2, int w3)
{
int w4;
/* { dg-final { scan-assembler "csneg\tr\[0-9\]*.*ne" } } */
w4 = (w0 == w1) ? -w2 : w3;
return w4;
}
int
test_csneg32_condasn2(int w0, int w1, int w2, int w3)
{
int w4;
/* { dg-final { scan-assembler "csneg\tr\[0-9\]*.*eq" } } */
w4 = (w0 == w1) ? w3 : -w2;
return w4;
}
unsigned long long
test_csneg_uxtw (unsigned int a, unsigned int b, unsigned int c)
{
unsigned int val;
/* { dg-final { scan-assembler "csneg\tr\[0-9\]*.*ne" } } */
val = a ? b : -c;
return val;
}