[binutils-gdb] [arm] Don't use special treatment for PC

Luis Machado luisgpm@sourceware.org
Wed Jun 1 10:25:09 GMT 2022


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=46c7fd95fc42466a5a8c3b3d70925f1a8af68de3

commit 46c7fd95fc42466a5a8c3b3d70925f1a8af68de3
Author: Yvan Roux <yvan.roux@foss.st.com>
Date:   Wed Jun 1 11:08:00 2022 +0000

    [arm] Don't use special treatment for PC
    
    In an exception frame the PC register is extracted from the stack
    just like other base registers, so there is no need for a special
    treatment.
    
    Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@st.com>
    Signed-off-by: Yvan Roux <yvan.roux@foss.st.com>

Diff:
---
 gdb/arm-tdep.c | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 5fbd730c5a5..50ec41a66b1 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -3559,15 +3559,6 @@ arm_m_exception_prev_register (struct frame_info *this_frame,
       return frame_unwind_got_constant (this_frame, prev_regnum, sp_value);
     }
 
-  if (prev_regnum == ARM_PC_REGNUM)
-    {
-      CORE_ADDR lr = frame_unwind_register_unsigned (this_frame, ARM_LR_REGNUM);
-      struct gdbarch *gdbarch = get_frame_arch (this_frame);
-
-      return frame_unwind_got_constant (this_frame, prev_regnum,
-					arm_addr_bits_remove (gdbarch, lr));
-    }
-
   return trad_frame_get_prev_register (this_frame, cache->saved_regs,
 				       prev_regnum);
 }


More information about the Gdb-cvs mailing list