(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
arm/
csneg.c
       1  /* { dg-do compile } */
       2  /* { dg-require-effective-target arm_arch_v8_1m_main_ok } */
       3  /* { dg-options "-O2" } */
       4  /* { dg-add-options arm_arch_v8_1m_main } */
       5  
       6  int
       7  test_csneg32_condasn1(int w0, int w1, int w2, int w3)
       8  {
       9    int w4;
      10  
      11    /* { dg-final { scan-assembler "csneg\tr\[0-9\]*.*ne" } } */
      12    w4 = (w0 == w1) ? -w2 : w3;
      13    return w4;
      14  }
      15  
      16  int
      17  test_csneg32_condasn2(int w0, int w1, int w2, int w3)
      18  {
      19    int w4;
      20  
      21    /* { dg-final { scan-assembler "csneg\tr\[0-9\]*.*eq" } } */
      22    w4 = (w0 == w1) ? w3 : -w2;
      23    return w4;
      24  }
      25  
      26  unsigned long long
      27  test_csneg_uxtw (unsigned int a, unsigned int b, unsigned int c)
      28  {
      29    unsigned int val;
      30  
      31    /* { dg-final { scan-assembler "csneg\tr\[0-9\]*.*ne" } } */
      32    val = a ? b : -c;
      33    return val;
      34  }