From 0fe0718b7230a7b58eb120b40110579d950ada91 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 21 Feb 2014 13:32:13 +0100 Subject: 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). --- c/src/lib/libbsp/powerpc/gen5200/make/custom/gen5200.inc | 2 +- c/src/lib/libbsp/powerpc/gen83xx/make/custom/gen83xx.inc | 2 +- c/src/lib/libbsp/powerpc/mbx8xx/make/custom/mbx8xx.inc | 2 +- c/src/lib/libbsp/powerpc/mpc55xxevb/make/custom/mpc55xx.inc | 2 +- c/src/lib/libbsp/powerpc/mpc8260ads/make/custom/mpc8260ads.cfg | 2 +- c/src/lib/libbsp/powerpc/t32mppc/make/custom/t32mppc.cfg | 2 +- c/src/lib/libbsp/powerpc/tqm8xx/make/custom/tqm8xx.inc | 2 +- c/src/lib/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 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 -- cgit v1.2.3