aboutsummaryrefslogtreecommitdiffstats
path: root/lib/libspl/include
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libspl/include')
-rw-r--r--lib/libspl/include/sys/isa_defs.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/lib/libspl/include/sys/isa_defs.h b/lib/libspl/include/sys/isa_defs.h
index 7a90e077e..18a41fef9 100644
--- a/lib/libspl/include/sys/isa_defs.h
+++ b/lib/libspl/include/sys/isa_defs.h
@@ -192,10 +192,29 @@ extern "C" {
#define _SUNOS_VTOC_16
+/*
+ * RISC-V arch specific defines
+ * only RV64G (including atomic) LP64 is supported yetxi
+ */
+#elif defined(__riscv) && defined(_LP64) && _LP64 && \
+ defined(__riscv_atomic) && __riscv_atomic
+
+#ifndef __riscv__
+#define __riscv__
+#endif
+
+#ifndef __rv64g__
+#define __rv64g__
+#endif
+
+#define _LITTLE_ENDIAN
+
+#define _SUNOS_VTOC_16
+
#else
/*
* Currently supported:
- * x86_64, i386, arm, powerpc, s390, sparc, and mips
+ * x86_64, i386, arm, powerpc, s390, sparc, mips, and RV64G
*/
#error "Unsupported ISA type"
#endif