xref: /openbsd/gnu/gcc/gcc/config/mmix/t-mmix (revision 404b540a)
1# See "Target Fragment" in GCC info.  That same order is used here.
2
3TARGET_LIBGCC2_CFLAGS = -mlibfuncs -O2
4
5EXTRA_MULTILIB_PARTS = crti.o crtn.o crtbegin.o crtend.o
6
7# We need to turn off some assumptions on normality for code in crtstuff.c
8# and crt{i,n}.asm, specifically about execution not continuing past the
9# end of the section in the file being compiled.  Thus we must stop the
10# assembler from generating stubbable PUSHJ relocs, because that will add
11# stubs at the end of the current section when necessary.
12CRTSTUFF_T_CFLAGS = -Wa,--no-stubs
13
14MULTILIB_OPTIONS = mabi=gnu
15MULTILIB_DIRNAMES = gnuabi
16
17# Don't use global registers in libraries.
18# FIXME: Not applied at "root" level, so disabled at the moment to stop
19# incorrect comparisons with -mabi=gnu.
20#MULTILIB_EXTRA_OPTS = mno-base-addresses
21
22$(T)crti.o: $(srcdir)/config/mmix/crti.asm $(GCC_PASSES)
23	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
24	$(CRTSTUFF_T_CFLAGS) -c -o $(T)crti.o -x assembler-with-cpp \
25	$(srcdir)/config/mmix/crti.asm
26
27$(T)crtn.o: $(srcdir)/config/mmix/crtn.asm $(GCC_PASSES)
28	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
29	$(CRTSTUFF_T_CFLAGS) -c -o $(T)crtn.o -x assembler-with-cpp \
30	$(srcdir)/config/mmix/crtn.asm
31