[RTEMS Project] #3779: arm_switch_reg undeclared when building libdebugger/rtems-debugger-arm

RTEMS trac trac at rtems.org
Tue Oct 1 23:40:23 UTC 2019


#3779: arm_switch_reg undeclared when building libdebugger/rtems-debugger-arm
----------------------------+--------------------------
 Reporter:  Andrei Chichak  |       Owner:  Chris Johns
     Type:  defect          |      Status:  assigned
 Priority:  normal          |   Milestone:
Component:  lib/debugger    |     Version:
 Severity:  normal          |  Resolution:
 Keywords:                  |  Blocked By:
 Blocking:                  |
----------------------------+--------------------------

Comment (by Chris Johns):

 Replying to [comment:2 sprhawk]:
 > I think if there is no need for arm_switch_reg, how about I void
 exception_entry_exc()?

 I am not so sure.

 > {{{
 > #!patch
 > From 46c1bd458196ff694ce04e74f68695fc620a7a65 Mon Sep 17 00:00:00 2001
 > From: YANG HONGBO <sprhawk at gmail.com>
 > Date: Tue, 1 Oct 2019 20:51:03 +0800
 > Subject: [PATCH] try to fix failure building for STM32F4
 >
 > ---
 >  cpukit/libdebugger/rtems-debugger-arm.c | 9 +++++++--
 >  1 file changed, 7 insertions(+), 2 deletions(-)
 >
 > diff --git a/cpukit/libdebugger/rtems-debugger-arm.c
 b/cpukit/libdebugger/rtems-debugger-arm.c
 > index 3d5dea0ab7..eefc83eed5 100644
 > --- a/cpukit/libdebugger/rtems-debugger-arm.c
 > +++ b/cpukit/libdebugger/rtems-debugger-arm.c
 > @@ -1590,10 +1590,15 @@ target_exception(CPU_Exception_frame* frame)
 >   #define EXCEPTION_EXIT_THREAD(_frame)
 EXCEPTION_EXIT_THREAD_V4(_frame)
 >   #define EXCEPTION_EXIT_EXC()                EXCEPTION_EXIT_EXC_V4()
 >  #elif defined(ARM_MULTILIB_ARCH_V7M)
 > - #define EXCEPTION_ENTRY_EXC()               (void) arm_switch_reg
 > + #if ARM_THUMB_ONLY
 > +  #define EXCEPTION_ENTRY_EXC()               (void)NULL
 > +  #define EXCEPTION_EXIT_EXC()                (void)NULL
 > }}}
 I do not think this would work. It means `NULL` is being loaded as the
 address. I am not familiar with the specifics of this model. Is ARM mode
 active when entering an exception? If so we need to switch to thumb mode
 and to do this we need a valid `arm_switch_reg`.

 What is your configure command line for RTEMS and I will see what is
 broken in the build?

--
Ticket URL: <http://devel.rtems.org/ticket/3779#comment:3>
RTEMS Project <http://www.rtems.org/>
RTEMS Project


More information about the bugs mailing list