summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/sh
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-06-14 17:07:54 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-06-14 17:07:54 +0000
commitac8154305172ebcb347f5563dd3ce17d95b4736b (patch)
tree6f24392d14911a8911b287a8b478016c40cb3a26 /cpukit/score/cpu/sh
parent61bd030179f252d14f9639cf4921eb4eee07b5ef (diff)
downloadrtems-ac8154305172ebcb347f5563dd3ce17d95b4736b.tar.bz2
Patch rtems-rc-20000614-sh.tar.gz from Ralf Corsepius
<corsepiu@faw.uni-ulm.de> that migrates the SH port to multilib'ing. This patch involved moving a number of files in the CVS repository, adding new files, and deleting files from their previous location. Ralf gave good instructions (not repeated here) and here are his notes: Note 1: In this version, I did not change the installation points of the headers which are moved inside of the source-tree. This is a temporary hack for not breaking compatibility with 4.5 based BSPs, but will probably not last once having real multilibs (We would have include file conflicts when several BSPs/CPU_MODELS share a common installation prefix). Note 2: I hope not to have broken too much, but I would not be astonished if something goes wrong. Note 3: There are more patches to come :)
Diffstat (limited to 'cpukit/score/cpu/sh')
-rw-r--r--cpukit/score/cpu/sh/Makefile.am4
-rw-r--r--cpukit/score/cpu/sh/rtems/score/sh.h19
2 files changed, 12 insertions, 11 deletions
diff --git a/cpukit/score/cpu/sh/Makefile.am b/cpukit/score/cpu/sh/Makefile.am
index d6c8f3ae05..1ed4187fe0 100644
--- a/cpukit/score/cpu/sh/Makefile.am
+++ b/cpukit/score/cpu/sh/Makefile.am
@@ -21,7 +21,7 @@ $(PROJECT_INCLUDE)/%.h: %.h
$(PROJECT_RELEASE)/lib/rtems$(LIB_VARIANT).o: $(ARCH)/rtems.o
$(INSTALL_DATA) $< $@
-C_FILES = cpu.c cpu_asm.c isp$(RTEMS_CPU_MODEL).c
+C_FILES = cpu.c
C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.o)
REL = $(ARCH)/rtems-cpu.rel
@@ -40,7 +40,7 @@ all-local: $(ARCH) $(PREINSTALL_FILES) $(rtems_cpu_rel_OBJECTS) $(REL) \
.PRECIOUS: $(REL)
-EXTRA_DIST = asm.h cpu.c cpu_asm.c ispsh7032.c ispsh7045.c rtems.c
+EXTRA_DIST = asm.h cpu.c rtems.c
include $(top_srcdir)/../../../../../../automake/subdirs.am
include $(top_srcdir)/../../../../../../automake/local.am
diff --git a/cpukit/score/cpu/sh/rtems/score/sh.h b/cpukit/score/cpu/sh/rtems/score/sh.h
index 26c633c190..2834ea6c64 100644
--- a/cpukit/score/cpu/sh/rtems/score/sh.h
+++ b/cpukit/score/cpu/sh/rtems/score/sh.h
@@ -40,6 +40,7 @@ extern "C" {
*/
#if defined(rtems_multilib)
+
/*
* Figure out all CPU Model Feature Flags based upon compiler
* predefines.
@@ -49,19 +50,19 @@ extern "C" {
#define SH_HAS_FPU 0
#define SH_HAS_SEPARATE_STACKS 1
-#elif defined(sh7032)
-#define CPU_MODEL_NAME "SH7032"
-#define SH_HAS_FPU 0
-
-#elif defined (sh7045)
-#define CPU_MODEL_NAME "SH7045"
-#define SH_HAS_FPU 0
+#else
+#if defined(__sh1__) || defined(__sh2__) || defined(__sh3__)
+#define SH_HAS_FPU 0
#else
-#error "Unsupported CPU Model"
-
+#define SH_HAS_FPU 1
#endif
+/* this should not be here */
+#define CPU_MODEL_NAME "SH-Multilib"
+
+#endif /* multilib */
+
/*
* If the following macro is set to 0 there will be no software irq stack
*/