Browse Source

Add support for loongarch

tags/3.8.0
wuruilong 5 months ago
parent
commit
0880967e05
4 changed files with 8 additions and 0 deletions
  1. 2
    0
      cmake/FindArch.cmake
  2. 2
    0
      contrib/backward-cpp/backward.hpp
  3. 2
    0
      contrib/libev/ev.c
  4. 2
    0
      src/rspamd.c

+ 2
- 0
cmake/FindArch.cmake View File

@@ -35,6 +35,8 @@ set(archdetect_c_code "
#else
#error cmake_ARCH ppc
#endif
#elif defined(__loongarch__) || defined(__loongarch64)
#error cmake_ARCH loongarch64
#endif

#error cmake_ARCH unknown

+ 2
- 0
contrib/backward-cpp/backward.hpp View File

@@ -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);

+ 2
- 0
contrib/libev/ev.c View File

@@ -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

+ 2
- 0
src/rspamd.c View File

@@ -1279,6 +1279,8 @@ get_cpu_architecture(void)
return "ARM64";
#elif defined(__arm__) || defined(_M_ARM)
return "ARM";
#elif defined(__loongarch__) || defined(__loongarch64)
return "LOONGARCH64";
#elif defined(__mips__)
return "MIPS";
#elif defined(__powerpc__) || defined(_M_PPC)

Loading…
Cancel
Save