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