This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB 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]

[PATCH] sim: common: replace SIM_FILTER_PATH with lbasename


This helper macro has largely the same behavior as libiberty's lbasename.
There is a slight nuance related to colons, but it's not clear what the
point of that is, and the code implies that it just wants the basename.

Committed.
---
 sim/common/ChangeLog    | 10 ++++++++++
 sim/common/sim-assert.h | 25 ++++---------------------
 sim/common/sim-events.c |  7 ++-----
 3 files changed, 16 insertions(+), 26 deletions(-)

diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog
index 1a67e5d..c436b91 100644
--- a/sim/common/ChangeLog
+++ b/sim/common/ChangeLog
@@ -1,3 +1,13 @@
+2015-06-24  Mike Frysinger  <vapier@gentoo.org>
+
+	* sim-assert.h (SIM_FILTER_PATH): Delete.
+	[!SIM_ASSERT, WITH_ASSERT]: Include libiberty.h.
+	(SIM_ASSERT): Replace SIM_FILTER_PATH with lbasename.
+	[!ASSERT, WITH_ASSERT]: Include libiberty.h.
+	(ASSERT): Replace SIM_FILTER_PATH with lbasename.
+	* sim-events.c: Include libiberty.h.
+	(ETRACE): Replace SIM_FILTER_PATH with lbasename.
+
 2015-06-23  Mike Frysinger  <vapier@gentoo.org>
 
 	* acinclude.m4 (AC_ARG_ENABLE(sim-bswap)): Call AS_HELP_STRING.
diff --git a/sim/common/sim-assert.h b/sim/common/sim-assert.h
index e7ccd52..9118bdc 100644
--- a/sim/common/sim-assert.h
+++ b/sim/common/sim-assert.h
@@ -21,21 +21,6 @@
 #ifndef SIM_ASSERT_H
 #define SIM_ASSERT_H
 
-#define SIM_FILTER_PATH(FILE, PATH) \
-do \
-  { \
-    /* strip leading path */ \
-    const char *p = (PATH); \
-    (FILE) = p; \
-    while (*p != '\0' && *p != ':') \
-      { \
-        if (*p == '/') \
-          (FILE) = p + 1; \
-        p++; \
-      } \
-  } \
-while (0)
-
 /* The subtle difference between SIM_ASSERT and ASSERT is that
    SIM_ASSERT passes `sd' to sim_io_error for the SIM_DESC,
    ASSERT passes NULL.  */
@@ -43,6 +28,7 @@ while (0)
 #if !defined (SIM_ASSERT)
 #if defined (WITH_ASSERT)
 #include "sim-io.h"
+#include "libiberty.h"
 #define SIM_ASSERT(EXPRESSION) \
 do \
   { \
@@ -51,10 +37,8 @@ do \
         if (!(EXPRESSION)) \
           { \
             /* report the failure */ \
-            const char *file; \
-            SIM_FILTER_PATH(file, __FILE__); \
             sim_io_error (sd, "%s:%d: assertion failed - %s", \
-                          file, __LINE__, #EXPRESSION); \
+                          lbasename (__FILE__), __LINE__, #EXPRESSION); \
           } \
       } \
   } \
@@ -67,6 +51,7 @@ while (0)
 #if !defined (ASSERT)
 #if defined (WITH_ASSERT)
 #include "sim-io.h"
+#include "libiberty.h"
 #define ASSERT(EXPRESSION) \
 do \
   { \
@@ -75,10 +60,8 @@ do \
         if (!(EXPRESSION)) \
           { \
             /* report the failure */ \
-            const char *file; \
-            SIM_FILTER_PATH(file, __FILE__); \
             sim_io_error (NULL, "%s:%d: assertion failed - %s", \
-                          file, __LINE__, #EXPRESSION); \
+                          lbasename (__FILE__), __LINE__, #EXPRESSION); \
           } \
       } \
   } \
diff --git a/sim/common/sim-events.c b/sim/common/sim-events.c
index fc52575..c4c7660 100644
--- a/sim/common/sim-events.c
+++ b/sim/common/sim-events.c
@@ -25,6 +25,7 @@
 
 #include "sim-main.h"
 #include "sim-assert.h"
+#include "libiberty.h"
 
 #ifdef HAVE_STRING_H
 #include <string.h>
@@ -147,11 +148,7 @@ do \
     if (STRACE_EVENTS_P (sd)) \
       { \
         if (STRACE_DEBUG_P (sd)) \
-	  { \
-	    const char *file; \
-	    SIM_FILTER_PATH (file, __FILE__); \
-	    trace_printf (sd, NULL, "%s:%d: ", file, __LINE__); \
-	  } \
+	  trace_printf (sd, NULL, "%s:%d: ", lbasename (__FILE__), __LINE__); \
         trace_printf  ARGS; \
       } \
   } \
-- 
2.4.4


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