1/* PR target/59625 */ 2/* { dg-do compile } */ 3/* { dg-options "-O2 -mtune=atom" } */ 4 5int 6foo (void) 7{ 8 asm goto ("" : : : : lab); 9 asm goto ("" : : : : lab); 10 asm goto ("" : : : : lab); 11 asm goto ("" : : : : lab); 12 asm goto ("" : : : : lab); 13 asm goto ("" : : : : lab); 14 asm goto ("" : : : : lab); 15 asm goto ("" : : : : lab); 16 asm goto ("" : : : : lab); 17 asm goto ("" : : : : lab); 18 asm goto ("" : : : : lab); 19 asm goto ("" : : : : lab); 20 asm goto ("" : : : : lab); 21 asm goto ("" : : : : lab); 22 asm goto ("" : : : : lab); 23 asm goto ("" : : : : lab); 24 asm goto ("" : : : : lab); 25 asm goto ("" : : : : lab); 26 asm goto ("" : : : : lab); 27 asm goto ("" : : : : lab); 28 return 0; 29lab: 30 return 1; 31} 32 33/* Verify we don't consider asm goto as a jump for four jumps limit 34 optimization. asm goto doesn't have to contain a jump at all, 35 the branching to labels can happen through different means. */ 36/* { dg-final { scan-assembler-not "(p2align\[^\n\r\]*\[\n\r]*\[^\n\r\]*){8}p2align" } } */ 37