3 # arch/alpha/Makefile.inc
5 # Special rules for this architecture. Note that this is actually
6 # included from the main Makefile, and that pathnames should be
10 # Special CFLAGS for the divide code
11 DIVCFLAGS = $(REQFLAGS) \
12 -O3 -fomit-frame-pointer -fcall-saved-1 -fcall-saved-2 \
13 -fcall-saved-3 -fcall-saved-4 -fcall-saved-5 -fcall-saved-6 \
14 -fcall-saved-7 -fcall-saved-8 -fcall-saved-15 -fcall-saved-16 \
15 -fcall-saved-17 -fcall-saved-18 -fcall-saved-19 -fcall-saved-20 \
16 -fcall-saved-21 -fcall-saved-22 -ffixed-23 -fcall-saved-24 \
20 arch/$(ARCH)/__divqu.o \
21 arch/$(ARCH)/__remqu.o \
22 arch/$(ARCH)/__divq.o \
23 arch/$(ARCH)/__remq.o \
24 arch/$(ARCH)/__divlu.o \
25 arch/$(ARCH)/__remlu.o \
26 arch/$(ARCH)/__divl.o \
27 arch/$(ARCH)/__reml.o \
31 ARCHSOOBJS = $(patsubst %.o,%.lo,$(ARCHOBJS))
33 arch/$(ARCH)/%.s: arch/$(ARCH)/%.ss
34 sed -e 's/\$$0\b/$$27/g' -e 's/\$$24\b/$$99/g' \
35 -e 's/\$$16\b/$$24/g' -e 's/\$$17\b/$$25/g' \
36 -e 's/\$$26\b/$$23/g' -e 's/\$$99\b/$$16/g' < $< > $@
38 arch/$(ARCH)/%.ls: arch/$(ARCH)/%.lss
39 sed -e 's/\$$0\b/$$27/g' -e 's/\$$24\b/$$99/g' \
40 -e 's/\$$16\b/$$24/g' -e 's/\$$17\b/$$25/g' \
41 -e 's/\$$26\b/$$23/g' -e 's/\$$99\b/$$16/g' < $< > $@
43 arch/$(ARCH)/__divqu.ss: arch/$(ARCH)/divide.c
44 $(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=0 -DBITS=64 -DNAME=__divqu -S -o $@ $<
46 arch/$(ARCH)/__remqu.ss: arch/$(ARCH)/divide.c
47 $(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=1 -DBITS=64 -DNAME=__remqu -S -o $@ $<
49 arch/$(ARCH)/__divq.ss: arch/$(ARCH)/divide.c
50 $(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=0 -DBITS=64 -DNAME=__divq -S -o $@ $<
52 arch/$(ARCH)/__remq.ss: arch/$(ARCH)/divide.c
53 $(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=1 -DBITS=64 -DNAME=__remq -S -o $@ $<
55 arch/$(ARCH)/__divlu.ss: arch/$(ARCH)/divide.c
56 $(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=0 -DBITS=32 -DNAME=__divlu -S -o $@ $<
58 arch/$(ARCH)/__remlu.ss: arch/$(ARCH)/divide.c
59 $(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=1 -DBITS=32 -DNAME=__remlu -S -o $@ $<
61 arch/$(ARCH)/__divl.ss: arch/$(ARCH)/divide.c
62 $(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=0 -DBITS=32 -DNAME=__divl -S -o $@ $<
64 arch/$(ARCH)/__reml.ss: arch/$(ARCH)/divide.c
65 $(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=1 -DBITS=32 -DNAME=__reml -S -o $@ $<
67 arch/$(ARCH)/__divqu.lss: arch/$(ARCH)/divide.c
68 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=0 -DBITS=64 -DNAME=__divqu -S -o $@ $<
70 arch/$(ARCH)/__remqu.lss: arch/$(ARCH)/divide.c
71 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=1 -DBITS=64 -DNAME=__remqu -S -o $@ $<
73 arch/$(ARCH)/__divq.lss: arch/$(ARCH)/divide.c
74 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=0 -DBITS=64 -DNAME=__divq -S -o $@ $<
76 arch/$(ARCH)/__remq.lss: arch/$(ARCH)/divide.c
77 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=1 -DBITS=64 -DNAME=__remq -S -o $@ $<
79 arch/$(ARCH)/__divlu.lss: arch/$(ARCH)/divide.c
80 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=0 -DBITS=32 -DNAME=__divlu -S -o $@ $<
82 arch/$(ARCH)/__remlu.lss: arch/$(ARCH)/divide.c
83 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=1 -DBITS=32 -DNAME=__remlu -S -o $@ $<
85 arch/$(ARCH)/__divl.lss: arch/$(ARCH)/divide.c
86 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=0 -DBITS=32 -DNAME=__divl -S -o $@ $<
88 arch/$(ARCH)/__reml.lss: arch/$(ARCH)/divide.c
89 $(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=1 -DBITS=32 -DNAME=__reml -S -o $@ $<
92 rm -f arch/$(ARCH)/*.ss arch/$(ARCH)/*.lss