mirror of
https://github.com/apache/nuttx.git
synced 2026-05-30 05:16:47 +08:00
sched/tcbinfo: Fix the compile warning
Update tcbinfo struct
armv8-m/arm_tcbinfo.c:109:3: warning: excess elements in struct initializer
109 | TCB_REG_OFF(REG_S31),
| ^~~~~~~~~~~
armv8-m/arm_tcbinfo.c:109:3: note: (near initialization for 'g_tcbinfo')
armv8-m/arm_tcbinfo.c:110:3: warning: excess elements in struct initializer
110 | 0,
| ^
armv8-m/arm_tcbinfo.c:110:3: note: (near initialization for 'g_tcbinfo')
armv8-m/arm_tcbinfo.c:111:3: warning: excess elements in struct initializer
111 | TCB_REG_OFF(REG_FPSCR),
| ^~~~~~~~~~~
armv8-m/arm_tcbinfo.c:111:3: note: (near initialization for 'g_tcbinfo')
armv8-m/arm_tcbinfo.c:112:3: warning: excess elements in struct initializer
112 | 0,
| ^
armv8-m/arm_tcbinfo.c:112:3: note: (near initialization for 'g_tcbinfo')
armv8-m/arm_tcbinfo.c:37:1: warning: missing braces around initializer [-Wmissing-braces]
37 | {
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
This commit is contained in:
@@ -30,20 +30,11 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
TCB_REG_OFF(REG_R0),
|
TCB_REG_OFF(REG_R0),
|
||||||
TCB_REG_OFF(REG_R1),
|
TCB_REG_OFF(REG_R1),
|
||||||
TCB_REG_OFF(REG_R2),
|
TCB_REG_OFF(REG_R2),
|
||||||
@@ -63,6 +54,22 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_CPSR),
|
TCB_REG_OFF(REG_CPSR),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -30,20 +30,11 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
TCB_REG_OFF(REG_R0),
|
TCB_REG_OFF(REG_R0),
|
||||||
TCB_REG_OFF(REG_R1),
|
TCB_REG_OFF(REG_R1),
|
||||||
TCB_REG_OFF(REG_R2),
|
TCB_REG_OFF(REG_R2),
|
||||||
@@ -62,12 +53,28 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_R15),
|
TCB_REG_OFF(REG_R15),
|
||||||
TCB_REG_OFF(REG_XPSR),
|
TCB_REG_OFF(REG_XPSR),
|
||||||
|
|
||||||
0,
|
0, /* msp */
|
||||||
TCB_REG_OFF(REG_R13),
|
TCB_REG_OFF(REG_R13),
|
||||||
TCB_REG_OFF(REG_PRIMASK),
|
TCB_REG_OFF(REG_PRIMASK),
|
||||||
0,
|
0, /* basepri */
|
||||||
0,
|
0, /* faultmask */
|
||||||
0,
|
0, /* control */
|
||||||
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -30,20 +30,11 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
TCB_REG_OFF(REG_R0),
|
TCB_REG_OFF(REG_R0),
|
||||||
TCB_REG_OFF(REG_R1),
|
TCB_REG_OFF(REG_R1),
|
||||||
TCB_REG_OFF(REG_R2),
|
TCB_REG_OFF(REG_R2),
|
||||||
@@ -101,12 +92,26 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_FPU
|
#ifdef CONFIG_ARCH_FPU
|
||||||
0,
|
|
||||||
TCB_REG_OFF(REG_FPSCR),
|
TCB_REG_OFF(REG_FPSCR),
|
||||||
0,
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -30,20 +30,11 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
TCB_REG_OFF(REG_R0),
|
TCB_REG_OFF(REG_R0),
|
||||||
TCB_REG_OFF(REG_R1),
|
TCB_REG_OFF(REG_R1),
|
||||||
TCB_REG_OFF(REG_R2),
|
TCB_REG_OFF(REG_R2),
|
||||||
@@ -62,17 +53,17 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_R15),
|
TCB_REG_OFF(REG_R15),
|
||||||
TCB_REG_OFF(REG_XPSR),
|
TCB_REG_OFF(REG_XPSR),
|
||||||
|
|
||||||
0,
|
0, /* msp */
|
||||||
TCB_REG_OFF(REG_R13),
|
TCB_REG_OFF(REG_R13),
|
||||||
#ifdef CONFIG_ARMV7M_USEBASEPRI
|
#ifdef CONFIG_ARMV7M_USEBASEPRI
|
||||||
0,
|
0, /* primask */
|
||||||
TCB_REG_OFF(REG_BASEPRI),
|
TCB_REG_OFF(REG_BASEPRI),
|
||||||
#else
|
#else
|
||||||
TCB_REG_OFF(REG_PRIMASK),
|
TCB_REG_OFF(REG_PRIMASK),
|
||||||
0,
|
0, /* basepri */
|
||||||
#endif
|
#endif
|
||||||
0,
|
0, /* faultmask */
|
||||||
0,
|
0, /* control */
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_FPU
|
#ifdef CONFIG_ARCH_FPU
|
||||||
TCB_REG_OFF(REG_S0),
|
TCB_REG_OFF(REG_S0),
|
||||||
@@ -107,12 +98,26 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_S29),
|
TCB_REG_OFF(REG_S29),
|
||||||
TCB_REG_OFF(REG_S30),
|
TCB_REG_OFF(REG_S30),
|
||||||
TCB_REG_OFF(REG_S31),
|
TCB_REG_OFF(REG_S31),
|
||||||
0,
|
|
||||||
TCB_REG_OFF(REG_FPSCR),
|
TCB_REG_OFF(REG_FPSCR),
|
||||||
0,
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -30,20 +30,11 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
TCB_REG_OFF(REG_R0),
|
TCB_REG_OFF(REG_R0),
|
||||||
TCB_REG_OFF(REG_R1),
|
TCB_REG_OFF(REG_R1),
|
||||||
TCB_REG_OFF(REG_R2),
|
TCB_REG_OFF(REG_R2),
|
||||||
@@ -101,12 +92,26 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_FPU
|
#ifdef CONFIG_ARCH_FPU
|
||||||
0,
|
|
||||||
TCB_REG_OFF(REG_FPSCR),
|
TCB_REG_OFF(REG_FPSCR),
|
||||||
0,
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -30,20 +30,11 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
TCB_REG_OFF(REG_R0),
|
TCB_REG_OFF(REG_R0),
|
||||||
TCB_REG_OFF(REG_R1),
|
TCB_REG_OFF(REG_R1),
|
||||||
TCB_REG_OFF(REG_R2),
|
TCB_REG_OFF(REG_R2),
|
||||||
@@ -62,17 +53,17 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_R15),
|
TCB_REG_OFF(REG_R15),
|
||||||
TCB_REG_OFF(REG_XPSR),
|
TCB_REG_OFF(REG_XPSR),
|
||||||
|
|
||||||
0,
|
0, /* msp */
|
||||||
TCB_REG_OFF(REG_R13),
|
TCB_REG_OFF(REG_R13),
|
||||||
#ifdef CONFIG_ARMV8M_USEBASEPRI
|
#ifdef CONFIG_ARMV8M_USEBASEPRI
|
||||||
0,
|
0, /* primask */
|
||||||
TCB_REG_OFF(REG_BASEPRI),
|
TCB_REG_OFF(REG_BASEPRI),
|
||||||
#else
|
#else
|
||||||
TCB_REG_OFF(REG_PRIMASK),
|
TCB_REG_OFF(REG_PRIMASK),
|
||||||
0,
|
0, /* basepri */
|
||||||
#endif
|
#endif
|
||||||
0,
|
0, /* faultmask */
|
||||||
0,
|
0, /* control */
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_FPU
|
#ifdef CONFIG_ARCH_FPU
|
||||||
TCB_REG_OFF(REG_S0),
|
TCB_REG_OFF(REG_S0),
|
||||||
@@ -107,12 +98,26 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_S29),
|
TCB_REG_OFF(REG_S29),
|
||||||
TCB_REG_OFF(REG_S30),
|
TCB_REG_OFF(REG_S30),
|
||||||
TCB_REG_OFF(REG_S31),
|
TCB_REG_OFF(REG_S31),
|
||||||
0,
|
|
||||||
TCB_REG_OFF(REG_FPSCR),
|
TCB_REG_OFF(REG_FPSCR),
|
||||||
0,
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -30,21 +30,12 @@
|
|||||||
#include <arch/irq.h>
|
#include <arch/irq.h>
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Data
|
* Private Data
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
const struct tcbinfo_s g_tcbinfo =
|
static const uint16_t g_reg_offs[] =
|
||||||
{
|
{
|
||||||
TCB_PID_OFF,
|
0, /* x0 */
|
||||||
TCB_STATE_OFF,
|
|
||||||
TCB_PRI_OFF,
|
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
|
||||||
TCB_NAME_OFF,
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XCPTCONTEXT_REGS,
|
|
||||||
|
|
||||||
0,
|
|
||||||
TCB_REG_OFF(REG_X1_NDX),
|
TCB_REG_OFF(REG_X1_NDX),
|
||||||
TCB_REG_OFF(REG_X2_NDX),
|
TCB_REG_OFF(REG_X2_NDX),
|
||||||
TCB_REG_OFF(REG_X3_NDX),
|
TCB_REG_OFF(REG_X3_NDX),
|
||||||
@@ -111,12 +102,28 @@ const struct tcbinfo_s g_tcbinfo =
|
|||||||
TCB_REG_OFF(REG_F29_NDX),
|
TCB_REG_OFF(REG_F29_NDX),
|
||||||
TCB_REG_OFF(REG_F30_NDX),
|
TCB_REG_OFF(REG_F30_NDX),
|
||||||
TCB_REG_OFF(REG_F31_NDX),
|
TCB_REG_OFF(REG_F31_NDX),
|
||||||
0,
|
0, /* fflags */
|
||||||
0,
|
0, /* frm */
|
||||||
TCB_REG_OFF(REG_FCSR_NDX),
|
TCB_REG_OFF(REG_FCSR_NDX),
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Public Data
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
const struct tcbinfo_s g_tcbinfo =
|
||||||
|
{
|
||||||
|
TCB_PID_OFF,
|
||||||
|
TCB_STATE_OFF,
|
||||||
|
TCB_PRI_OFF,
|
||||||
|
TCB_NAME_OFF,
|
||||||
|
XCPTCONTEXT_REGS,
|
||||||
|
{
|
||||||
|
.p = g_reg_offs,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
@@ -247,7 +247,7 @@ static void elf_emit_note_info(FAR struct elf_dumpinfo_s *cinfo)
|
|||||||
for (j = 0; j < ARRAY_SIZE(status.pr_regs); j++)
|
for (j = 0; j < ARRAY_SIZE(status.pr_regs); j++)
|
||||||
{
|
{
|
||||||
status.pr_regs[j] = *(uintptr_t *)((uint8_t *)tcb +
|
status.pr_regs[j] = *(uintptr_t *)((uint8_t *)tcb +
|
||||||
g_tcbinfo.reg_offs[j]);
|
g_tcbinfo.reg_off.p[j]);
|
||||||
}
|
}
|
||||||
|
|
||||||
elf_emit(cinfo, &status, sizeof(status));
|
elf_emit(cinfo, &status, sizeof(status));
|
||||||
|
|||||||
+13
-7
@@ -186,13 +186,15 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_DEBUG_TCBINFO
|
#ifdef CONFIG_DEBUG_TCBINFO
|
||||||
# define TCB_PID_OFF (offsetof(struct tcb_s, pid))
|
# define TCB_PID_OFF offsetof(struct tcb_s, pid)
|
||||||
# define TCB_STATE_OFF (offsetof(struct tcb_s, task_state))
|
# define TCB_STATE_OFF offsetof(struct tcb_s, task_state)
|
||||||
# define TCB_PRI_OFF (offsetof(struct tcb_s, sched_priority))
|
# define TCB_PRI_OFF offsetof(struct tcb_s, sched_priority)
|
||||||
#if CONFIG_TASK_NAME_SIZE > 0
|
#if CONFIG_TASK_NAME_SIZE > 0
|
||||||
# define TCB_NAME_OFF (offsetof(struct tcb_s, name))
|
# define TCB_NAME_OFF offsetof(struct tcb_s, name)
|
||||||
|
#else
|
||||||
|
# define TCB_NAME_OFF 0
|
||||||
#endif
|
#endif
|
||||||
# define TCB_REG_OFF(reg) (offsetof(struct tcb_s, xcp.regs[reg]))
|
# define TCB_REG_OFF(reg) offsetof(struct tcb_s, xcp.regs[reg])
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@@ -772,7 +774,7 @@ struct tcbinfo_s
|
|||||||
uint16_t name_off; /* Offset of tcb.name */
|
uint16_t name_off; /* Offset of tcb.name */
|
||||||
uint16_t reg_num; /* Num of regs in tcbinfo.reg_offs */
|
uint16_t reg_num; /* Num of regs in tcbinfo.reg_offs */
|
||||||
|
|
||||||
/* Offsets of xcp.regs, order in GDB org.gnu.gdb.xxx feature.
|
/* Offset pointer of xcp.regs, order in GDB org.gnu.gdb.xxx feature.
|
||||||
* Please refer:
|
* Please refer:
|
||||||
* https://sourceware.org/gdb/current/onlinedocs/gdb/ARM-Features.html
|
* https://sourceware.org/gdb/current/onlinedocs/gdb/ARM-Features.html
|
||||||
* https://sourceware.org/gdb/current/onlinedocs/gdb/RISC_002dV-Features
|
* https://sourceware.org/gdb/current/onlinedocs/gdb/RISC_002dV-Features
|
||||||
@@ -780,7 +782,11 @@ struct tcbinfo_s
|
|||||||
* value 0: This regsiter was not priovided by NuttX
|
* value 0: This regsiter was not priovided by NuttX
|
||||||
*/
|
*/
|
||||||
|
|
||||||
uint16_t reg_offs[XCPTCONTEXT_REGS];
|
union
|
||||||
|
{
|
||||||
|
uint8_t u[8];
|
||||||
|
FAR uint16_t *p;
|
||||||
|
} reg_off;
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user