1 /* { dg-do compile } */ 2 /* { dg-options "-mcmse" } */ 3 4 #include "../bitfield-6.x" 5 6 /* { dg-final { scan-assembler "mov\tip, r4" } } */ 7 /* { dg-final { scan-assembler "movw\tr4, #65535" } } */ 8 /* { dg-final { scan-assembler "movt\tr4, 1023" } } */ 9 /* { dg-final { scan-assembler "ands\tr0, r4" } } */ 10 /* { dg-final { scan-assembler "movs\tr4, #3" } } */ 11 /* { dg-final { scan-assembler "movt\tr4, 32767" } } */ 12 /* { dg-final { scan-assembler "ands\tr1, r4" } } */ 13 /* { dg-final { scan-assembler "movs\tr4, #255" } } */ 14 /* { dg-final { scan-assembler "ands\tr2, r4" } } */ 15 /* { dg-final { scan-assembler "mov\tr4, ip" } } */ 16 /* { dg-final { scan-assembler "lsrs\tr4, r4, #1" } } */ 17 /* { dg-final { scan-assembler "lsls\tr4, r4, #1" } } */ 18 /* { dg-final { scan-assembler "movs\tr3, r4" } } */ 19 /* { dg-final { scan-assembler "bl\t__gnu_cmse_nonsecure_call" } } */ 20