1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -Werror-implicit-function-declaration" } */ 3 4 #define NORET(name) \ 5 void test_ ## name (void) \ 6 { \ 7 __builtin_arc_ ## name (); \ 8 } 9 10 #define RET(name, rettype) \ 11 rettype test_ ## name (void) \ 12 { \ 13 return __builtin_arc_ ## name (); \ 14 } 15 16 #define NORET1OP(name, op1type) \ 17 void test_ ## name ## _1 (void) \ 18 { \ 19 __builtin_arc_ ## name (0x10); \ 20 } 21 22 23 NORET (nop) 24 NORET (rtie) 25 26 #ifdef __A7__ 27 NORET (sync) 28 #endif 29 30 NORET (brk) 31 NORET (swi) 32 33 NORET1OP (sleep, unsigned int) 34 35 #if defined (__A7__) || defined (__EM__) || defined (__HS__) 36 NORET1OP (trap_s, unsigned int) 37 NORET (unimp_s) 38 #endif 39 40 #if defined (__EM__) || defined (__HS__) 41 RET (clri, int) 42 #endif 43