commit eaa05d03ac167c6364984d22318fb4afe1c0c5d3
parent 983a0a54341cb83645dcae94c85d9698d7ac35da
Author: Landry Breuil <landry@rhaalovely.net>
Date: Thu, 16 Oct 2025 15:51:57 +0000
Bug 1994624: fix JIT build on OpenBSD/riscv64. r=spidermonkey-reviewers,iain
Differential Revision: https://phabricator.services.mozilla.com/D268828
Diffstat:
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/js/src/jit/riscv64/Architecture-riscv64.cpp b/js/src/jit/riscv64/Architecture-riscv64.cpp
@@ -76,7 +76,7 @@ void FlushICache(void* code, size_t size) {
#if defined(JS_SIMULATOR)
js::jit::SimulatorProcess::FlushICache(code, size);
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__OpenBSD__)
# if defined(__GNUC__)
intptr_t end = reinterpret_cast<intptr_t>(code) + size;
__builtin___clear_cache(reinterpret_cast<char*>(code),
diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp
@@ -100,6 +100,12 @@ using namespace js::wasm;
# define RLR_sig(p) ((p)->sc_lr)
# define R31_sig(p) ((p)->sc_sp)
# endif
+# if defined(__riscv)
+# define RPC_sig(p) ((p)->sc_sepc)
+# define RRA_sig(p) ((p)->sc_ra)
+# define RFP_sig(p) ((p)->sc_s[0])
+# define R02_sig(p) ((p)->sc_sp)
+# endif
# if defined(__mips__)
# define EPC_sig(p) ((p)->sc_pc)
# define RFP_sig(p) ((p)->sc_regs[30])