Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH v2 1/2] [gdb/tdep] Use symbolic constants in s390_prologue_frame_unwind_cache
@ 2025-01-09 10:44 Tom de Vries
  2025-01-09 10:44 ` [PATCH v2 2/2] [gdb/tdep] Fix gdb.base/readnever.exp on s390x Tom de Vries
  2025-01-09 13:20 ` [PATCH v2 1/2] [gdb/tdep] Use symbolic constants in s390_prologue_frame_unwind_cache Andreas Arnez
  0 siblings, 2 replies; 5+ messages in thread
From: Tom de Vries @ 2025-01-09 10:44 UTC (permalink / raw)
  To: gdb-patches

In s390_prologue_frame_unwind_cache there are two loops using a hardcoded
constant 16:
...
  for (i = 0; i < 16; i++)
    if (s390_register_call_saved (gdbarch, S390_R0_REGNUM + i)
  ...
  for (i = 0; i < 16; i++)
    if (s390_register_call_saved (gdbarch, S390_F0_REGNUM + i)
...

Fix this by using symbolic constants S390_NUM_GPRS and S390_NUM_FPRS instead.

Tested on s390x-linux, by rebuilding.
---
 gdb/s390-tdep.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gdb/s390-tdep.c b/gdb/s390-tdep.c
index 3a672b3869d..70affc914c2 100644
--- a/gdb/s390-tdep.c
+++ b/gdb/s390-tdep.c
@@ -2532,12 +2532,12 @@ s390_prologue_frame_unwind_cache (const frame_info_ptr &this_frame,
      ABI; for call-clobbered registers the parser may have recognized
      spurious stores.  */
 
-  for (i = 0; i < 16; i++)
+  for (i = 0; i < S390_NUM_GPRS; i++)
     if (s390_register_call_saved (gdbarch, S390_R0_REGNUM + i)
 	&& data.gpr_slot[i] != 0)
       info->saved_regs[S390_R0_REGNUM + i].set_addr (cfa - data.gpr_slot[i]);
 
-  for (i = 0; i < 16; i++)
+  for (i = 0; i < S390_NUM_FPRS; i++)
     if (s390_register_call_saved (gdbarch, S390_F0_REGNUM + i)
 	&& data.fpr_slot[i] != 0)
       info->saved_regs[S390_F0_REGNUM + i].set_addr (cfa - data.fpr_slot[i]);

base-commit: 42bcf692abd52ec1cb9d4bf3eca545e3b33fe536
-- 
2.43.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-01-09 13:34 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-09 10:44 [PATCH v2 1/2] [gdb/tdep] Use symbolic constants in s390_prologue_frame_unwind_cache Tom de Vries
2025-01-09 10:44 ` [PATCH v2 2/2] [gdb/tdep] Fix gdb.base/readnever.exp on s390x Tom de Vries
2025-01-09 13:25   ` Andreas Arnez
2025-01-09 13:33     ` Tom de Vries
2025-01-09 13:20 ` [PATCH v2 1/2] [gdb/tdep] Use symbolic constants in s390_prologue_frame_unwind_cache Andreas Arnez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox