* gdbint.texinfo (Target Conditionals): Extend the
authorJan Kratochvil <jan.kratochvil@redhat.com>
Wed, 26 Nov 2008 05:26:40 +0000 (05:26 +0000)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Wed, 26 Nov 2008 05:26:40 +0000 (05:26 +0000)
gdbarch_breakpoint_from_pc description.

gdb/doc/ChangeLog
gdb/doc/gdbint.texinfo

index 74d7fca48b3b968fce23e76ad285630ac131ac90..350831be8f2c5d61eb873cd1b280789aa7c348b2 100644 (file)
@@ -1,3 +1,8 @@
+2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * gdbint.texinfo (Target Conditionals): Extend the
+       gdbarch_breakpoint_from_pc description.
+
 2008-11-22  Vladimir Prus  <vladimir@codesourcery.com>
 
        * gdb.texinfo (M68K Features): Fix typo.
index 9caff8fe1a18f8d73f77fb8610edc50eb166b299..88dd7f9e0881a4b43c2bf7d592465434db5ad595 100644 (file)
@@ -3430,16 +3430,23 @@ favor of @code{gdbarch_breakpoint_from_pc}.
 @findex gdbarch_breakpoint_from_pc
 @anchor{gdbarch_breakpoint_from_pc} Use the program counter to determine the
 contents and size of a breakpoint instruction.  It returns a pointer to
-a string of bytes that encode a breakpoint instruction, stores the
+a static string of bytes that encode a breakpoint instruction, stores the
 length of the string to @code{*@var{lenptr}}, and adjusts the program
 counter (if necessary) to point to the actual memory location where the
-breakpoint should be inserted.
+breakpoint should be inserted.  May return @code{NULL} to indicate that
+software breakpoints are not supported.
 
 Although it is common to use a trap instruction for a breakpoint, it's
 not required; for instance, the bit pattern could be an invalid
 instruction.  The breakpoint must be no longer than the shortest
 instruction of the architecture.
 
+Provided breakpoint bytes can be also used by @code{bp_loc_is_permanent} to
+detect permanent breakpoints.  @code{gdbarch_breakpoint_from_pc} should return
+an unchanged memory copy if it was called for a location with permanent
+breakpoint as some architectures use breakpoint instructions containing
+arbitrary parameter value.
+
 Replaces all the other @var{BREAKPOINT} macros.
 
 @item int gdbarch_memory_insert_breakpoint (@var{gdbarch}, @var{bp_tgt})