1 /* { dg-do compile } */
2 /* { dg-options "(-mips16) addressing=absolute" } */
3 /* { dg-skip-if "requires inlining" { *-*-* } { "-O0" } { "" } } */
4
i1(void)5 static inline MIPS16 int i1 (void) { return 1; }
i2(void)6 static inline NOMIPS16 int i2 (void) { return 2; }
i3(void)7 static inline MIPS16 int i3 (void) { return 3; }
i4(void)8 static inline NOMIPS16 int i4 (void) { return 4; }
9
f1(void)10 int NOMIPS16 f1 (void) { return i1 (); }
f2(void)11 int MIPS16 f2 (void) { return i2 (); }
f3(void)12 int MIPS16 f3 (void) { return i3 (); }
f4(void)13 int NOMIPS16 f4 (void) { return i4 (); }
14
15 /* { dg-final { scan-assembler "i1:" } } */
16 /* { dg-final { scan-assembler "i2:" } } */
17 /* { dg-final { scan-assembler-not "i3:" } } */
18 /* { dg-final { scan-assembler-not "i4:" } } */
19 /* { dg-final { scan-assembler "\tjal\ti1" } } */
20 /* { dg-final { scan-assembler "\tjal\ti2" } } */
21 /* { dg-final { scan-assembler-not "\tjal\ti3" } } */
22 /* { dg-final { scan-assembler-not "\tjal\ti4" } } */
23