1 /* { dg-do compile } */ 2 /* { dg-options "-mno-long-calls addressing=absolute" } */ 3 4 extern int long_call_func () __attribute__((long_call)); 5 extern int far_func () __attribute__((far)); 6 extern int near_func () __attribute__((near)); 7 extern int normal_func (); 8 test()9int test () 10 { 11 return (long_call_func () 12 + far_func () 13 + near_func () 14 + normal_func ()); 15 } 16 17 /* { dg-final { scan-assembler-not "\tjal(|s)\tlong_call_func\n" } } */ 18 /* { dg-final { scan-assembler-not "\tjal(|s)\tfar_func\n" } } */ 19 /* { dg-final { scan-assembler "\t(jal(|s)|balc)\tnear_func\n" } } */ 20 /* { dg-final { scan-assembler "\t(jal(|s)|balc)\tnormal_func\n" } } */ 21