summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-02-21 13:32:13 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-02-24 12:49:42 +0100
commit0fe0718b7230a7b58eb120b40110579d950ada91 (patch)
tree6a4a4d8924e747d9953299d3b057d868680a89b0
parentbsp/leon3: Add bsp_reset() for SMP configuration (diff)
downloadrtems-0fe0718b7230a7b58eb120b40110579d950ada91.tar.bz2
bsps/powerpc: Use System V small-data area
The 32-bit ABIs for thread-local storage (TLS) and EABI read-only small-data area have a conflicting register (r2) usage. Use the System V small-data instead (here r2 is system reserved).
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/make/custom/gen5200.inc2
-rw-r--r--c/src/lib/libbsp/powerpc/gen83xx/make/custom/gen83xx.inc2
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc2
-rw-r--r--c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc55xx.inc2
-rw-r--r--c/src/lib/libbsp/powerpc/mpc8260ads/make/custom/mpc8260ads.cfg2
-rw-r--r--c/src/lib/libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg2
-rw-r--r--c/src/lib/libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc2
-rw-r--r--c/src/lib/libbsp/powerpc/virtex/make/custom/virtex.cfg2
8 files changed, 8 insertions, 8 deletions
diff --git a/c/src/lib/libbsp/powerpc/gen5200/make/custom/gen5200.inc b/c/src/lib/libbsp/powerpc/gen5200/make/custom/gen5200.inc
index 6ebbaa42aa..91e923841e 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/make/custom/gen5200.inc
+++ b/c/src/lib/libbsp/powerpc/gen5200/make/custom/gen5200.inc
@@ -11,7 +11,7 @@ RTEMS_CPU_MODEL=mpc6xx
# and (hopefully) optimize for it.
#
CPU_CFLAGS = -mcpu=603e -mstrict-align \
- -meabi -msdata -fno-common
+ -meabi -msdata=sysv -fno-common
# optimize flag: typically -O2
CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
diff --git a/c/src/lib/libbsp/powerpc/gen83xx/make/custom/gen83xx.inc b/c/src/lib/libbsp/powerpc/gen83xx/make/custom/gen83xx.inc
index ff59e3db0c..7293ec007d 100644
--- a/c/src/lib/libbsp/powerpc/gen83xx/make/custom/gen83xx.inc
+++ b/c/src/lib/libbsp/powerpc/gen83xx/make/custom/gen83xx.inc
@@ -14,7 +14,7 @@ RTEMS_CPU_MODEL=mpc83xx
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
-CPU_CFLAGS = -mcpu=603e -meabi -msdata -fno-common -mstrict-align
+CPU_CFLAGS = -mcpu=603e -meabi -msdata=sysv -fno-common -mstrict-align
# optimize flag: typically -O2
CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc b/c/src/lib/libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc
index 922d95dc95..f041d03437 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc
@@ -41,7 +41,7 @@ RTEMS_CPU_MODEL=mpc$(8XX_CPU_TYPE)
# and (hopefully) optimize for it.
#
CPU_CFLAGS = -mcpu=$(8XX_CPU_TYPE) -Dmpc$(8XX_CPU_TYPE) -D$(RTEMS_MBX_MODEL) \
- -meabi -msdata -fno-common
+ -meabi -msdata=sysv -fno-common
# optimize flag: typically -O2
CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc55xx.inc b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc55xx.inc
index fa469fad23..6a2c329af8 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc55xx.inc
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc55xx.inc
@@ -16,7 +16,7 @@ RTEMS_CPU_MODEL = mpc55xx
CPU_CFLAGS_FLOAT?=-msoft-float
# FIXME
-CPU_CFLAGS = -mcpu=8540 -meabi -msdata -fno-common $(CPU_CFLAGS_FLOAT) \
+CPU_CFLAGS = -mcpu=8540 -meabi -msdata=sysv -fno-common $(CPU_CFLAGS_FLOAT) \
-D__ppc_generic -mstrict-align
CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/make/custom/mpc8260ads.cfg b/c/src/lib/libbsp/powerpc/mpc8260ads/make/custom/mpc8260ads.cfg
index d316ab6dde..dbee576555 100644
--- a/c/src/lib/libbsp/powerpc/mpc8260ads/make/custom/mpc8260ads.cfg
+++ b/c/src/lib/libbsp/powerpc/mpc8260ads/make/custom/mpc8260ads.cfg
@@ -13,7 +13,7 @@ RTEMS_CPU_MODEL=mpc8260
#
# CPU_CFLAGS = -mcpu=$(8XX_CPU_TYPE) -mstrict-align
CPU_CFLAGS = -mcpu=603e -mstrict-align -Dmpc8260 \
- -meabi -msdata -fno-common
+ -meabi -msdata=sysv -fno-common
# optimize flag: typically -O2
CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
diff --git a/c/src/lib/libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg b/c/src/lib/libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg
index df05c44ab5..b8aa2b75dd 100644
--- a/c/src/lib/libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg
+++ b/c/src/lib/libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg
@@ -2,7 +2,7 @@ include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU = powerpc
-CPU_CFLAGS = -mcpu=8540 -meabi -msdata -fno-common -msoft-float \
+CPU_CFLAGS = -mcpu=8540 -meabi -msdata=sysv -fno-common -msoft-float \
-D__ppc_generic
CFLAGS_OPTIMIZE_V = -O2 -g
diff --git a/c/src/lib/libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc b/c/src/lib/libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc
index da32441831..a932314651 100644
--- a/c/src/lib/libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc
+++ b/c/src/lib/libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc
@@ -9,7 +9,7 @@ RTEMS_CPU_MODEL=mpc860
CPU_CFLAGS = -mcpu=860 -Dmpc860 \
-mstrict-align -fno-strict-aliasing \
- -meabi -msdata -fno-common
+ -meabi -msdata=sysv -fno-common
# optimize flag: typically -O2
CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
diff --git a/c/src/lib/libbsp/powerpc/virtex/make/custom/virtex.cfg b/c/src/lib/libbsp/powerpc/virtex/make/custom/virtex.cfg
index 96aa7cc558..8af407292b 100644
--- a/c/src/lib/libbsp/powerpc/virtex/make/custom/virtex.cfg
+++ b/c/src/lib/libbsp/powerpc/virtex/make/custom/virtex.cfg
@@ -10,7 +10,7 @@ RTEMS_CPU_MODEL=ppc405
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
-CPU_CFLAGS = -mcpu=403 -Dppc405 -meabi -msdata -fno-common
+CPU_CFLAGS = -mcpu=403 -Dppc405 -meabi -msdata=sysv -fno-common
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS