forked from pool/libunwind
28 lines
820 B
Diff
28 lines
820 B
Diff
|
From 3705baed4ddb5a98138d16dd2effcaeaa7e72db5 Mon Sep 17 00:00:00 2001
|
||
|
From: Andreas Schwab <schwab@suse.de>
|
||
|
Date: Wed, 3 Apr 2024 15:13:16 +0200
|
||
|
Subject: [PATCH] Fix unw_is_signal_frame for RISC-V
|
||
|
|
||
|
Don't require the IP to be 8-byte aligned. Instructions can start at any
|
||
|
even address.
|
||
|
---
|
||
|
src/riscv/Gis_signal_frame.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/riscv/Gis_signal_frame.c b/src/riscv/Gis_signal_frame.c
|
||
|
index 92356343..aba71f5b 100644
|
||
|
--- a/src/riscv/Gis_signal_frame.c
|
||
|
+++ b/src/riscv/Gis_signal_frame.c
|
||
|
@@ -57,7 +57,7 @@ unw_is_signal_frame (unw_cursor_t *cursor)
|
||
|
|
||
|
ip = c->dwarf.ip;
|
||
|
|
||
|
- if (!ip || !a->access_mem || (ip & (sizeof(unw_word_t) - 1)))
|
||
|
+ if (!ip || !a->access_mem)
|
||
|
return 0;
|
||
|
|
||
|
if ((ret = (*a->access_mem) (as, ip, &i0, 0, arg)) < 0)
|
||
|
--
|
||
|
2.49.0
|
||
|
|