aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorGeoffrey Keating <geoffk@apple.com>2002-12-18 22:45:36 +0000
committerGeoffrey Keating <geoffk@gcc.gnu.org>2002-12-18 22:45:36 +0000
commit40b4cdbfa980e8074a13d03b32daa8f1eaf721bf (patch)
treec6d693fece2b4aa7c01f88d65ef8f05640ec8838 /gcc/config
parent892aebc9f1c9112d71eff7f89cdb395f9a78808f (diff)
downloadgcc-40b4cdbfa980e8074a13d03b32daa8f1eaf721bf.zip
gcc-40b4cdbfa980e8074a13d03b32daa8f1eaf721bf.tar.gz
gcc-40b4cdbfa980e8074a13d03b32daa8f1eaf721bf.tar.bz2
t-rs6000: Move contents to t-fprules...
* config/rs6000/t-rs6000: Move contents to t-fprules, add rules for dependencies of rs6000.o and to build rs6000-c.o * config/rs6000/t-fprules: New file from t-rs6000. * config/rs6000/t-beos: Remove soft-fp rules. * config/rs6000/t-ppccomm: Likewise. * config/rs6000/t-newas: Likewise. * config/rs6000/t-rs6000-c-rule: Delete. * config.gcc: Use t-fprules for rs6000/ ports when appropriate. Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule. Create generic Darwin rules. From-SVN: r60265
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/rs6000/t-beos17
-rw-r--r--gcc/config/rs6000/t-fprules29
-rw-r--r--gcc/config/rs6000/t-newas17
-rw-r--r--gcc/config/rs6000/t-ppccomm23
-rw-r--r--gcc/config/rs6000/t-rs600033
-rw-r--r--gcc/config/rs6000/t-rs6000-c-rule5
6 files changed, 45 insertions, 79 deletions
diff --git a/gcc/config/rs6000/t-beos b/gcc/config/rs6000/t-beos
index 1d4fbf7..badffef 100644
--- a/gcc/config/rs6000/t-beos
+++ b/gcc/config/rs6000/t-beos
@@ -1,23 +1,8 @@
-# We want fine grained libraries, so use the new code to build the
-# floating point emulation libraries.
-FPBIT = fp-bit.c
-DPBIT = dp-bit.c
-
-dp-bit.c: $(srcdir)/config/fp-bit.c
- cat $(srcdir)/config/fp-bit.c > dp-bit.c
-
-fp-bit.c: $(srcdir)/config/fp-bit.c
- echo '#define FLOAT' > fp-bit.c
- cat $(srcdir)/config/fp-bit.c >> fp-bit.c
-
-# Build the libraries for both hard and soft floating point
+# Build the libraries for both hard & soft floating point and ppc/common.
MULTILIB_OPTIONS = msoft-float mcpu=common
MULTILIB_DIRNAMES = soft-float common
-LIBGCC = stmp-multilib
-INSTALL_LIBGCC = install-multilib
-
# This is probably the correct define, to override the Makefile
# default, but using it causes more problems than it solves.
#
diff --git a/gcc/config/rs6000/t-fprules b/gcc/config/rs6000/t-fprules
new file mode 100644
index 0000000..4fb09a2
--- /dev/null
+++ b/gcc/config/rs6000/t-fprules
@@ -0,0 +1,29 @@
+# We want fine grained libraries, so use the new code to build the
+# floating point emulation libraries.
+FPBIT = fp-bit.c
+DPBIT = dp-bit.c
+
+dp-bit.c: $(srcdir)/config/fp-bit.c
+ cat $(srcdir)/config/fp-bit.c > dp-bit.c
+
+fp-bit.c: $(srcdir)/config/fp-bit.c
+ echo '#define FLOAT' > fp-bit.c
+ cat $(srcdir)/config/fp-bit.c >> fp-bit.c
+
+MULTILIB_MATCHES_FLOAT = msoft-float=mcpu?401 \
+ msoft-float=mcpu?403 \
+ msoft-float=mcpu?405 \
+ msoft-float=mcpu?ec603e \
+ msoft-float=mcpu?801 \
+ msoft-float=mcpu?821 \
+ msoft-float=mcpu?823 \
+ msoft-float=mcpu?860
+
+# Build the libraries for both hard and soft floating point by default
+
+MULTILIB_OPTIONS = msoft-float
+MULTILIB_DIRNAMES = soft-float
+MULTILIB_MATCHES = ${MULTILIB_MATCHES_FLOAT}
+
+LIBGCC = stmp-multilib
+INSTALL_LIBGCC = install-multilib
diff --git a/gcc/config/rs6000/t-newas b/gcc/config/rs6000/t-newas
index b8e715a..a26ce39 100644
--- a/gcc/config/rs6000/t-newas
+++ b/gcc/config/rs6000/t-newas
@@ -1,15 +1,3 @@
-# We want fine grained libraries, so use the new code to build the
-# floating point emulation libraries.
-FPBIT = fp-bit.c
-DPBIT = dp-bit.c
-
-dp-bit.c: $(srcdir)/config/fp-bit.c
- cat $(srcdir)/config/fp-bit.c > dp-bit.c
-
-fp-bit.c: $(srcdir)/config/fp-bit.c
- echo '#define FLOAT' > fp-bit.c
- cat $(srcdir)/config/fp-bit.c >> fp-bit.c
-
# Build the libraries for both hard and soft floating point and all of the
# different processor models
@@ -19,7 +7,7 @@ MULTILIB_OPTIONS = msoft-float \
MULTILIB_DIRNAMES = soft-float \
common power powerpc
-MULTILIB_MATCHES = msoft-float=mcpu?403 \
+MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT) \
mcpu?power=mpower \
mcpu?power=mrios1 \
mcpu?power=mcpu?rios1 \
@@ -39,9 +27,6 @@ MULTILIB_MATCHES = msoft-float=mcpu?403 \
mcpu?powerpc=mpowerpc-gpopt \
mcpu?powerpc=mpowerpc-gfxopt
-LIBGCC = stmp-multilib
-INSTALL_LIBGCC = install-multilib
-
# Aix 3.2.x needs milli.exp for -mcpu=common
EXTRA_PARTS = milli.exp
milli.exp: $(srcdir)/config/rs6000/milli.exp
diff --git a/gcc/config/rs6000/t-ppccomm b/gcc/config/rs6000/t-ppccomm
index f4fcdce..eaa3252 100644
--- a/gcc/config/rs6000/t-ppccomm
+++ b/gcc/config/rs6000/t-ppccomm
@@ -5,19 +5,6 @@ LIB2FUNCS_EXTRA = tramp.S
# This one can't end up in shared libgcc
LIB2FUNCS_STATIC_EXTRA = eabi.S
-# We want fine grained libraries, so use the new code to build the
-# floating point emulation libraries.
-FPBIT = fp-bit.c
-DPBIT = dp-bit.c
-
-
-dp-bit.c: $(srcdir)/config/fp-bit.c
- cat $(srcdir)/config/fp-bit.c > dp-bit.c
-
-fp-bit.c: $(srcdir)/config/fp-bit.c
- echo '#define FLOAT' > fp-bit.c
- cat $(srcdir)/config/fp-bit.c >> fp-bit.c
-
eabi.S: $(srcdir)/config/rs6000/eabi.asm
cat $(srcdir)/config/rs6000/eabi.asm > eabi.S
@@ -25,19 +12,9 @@ tramp.S: $(srcdir)/config/rs6000/tramp.asm
cat $(srcdir)/config/rs6000/tramp.asm > tramp.S
# Switch synonyms
-MULTILIB_MATCHES_FLOAT = msoft-float=mcpu?401 \
- msoft-float=mcpu?403 \
- msoft-float=mcpu?405 \
- msoft-float=mcpu?ec603e \
- msoft-float=mcpu?801 \
- msoft-float=mcpu?821 \
- msoft-float=mcpu?823 \
- msoft-float=mcpu?860
MULTILIB_MATCHES_ENDIAN = mlittle=mlittle-endian mbig=mbig-endian
MULTILIB_MATCHES_SYSV = mcall-sysv=mcall-sysv-eabi mcall-sysv=mcall-sysv-noeabi mcall-sysv=mcall-linux mcall-sysv=mcall-netbsd
-LIBGCC = stmp-multilib
-INSTALL_LIBGCC = install-multilib
EXTRA_MULTILIB_PARTS = crtbegin$(objext) crtend$(objext) \
crtbeginS$(objext) crtendS$(objext) crtbeginT$(objext) \
ecrti$(objext) ecrtn$(objext) \
diff --git a/gcc/config/rs6000/t-rs6000 b/gcc/config/rs6000/t-rs6000
index f50ef17..805e15d 100644
--- a/gcc/config/rs6000/t-rs6000
+++ b/gcc/config/rs6000/t-rs6000
@@ -1,19 +1,14 @@
-# We want fine grained libraries, so use the new code to build the
-# floating point emulation libraries.
-FPBIT = fp-bit.c
-DPBIT = dp-bit.c
-
-dp-bit.c: $(srcdir)/config/fp-bit.c
- cat $(srcdir)/config/fp-bit.c > dp-bit.c
-
-fp-bit.c: $(srcdir)/config/fp-bit.c
- echo '#define FLOAT' > fp-bit.c
- cat $(srcdir)/config/fp-bit.c >> fp-bit.c
-
-# Build the libraries for both hard and soft floating point
-
-MULTILIB_OPTIONS = msoft-float
-MULTILIB_DIRNAMES = soft-float
-
-LIBGCC = stmp-multilib
-INSTALL_LIBGCC = install-multilib
+# General rules that all rs6000/ targets must have.
+
+rs6000.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
+ $(RTL_H) $(REGS_H) hard-reg-set.h \
+ real.h insn-config.h conditions.h insn-attr.h flags.h $(RECOG_H) \
+ $(OBSTACK_H) $(TREE_H) $(EXPR_H) $(OPTABS_H) except.h function.h \
+ output.h $(BASIC_BLOCK_H) $(INTEGRATE_H) toplev.h $(GGC_H) $(HASHTAB_H) \
+ $(TM_P_H) $(TARGET_H) $(TARGET_DEF_H) langhooks.h reload.h
+
+rs6000-c.o: $(srcdir)/config/rs6000/rs6000-c.c \
+ $(srcdir)/config/rs6000/rs6000-protos.h \
+ $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(CPPLIB_H) \
+ $(TM_P_H) c-pragma.h errors.h coretypes.h $(TM_H)
+ $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/rs6000/rs6000-c.c
diff --git a/gcc/config/rs6000/t-rs6000-c-rule b/gcc/config/rs6000/t-rs6000-c-rule
deleted file mode 100644
index b9a92dd..0000000
--- a/gcc/config/rs6000/t-rs6000-c-rule
+++ /dev/null
@@ -1,5 +0,0 @@
-rs6000-c.o: $(srcdir)/config/rs6000/rs6000-c.c \
- $(srcdir)/config/rs6000/rs6000-protos.h \
- $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(CPPLIB_H) \
- $(TM_P_H) c-pragma.h errors.h coretypes.h $(TM_H)
- $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/rs6000/rs6000-c.c