Extend YS_DEBUGTRAP to MacOS.
authorPeter Crozier <peter@crozier.com>
Wed, 13 May 2020 12:09:08 +0000 (13:09 +0100)
committerPeter Crozier <peter@crozier.com>
Wed, 13 May 2020 12:11:49 +0000 (13:11 +0100)
kernel/log.h

index dee5d44d78969ce2545b22a3310229b0467c4b65..4b60ffb0da21f1fd16c5b1d42ccb7e70739f600e 100644 (file)
@@ -86,7 +86,7 @@ YOSYS_NAMESPACE_BEGIN
 # endif
 # if __has_builtin(__builtin_debugtrap)
 #  define YS_DEBUGTRAP __builtin_debugtrap()
-# elif defined(__unix__)
+# elif defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
 #  define YS_DEBUGTRAP raise(SIGTRAP)
 # else
 #  define YS_DEBUGTRAP do {} while(0)
@@ -103,6 +103,9 @@ YOSYS_NAMESPACE_BEGIN
 # define YS_DEBUGTRAP_IF_DEBUGGING do { \
                sighandler_t old = signal(SIGTRAP, SIG_IGN); raise(SIGTRAP); signal(SIGTRAP, old); \
        } while(0)
+#elif defined(__APPLE__) && defined(__MACH__)
+// MacOS
+#define YS_DEBUGTRAP_IF_DEBUGGING { sig_t old = signal(SIGTRAP, SIG_IGN); raise(SIGTRAP); signal(SIGTRAP, old); }
 #else
 # define YS_DEBUGTRAP_IF_DEBUGGING do {} while(0)
 #endif