(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
arm/
pr65067.c
       1  /* { dg-do compile } */
       2  /* { dg-require-effective-target arm_thumb2_ok } */
       3  /* { dg-options "-mthumb -mcpu=cortex-m3 -O2" } */
       4  
       5  struct tmp {
       6   unsigned int dummy;
       7   union {
       8    struct {
       9     unsigned int xyz : 1;
      10     unsigned int mode: 3;
      11     unsigned int res : 28;
      12    } bf;
      13    unsigned int wordval;
      14   } reg;
      15  };
      16  
      17  void set_mode(int mode)
      18  {
      19   volatile struct tmp *t = (struct tmp *) 0x1000;
      20   t->reg.bf.mode = mode;
      21  }
      22  
      23  /* { dg-final { scan-assembler "bfi" } } */