This is the mail archive of the ecos-patches@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Make ARM HAL work without CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS


The attached was needed to build Red Boot without
CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS.

Ian.

-- 
Ian Campbell, Senior Design Engineer
                                        Web: http://www.arcom.com
Arcom, Clifton Road, 			Direct: +44 (0)1223 403 465
Cambridge CB1 7EA, United Kingdom	Phone:  +44 (0)1223 411 200


_____________________________________________________________________
The message in this transmission is sent in confidence for the attention of the addressee only and should not be disclosed to any other party. Unauthorised recipients are requested to preserve this confidentiality. Please advise the sender if the addressee is not resident at the receiving end.  Email to and from Arcom is automatically monitored for operational and lawful business reasons.

This message has been virus scanned by MessageLabs.
--- a/hal/arm/arch/current/src/hal_misc.c	29 Aug 2003 10:09:41 -0000	1.1.1.2
+++ b/hal/arm/arch/current/src/hal_misc.c	21 May 2004 11:10:44 -0000
@@ -76,10 +76,8 @@ externC void __handle_exception (void);
 
 externC HAL_SavedRegisters *_hal_registers;
 #ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
-// Historical - this datum is defined by the GDB stubs if present
-externC 
+externC void* volatile __mem_fault_handler;
 #endif
-        void* volatile __mem_fault_handler;
 
 #ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
 /* Force exception handling into the GDB stubs.  This is done by taking over
@@ -126,11 +124,13 @@ exception_handler(HAL_SavedRegisters *re
     // This is common in discovery code, e.g. checking for a particular
     // device which may generate an exception when probing if the
     // device is not present
+#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
     if (__mem_fault_handler && 
         regs->vector == CYGNUM_HAL_EXCEPTION_DATA_ACCESS) {
         regs->pc = (unsigned long)__mem_fault_handler;
         return; // Caught an exception inside stubs        
     }
+#endif
 
 #if defined(CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS) && !defined(CYGPKG_CYGMON)
     if (++exception_level == 1) __take_over_debug_traps();

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]