blob: 97104d3ac73ad95f90ca4ec71f3d968c495283f8 [file] [log] [blame]
/* Test the valid @cc<cc> asm flag outputs. */
/* { dg-do compile } */
/* { dg-options "-O" } */
/* { dg-skip-if "" { arm_thumb1 } } */
#ifndef __GCC_ASM_FLAG_OUTPUTS__
#error "missing preprocessor define"
#endif
void f(char *out)
{
asm(""
: "=@ccne"(out[0]), "=@cceq"(out[1]),
"=@cccs"(out[2]), "=@cccc"(out[3]),
"=@ccmi"(out[4]), "=@ccpl"(out[5]),
"=@ccvs"(out[6]), "=@ccvc"(out[7]),
"=@cchi"(out[8]), "=@ccls"(out[9]),
"=@ccge"(out[10]), "=@cclt"(out[11]),
"=@ccgt"(out[12]), "=@ccle"(out[13]),
"=@cchs"(out[14]), "=@cclo"(out[15]));
}
/* There will be at least one of each. */
/* { dg-final { scan-assembler "movne" } } */
/* { dg-final { scan-assembler "moveq" } } */
/* { dg-final { scan-assembler "movcs" } } */
/* { dg-final { scan-assembler "movcc" } } */
/* { dg-final { scan-assembler "movmi" } } */
/* { dg-final { scan-assembler "movpl" } } */
/* { dg-final { scan-assembler "movvs" } } */
/* { dg-final { scan-assembler "movvc" } } */
/* { dg-final { scan-assembler "movhi" } } */
/* { dg-final { scan-assembler "movls" } } */
/* { dg-final { scan-assembler "movge" } } */
/* { dg-final { scan-assembler "movls" } } */
/* { dg-final { scan-assembler "movgt" } } */
/* { dg-final { scan-assembler "movle" } } */