/* Test some of the valid @cc asm flag outputs. */ /* { dg-do compile } */ /* { dg-options "-O" } */ /* { dg-skip-if "" { arm_thumb1 } } */ #define DO(C) \ void f##C(void) { char x; asm("" : "=@cc"#C(x)); if (!x) asm(""); asm(""); } DO(ne) DO(eq) DO(cs) DO(cc) DO(hs) DO(lo) DO(mi) DO(pl) DO(vs) DO(vc) DO(hi) DO(ls) DO(ge) DO(lt) DO(gt) DO(le) /* { dg-final { scan-assembler "bne" } } */ /* { dg-final { scan-assembler "beq" } } */ /* { dg-final { scan-assembler "bcs" } } */ /* { dg-final { scan-assembler "bcc" } } */ /* { dg-final { scan-assembler "bmi" } } */ /* { dg-final { scan-assembler "bpl" } } */ /* { dg-final { scan-assembler "bvs" } } */ /* { dg-final { scan-assembler "bvc" } } */ /* { dg-final { scan-assembler "bhi" } } */ /* { dg-final { scan-assembler "bls" } } */ /* { dg-final { scan-assembler "bge" } } */ /* { dg-final { scan-assembler "blt" } } */ /* { dg-final { scan-assembler "bgt" } } */ /* { dg-final { scan-assembler "ble" } } */