diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-04-08 16:54:34 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-11-30 08:31:59 +0100 |
commit | 3d0620b607ff6459fec9d30efc1e0589bbd010f9 (patch) | |
tree | 255b331da96bd2441464debdebdd6860c88af02e /spec/build/bsps | |
parent | build: Use common objects item for get memory (diff) | |
download | rtems-3d0620b607ff6459fec9d30efc1e0589bbd010f9.tar.bz2 |
score: Optimize Workspace Handler initialization
The BSPs provide memory for the workspace initialization via
_Memory_Get(). Most BSPs provide exactly one memory area. Only two
BSPs provide more than one memory area (arm/altera-cyclone-v and
bsps/powerpc/mpc55xxevb). Only if more than one memory area is
provided, there is a need to use _Heap_Extend(). Provide two
implementations to initialize the workspace handler and let the BSP
select one of the implementations based on the number of provided memory
areas. This gets rid of a dependency on _Heap_Extend(). It also avoids
dead code sections for most BSPs.
Diffstat (limited to 'spec/build/bsps')
-rw-r--r-- | spec/build/bsps/arm/altera-cyclone-v/bspalteracyclonev.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/arm/imx/bspimx.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/arm/raspberrypi/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/i386/pc386/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/objmem.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/powerpc/mpc55xxevb/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/powerpc/objmem.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/powerpc/qoriq/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/powerpc/tqm8xx/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/sparc/objmem.yml | 1 |
10 files changed, 10 insertions, 0 deletions
diff --git a/spec/build/bsps/arm/altera-cyclone-v/bspalteracyclonev.yml b/spec/build/bsps/arm/altera-cyclone-v/bspalteracyclonev.yml index 99117573de..9543199c49 100644 --- a/spec/build/bsps/arm/altera-cyclone-v/bspalteracyclonev.yml +++ b/spec/build/bsps/arm/altera-cyclone-v/bspalteracyclonev.yml @@ -141,4 +141,5 @@ source: - bsps/shared/start/gettargethash-default.c - bsps/shared/start/sbrk.c - bsps/shared/start/stackalloc.c +- bsps/shared/start/wkspaceinitmulti.c type: build diff --git a/spec/build/bsps/arm/imx/bspimx.yml b/spec/build/bsps/arm/imx/bspimx.yml index 79d09a3eb4..74cc550ccb 100644 --- a/spec/build/bsps/arm/imx/bspimx.yml +++ b/spec/build/bsps/arm/imx/bspimx.yml @@ -108,4 +108,5 @@ source: - bsps/shared/start/gettargethash-default.c - bsps/shared/start/sbrk.c - bsps/shared/start/stackalloc.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/arm/raspberrypi/obj.yml b/spec/build/bsps/arm/raspberrypi/obj.yml index d440f9d67e..6869540ad0 100644 --- a/spec/build/bsps/arm/raspberrypi/obj.yml +++ b/spec/build/bsps/arm/raspberrypi/obj.yml @@ -58,4 +58,5 @@ source: - bsps/shared/start/gettargethash-default.c - bsps/shared/start/sbrk.c - bsps/shared/start/stackalloc.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/i386/pc386/obj.yml b/spec/build/bsps/i386/pc386/obj.yml index 0bf5a22046..692e2df1cc 100644 --- a/spec/build/bsps/i386/pc386/obj.yml +++ b/spec/build/bsps/i386/pc386/obj.yml @@ -81,4 +81,5 @@ source: - bsps/shared/start/bspfatal-default.c - bsps/shared/start/gettargethash-default.c - bsps/shared/start/sbrk.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/objmem.yml b/spec/build/bsps/objmem.yml index af4d3051ba..6c72bc3f65 100644 --- a/spec/build/bsps/objmem.yml +++ b/spec/build/bsps/objmem.yml @@ -11,4 +11,5 @@ install: [] links: [] source: - bsps/shared/start/bspgetworkarea-default.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/powerpc/mpc55xxevb/obj.yml b/spec/build/bsps/powerpc/mpc55xxevb/obj.yml index 07d73a41ba..1325473d86 100644 --- a/spec/build/bsps/powerpc/mpc55xxevb/obj.yml +++ b/spec/build/bsps/powerpc/mpc55xxevb/obj.yml @@ -95,4 +95,5 @@ source: - bsps/shared/start/bspfatal-default.c - bsps/shared/start/gettargethash-default.c - bsps/shared/start/stackalloc.c +- bsps/shared/start/wkspaceinitmulti.c type: build diff --git a/spec/build/bsps/powerpc/objmem.yml b/spec/build/bsps/powerpc/objmem.yml index 9e5ae758ad..1fbb8b4fb0 100644 --- a/spec/build/bsps/powerpc/objmem.yml +++ b/spec/build/bsps/powerpc/objmem.yml @@ -11,4 +11,5 @@ install: [] links: [] source: - bsps/powerpc/shared/start/bspgetworkarea.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/powerpc/qoriq/obj.yml b/spec/build/bsps/powerpc/qoriq/obj.yml index 125be9252d..c3222125e8 100644 --- a/spec/build/bsps/powerpc/qoriq/obj.yml +++ b/spec/build/bsps/powerpc/qoriq/obj.yml @@ -73,4 +73,5 @@ source: - bsps/shared/start/bspfatal-default.c - bsps/shared/start/gettargethash-default.c - bsps/shared/start/sbrk.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/powerpc/tqm8xx/obj.yml b/spec/build/bsps/powerpc/tqm8xx/obj.yml index 4dff6f07da..7aec916350 100644 --- a/spec/build/bsps/powerpc/tqm8xx/obj.yml +++ b/spec/build/bsps/powerpc/tqm8xx/obj.yml @@ -47,4 +47,5 @@ source: - bsps/shared/start/bspreset-empty.c - bsps/shared/start/gettargethash-default.c - bsps/shared/start/sbrk.c +- bsps/shared/start/wkspaceinitone.c type: build diff --git a/spec/build/bsps/sparc/objmem.yml b/spec/build/bsps/sparc/objmem.yml index 8ca61bf4b6..d4ded7b226 100644 --- a/spec/build/bsps/sparc/objmem.yml +++ b/spec/build/bsps/sparc/objmem.yml @@ -10,5 +10,6 @@ includes: [] install: [] links: [] source: +- bsps/shared/start/wkspaceinitone.c - bsps/sparc/shared/start/bspgetworkarea.c type: build |