[rtems commit] bsps/powerpc: Use System V small-data area

Sebastian Huber sebh at rtems.org
Mon Feb 24 11:44:10 UTC 2014


Module:    rtems
Branch:    master
Commit:    0fe0718b7230a7b58eb120b40110579d950ada91
Changeset: http://git.rtems.org/rtems/commit/?id=0fe0718b7230a7b58eb120b40110579d950ada91

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Fri Feb 21 13:32:13 2014 +0100

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).

---

 .../libbsp/powerpc/gen5200/make/custom/gen5200.inc |    2 +-
 .../libbsp/powerpc/gen83xx/make/custom/gen83xx.inc |    2 +-
 .../libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc   |    2 +-
 .../powerpc/mpc55xxevb/make/custom/mpc55xx.inc     |    2 +-
 .../powerpc/mpc8260ads/make/custom/mpc8260ads.cfg  |    2 +-
 .../libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg |    2 +-
 .../libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc   |    2 +-
 .../libbsp/powerpc/virtex/make/custom/virtex.cfg   |    2 +-
 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 6ebbaa4..91e9238 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 ff59e3d..7293ec0 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 922d95d..f041d03 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 fa469fa..6a2c329 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 d316ab6..dbee576 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 df05c44..b8aa2b7 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 da32441..a932314 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 96aa7cc..8af4072 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




More information about the vc mailing list