mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-25 07:21:05 +00:00
40 lines
1.3 KiB
Diff
40 lines
1.3 KiB
Diff
|
From 7f8c0d8984bf5754807d3bb543cbc3ffc634e9e4 Mon Sep 17 00:00:00 2001
|
||
|
From: Max Filippov <jcmvbkbc@gmail.com>
|
||
|
Date: Sat, 30 May 2015 13:00:32 +0300
|
||
|
Subject: [PATCH] xtensa: initialize call_abi in xtensa_tdep
|
||
|
|
||
|
Use XSHAL_ABI value provided by xtensa-config.h to correctly initialize
|
||
|
xtensa_tdep.call_abi
|
||
|
This fixes calls to functions from GDB that otherwise fail with the
|
||
|
following assertion in call0 configuration:
|
||
|
|
||
|
gdb/regcache.c:602: internal-error: regcache_raw_read: Assertion
|
||
|
`regnum >= 0 && regnum < regcache->descr->nr_raw_registers' failed.
|
||
|
|
||
|
gdb/
|
||
|
* xtensa-tdep.h (XTENSA_GDBARCH_TDEP_INSTANTIATE): Initialize
|
||
|
call_abi using XSHAL_ABI macro.
|
||
|
|
||
|
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||
|
---
|
||
|
gdb/xtensa-tdep.h | 3 ++-
|
||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/gdb/xtensa-tdep.h b/gdb/xtensa-tdep.h
|
||
|
index adacaf8..3b6ea66 100644
|
||
|
--- a/gdb/xtensa-tdep.h
|
||
|
+++ b/gdb/xtensa-tdep.h
|
||
|
@@ -246,7 +246,8 @@ struct gdbarch_tdep
|
||
|
.spill_location = -1, \
|
||
|
.spill_size = (spillsz), \
|
||
|
.unused = 0, \
|
||
|
- .call_abi = 0, \
|
||
|
+ .call_abi = (XSHAL_ABI == XTHAL_ABI_CALL0) ? \
|
||
|
+ CallAbiCall0Only : CallAbiDefault, \
|
||
|
.debug_interrupt_level = XCHAL_DEBUGLEVEL, \
|
||
|
.icache_line_bytes = XCHAL_ICACHE_LINESIZE, \
|
||
|
.dcache_line_bytes = XCHAL_DCACHE_LINESIZE, \
|
||
|
--
|
||
|
1.8.1.4
|
||
|
|