summaryrefslogtreecommitdiffstats
path: root/c/src/librdbg/src/excep.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2002-02-01 17:00:01 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2002-02-01 17:00:01 +0000
commit40cf43eab4e4121a92ec95bc1366cc5b3bad4e27 (patch)
tree5aef0f81416b68a9f035ac5d14ba9278f0787c1c /c/src/librdbg/src/excep.c
parent2001-02-01 Mike Siers <mikes@poliac.com> (diff)
downloadrtems-40cf43eab4e4121a92ec95bc1366cc5b3bad4e27.tar.bz2
* So many patches have been posted recently on the mailing list and
because we were unable to find correct solution to compile on various linux distros (due to rpcgen incompatibilities), and because the coding style of rdbg was rather inconsistant among various pieces of code, I decided to: 1) make some cleaning regarding global coding style (using indent + manual edits), 2) incorporate/review the paches send by various people (S. Holford, T. Strauman), 3) Fix the bug due to varying rpcgen code generation in remdeb_svc.c, 4) Remove some dead code, 5) Apply a patches enabling to call enterRdbg imediately after rdbg initialization is done, NB : the paches is huge but it is mainly due to coding styke chnages. Only few lines of codes have been really changed and they do not impact rdbg functionnality (AFAIKT). * include/rdbg/servrpc.h, include/rdbg/i386/rdbg_f.h, include/rdbg/m68k/rdbg_f.h, include/rdbg/powerpc/rdbg_f.h, src/_servtgt.c, src/awk.svc, src/excep.c, src/ptrace.c, src/rdbg.c, src/remdeb.x, src/servbkpt.c, src/servcon.c, src/servrpc.c, src/servtgt.c, src/servtsp.c, src/servutil.c, src/i386/excep_f.c, src/i386/rdbg_f.c, src/i386/any/Makefile.am, src/i386/any/remdeb.h, src/i386/any/remdeb_svc.c, src/i386/any/remdeb_xdr.c, src/m68k/excep_f.c, src/m68k/rdbg_f.c, src/m68k/any/Makefile.am, src/m68k/any/remdeb.h, src/m68k/any/remdeb_svc.c, src/m68k/any/remdeb_xdr.c, src/powerpc/excep_f.c, src/powerpc/rdbg_f.c, src/powerpc/new_exception_processing/Makefile.am, src/powerpc/new_exception_processing/remdeb.h, src/powerpc/new_exception_processing/remdeb_svc.c, src/powerpc/new_exception_processing/remdeb_xdr.c: Modified.
Diffstat (limited to 'c/src/librdbg/src/excep.c')
-rw-r--r--c/src/librdbg/src/excep.c98
1 files changed, 54 insertions, 44 deletions
diff --git a/c/src/librdbg/src/excep.c b/c/src/librdbg/src/excep.c
index d3183e24e2..c8ce6d7415 100644
--- a/c/src/librdbg/src/excep.c
+++ b/c/src/librdbg/src/excep.c
@@ -24,30 +24,32 @@ Exception_context *LastCtx = NULL;
CPU_Exception_frame SavedContext;
+/*
+ * Save an exception context at the end of a list
+ */
-/********* Save an exception context at the end of a list *****/
-
-int PushExceptCtx ( Objects_Id Id, Objects_Id semId, CPU_Exception_frame *ctx ) {
+ int
+PushExceptCtx (Objects_Id Id, Objects_Id semId, CPU_Exception_frame * ctx)
+{
Exception_context *SaveCtx;
- SaveCtx = (Exception_context *)malloc(sizeof(Exception_context));
+ SaveCtx = (Exception_context *) malloc (sizeof (Exception_context));
if (SaveCtx == NULL)
- rtems_panic("Can't allocate memory to save Exception context");
-
+ rtems_panic ("Can't allocate memory to save Exception context");
+
SaveCtx->id = Id;
SaveCtx->ctx = ctx;
SaveCtx->semaphoreId = semId;
SaveCtx->previous = NULL;
SaveCtx->next = NULL;
-
- if (FirstCtx == NULL){ /* initialization */
+
+ if (FirstCtx == NULL) { /* initialization */
FirstCtx = SaveCtx;
- LastCtx = SaveCtx;
+ LastCtx = SaveCtx;
NbExceptCtx = 1;
- }
- else {
- NbExceptCtx ++;
+ } else {
+ NbExceptCtx++;
LastCtx->next = SaveCtx;
SaveCtx->previous = LastCtx;
LastCtx = SaveCtx;
@@ -55,36 +57,41 @@ int PushExceptCtx ( Objects_Id Id, Objects_Id semId, CPU_Exception_frame *ctx )
return 0;
}
-/********* Save an temporary exception context in a ******/
-/********* global variable ******/
-
-int PushSavedExceptCtx ( Objects_Id Id, CPU_Exception_frame *ctx ) {
+/*
+ * Save an temporary exception context in a global variable
+ */
- memcpy (&(SavedContext), ctx, sizeof(CPU_Exception_frame));
+ int
+PushSavedExceptCtx (Objects_Id Id, CPU_Exception_frame * ctx)
+{
+ memcpy (&(SavedContext), ctx, sizeof (CPU_Exception_frame));
return 0;
}
+/*
+ * Remove the context of the specified Id thread.
+ * If Id = -1, then return the first context
+ */
-/****** Remove the context of the specified Id thread *********/
-/****** If Id = -1, then return the first context *********/
+ int
+PopExceptCtx (Objects_Id Id)
+{
+ Exception_context *ExtractCtx;
-int PopExceptCtx ( Objects_Id Id ) {
+ if (FirstCtx == NULL)
+ return -1;
- Exception_context *ExtractCtx;
-
- if (FirstCtx == NULL) return -1;
-
- if (Id == -1) {
+ if (Id == -1) {
ExtractCtx = LastCtx;
LastCtx = LastCtx->previous;
- free(ExtractCtx);
- NbExceptCtx --;
+ free (ExtractCtx);
+ NbExceptCtx--;
return 0;
}
-
+
ExtractCtx = LastCtx;
-
+
while (ExtractCtx->id != Id && ExtractCtx != NULL) {
ExtractCtx = ExtractCtx->previous;
}
@@ -92,37 +99,40 @@ int PopExceptCtx ( Objects_Id Id ) {
if (ExtractCtx == NULL)
return -1;
- if ( ExtractCtx->previous != NULL)
+ if (ExtractCtx->previous != NULL)
(ExtractCtx->previous)->next = ExtractCtx->next;
- if ( ExtractCtx->next != NULL)
+ if (ExtractCtx->next != NULL)
(ExtractCtx->next)->previous = ExtractCtx->previous;
if (ExtractCtx == FirstCtx)
FirstCtx = FirstCtx->next;
- else
- if (ExtractCtx == LastCtx)
+ else if (ExtractCtx == LastCtx)
LastCtx = LastCtx->previous;
-
- free(ExtractCtx);
- NbExceptCtx --;
+
+ free (ExtractCtx);
+ NbExceptCtx--;
return 0;
}
-
-/****** Return the context of the specified Id thread *********/
-/****** If Id = -1, then return the first context *********/
+/*
+ * Return the context of the specified Id thread.
+ * If Id = -1, then return the first context.
+ */
-Exception_context *GetExceptCtx ( Objects_Id Id ) {
+ Exception_context *
+GetExceptCtx (Objects_Id Id)
+{
Exception_context *ExtractCtx;
- if (FirstCtx == NULL) return NULL;
-
- if (Id == -1) {
+ if (FirstCtx == NULL)
+ return NULL;
+
+ if (Id == -1) {
return LastCtx;
}
-
+
ExtractCtx = LastCtx;
while (ExtractCtx->id != Id && ExtractCtx != NULL) {