Merge from mainline.
[official-gcc.git] / gcc / config / bfin / elf.h
blob39d06881dfbba35088bcbced4c2257f601e2c0af
1 #define OBJECT_FORMAT_ELF
3 #define LOCAL_LABEL_PREFIX "L$"
5 #undef ASM_GENERATE_INTERNAL_LABEL
6 #define ASM_GENERATE_INTERNAL_LABEL(LABEL, PREFIX, NUM) \
7 sprintf (LABEL, "*%s%s$%d", LOCAL_LABEL_PREFIX, PREFIX, (int) NUM)
9 #undef STARTFILE_SPEC
10 #define STARTFILE_SPEC "%{!shared: crt0%O%s} crti%O%s crtbegin%O%s crtlibid%O%s"
12 #undef ENDFILE_SPEC
13 #define ENDFILE_SPEC "crtend%O%s crtn%O%s"
15 #undef USER_LABEL_PREFIX
16 #define USER_LABEL_PREFIX "_"
18 #ifdef __BFIN_FDPIC__
19 #define CRT_CALL_STATIC_FUNCTION(SECTION_OP, FUNC) \
20 asm (SECTION_OP); \
21 asm ("P3 = [SP + 20];\n\tcall " USER_LABEL_PREFIX #FUNC ";"); \
22 asm (TEXT_SECTION_ASM_OP);
23 #endif
25 #define NO_IMPLICIT_EXTERN_C