1  /* { dg-do compile } */
       2  /* { dg-options "-mno-adx -O2" } */
       3  /* { dg-final { scan-assembler-times "adcl" 2 } } */
       4  /* { dg-final { scan-assembler-times "sbbl" 1 } } */
       5  
       6  #include <x86intrin.h>
       7  
       8  volatile unsigned char c;
       9  volatile unsigned int x, y;
      10  unsigned int *sum;
      11  
      12  void extern
      13  adx_test (void)
      14  {
      15      c = _addcarryx_u32 (c, x, y, sum);
      16      c = _addcarry_u32 (c, x, y, sum);
      17      c = _subborrow_u32 (c, x, y, sum);
      18  }