aboutsummaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authorwuruilong <wuruilong@loongson.cn>2023-11-16 07:25:40 +0000
committerwuruilong <wuruilong@loongson.cn>2023-11-16 07:25:40 +0000
commit0880967e05cc8d3c4b9e52073f8fb453c13ae22c (patch)
treeb4797f9899670031d57343d22c56f73325058c5b /contrib
parentdfd698fe1c9c5fd32155c78d6f9e95526fe06999 (diff)
downloadrspamd-0880967e05cc8d3c4b9e52073f8fb453c13ae22c.tar.gz
rspamd-0880967e05cc8d3c4b9e52073f8fb453c13ae22c.zip
Add support for loongarch
Diffstat (limited to 'contrib')
-rw-r--r--contrib/backward-cpp/backward.hpp2
-rw-r--r--contrib/libev/ev.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/contrib/backward-cpp/backward.hpp b/contrib/backward-cpp/backward.hpp
index ce725559b..ca09b7217 100644
--- a/contrib/backward-cpp/backward.hpp
+++ b/contrib/backward-cpp/backward.hpp
@@ -4222,6 +4222,8 @@ public:
#else
error_addr = reinterpret_cast<void *>(uctx->uc_mcontext.pc);
#endif
+#elif defined(__loongarch__)
+ error_addr = reinterpret_cast<void *>(uctx->uc_mcontext.__pc);
#elif defined(__mips__)
error_addr = reinterpret_cast<void *>(
reinterpret_cast<struct sigcontext *>(&uctx->uc_mcontext)->sc_pc);
diff --git a/contrib/libev/ev.c b/contrib/libev/ev.c
index 8657aa96e..230445d2a 100644
--- a/contrib/libev/ev.c
+++ b/contrib/libev/ev.c
@@ -843,6 +843,8 @@ struct signalfd_siginfo
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("tb1 0,%%r0,128" : : : "memory")
#elif defined __sh__
#define ECB_MEMORY_FENCE __asm__ __volatile__ ("" : : : "memory")
+ #elif defined __loongarch__ || __loongarch64
+ #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dbar %0 ": : "I"(0) : "memory")
#endif
#endif
#endif