Memory leaks and ineffective bounds checking in wasm_scan
[deliverable/binutils-gdb.git] / gdb / tramp-frame.h
index c63d9c7db18f86ea820ea9e5c49f21faff12f0a5..f40e47bf62fc3eff73f9fd613187fcf8a897b47d 100644 (file)
@@ -1,6 +1,6 @@
 /* Signal trampoline unwinder.
 
-   Copyright (C) 2004-2005, 2007-2012 Free Software Foundation, Inc.
+   Copyright (C) 2004-2020 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -41,7 +41,7 @@ struct trad_frame_cache;
 
 /* Magic instruction that to mark the end of the signal trampoline
    instruction sequence.  */
-#define TRAMP_SENTINEL_INSN ((LONGEST) -1)
+#define TRAMP_SENTINEL_INSN ULONGEST_MAX
 
 struct tramp_frame
 {
@@ -69,6 +69,13 @@ struct tramp_frame
                struct frame_info *this_frame,
                struct trad_frame_cache *this_cache,
                CORE_ADDR func);
+  /* Return non-zero if the tramp-frame is valid for the PC requested.
+     Adjust the PC to point to the address to check the instruction
+     sequence against if required.  If this is NULL, then the tramp-frame
+     is valid for any PC.  */
+  int (*validate) (const struct tramp_frame *self,
+                  struct frame_info *this_frame,
+                  CORE_ADDR *pc);
 };
 
 void tramp_frame_prepend_unwinder (struct gdbarch *gdbarch,
This page took 0.03521 seconds and 4 git commands to generate.