aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPawel Kupczak <pawel.kupczak@intel.com>2025-08-28 11:50:16 +0000
committerChristina Schimpe <christina.schimpe@intel.com>2025-09-04 20:44:48 +0000
commit95f21c0d25a8241251a1dfcf6e5d80701cd80a06 (patch)
tree2e35887aa7ff7464b284ab2a5bbcd5dbf46ea6b9
parent57ce06ac23a8b01d1bd9de2cbc1f79f75b96f0ca (diff)
downloadbinutils-95f21c0d25a8241251a1dfcf6e5d80701cd80a06.zip
binutils-95f21c0d25a8241251a1dfcf6e5d80701cd80a06.tar.gz
binutils-95f21c0d25a8241251a1dfcf6e5d80701cd80a06.tar.bz2
gdb, amd64: return after amd64_analyze_register_saves if current_pc reached
Make sure the function bails out early if CURRENT_PC is reached, to avoid the call to amd64_analyze_stack_alloc. Reviewed-By: Guinevere Larsen <guinevere@redhat.com> Approved-By: Andrew Burgess <aburgess@redhat.com>
-rwxr-xr-xgdb/amd64-tdep.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index 1afdaa8..9245889 100755
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -2750,6 +2750,9 @@ amd64_analyze_prologue (gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR current_pc,
return current_pc;
pc = amd64_analyze_register_saves (pc, current_pc, cache);
+ if (current_pc <= pc)
+ return current_pc;
+
return amd64_analyze_stack_alloc (gdbarch, pc, current_pc, cache);
}