diff --git a/databases/postgresql10-server/files/patch-src_include_storage_s__lock.h b/databases/postgresql10-server/files/patch-src_include_storage_s__lock.h new file mode 100644 index 000000000000..19c945a36126 --- /dev/null +++ b/databases/postgresql10-server/files/patch-src_include_storage_s__lock.h @@ -0,0 +1,20 @@ +--- src/include/storage/s_lock.h.orig 2021-04-15 09:05:25 UTC ++++ src/include/storage/s_lock.h +@@ -320,7 +320,7 @@ tas(volatile slock_t *lock) + * We use the int-width variant of the builtin because it works on more chips + * than other widths. + */ +-#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) ++#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) || defined(__riscv) + #ifdef HAVE_GCC__SYNC_INT32_TAS + #define HAS_TEST_AND_SET + +@@ -337,7 +337,7 @@ tas(volatile slock_t *lock) + #define S_UNLOCK(lock) __sync_lock_release(lock) + + #endif /* HAVE_GCC__SYNC_INT32_TAS */ +-#endif /* __arm__ || __arm || __aarch64__ || __aarch64 */ ++#endif /* __arm__ || __arm || __aarch64__ || __aarch64 || __riscv */ + + + /* S/390 and S/390x Linux (32- and 64-bit zSeries) */ diff --git a/databases/postgresql11-server/files/patch-src_include_storage_s__lock.h b/databases/postgresql11-server/files/patch-src_include_storage_s__lock.h new file mode 100644 index 000000000000..401a2a7337cb --- /dev/null +++ b/databases/postgresql11-server/files/patch-src_include_storage_s__lock.h @@ -0,0 +1,20 @@ +--- src/include/storage/s_lock.h.orig 2021-04-15 17:59:43 UTC ++++ src/include/storage/s_lock.h +@@ -320,7 +320,7 @@ tas(volatile slock_t *lock) + * We use the int-width variant of the builtin because it works on more chips + * than other widths. + */ +-#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) ++#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) || defined(__riscv) + #ifdef HAVE_GCC__SYNC_INT32_TAS + #define HAS_TEST_AND_SET + +@@ -337,7 +337,7 @@ tas(volatile slock_t *lock) + #define S_UNLOCK(lock) __sync_lock_release(lock) + + #endif /* HAVE_GCC__SYNC_INT32_TAS */ +-#endif /* __arm__ || __arm || __aarch64__ || __aarch64 */ ++#endif /* __arm__ || __arm || __aarch64__ || __aarch64 || __riscv */ + + + /* S/390 and S/390x Linux (32- and 64-bit zSeries) */ diff --git a/databases/postgresql12-server/files/patch-src_include_storage_s__lock.h b/databases/postgresql12-server/files/patch-src_include_storage_s__lock.h new file mode 100644 index 000000000000..19c945a36126 --- /dev/null +++ b/databases/postgresql12-server/files/patch-src_include_storage_s__lock.h @@ -0,0 +1,20 @@ +--- src/include/storage/s_lock.h.orig 2021-04-15 09:05:25 UTC ++++ src/include/storage/s_lock.h +@@ -320,7 +320,7 @@ tas(volatile slock_t *lock) + * We use the int-width variant of the builtin because it works on more chips + * than other widths. + */ +-#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) ++#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) || defined(__riscv) + #ifdef HAVE_GCC__SYNC_INT32_TAS + #define HAS_TEST_AND_SET + +@@ -337,7 +337,7 @@ tas(volatile slock_t *lock) + #define S_UNLOCK(lock) __sync_lock_release(lock) + + #endif /* HAVE_GCC__SYNC_INT32_TAS */ +-#endif /* __arm__ || __arm || __aarch64__ || __aarch64 */ ++#endif /* __arm__ || __arm || __aarch64__ || __aarch64 || __riscv */ + + + /* S/390 and S/390x Linux (32- and 64-bit zSeries) */ diff --git a/databases/postgresql13-server/files/patch-src_include_storage_s__lock.h b/databases/postgresql13-server/files/patch-src_include_storage_s__lock.h new file mode 100644 index 000000000000..19c945a36126 --- /dev/null +++ b/databases/postgresql13-server/files/patch-src_include_storage_s__lock.h @@ -0,0 +1,20 @@ +--- src/include/storage/s_lock.h.orig 2021-04-15 09:05:25 UTC ++++ src/include/storage/s_lock.h +@@ -320,7 +320,7 @@ tas(volatile slock_t *lock) + * We use the int-width variant of the builtin because it works on more chips + * than other widths. + */ +-#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) ++#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) || defined(__riscv) + #ifdef HAVE_GCC__SYNC_INT32_TAS + #define HAS_TEST_AND_SET + +@@ -337,7 +337,7 @@ tas(volatile slock_t *lock) + #define S_UNLOCK(lock) __sync_lock_release(lock) + + #endif /* HAVE_GCC__SYNC_INT32_TAS */ +-#endif /* __arm__ || __arm || __aarch64__ || __aarch64 */ ++#endif /* __arm__ || __arm || __aarch64__ || __aarch64 || __riscv */ + + + /* S/390 and S/390x Linux (32- and 64-bit zSeries) */