aboutsummaryrefslogtreecommitdiff
path: root/src/rtos
diff options
context:
space:
mode:
authorMatthias Blaicher <matthias@blaicher.com>2012-10-27 17:21:24 +0200
committerPeter Stuge <peter@stuge.se>2012-10-28 01:25:39 +0000
commit3a6ac237163b9a2c480c020064aabf4c2b199543 (patch)
tree0722b510f6c5828f9904f683ef566bec4c00c623 /src/rtos
parenta4dc39beb4c5678476d40e4e13f0a79d45145460 (diff)
downloadriscv-openocd-3a6ac237163b9a2c480c020064aabf4c2b199543.zip
riscv-openocd-3a6ac237163b9a2c480c020064aabf4c2b199543.tar.gz
riscv-openocd-3a6ac237163b9a2c480c020064aabf4c2b199543.tar.bz2
rtos: Use ARRAY_SIZE instead of coding it by hand
Use ARRAY_SIZE in helper/types.h to determine the size of the symbol list. Change-Id: Icc9838323510f8602efa5d0162a4daed33f863b9 Signed-off-by: Matthias Blaicher <matthias@blaicher.com> Reviewed-on: http://openocd.zylin.com/935 Tested-by: jenkins Reviewed-by: Peter Stuge <peter@stuge.se>
Diffstat (limited to 'src/rtos')
-rw-r--r--src/rtos/ChibiOS.c7
-rw-r--r--src/rtos/FreeRTOS.c7
-rw-r--r--src/rtos/ThreadX.c7
-rw-r--r--src/rtos/eCos.c7
4 files changed, 12 insertions, 16 deletions
diff --git a/src/rtos/ChibiOS.c b/src/rtos/ChibiOS.c
index 2c2b795..c838b49 100644
--- a/src/rtos/ChibiOS.c
+++ b/src/rtos/ChibiOS.c
@@ -31,6 +31,7 @@
#include "target/target_type.h"
#include "rtos.h"
#include "helper/log.h"
+#include "helper/types.h"
#include "rtos_chibios_stackings.h"
@@ -132,8 +133,6 @@ static char *ChibiOS_symbol_list[] = {
NULL
};
-#define CHIBIOS_NUM_SYMBOLS (sizeof(ChibiOS_symbol_list)/sizeof(char *))
-
static int ChibiOS_update_memory_signature(struct rtos *rtos)
{
int retval;
@@ -483,9 +482,9 @@ static int ChibiOS_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[])
{
unsigned int i;
*symbol_list = (symbol_table_elem_t *) malloc(
- sizeof(symbol_table_elem_t) * CHIBIOS_NUM_SYMBOLS);
+ sizeof(symbol_table_elem_t) * ARRAY_SIZE(ChibiOS_symbol_list));
- for (i = 0; i < CHIBIOS_NUM_SYMBOLS; i++)
+ for (i = 0; i < ARRAY_SIZE(ChibiOS_symbol_list); i++)
(*symbol_list)[i].symbol_name = ChibiOS_symbol_list[i];
return 0;
diff --git a/src/rtos/FreeRTOS.c b/src/rtos/FreeRTOS.c
index 2295d74..5ca4ce9 100644
--- a/src/rtos/FreeRTOS.c
+++ b/src/rtos/FreeRTOS.c
@@ -28,6 +28,7 @@
#include "target/target_type.h"
#include "rtos.h"
#include "helper/log.h"
+#include "helper/types.h"
#include "rtos_standard_stackings.h"
#define FREERTOS_MAX_PRIORITIES 63
@@ -121,8 +122,6 @@ static char *FreeRTOS_symbol_list[] = {
NULL
};
-#define FREERTOS_NUM_SYMBOLS (sizeof(FreeRTOS_symbol_list)/sizeof(char *))
-
/* TODO: */
/* this is not safe for little endian yet */
/* may be problems reading if sizes are not 32 bit long integers. */
@@ -399,9 +398,9 @@ static int FreeRTOS_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[]
{
unsigned int i;
*symbol_list = (symbol_table_elem_t *) malloc(
- sizeof(symbol_table_elem_t) * FREERTOS_NUM_SYMBOLS);
+ sizeof(symbol_table_elem_t) * ARRAY_SIZE(FreeRTOS_symbol_list));
- for (i = 0; i < FREERTOS_NUM_SYMBOLS; i++)
+ for (i = 0; i < ARRAY_SIZE(FreeRTOS_symbol_list); i++)
(*symbol_list)[i].symbol_name = FreeRTOS_symbol_list[i];
return 0;
diff --git a/src/rtos/ThreadX.c b/src/rtos/ThreadX.c
index a9e313b..297f3fa 100644
--- a/src/rtos/ThreadX.c
+++ b/src/rtos/ThreadX.c
@@ -28,6 +28,7 @@
#include "target/target_type.h"
#include "rtos.h"
#include "helper/log.h"
+#include "helper/types.h"
#include "rtos_standard_stackings.h"
static int ThreadX_detect_rtos(struct target *target);
@@ -97,8 +98,6 @@ static char *ThreadX_symbol_list[] = {
NULL
};
-#define THREADX_NUM_SYMBOLS (sizeof(ThreadX_symbol_list)/sizeof(char *))
-
const struct rtos_type ThreadX_rtos = {
.name = "ThreadX",
@@ -342,9 +341,9 @@ static int ThreadX_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[])
{
unsigned int i;
*symbol_list = (symbol_table_elem_t *) malloc(
- sizeof(symbol_table_elem_t) * THREADX_NUM_SYMBOLS);
+ sizeof(symbol_table_elem_t) * ARRAY_SIZE(ThreadX_symbol_list));
- for (i = 0; i < THREADX_NUM_SYMBOLS; i++)
+ for (i = 0; i < ARRAY_SIZE(ThreadX_symbol_list); i++)
(*symbol_list)[i].symbol_name = ThreadX_symbol_list[i];
return 0;
diff --git a/src/rtos/eCos.c b/src/rtos/eCos.c
index 5c18916..7964712 100644
--- a/src/rtos/eCos.c
+++ b/src/rtos/eCos.c
@@ -26,6 +26,7 @@
#include "target/target_type.h"
#include "rtos.h"
#include "helper/log.h"
+#include "helper/types.h"
#include "rtos_ecos_stackings.h"
static int eCos_detect_rtos(struct target *target);
@@ -87,8 +88,6 @@ static char *eCos_symbol_list[] = {
NULL
};
-#define ECOS_NUM_SYMBOLS (sizeof(eCos_symbol_list)/sizeof(char *))
-
const struct rtos_type eCos_rtos = {
.name = "eCos",
@@ -379,9 +378,9 @@ static int eCos_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[])
{
unsigned int i;
*symbol_list = (symbol_table_elem_t *) malloc(
- sizeof(symbol_table_elem_t) * ECOS_NUM_SYMBOLS);
+ sizeof(symbol_table_elem_t) * ARRAY_SIZE(eCos_symbol_list));
- for (i = 0; i < ECOS_NUM_SYMBOLS; i++)
+ for (i = 0; i < ARRAY_SIZE(eCos_symbol_list); i++)
(*symbol_list)[i].symbol_name = eCos_symbol_list[i];
return 0;