nss/nss-3.50-fix-riscv64.patch

29 lines
1.5 KiB
Diff

diff --git nss/lib/freebl/verified/kremlin/include/kremlin/internal/types.h nss/lib/freebl/verified/kremlin/include/kremlin/internal/types.h
index 67d5af5..beaa862 100644
--- nss/lib/freebl/verified/kremlin/include/kremlin/internal/types.h
+++ nss/lib/freebl/verified/kremlin/include/kremlin/internal/types.h
@@ -56,7 +56,8 @@ typedef const char *Prims_string;
#include <emmintrin.h>
typedef __m128i FStar_UInt128_uint128;
#elif !defined(KRML_VERIFIED_UINT128) && !defined(_MSC_VER) && \
- (defined(__x86_64__) || defined(__x86_64) || defined(__aarch64__))
+ (defined(__x86_64__) || defined(__x86_64) || defined(__aarch64__) || \
+ (defined(__riscv) && __riscv_xlen == 64))
typedef unsigned __int128 FStar_UInt128_uint128;
#else
typedef struct FStar_UInt128_uint128_s {
diff --git nss/lib/freebl/verified/kremlin/kremlib/dist/minimal/fstar_uint128_gcc64.h nss/lib/freebl/verified/kremlin/kremlib/dist/minimal/fstar_uint128_gcc64.h
index ba01362..8bd90bc 100644
--- nss/lib/freebl/verified/kremlin/kremlib/dist/minimal/fstar_uint128_gcc64.h
+++ nss/lib/freebl/verified/kremlin/kremlib/dist/minimal/fstar_uint128_gcc64.h
@@ -25,7 +25,8 @@
#include "LowStar_Endianness.h"
#if !defined(KRML_VERIFIED_UINT128) && !defined(_MSC_VER) && \
- (defined(__x86_64__) || defined(__x86_64) || defined(__aarch64__))
+ (defined(__x86_64__) || defined(__x86_64) || defined(__aarch64__) || \
+ (defined(__riscv) && __riscv_xlen == 64))
/* GCC + using native unsigned __int128 support */