[Crosstoolchain-logs] [gdb] 02/03: Imported Upstream version 7.7.1

Samuel Bronson naesten-guest at moszumanska.debian.org
Thu May 22 02:13:02 UTC 2014


This is an automated email from the git hooks/post-receive script.

naesten-guest pushed a commit to branch master
in repository gdb.

commit d81bf6a45dbb2d05276373499448089b8987b75f
Author: Samuel Bronson <naesten at gmail.com>
Date:   Wed May 21 15:51:54 2014 -0400

    Imported Upstream version 7.7.1
---
 bfd/ChangeLog                                      |   25 +
 bfd/bfd-in.h                                       |    5 -
 bfd/bfd-in2.h                                      |   41 +-
 bfd/bfd.c                                          |    8 +
 bfd/cache.c                                        |    2 +-
 bfd/rs6000-core.c                                  |    4 +-
 bfd/section.c                                      |   26 +
 bfd/version.h                                      |    2 +-
 djunpack.bat                                       |    4 +-
 gdb/ChangeLog                                      |   77 ++
 gdb/MAINTAINERS                                    |    1 +
 gdb/auto-load.c                                    |    6 +-
 gdb/avr-tdep.c                                     |   11 +-
 gdb/dcache.c                                       |   88 +-
 gdb/dcache.h                                       |   12 +-
 gdb/doc/gcore.1                                    |  179 ---
 gdb/doc/gdb.1                                      |  396 ------
 gdb/doc/gdbinit.5                                  |  200 ---
 gdb/doc/gdbserver.1                                |  364 ------
 gdb/infrun.c                                       |    6 +-
 gdb/po/gdb.pot                                     |  384 +++---
 gdb/python/py-linetable.c                          |    4 +-
 gdb/target.c                                       |   49 +-
 gdb/testsuite/ChangeLog                            |   27 +
 gdb/testsuite/gdb.base/auto-load-script            |   17 +
 gdb/testsuite/gdb.base/auto-load.c                 |   22 +
 gdb/testsuite/gdb.base/auto-load.exp               |   41 +
 gdb/testsuite/gdb.base/breakpoint-shadow.exp       |   38 +-
 .../signal-while-stepping-over-bp-other-thread.c   |  145 ++
 .../signal-while-stepping-over-bp-other-thread.exp |  120 ++
 gdb/version.in                                     |    2 +-
 gdb/windows-nat.c                                  |   49 +-
 md5.sum                                            |   71 +-
 readline/doc/history.3                             |  672 ----------
 readline/doc/readline.3                            | 1381 --------------------
 sim/common/run.1                                   |    1 -
 36 files changed, 922 insertions(+), 3558 deletions(-)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 894b0b9..96850d8 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,28 @@
+2014-04-24  Nick Clifton  <nickc at redhat.com>
+
+	2014-01-29  Nick Clifton  <nickc at redhat.com>
+	PR build/16873
+	* bfd-in.h (bfd_set_section_vma): Delete.
+	(bfd_set_section_alignment): Delete.
+	(bfd_set_section_userdata): Delete.
+	(bfd_set_cacheable): Delete.
+	* bfd.c (bfd_set_cacheable): New static inline function.
+	* section.c (bfd_set_section_userdata): Likewise.
+	(bfd_set_section_vma): Likewise.
+	(bfd_set_section_alignment): Likewise.
+	* bfd-in2.h: Regenerate.
+
+2014-03-12  Pedro Alves  <palves at redhat.com>
+
+	PR gdb/16696
+	* rs6000-core.c (rs6000coff_core_p): Cast pointers to bfd_vma
+	through ptr_to_uint instead of through long.
+
+2014-02-17  Rainer Orth  <ro at CeBiTec.Uni-Bielefeld.DE>
+
+	PR build/16550
+	* cache.c (bfd_cache_max_open): Cast RLIM_INFINITY to rlim_t.
+
 2014-01-07  Tom Tromey  <tromey at redhat.com>
 
 	* elf32-xtensa.c (vsprint_msg): Don't use old VA_* compatibility
diff --git a/bfd/bfd-in.h b/bfd/bfd-in.h
index 3afd71b..c7c5a7d 100644
--- a/bfd/bfd-in.h
+++ b/bfd/bfd-in.h
@@ -292,9 +292,6 @@ typedef struct bfd_section *sec_ptr;
 
 #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
 
-#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE)
-#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE)
-#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE)
 /* Find the address one past the end of SEC.  */
 #define bfd_get_section_limit(bfd, sec) \
   (((bfd)->direction != write_direction && (sec)->rawsize != 0	\
@@ -517,8 +514,6 @@ extern void warn_deprecated (const char *, const char *, int, const char *);
 
 #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)
 
-#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE)
-
 extern bfd_boolean bfd_cache_close
   (bfd *abfd);
 /* NB: This declaration should match the autogenerated one in libbfd.h.  */
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 71996db..b5aeb40 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -299,9 +299,6 @@ typedef struct bfd_section *sec_ptr;
 
 #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
 
-#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE)
-#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE)
-#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE)
 /* Find the address one past the end of SEC.  */
 #define bfd_get_section_limit(bfd, sec) \
   (((bfd)->direction != write_direction && (sec)->rawsize != 0	\
@@ -524,8 +521,6 @@ extern void warn_deprecated (const char *, const char *, int, const char *);
 
 #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)
 
-#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE)
-
 extern bfd_boolean bfd_cache_close
   (bfd *abfd);
 /* NB: This declaration should match the autogenerated one in libbfd.h.  */
@@ -1029,7 +1024,7 @@ bfd *bfd_openr (const char *filename, const char *target);
 
 bfd *bfd_fdopenr (const char *filename, const char *target, int fd);
 
-bfd *bfd_openstreamr (const char *, const char *, void *);
+bfd *bfd_openstreamr (const char * filename, const char * target, void * stream);
 
 bfd *bfd_openr_iovec (const char *filename, const char *target,
     void *(*open_func) (struct bfd *nbfd,
@@ -1596,6 +1591,32 @@ struct relax_table {
   int size;
 };
 
+/* Note: the following are provided as inline functions rather than macros
+   because not all callers use the return value.  A macro implementation
+   would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some
+   compilers will complain about comma expressions that have no effect.  */
+static inline bfd_boolean
+bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val)
+{
+  ptr->userdata = val;
+  return TRUE;
+}
+
+static inline bfd_boolean
+bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val)
+{
+  ptr->vma = ptr->lma = val;
+  ptr->user_set_vma = TRUE;
+  return TRUE;
+}
+
+static inline bfd_boolean
+bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val)
+{
+  ptr->alignment_power = val;
+  return TRUE;
+}
+
 /* These sections are global, and are managed by BFD.  The application
    and target back end are not permitted to change the values in
    these sections.  */
@@ -6415,6 +6436,14 @@ struct bfd
   unsigned int selective_search : 1;
 };
 
+/* See note beside bfd_set_section_userdata.  */
+static inline bfd_boolean
+bfd_set_cacheable (bfd * abfd, bfd_boolean val)
+{
+  abfd->cacheable = val;
+  return TRUE;
+}
+
 typedef enum bfd_error
 {
   bfd_error_no_error = 0,
diff --git a/bfd/bfd.c b/bfd/bfd.c
index 8d0580c..2d174f3 100644
--- a/bfd/bfd.c
+++ b/bfd/bfd.c
@@ -311,6 +311,14 @@ CODE_FRAGMENT
 .  unsigned int selective_search : 1;
 .};
 .
+.{* See note beside bfd_set_section_userdata.  *}
+.static inline bfd_boolean
+.bfd_set_cacheable (bfd * abfd, bfd_boolean val)
+.{
+.  abfd->cacheable = val;
+.  return TRUE;
+.}
+.
 */
 
 #include "sysdep.h"
diff --git a/bfd/cache.c b/bfd/cache.c
index 4d46936..4071a02 100644
--- a/bfd/cache.c
+++ b/bfd/cache.c
@@ -82,7 +82,7 @@ bfd_cache_max_open (void)
 #ifdef HAVE_GETRLIMIT
       struct rlimit rlim;
       if (getrlimit (RLIMIT_NOFILE, &rlim) == 0
-	  && rlim.rlim_cur != RLIM_INFINITY)
+	  && rlim.rlim_cur != (rlim_t) RLIM_INFINITY)
 	max = rlim.rlim_cur / 8;
       else
 #endif /* HAVE_GETRLIMIT */
diff --git a/bfd/rs6000-core.c b/bfd/rs6000-core.c
index d9c06b6..38ea66e 100644
--- a/bfd/rs6000-core.c
+++ b/bfd/rs6000-core.c
@@ -585,7 +585,7 @@ rs6000coff_core_p (bfd *abfd)
 	  {
 	    ldi_core = ldinfo.l32.ldinfo_core;
 	    ldi_datasize = ldinfo.l32.ldinfo_datasize;
-	    ldi_dataorg = (bfd_vma) (long) ldinfo.l32.ldinfo_dataorg;
+	    ldi_dataorg = (bfd_vma) (ptr_to_uint) ldinfo.l32.ldinfo_dataorg;
 	    ldi_next = ldinfo.l32.ldinfo_next;
 	  }
 
@@ -627,7 +627,7 @@ rs6000coff_core_p (bfd *abfd)
 	      }
 	    else
 	      {
-		vminfo_addr = (bfd_vma) (long) vminfo.old.vminfo_addr;
+		vminfo_addr = (bfd_vma) (ptr_to_uint) vminfo.old.vminfo_addr;
 		vminfo_size = vminfo.old.vminfo_size;
 		vminfo_offset = vminfo.old.vminfo_offset;
 	      }
diff --git a/bfd/section.c b/bfd/section.c
index fb19d8c..a661228 100644
--- a/bfd/section.c
+++ b/bfd/section.c
@@ -542,6 +542,32 @@ CODE_FRAGMENT
 .  int size;
 .};
 .
+.{* Note: the following are provided as inline functions rather than macros
+.   because not all callers use the return value.  A macro implementation
+.   would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some
+.   compilers will complain about comma expressions that have no effect.  *}
+.static inline bfd_boolean
+.bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val)
+.{
+.  ptr->userdata = val;
+.  return TRUE;
+.}
+.
+.static inline bfd_boolean
+.bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val)
+.{
+.  ptr->vma = ptr->lma = val;
+.  ptr->user_set_vma = TRUE;
+.  return TRUE;
+.}
+.
+.static inline bfd_boolean
+.bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val)
+.{
+.  ptr->alignment_power = val;
+.  return TRUE;
+.}
+.
 .{* These sections are global, and are managed by BFD.  The application
 .   and target back end are not permitted to change the values in
 .   these sections.  *}
diff --git a/bfd/version.h b/bfd/version.h
index 6a3db00..a9271cd 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20140206
+#define BFD_VERSION_DATE 20140505
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff --git a/djunpack.bat b/djunpack.bat
index 80d4889..6b970de 100644
--- a/djunpack.bat
+++ b/djunpack.bat
@@ -17,8 +17,8 @@ Rem
 Rem The following 2 lines need to be changed with each new GDB release, to
 Rem be identical to the name of the top-level directory where the GDB
 Rem distribution unpacks itself.
-set GDBVER=gdb-7.7
-if "%GDBVER%"=="gdb-7.7" GoTo EnvOk
+set GDBVER=gdb-7.7.1
+if "%GDBVER%"=="gdb-7.7.1" GoTo EnvOk
 Rem If their environment space is too small, re-exec with a larger one
 command.com /e:4096 /c %0 %1
 GoTo End
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1e0964c..e3c7e83 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,80 @@
+2014-05-05  Joel Brobecker  <brobecker at adacore.com>
+
+	* version.in: Set GDB version number to 7.7.1.
+
+2014-04-19  Eli Zaretskii  <eliz at gnu.org>
+
+	PR gdb/14018
+	* windows-nat.c (thread_rec): Don't display a warning when
+	SuspendThread fails with ERROR_ACCESS_DENIED.  If SuspendThread
+	fails for any reason, set th->suspended to -1, so that we don't
+	try to resume such a thread.  Also, don't return NULL in these
+	cases, to avoid completely ruin the session due to "PC register is
+	not available" error.
+	(do_windows_fetch_inferior_registers): Check errors in
+	GetThreadContext call.
+	(windows_continue): Accept an additional argument KILLED; if not
+	zero, ignore errors in the SetThreadContext call, since the
+	inferior was killed and is shutting down.
+	(windows_resume, get_windows_debug_event)
+	(windows_create_inferior, windows_mourn_inferior)
+	(windows_kill_inferior): All callers of windows_continue changed
+	to adjust to its new calling sequence.
+
+2014-04-11  Pierre Langlois  <pierre.langlois at embecosm.com>
+
+	PR backtrace/16721
+	PR backtrace/16832
+	* avr-tdep.c (struct gdbarch_tdep): Mention avrxmega in the comment.
+	(avr_gdbarch_init): Add xmega architectures given by bfd_architecture
+	when setting the size of call_length.
+	(avr_scan_prologue): Accept push r1 instruction for small stack
+	allocation.
+	* MAINTAINERS (Write After Approval): Add "Pierre Langlois".
+
+2014-03-05  Pedro Alves  <palves at redhat.com>
+
+	PR gdb/16575
+	* dcache.c (dcache_poke_byte): Constify ptr parameter.  Return
+	void.  Update comment.
+	(dcache_xfer_memory): Delete.
+	(dcache_read_memory_partial): New, based on the read bits of
+	dcache_xfer_memory.
+	(dcache_update): Add status parameter.  Use ULONGEST for len, and
+	adjust.  Discard cache lines if the reason for the update was
+	error.
+	* dcache.h (dcache_xfer_memory): Delete declaration.
+	(dcache_read_memory_partial): New declaration.
+	(dcache_update): Update prototype.
+	* target.c (raw_memory_xfer_partial): Update the dcache here.
+	(memory_xfer_partial_1): Don't handle dcache writes here.
+
+2014-02-26  Pedro Alves  <palves at redhat.com>
+
+	PR breakpoints/16292
+	* infrun.c (handle_signal_stop) <signal arrives while stepping
+	over a breakpoint>: Switch back to the stepping thread.
+
+2014-02-25  Jan Kratochvil  <jan.kratochvil at redhat.com>
+
+	PR gdb/16626
+	* auto-load.c (auto_load_objfile_script_1): Change filename to
+	debugfile.
+
+2014-02-09  Jan Kratochvil  <jan.kratochvil at redhat.com>
+
+	Fix Python stack corruption.
+	* python/py-linetable.c (ltpy_get_pcs_for_line, ltpy_has_line): Use
+	gdb_py_longest.
+
+2014-02-06  Joel Brobecker  <brobecker at adacore.com>
+
+	* version.in: Set GDB version number to 7.7.0.DATE-cvs.
+
+2014-02-06  Joel Brobecker  <brobecker at adacore.com>
+
+	GDB 7.7 released.
+
 2014-02-06  Joel Brobecker  <brobecker at adacore.com>
 
 	* version.in: Set GDB version number to 7.7.
diff --git a/gdb/MAINTAINERS b/gdb/MAINTAINERS
index ffd310b..c0297c1 100644
--- a/gdb/MAINTAINERS
+++ b/gdb/MAINTAINERS
@@ -546,6 +546,7 @@ Jim Kingdon					kingdon at panix.com
 Paul Koning					paul_koning at dell.com
 Jan Kratochvil					jan.kratochvil at redhat.com
 Maxim Kuvyrkov					maxim at kugelworks.com
+Pierre Langlois 				pierre.langlois at embecosm.com
 Jonathan Larmour				jifl at ecoscentric.com
 Jeff Law					law at redhat.com
 Justin Lebar					justin.lebar at gmail.com
diff --git a/gdb/auto-load.c b/gdb/auto-load.c
index fd612b2..62a7de4 100644
--- a/gdb/auto-load.c
+++ b/gdb/auto-load.c
@@ -791,17 +791,17 @@ auto_load_objfile_script_1 (struct objfile *objfile, const char *realname,
       make_cleanup_fclose (input);
 
       is_safe
-	= file_is_auto_load_safe (filename,
+	= file_is_auto_load_safe (debugfile,
 				  _("auto-load: Loading %s script \"%s\""
 				    " by extension for objfile \"%s\".\n"),
-				  language->name, filename,
+				  language->name, debugfile,
 				  objfile_name (objfile));
 
       /* Add this script to the hash table too so
 	 "info auto-load ${lang}-scripts" can print it.  */
       pspace_info
 	= get_auto_load_pspace_data_for_loading (current_program_space);
-      maybe_add_script (pspace_info, is_safe, filename, filename, language);
+      maybe_add_script (pspace_info, is_safe, debugfile, debugfile, language);
 
       /* To preserve existing behaviour we don't check for whether the
 	 script was already in the table, and always load it.
diff --git a/gdb/avr-tdep.c b/gdb/avr-tdep.c
index cb330ea..1be9e7d 100644
--- a/gdb/avr-tdep.c
+++ b/gdb/avr-tdep.c
@@ -179,7 +179,7 @@ struct avr_unwind_cache
 struct gdbarch_tdep
 {
   /* Number of bytes stored to the stack by call instructions.
-     2 bytes for avr1-5, 3 bytes for avr6.  */
+     2 bytes for avr1-5 and avrxmega1-5, 3 bytes for avr6 and avrxmega6-7.  */
   int call_length;
 
   /* Type for void.  */
@@ -719,7 +719,7 @@ avr_scan_prologue (struct gdbarch *gdbarch, CORE_ADDR pc_beg, CORE_ADDR pc_end,
           info->size += gdbarch_tdep (gdbarch)->call_length;
           vpc += 2;
         }
-      else if (insn == 0x920f)  /* push r0 */
+      else if (insn == 0x920f || insn == 0x921f)  /* push r0 or push r1 */
         {
           info->size += 1;
           vpc += 2;
@@ -1355,14 +1355,21 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   switch (info.bfd_arch_info->mach)
     {
     case bfd_mach_avr1:
+    case bfd_mach_avrxmega1:
     case bfd_mach_avr2:
+    case bfd_mach_avrxmega2:
     case bfd_mach_avr3:
+    case bfd_mach_avrxmega3:
     case bfd_mach_avr4:
+    case bfd_mach_avrxmega4:
     case bfd_mach_avr5:
+    case bfd_mach_avrxmega5:
     default:
       call_length = 2;
       break;
     case bfd_mach_avr6:
+    case bfd_mach_avrxmega6:
+    case bfd_mach_avrxmega7:
       call_length = 3;
       break;
     }
diff --git a/gdb/dcache.c b/gdb/dcache.c
index ea51f5b..87da3c4 100644
--- a/gdb/dcache.c
+++ b/gdb/dcache.c
@@ -413,24 +413,20 @@ dcache_peek_byte (DCACHE *dcache, CORE_ADDR addr, gdb_byte *ptr)
 
 /* Write the byte at PTR into ADDR in the data cache.
 
-   The caller is responsible for also promptly writing the data
-   through to target memory.
+   The caller should have written the data through to target memory
+   already.
 
-   If addr is not in cache, this function does nothing; writing to
-   an area of memory which wasn't present in the cache doesn't cause
-   it to be loaded in.
+   If ADDR is not in cache, this function does nothing; writing to an
+   area of memory which wasn't present in the cache doesn't cause it
+   to be loaded in.  */
 
-   Always return 1 (meaning success) to simplify dcache_xfer_memory.  */
-
-static int
-dcache_poke_byte (DCACHE *dcache, CORE_ADDR addr, gdb_byte *ptr)
+static void
+dcache_poke_byte (DCACHE *dcache, CORE_ADDR addr, const gdb_byte *ptr)
 {
   struct dcache_block *db = dcache_hit (dcache, addr);
 
   if (db)
     db->data[XFORM (dcache, addr)] = *ptr;
-
-  return 1;
 }
 
 static int
@@ -467,26 +463,16 @@ dcache_init (void)
 }
 
 
-/* Read or write LEN bytes from inferior memory at MEMADDR, transferring
-   to or from debugger address MYADDR.  Write to inferior if SHOULD_WRITE is
-   nonzero. 
-
-   Return the number of bytes actually transfered, or -1 if the
-   transfer is not supported or otherwise fails.  Return of a non-negative
-   value less than LEN indicates that no further transfer is possible.
-   NOTE: This is different than the to_xfer_partial interface, in which
-   positive values less than LEN mean further transfers may be possible.  */
+/* Read LEN bytes from dcache memory at MEMADDR, transferring to
+   debugger address MYADDR.  If the data is presently cached, this
+   fills the cache.  Arguments/return are like the target_xfer_partial
+   interface.  */
 
 int
-dcache_xfer_memory (struct target_ops *ops, DCACHE *dcache,
-		    CORE_ADDR memaddr, gdb_byte *myaddr,
-		    int len, int should_write)
+dcache_read_memory_partial (struct target_ops *ops, DCACHE *dcache,
+			    CORE_ADDR memaddr, gdb_byte *myaddr, ULONGEST len)
 {
-  int i;
-  int res;
-  int (*xfunc) (DCACHE *dcache, CORE_ADDR addr, gdb_byte *ptr);
-
-  xfunc = should_write ? dcache_poke_byte : dcache_peek_byte;
+  ULONGEST i;
 
   /* If this is a different inferior from what we've recorded,
      flush the cache.  */
@@ -497,35 +483,18 @@ dcache_xfer_memory (struct target_ops *ops, DCACHE *dcache,
       dcache->ptid = inferior_ptid;
     }
 
-  /* Do write-through first, so that if it fails, we don't write to
-     the cache at all.  */
-
-  if (should_write)
-    {
-      res = target_write (ops, TARGET_OBJECT_RAW_MEMORY,
-			  NULL, myaddr, memaddr, len);
-      if (res <= 0)
-	return res;
-      /* Update LEN to what was actually written.  */
-      len = res;
-    }
-      
   for (i = 0; i < len; i++)
     {
-      if (!xfunc (dcache, memaddr + i, myaddr + i))
+      if (!dcache_peek_byte (dcache, memaddr + i, myaddr + i))
 	{
 	  /* That failed.  Discard its cache line so we don't have a
 	     partially read line.  */
 	  dcache_invalidate_line (dcache, memaddr + i);
-	  /* If we're writing, we still wrote LEN bytes.  */
-	  if (should_write)
-	    return len;
-	  else
-	    return i;
+	  break;
 	}
     }
-    
-  return len;
+
+  return i == 0 ? -1 : i;
 }
 
 /* FIXME: There would be some benefit to making the cache write-back and
@@ -537,17 +506,26 @@ dcache_xfer_memory (struct target_ops *ops, DCACHE *dcache,
    "logically" connected but not actually a single call to one of the
    memory transfer functions.  */
 
-/* Just update any cache lines which are already present.  This is called
-   by memory_xfer_partial in cases where the access would otherwise not go
-   through the cache.  */
+/* Just update any cache lines which are already present.  This is
+   called by the target_xfer_partial machinery when writing raw
+   memory.  */
 
 void
-dcache_update (DCACHE *dcache, CORE_ADDR memaddr, gdb_byte *myaddr, int len)
+dcache_update (DCACHE *dcache, int status,
+	       CORE_ADDR memaddr, const gdb_byte *myaddr,
+	       ULONGEST len)
 {
-  int i;
+  ULONGEST i;
 
   for (i = 0; i < len; i++)
-    dcache_poke_byte (dcache, memaddr + i, myaddr + i);
+    if (status > 0)
+      dcache_poke_byte (dcache, memaddr + i, myaddr + i);
+    else
+      {
+	/* Discard the whole cache line so we don't have a partially
+	   valid line.  */
+	dcache_invalidate_line (dcache, memaddr + i);
+      }
 }
 
 /* Print DCACHE line INDEX.  */
diff --git a/gdb/dcache.h b/gdb/dcache.h
index 780dc30..c240a18 100644
--- a/gdb/dcache.h
+++ b/gdb/dcache.h
@@ -32,12 +32,12 @@ DCACHE *dcache_init (void);
 /* Free a DCACHE.  */
 void dcache_free (DCACHE *);
 
-/* Simple to call from <remote>_xfer_memory.  */
+int dcache_read_memory_partial (struct target_ops *ops, DCACHE *dcache,
+				CORE_ADDR memaddr, gdb_byte *myaddr,
+				ULONGEST len);
 
-int dcache_xfer_memory (struct target_ops *ops, DCACHE *cache, CORE_ADDR mem,
-			gdb_byte *my, int len, int should_write);
-
-void dcache_update (DCACHE *dcache, CORE_ADDR memaddr, gdb_byte *myaddr,
-		    int len);
+void dcache_update (DCACHE *dcache, int status,
+		    CORE_ADDR memaddr, const gdb_byte *myaddr,
+		    ULONGEST len);
 
 #endif /* DCACHE_H */
diff --git a/gdb/doc/gcore.1 b/gdb/doc/gcore.1
deleted file mode 100644
index 21be7d3..0000000
--- a/gdb/doc/gcore.1
+++ /dev/null
@@ -1,179 +0,0 @@
-.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
-..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
-..
-.de Ve \" End verbatim text
-.ft R
-.fi
-..
-.\" Set up some character translations and predefined strings.  \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
-.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-.    ds -- \(*W-
-.    ds PI pi
-.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
-.    ds L" ""
-.    ds R" ""
-.    ds C` ""
-.    ds C' ""
-'br\}
-.el\{\
-.    ds -- \|\(em\|
-.    ds PI \(*p
-.    ds L" ``
-.    ds R" ''
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el       .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD.  Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.ie \nF \{\
-.    de IX
-.    tm Index:\\$1\t\\n%\t"\\$2"
-..
-.    nr % 0
-.    rr F
-.\}
-.el \{\
-.    de IX
-..
-.\}
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
-.    \" fudge factors for nroff and troff
-.if n \{\
-.    ds #H 0
-.    ds #V .8m
-.    ds #F .3m
-.    ds #[ \f1
-.    ds #] \fP
-.\}
-.if t \{\
-.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-.    ds #V .6m
-.    ds #F 0
-.    ds #[ \&
-.    ds #] \&
-.\}
-.    \" simple accents for nroff and troff
-.if n \{\
-.    ds ' \&
-.    ds ` \&
-.    ds ^ \&
-.    ds , \&
-.    ds ~ ~
-.    ds /
-.\}
-.if t \{\
-.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-.    \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-.    \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-.    \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-.    ds : e
-.    ds 8 ss
-.    ds o a
-.    ds d- d\h'-1'\(ga
-.    ds D- D\h'-1'\(hy
-.    ds th \o'bp'
-.    ds Th \o'LP'
-.    ds ae ae
-.    ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "GCORE 1"
-.TH GCORE 1 "2014-02-06" "gdb-7.7" "GNU Development Tools"
-.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-gcore \- Generate a core file of a running program
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-gcore [\-o \fIfilename\fR] \fIpid\fR
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-Generate a core dump of a running program with process \s-1ID\s0 \fIpid\fR.
-Produced file is equivalent to a kernel produced core file as if the process
-crashed (and if \f(CW\*(C`ulimit \-c\*(C'\fR were used to set up an appropriate core dump
-limit).  Unlike after a crash, after \fBgcore\fR the program remains
-running without any change.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-.IP "\fB\-o\fR \fIfilename\fR" 4
-.IX Item "-o filename"
-The optional argument
-\&\fIfilename\fR specifies the file name where to put the core dump.
-If not specified, the file name defaults to \fIcore.\fIpid\fI\fR,
-where \fIpid\fR is the running program process \s-1ID\s0.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-The full documentation for \s-1GDB\s0 is maintained as a Texinfo manual.
-If the \f(CW\*(C`info\*(C'\fR and \f(CW\*(C`gdb\*(C'\fR programs and \s-1GDB\s0's Texinfo
-documentation are properly installed at your site, the command
-.PP
-.Vb 1
-\&        info gdb
-.Ve
-.PP
-should give you access to the complete manual.
-.PP
-\&\fIUsing \s-1GDB:\s0 A Guide to the \s-1GNU\s0 Source-Level Debugger\fR,
-Richard M. Stallman and Roland H. Pesch, July 1991.
-.SH "COPYRIGHT"
-.IX Header "COPYRIGHT"
-Copyright (c) 1988\-2014 Free Software Foundation, Inc.
-.PP
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with the
-Invariant Sections being \*(L"Free Software\*(R" and \*(L"Free Software Needs
-Free Documentation\*(R", with the Front-Cover Texts being \*(L"A \s-1GNU\s0 Manual,\*(R"
-and with the Back-Cover Texts as in (a) below.
-.PP
-(a) The \s-1FSF\s0's Back-Cover Text is: \*(L"You are free to copy and modify
-this \s-1GNU\s0 Manual.  Buying copies from \s-1GNU\s0 Press supports the \s-1FSF\s0 in
-developing \s-1GNU\s0 and promoting software freedom.\*(R"
diff --git a/gdb/doc/gdb.1 b/gdb/doc/gdb.1
deleted file mode 100644
index 3b2cd0d..0000000
--- a/gdb/doc/gdb.1
+++ /dev/null
@@ -1,396 +0,0 @@
-.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
-..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
-..
-.de Ve \" End verbatim text
-.ft R
-.fi
-..
-.\" Set up some character translations and predefined strings.  \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
-.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-.    ds -- \(*W-
-.    ds PI pi
-.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
-.    ds L" ""
-.    ds R" ""
-.    ds C` ""
-.    ds C' ""
-'br\}
-.el\{\
-.    ds -- \|\(em\|
-.    ds PI \(*p
-.    ds L" ``
-.    ds R" ''
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el       .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD.  Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.ie \nF \{\
-.    de IX
-.    tm Index:\\$1\t\\n%\t"\\$2"
-..
-.    nr % 0
-.    rr F
-.\}
-.el \{\
-.    de IX
-..
-.\}
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
-.    \" fudge factors for nroff and troff
-.if n \{\
-.    ds #H 0
-.    ds #V .8m
-.    ds #F .3m
-.    ds #[ \f1
-.    ds #] \fP
-.\}
-.if t \{\
-.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-.    ds #V .6m
-.    ds #F 0
-.    ds #[ \&
-.    ds #] \&
-.\}
-.    \" simple accents for nroff and troff
-.if n \{\
-.    ds ' \&
-.    ds ` \&
-.    ds ^ \&
-.    ds , \&
-.    ds ~ ~
-.    ds /
-.\}
-.if t \{\
-.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-.    \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-.    \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-.    \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-.    ds : e
-.    ds 8 ss
-.    ds o a
-.    ds d- d\h'-1'\(ga
-.    ds D- D\h'-1'\(hy
-.    ds th \o'bp'
-.    ds Th \o'LP'
-.    ds ae ae
-.    ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "GDB 1"
-.TH GDB 1 "2014-02-06" "gdb-7.7" "GNU Development Tools"
-.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-gdb \- The GNU Debugger
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-gdb [\fB\-help\fR] [\fB\-nh\fR] [\fB\-nx\fR] [\fB\-q\fR]
-[\fB\-batch\fR] [\fB\-cd=\fR\fIdir\fR] [\fB\-f\fR]
-[\fB\-b\fR\ \fIbps\fR]
-    [\fB\-tty=\fR\fIdev\fR] [\fB\-s\fR \fIsymfile\fR]
-[\fB\-e\fR\ \fIprog\fR] [\fB\-se\fR\ \fIprog\fR]
-[\fB\-c\fR\ \fIcore\fR] [\fB\-p\fR\ \fIprocID\fR]
-    [\fB\-x\fR\ \fIcmds\fR] [\fB\-d\fR\ \fIdir\fR]
-[\fIprog\fR|\fIprog\fR \fIprocID\fR|\fIprog\fR \fIcore\fR]
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-The purpose of a debugger such as \s-1GDB\s0 is to allow you to see what is
-going on \*(L"inside\*(R" another program while it executes \*(-- or what another
-program was doing at the moment it crashed.
-.PP
-\&\s-1GDB\s0 can do four main kinds of things (plus other things in support of
-these) to help you catch bugs in the act:
-.IP "\(bu" 4
-Start your program, specifying anything that might affect its behavior.
-.IP "\(bu" 4
-Make your program stop on specified conditions.
-.IP "\(bu" 4
-Examine what has happened, when your program has stopped.
-.IP "\(bu" 4
-Change things in your program, so you can experiment with correcting the
-effects of one bug and go on to learn about another.
-.PP
-You can use \s-1GDB\s0 to debug programs written in C, C at t{++}, Fortran and
-Modula\-2.
-.PP
-\&\s-1GDB\s0 is invoked with the shell command \f(CW\*(C`gdb\*(C'\fR.  Once started, it reads
-commands from the terminal until you tell it to exit with the \s-1GDB\s0
-command \f(CW\*(C`quit\*(C'\fR.  You can get online help from \s-1GDB\s0 itself
-by using the command \f(CW\*(C`help\*(C'\fR.
-.PP
-You can run \f(CW\*(C`gdb\*(C'\fR with no arguments or options; but the most
-usual way to start \s-1GDB\s0 is with one argument or two, specifying an
-executable program as the argument:
-.PP
-.Vb 1
-\&        gdb program
-.Ve
-.PP
-You can also start with both an executable program and a core file specified:
-.PP
-.Vb 1
-\&        gdb program core
-.Ve
-.PP
-You can, instead, specify a process \s-1ID\s0 as a second argument, if you want
-to debug a running process:
-.PP
-.Vb 2
-\&        gdb program 1234
-\&        gdb \-p 1234
-.Ve
-.PP
-would attach \s-1GDB\s0 to process \f(CW1234\fR (unless you also have a file
-named \fI1234\fR; \s-1GDB\s0 does check for a core file first).
-With option \fB\-p\fR you can omit the \fIprogram\fR filename.
-.PP
-Here are some of the most frequently needed \s-1GDB\s0 commands:
-.IP "\fBbreak [\fR\fIfile\fR\fB:]\fR\fIfunctiop\fR" 4
-.IX Item "break [file:]functiop"
-Set a breakpoint at \fIfunction\fR (in \fIfile\fR).
-.IP "\fBrun [\fR\fIarglist\fR\fB]\fR" 4
-.IX Item "run [arglist]"
-Start your program (with \fIarglist\fR, if specified).
-.IP "\fBbt\fR" 4
-.IX Item "bt"
-Backtrace: display the program stack.
-.IP "\fBprint\fR \fIexpr\fR" 4
-.IX Item "print expr"
-Display the value of an expression.
-.IP "\fBc\fR" 4
-.IX Item "c"
-Continue running your program (after stopping, e.g. at a breakpoint).
-.IP "\fBnext\fR" 4
-.IX Item "next"
-Execute next program line (after stopping); step \fIover\fR any
-function calls in the line.
-.IP "\fBedit [\fR\fIfile\fR\fB:]\fR\fIfunction\fR" 4
-.IX Item "edit [file:]function"
-look at the program line where it is presently stopped.
-.IP "\fBlist [\fR\fIfile\fR\fB:]\fR\fIfunction\fR" 4
-.IX Item "list [file:]function"
-type the text of the program in the vicinity of where it is presently stopped.
-.IP "\fBstep\fR" 4
-.IX Item "step"
-Execute next program line (after stopping); step \fIinto\fR any
-function calls in the line.
-.IP "\fBhelp [\fR\fIname\fR\fB]\fR" 4
-.IX Item "help [name]"
-Show information about \s-1GDB\s0 command \fIname\fR, or general information
-about using \s-1GDB\s0.
-.IP "\fBquit\fR" 4
-.IX Item "quit"
-Exit from \s-1GDB\s0.
-.PP
-For full details on \s-1GDB\s0,
-see \fIUsing \s-1GDB:\s0 A Guide to the \s-1GNU\s0 Source-Level Debugger\fR,
-by Richard M. Stallman and Roland H. Pesch.  The same text is available online
-as the \f(CW\*(C`gdb\*(C'\fR entry in the \f(CW\*(C`info\*(C'\fR program.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-Any arguments other than options specify an executable
-file and core file (or process \s-1ID\s0); that is, the first argument
-encountered with no
-associated option flag is equivalent to a \fB\-se\fR option, and the second,
-if any, is equivalent to a \fB\-c\fR option if it's the name of a file.
-Many options have
-both long and short forms; both are shown here.  The long forms are also
-recognized if you truncate them, so long as enough of the option is
-present to be unambiguous.  (If you prefer, you can flag option
-arguments with \fB+\fR rather than \fB\-\fR, though we illustrate the
-more usual convention.)
-.PP
-All the options and command line arguments you give are processed
-in sequential order.  The order makes a difference when the \fB\-x\fR
-option is used.
-.IP "\fB\-help\fR" 4
-.IX Item "-help"
-.PD 0
-.IP "\fB\-h\fR" 4
-.IX Item "-h"
-.PD
-List all options, with brief explanations.
-.IP "\fB\-symbols=\fR\fIfile\fR" 4
-.IX Item "-symbols=file"
-.PD 0
-.IP "\fB\-s\fR \fIfile\fR" 4
-.IX Item "-s file"
-.PD
-Read symbol table from file \fIfile\fR.
-.IP "\fB\-write\fR" 4
-.IX Item "-write"
-Enable writing into executable and core files.
-.IP "\fB\-exec=\fR\fIfile\fR" 4
-.IX Item "-exec=file"
-.PD 0
-.IP "\fB\-e\fR \fIfile\fR" 4
-.IX Item "-e file"
-.PD
-Use file \fIfile\fR as the executable file to execute when
-appropriate, and for examining pure data in conjunction with a core
-dump.
-.IP "\fB\-se=\fR\fIfile\fR" 4
-.IX Item "-se=file"
-Read symbol table from file \fIfile\fR and use it as the executable
-file.
-.IP "\fB\-core=\fR\fIfile\fR" 4
-.IX Item "-core=file"
-.PD 0
-.IP "\fB\-c\fR \fIfile\fR" 4
-.IX Item "-c file"
-.PD
-Use file \fIfile\fR as a core dump to examine.
-.IP "\fB\-command=\fR\fIfile\fR" 4
-.IX Item "-command=file"
-.PD 0
-.IP "\fB\-x\fR \fIfile\fR" 4
-.IX Item "-x file"
-.PD
-Execute \s-1GDB\s0 commands from file \fIfile\fR.
-.IP "\fB\-ex\fR \fIcommand\fR" 4
-.IX Item "-ex command"
-Execute given \s-1GDB\s0 \fIcommand\fR.
-.IP "\fB\-directory=\fR\fIdirectory\fR" 4
-.IX Item "-directory=directory"
-.PD 0
-.IP "\fB\-d\fR \fIdirectory\fR" 4
-.IX Item "-d directory"
-.PD
-Add \fIdirectory\fR to the path to search for source files.
-.IP "\fB\-nh\fR" 4
-.IX Item "-nh"
-Do not execute commands from \fI~/.gdbinit\fR.
-.IP "\fB\-nx\fR" 4
-.IX Item "-nx"
-.PD 0
-.IP "\fB\-n\fR" 4
-.IX Item "-n"
-.PD
-Do not execute commands from any \fI.gdbinit\fR initialization files.
-.IP "\fB\-quiet\fR" 4
-.IX Item "-quiet"
-.PD 0
-.IP "\fB\-q\fR" 4
-.IX Item "-q"
-.PD
-\&\*(L"Quiet\*(R".  Do not print the introductory and copyright messages.  These
-messages are also suppressed in batch mode.
-.IP "\fB\-batch\fR" 4
-.IX Item "-batch"
-Run in batch mode.  Exit with status \f(CW0\fR after processing all the command
-files specified with \fB\-x\fR (and \fI.gdbinit\fR, if not inhibited).
-Exit with nonzero status if an error occurs in executing the \s-1GDB\s0
-commands in the command files.
-.Sp
-Batch mode may be useful for running \s-1GDB\s0 as a filter, for example to
-download and run a program on another computer; in order to make this
-more useful, the message
-.Sp
-.Vb 1
-\&        Program exited normally.
-.Ve
-.Sp
-(which is ordinarily issued whenever a program running under \s-1GDB\s0 control
-terminates) is not issued when running in batch mode.
-.IP "\fB\-cd=\fR\fIdirectory\fR" 4
-.IX Item "-cd=directory"
-Run \s-1GDB\s0 using \fIdirectory\fR as its working directory,
-instead of the current directory.
-.IP "\fB\-fullname\fR" 4
-.IX Item "-fullname"
-.PD 0
-.IP "\fB\-f\fR" 4
-.IX Item "-f"
-.PD
-Emacs sets this option when it runs \s-1GDB\s0 as a subprocess.  It tells
-\&\s-1GDB\s0 to output the full file name and line number in a standard,
-recognizable fashion each time a stack frame is displayed (which
-includes each time the program stops).  This recognizable format looks
-like two \fB\e032\fR characters, followed by the file name, line number
-and character position separated by colons, and a newline.  The
-Emacs-to-GDB interface program uses the two \fB\e032\fR
-characters as a signal to display the source code for the frame.
-.IP "\fB\-b\fR \fIbps\fR" 4
-.IX Item "-b bps"
-Set the line speed (baud rate or bits per second) of any serial
-interface used by \s-1GDB\s0 for remote debugging.
-.IP "\fB\-tty=\fR\fIdevice\fR" 4
-.IX Item "-tty=device"
-Run using \fIdevice\fR for your program's standard input and output.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-The full documentation for \s-1GDB\s0 is maintained as a Texinfo manual.
-If the \f(CW\*(C`info\*(C'\fR and \f(CW\*(C`gdb\*(C'\fR programs and \s-1GDB\s0's Texinfo
-documentation are properly installed at your site, the command
-.PP
-.Vb 1
-\&        info gdb
-.Ve
-.PP
-should give you access to the complete manual.
-.PP
-\&\fIUsing \s-1GDB:\s0 A Guide to the \s-1GNU\s0 Source-Level Debugger\fR,
-Richard M. Stallman and Roland H. Pesch, July 1991.
-.SH "COPYRIGHT"
-.IX Header "COPYRIGHT"
-Copyright (c) 1988\-2014 Free Software Foundation, Inc.
-.PP
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with the
-Invariant Sections being \*(L"Free Software\*(R" and \*(L"Free Software Needs
-Free Documentation\*(R", with the Front-Cover Texts being \*(L"A \s-1GNU\s0 Manual,\*(R"
-and with the Back-Cover Texts as in (a) below.
-.PP
-(a) The \s-1FSF\s0's Back-Cover Text is: \*(L"You are free to copy and modify
-this \s-1GNU\s0 Manual.  Buying copies from \s-1GNU\s0 Press supports the \s-1FSF\s0 in
-developing \s-1GNU\s0 and promoting software freedom.\*(R"
diff --git a/gdb/doc/gdbinit.5 b/gdb/doc/gdbinit.5
deleted file mode 100644
index 30e620c..0000000
--- a/gdb/doc/gdbinit.5
+++ /dev/null
@@ -1,200 +0,0 @@
-.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
-..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
-..
-.de Ve \" End verbatim text
-.ft R
-.fi
-..
-.\" Set up some character translations and predefined strings.  \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
-.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-.    ds -- \(*W-
-.    ds PI pi
-.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
-.    ds L" ""
-.    ds R" ""
-.    ds C` ""
-.    ds C' ""
-'br\}
-.el\{\
-.    ds -- \|\(em\|
-.    ds PI \(*p
-.    ds L" ``
-.    ds R" ''
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el       .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD.  Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.ie \nF \{\
-.    de IX
-.    tm Index:\\$1\t\\n%\t"\\$2"
-..
-.    nr % 0
-.    rr F
-.\}
-.el \{\
-.    de IX
-..
-.\}
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
-.    \" fudge factors for nroff and troff
-.if n \{\
-.    ds #H 0
-.    ds #V .8m
-.    ds #F .3m
-.    ds #[ \f1
-.    ds #] \fP
-.\}
-.if t \{\
-.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-.    ds #V .6m
-.    ds #F 0
-.    ds #[ \&
-.    ds #] \&
-.\}
-.    \" simple accents for nroff and troff
-.if n \{\
-.    ds ' \&
-.    ds ` \&
-.    ds ^ \&
-.    ds , \&
-.    ds ~ ~
-.    ds /
-.\}
-.if t \{\
-.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-.    \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-.    \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-.    \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-.    ds : e
-.    ds 8 ss
-.    ds o a
-.    ds d- d\h'-1'\(ga
-.    ds D- D\h'-1'\(hy
-.    ds th \o'bp'
-.    ds Th \o'LP'
-.    ds ae ae
-.    ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "GDBINIT 5"
-.TH GDBINIT 5 "2014-02-06" "gdb-7.7" "GNU Development Tools"
-.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-gdbinit \- GDB initialization scripts
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-~/.gdbinit
-.PP
-\&./.gdbinit
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-These files contain \s-1GDB\s0 commands to automatically execute during
-\&\s-1GDB\s0 startup.  The lines of contents are canned sequences of commands,
-described in
-the \s-1GDB\s0 manual in node \f(CW\*(C`Sequences\*(C'\fR
-\&\*(-- shell command \f(CW\*(C`info \-f gdb \-n Sequences\*(C'\fR.
-.PP
-Please read more in
-the \s-1GDB\s0 manual in node \f(CW\*(C`Startup\*(C'\fR
-\&\*(-- shell command \f(CW\*(C`info \-f gdb \-n Startup\*(C'\fR.
-.ie n .IP "\fB(not enabled with \fB""\-\-with\-system\-gdbinit""\fB during compilation)\fR" 4
-.el .IP "\fB(not enabled with \f(CB\-\-with\-system\-gdbinit\fB during compilation)\fR" 4
-.IX Item "(not enabled with --with-system-gdbinit during compilation)"
-System-wide initialization file.  It is executed unless user specified
-\&\s-1GDB\s0 option \f(CW\*(C`\-nx\*(C'\fR or \f(CW\*(C`\-n\*(C'\fR.
-See more in
-the \s-1GDB\s0 manual in node \f(CW\*(C`System\-wide configuration\*(C'\fR
-\&\*(-- shell command \f(CW\*(C`info \-f gdb \-n \*(AqSystem\-wide configuration\*(Aq\*(C'\fR.
-.IP "\fB~/.gdbinit\fR" 4
-.IX Item "~/.gdbinit"
-User initialization file.  It is executed unless user specified
-\&\s-1GDB\s0 options \f(CW\*(C`\-nx\*(C'\fR, \f(CW\*(C`\-n\*(C'\fR or \f(CW\*(C`\-nh\*(C'\fR.
-.IP "\fB./.gdbinit\fR" 4
-.IX Item "./.gdbinit"
-Initialization file for current directory.  It may need to be enabled with
-\&\s-1GDB\s0 security command \f(CW\*(C`set auto\-load local\-gdbinit\*(C'\fR.
-See more in
-the \s-1GDB\s0 manual in node \f(CW\*(C`Init File in the Current Directory\*(C'\fR
-\&\*(-- shell command \f(CW\*(C`info \-f gdb \-n \*(AqInit File in the Current Directory\*(Aq\*(C'\fR.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\fIgdb\fR\|(1), \f(CW\*(C`info \-f gdb \-n Startup\*(C'\fR
-.PP
-The full documentation for \s-1GDB\s0 is maintained as a Texinfo manual.
-If the \f(CW\*(C`info\*(C'\fR and \f(CW\*(C`gdb\*(C'\fR programs and \s-1GDB\s0's Texinfo
-documentation are properly installed at your site, the command
-.PP
-.Vb 1
-\&        info gdb
-.Ve
-.PP
-should give you access to the complete manual.
-.PP
-\&\fIUsing \s-1GDB:\s0 A Guide to the \s-1GNU\s0 Source-Level Debugger\fR,
-Richard M. Stallman and Roland H. Pesch, July 1991.
-.SH "COPYRIGHT"
-.IX Header "COPYRIGHT"
-Copyright (c) 1988\-2014 Free Software Foundation, Inc.
-.PP
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with the
-Invariant Sections being \*(L"Free Software\*(R" and \*(L"Free Software Needs
-Free Documentation\*(R", with the Front-Cover Texts being \*(L"A \s-1GNU\s0 Manual,\*(R"
-and with the Back-Cover Texts as in (a) below.
-.PP
-(a) The \s-1FSF\s0's Back-Cover Text is: \*(L"You are free to copy and modify
-this \s-1GNU\s0 Manual.  Buying copies from \s-1GNU\s0 Press supports the \s-1FSF\s0 in
-developing \s-1GNU\s0 and promoting software freedom.\*(R"
diff --git a/gdb/doc/gdbserver.1 b/gdb/doc/gdbserver.1
deleted file mode 100644
index 33d3039..0000000
--- a/gdb/doc/gdbserver.1
+++ /dev/null
@@ -1,364 +0,0 @@
-.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
-..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
-..
-.de Ve \" End verbatim text
-.ft R
-.fi
-..
-.\" Set up some character translations and predefined strings.  \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
-.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-.    ds -- \(*W-
-.    ds PI pi
-.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
-.    ds L" ""
-.    ds R" ""
-.    ds C` ""
-.    ds C' ""
-'br\}
-.el\{\
-.    ds -- \|\(em\|
-.    ds PI \(*p
-.    ds L" ``
-.    ds R" ''
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el       .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD.  Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.ie \nF \{\
-.    de IX
-.    tm Index:\\$1\t\\n%\t"\\$2"
-..
-.    nr % 0
-.    rr F
-.\}
-.el \{\
-.    de IX
-..
-.\}
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
-.    \" fudge factors for nroff and troff
-.if n \{\
-.    ds #H 0
-.    ds #V .8m
-.    ds #F .3m
-.    ds #[ \f1
-.    ds #] \fP
-.\}
-.if t \{\
-.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-.    ds #V .6m
-.    ds #F 0
-.    ds #[ \&
-.    ds #] \&
-.\}
-.    \" simple accents for nroff and troff
-.if n \{\
-.    ds ' \&
-.    ds ` \&
-.    ds ^ \&
-.    ds , \&
-.    ds ~ ~
-.    ds /
-.\}
-.if t \{\
-.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-.    \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-.    \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-.    \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-.    ds : e
-.    ds 8 ss
-.    ds o a
-.    ds d- d\h'-1'\(ga
-.    ds D- D\h'-1'\(hy
-.    ds th \o'bp'
-.    ds Th \o'LP'
-.    ds ae ae
-.    ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "GDBSERVER 1"
-.TH GDBSERVER 1 "2014-02-06" "gdb-7.7" "GNU Development Tools"
-.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-gdbserver \- Remote Server for the GNU Debugger
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-gdbserver \fIcomm\fR \fIprog\fR [\fIargs\fR...]
-.PP
-gdbserver \-\-attach \fIcomm\fR \fIpid\fR
-.PP
-gdbserver \-\-multi \fIcomm\fR
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-\&\fBgdbserver\fR is a program that allows you to run \s-1GDB\s0 on a different machine
-than the one which is running the program being debugged.
-.PP
-Usage (server (target) side):
-.PP
-First, you need to have a copy of the program you want to debug put onto
-the target system.  The program can be stripped to save space if needed, as
-\&\fBgdbserver\fR doesn't care about symbols.  All symbol handling is taken care of by
-the \s-1GDB\s0 running on the host system.
-.PP
-To use the server, you log on to the target system, and run the \fBgdbserver\fR
-program.  You must tell it (a) how to communicate with \s-1GDB\s0, (b) the name of
-your program, and (c) its arguments.  The general syntax is:
-.PP
-.Vb 1
-\&        target> gdbserver <comm> <program> [<args> ...]
-.Ve
-.PP
-For example, using a serial port, you might say:
-.PP
-.Vb 1
-\&        target> gdbserver /dev/com1 emacs foo.txt
-.Ve
-.PP
-This tells \fBgdbserver\fR to debug emacs with an argument of foo.txt, and
-to communicate with \s-1GDB\s0 via \fI/dev/com1\fR.  \fBgdbserver\fR now
-waits patiently for the host \s-1GDB\s0 to communicate with it.
-.PP
-To use a \s-1TCP\s0 connection, you could say:
-.PP
-.Vb 1
-\&        target> gdbserver host:2345 emacs foo.txt
-.Ve
-.PP
-This says pretty much the same thing as the last example, except that we are
-going to communicate with the \f(CW\*(C`host\*(C'\fR \s-1GDB\s0 via \s-1TCP\s0.  The \f(CW\*(C`host:2345\*(C'\fR argument means
-that we are expecting to see a \s-1TCP\s0 connection from \f(CW\*(C`host\*(C'\fR to local \s-1TCP\s0 port
-2345.  (Currently, the \f(CW\*(C`host\*(C'\fR part is ignored.)  You can choose any number you
-want for the port number as long as it does not conflict with any existing \s-1TCP\s0
-ports on the target system.  This same port number must be used in the host
-GDBs \f(CW\*(C`target remote\*(C'\fR command, which will be described shortly.  Note that if
-you chose a port number that conflicts with another service, \fBgdbserver\fR will
-print an error message and exit.
-.PP
-\&\fBgdbserver\fR can also attach to running programs.
-This is accomplished via the \fB\-\-attach\fR argument.  The syntax is:
-.PP
-.Vb 1
-\&        target> gdbserver \-\-attach <comm> <pid>
-.Ve
-.PP
-\&\fIpid\fR is the process \s-1ID\s0 of a currently running process.  It isn't
-necessary to point \fBgdbserver\fR at a binary for the running process.
-.PP
-To start \f(CW\*(C`gdbserver\*(C'\fR without supplying an initial command to run
-or process \s-1ID\s0 to attach, use the \fB\-\-multi\fR command line option.
-In such case you should connect using \f(CW\*(C`target extended\-remote\*(C'\fR to start
-the program you want to debug.
-.PP
-.Vb 1
-\&        target> gdbserver \-\-multi <comm>
-.Ve
-.PP
-Usage (host side):
-.PP
-You need an unstripped copy of the target program on your host system, since
-\&\s-1GDB\s0 needs to examine it's symbol tables and such.  Start up \s-1GDB\s0 as you normally
-would, with the target program as the first argument.  (You may need to use the
-\&\fB\-\-baud\fR option if the serial line is running at anything except 9600 baud.)
-That is \f(CW\*(C`gdb TARGET\-PROG\*(C'\fR, or \f(CW\*(C`gdb \-\-baud BAUD TARGET\-PROG\*(C'\fR.  After that, the only
-new command you need to know about is \f(CW\*(C`target remote\*(C'\fR
-(or \f(CW\*(C`target extended\-remote\*(C'\fR).  Its argument is either
-a device name (usually a serial device, like \fI/dev/ttyb\fR), or a \f(CW\*(C`HOST:PORT\*(C'\fR
-descriptor.  For example:
-.PP
-.Vb 1
-\&        (gdb) target remote /dev/ttyb
-.Ve
-.PP
-communicates with the server via serial line \fI/dev/ttyb\fR, and:
-.PP
-.Vb 1
-\&        (gdb) target remote the\-target:2345
-.Ve
-.PP
-communicates via a \s-1TCP\s0 connection to port 2345 on host `the\-target', where
-you previously started up \fBgdbserver\fR with the same port number.  Note that for
-\&\s-1TCP\s0 connections, you must start up \fBgdbserver\fR prior to using the `target remote'
-command, otherwise you may get an error that looks something like
-`Connection refused'.
-.PP
-\&\fBgdbserver\fR can also debug multiple inferiors at once,
-described in
-the \s-1GDB\s0 manual in node \f(CW\*(C`Inferiors and Programs\*(C'\fR
-\&\*(-- shell command \f(CW\*(C`info \-f gdb \-n \*(AqInferiors and Programs\*(Aq\*(C'\fR.
-In such case use the \f(CW\*(C`extended\-remote\*(C'\fR \s-1GDB\s0 command variant:
-.PP
-.Vb 1
-\&        (gdb) target extended\-remote the\-target:2345
-.Ve
-.PP
-The \fBgdbserver\fR option \fB\-\-multi\fR may or may not be used in such
-case.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-There are three different modes for invoking \fBgdbserver\fR:
-.IP "\(bu" 4
-Debug a specific program specified by its program name:
-.Sp
-.Vb 1
-\&        gdbserver <comm> <prog> [<args>...]
-.Ve
-.Sp
-The \fIcomm\fR parameter specifies how should the server communicate
-with \s-1GDB\s0; it is either a device name (to use a serial line),
-a \s-1TCP\s0 port number (\f(CW\*(C`:1234\*(C'\fR), or \f(CW\*(C`\-\*(C'\fR or \f(CW\*(C`stdio\*(C'\fR to use
-stdin/stdout of \f(CW\*(C`gdbserver\*(C'\fR.  Specify the name of the program to
-debug in \fIprog\fR.  Any remaining arguments will be passed to the
-program verbatim.  When the program exits, \s-1GDB\s0 will close the
-connection, and \f(CW\*(C`gdbserver\*(C'\fR will exit.
-.IP "\(bu" 4
-Debug a specific program by specifying the process \s-1ID\s0 of a running
-program:
-.Sp
-.Vb 1
-\&        gdbserver \-\-attach <comm> <pid>
-.Ve
-.Sp
-The \fIcomm\fR parameter is as described above.  Supply the process \s-1ID\s0
-of a running program in \fIpid\fR; \s-1GDB\s0 will do everything
-else.  Like with the previous mode, when the process \fIpid\fR exits,
-\&\s-1GDB\s0 will close the connection, and \f(CW\*(C`gdbserver\*(C'\fR will exit.
-.IP "\(bu" 4
-Multi-process mode \*(-- debug more than one program/process:
-.Sp
-.Vb 1
-\&        gdbserver \-\-multi <comm>
-.Ve
-.Sp
-In this mode, \s-1GDB\s0 can instruct \fBgdbserver\fR which
-command(s) to run.  Unlike the other 2 modes, \s-1GDB\s0 will not
-close the connection when a process being debugged exits, so you can
-debug several processes in the same session.
-.PP
-In each of the modes you may specify these options:
-.IP "\fB\-\-help\fR" 4
-.IX Item "--help"
-List all options, with brief explanations.
-.IP "\fB\-\-version\fR" 4
-.IX Item "--version"
-This option causes \fBgdbserver\fR to print its version number and exit.
-.IP "\fB\-\-attach\fR" 4
-.IX Item "--attach"
-\&\fBgdbserver\fR will attach to a running program.  The syntax is:
-.Sp
-.Vb 1
-\&        target> gdbserver \-\-attach <comm> <pid>
-.Ve
-.Sp
-\&\fIpid\fR is the process \s-1ID\s0 of a currently running process.  It isn't
-necessary to point \fBgdbserver\fR at a binary for the running process.
-.IP "\fB\-\-multi\fR" 4
-.IX Item "--multi"
-To start \f(CW\*(C`gdbserver\*(C'\fR without supplying an initial command to run
-or process \s-1ID\s0 to attach, use this command line option.
-Then you can connect using \f(CW\*(C`target extended\-remote\*(C'\fR and start
-the program you want to debug.  The syntax is:
-.Sp
-.Vb 1
-\&        target> gdbserver \-\-multi <comm>
-.Ve
-.IP "\fB\-\-debug\fR" 4
-.IX Item "--debug"
-Instruct \f(CW\*(C`gdbserver\*(C'\fR to display extra status information about the debugging
-process.
-This option is intended for \f(CW\*(C`gdbserver\*(C'\fR development and for bug reports to
-the developers.
-.IP "\fB\-\-remote\-debug\fR" 4
-.IX Item "--remote-debug"
-Instruct \f(CW\*(C`gdbserver\*(C'\fR to display remote protocol debug output.
-This option is intended for \f(CW\*(C`gdbserver\*(C'\fR development and for bug reports to
-the developers.
-.IP "\fB\-\-wrapper\fR" 4
-.IX Item "--wrapper"
-Specify a wrapper to launch programs
-for debugging.  The option should be followed by the name of the
-wrapper, then any command-line arguments to pass to the wrapper, then
-\&\f(CW\*(C`\-\-\*(C'\fR indicating the end of the wrapper arguments.
-.IP "\fB\-\-once\fR" 4
-.IX Item "--once"
-By default, \fBgdbserver\fR keeps the listening \s-1TCP\s0 port open, so that
-additional connections are possible.  However, if you start \f(CW\*(C`gdbserver\*(C'\fR
-with the \fB\-\-once\fR option, it will stop listening for any further
-connection attempts after connecting to the first \s-1GDB\s0 session.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-The full documentation for \s-1GDB\s0 is maintained as a Texinfo manual.
-If the \f(CW\*(C`info\*(C'\fR and \f(CW\*(C`gdb\*(C'\fR programs and \s-1GDB\s0's Texinfo
-documentation are properly installed at your site, the command
-.PP
-.Vb 1
-\&        info gdb
-.Ve
-.PP
-should give you access to the complete manual.
-.PP
-\&\fIUsing \s-1GDB:\s0 A Guide to the \s-1GNU\s0 Source-Level Debugger\fR,
-Richard M. Stallman and Roland H. Pesch, July 1991.
-.SH "COPYRIGHT"
-.IX Header "COPYRIGHT"
-Copyright (c) 1988\-2014 Free Software Foundation, Inc.
-.PP
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
-any later version published by the Free Software Foundation; with the
-Invariant Sections being \*(L"Free Software\*(R" and \*(L"Free Software Needs
-Free Documentation\*(R", with the Front-Cover Texts being \*(L"A \s-1GNU\s0 Manual,\*(R"
-and with the Back-Cover Texts as in (a) below.
-.PP
-(a) The \s-1FSF\s0's Back-Cover Text is: \*(L"You are free to copy and modify
-this \s-1GNU\s0 Manual.  Buying copies from \s-1GNU\s0 Press supports the \s-1FSF\s0 in
-developing \s-1GNU\s0 and promoting software freedom.\*(R"
diff --git a/gdb/infrun.c b/gdb/infrun.c
index 51540b3..05639c6 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -4379,7 +4379,11 @@ handle_signal_stop (struct execution_control_state *ecs)
 	  ecs->event_thread->step_after_step_resume_breakpoint = 1;
 	  /* Reset trap_expected to ensure breakpoints are re-inserted.  */
 	  ecs->event_thread->control.trap_expected = 0;
-	  keep_going (ecs);
+
+	  /* If we were nexting/stepping some other thread, switch to
+	     it, so that we don't continue it, losing control.  */
+	  if (!switch_back_to_stepped_thread (ecs))
+	    keep_going (ecs);
 	  return;
 	}
 
diff --git a/gdb/po/gdb.pot b/gdb/po/gdb.pot
index 87c7cca..ce751ce 100644
--- a/gdb/po/gdb.pot
+++ b/gdb/po/gdb.pot
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-02-06 06:42+0400\n"
+"POT-Creation-Date: 2014-05-05 14:56-0700\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -2527,22 +2527,22 @@ msgstr ""
 msgid "Num pushes too large: %d\n"
 msgstr ""
 
-#: avr-tdep.c:1483
+#: avr-tdep.c:1490
 msgid "ERR: info io_registers NOT supported by current target\n"
 msgstr ""
 
-#: avr-tdep.c:1491
+#: avr-tdep.c:1498
 msgid "Error fetching number of io registers\n"
 msgstr ""
 
-#: avr-tdep.c:1500
+#: avr-tdep.c:1507
 #, possible-c-format
 msgid ""
 "Target has %u io registers:\n"
 "\n"
 msgstr ""
 
-#: avr-tdep.c:1549
+#: avr-tdep.c:1556
 msgid "query remote avr target for io space register values"
 msgstr ""
 
@@ -8013,56 +8013,56 @@ msgstr ""
 msgid "Deprecated remotecache flag is %s.\n"
 msgstr ""
 
-#: dcache.c:564 dcache.c:629
+#: dcache.c:542 dcache.c:607
 msgid "No data cache available.\n"
 msgstr ""
 
-#: dcache.c:579
+#: dcache.c:557
 msgid "No such cache line exists.\n"
 msgstr ""
 
-#: dcache.c:585 dcache.c:645
+#: dcache.c:563 dcache.c:623
 #, possible-c-format
 msgid "Line %d: address %s [%d hits]\n"
 msgstr ""
 
-#: dcache.c:614
+#: dcache.c:592
 msgid "Usage: info dcache [linenumber]\n"
 msgstr ""
 
-#: dcache.c:622
+#: dcache.c:600
 #, possible-c-format
 msgid "Dcache %u lines of %u bytes each.\n"
 msgstr ""
 
-#: dcache.c:633
+#: dcache.c:611
 #, possible-c-format
 msgid "Contains data for %s\n"
 msgstr ""
 
-#: dcache.c:653
+#: dcache.c:631
 #, possible-c-format
 msgid "Cache state: %d active lines, %d hits\n"
 msgstr ""
 
-#: dcache.c:669
+#: dcache.c:647
 msgid "Dcache size must be greater than 0."
 msgstr ""
 
-#: dcache.c:683
+#: dcache.c:661
 #, possible-c-format
 msgid "Invalid dcache line size: %u (must be power of 2)."
 msgstr ""
 
-#: dcache.c:706
+#: dcache.c:684
 msgid "Set cache use for remote targets."
 msgstr ""
 
-#: dcache.c:707
+#: dcache.c:685
 msgid "Show cache use for remote targets."
 msgstr ""
 
-#: dcache.c:708
+#: dcache.c:686
 msgid ""
 "This used to enable the data cache for remote targets.  The cache\n"
 "functionality is now controlled by the memory region system and the\n"
@@ -8070,7 +8070,7 @@ msgid ""
 "exists only for compatibility reasons."
 msgstr ""
 
-#: dcache.c:718
+#: dcache.c:696
 msgid ""
 "Print information on the dcache performance.\n"
 "With no arguments, this command prints the cache configuration and a\n"
@@ -8078,28 +8078,28 @@ msgid ""
 "the contents of a given line."
 msgstr ""
 
-#: dcache.c:724
+#: dcache.c:702
 msgid "Use this command to set number of lines in dcache and line-size."
 msgstr ""
 
 #. allow_unknown
-#: dcache.c:727
+#: dcache.c:705
 msgid "Show dcachesettings."
 msgstr ""
 
-#: dcache.c:732
+#: dcache.c:710
 msgid "Set dcache line size in bytes (must be power of 2)."
 msgstr ""
 
-#: dcache.c:733
+#: dcache.c:711
 msgid "Show dcache line size."
 msgstr ""
 
-#: dcache.c:740
+#: dcache.c:718
 msgid "Set number of dcache lines."
 msgstr ""
 
-#: dcache.c:741
+#: dcache.c:719
 msgid "Show number of dcache lines."
 msgstr ""
 
@@ -12153,7 +12153,7 @@ msgid ""
 "Cannot remove breakpoint at address %s, no break instruction at such address."
 msgstr ""
 
-#: inf-child.c:110 windows-nat.c:2037
+#: inf-child.c:110 windows-nat.c:2054
 msgid "Use the \"run\" command to start a Unix child process."
 msgstr ""
 
@@ -12564,7 +12564,7 @@ msgstr ""
 msgid "The program being debugged is not being run.\n"
 msgstr ""
 
-#: infcmd.c:1832 infrun.c:6714
+#: infcmd.c:1832 infrun.c:6718
 msgid "Selected thread is running."
 msgstr ""
 
@@ -12637,7 +12637,7 @@ msgstr ""
 msgid "In %s,\n"
 msgstr ""
 
-#: infcmd.c:2527 target.c:2591
+#: infcmd.c:2527 target.c:2582
 msgid "A program is being debugged already.  Kill it? "
 msgstr ""
 
@@ -13187,7 +13187,7 @@ msgid ""
 "this platform."
 msgstr ""
 
-#: infrun.c:201 infrun.c:230 target.c:5013 target.c:5061
+#: infrun.c:201 infrun.c:230 target.c:5004 target.c:5052
 msgid "Cannot change this setting while the inferior is running."
 msgstr ""
 
@@ -13295,119 +13295,119 @@ msgstr ""
 msgid "Cannot step over breakpoint hit in wrong thread"
 msgstr ""
 
-#: infrun.c:6040 linux-fork.c:377 linux-fork.c:409
+#: infrun.c:6044 linux-fork.c:377 linux-fork.c:409
 #, possible-c-format
 msgid "[Switching to %s]\n"
 msgstr ""
 
-#: infrun.c:6051
+#: infrun.c:6055
 msgid "No unwaited-for children left.\n"
 msgstr ""
 
-#: infrun.c:6059
+#: infrun.c:6063
 msgid ""
 "Cannot remove breakpoints because program is no longer writable.\n"
 "Further execution is probably impossible.\n"
 msgstr ""
 
-#: infrun.c:6159
+#: infrun.c:6163
 msgid "Unknown value."
 msgstr ""
 
-#: infrun.c:6346
+#: infrun.c:6350
 msgid "Signal        Stop\tPrint\tPass to program\tDescription\n"
 msgstr ""
 
-#: infrun.c:6383
+#: infrun.c:6387
 msgid "signal to handle"
 msgstr ""
 
 #. Not a number and not a recognized flag word => complain.
-#: infrun.c:6486
+#: infrun.c:6490
 #, possible-c-format
 msgid "Unrecognized or ambiguous flag word: \"%s\"."
 msgstr ""
 
-#: infrun.c:6501
+#: infrun.c:6505
 #, possible-c-format
 msgid ""
 "%s is used by the debugger.\n"
 "Are you sure you want to change it? "
 msgstr ""
 
-#: infrun.c:6509
+#: infrun.c:6513
 msgid "Not confirmed, unchanged.\n"
 msgstr ""
 
-#: infrun.c:6587
+#: infrun.c:6591
 msgid "xdb command"
 msgstr ""
 
-#: infrun.c:6638
+#: infrun.c:6642
 msgid "Invalid signal handling flag.\n"
 msgstr ""
 
-#: infrun.c:6651
+#: infrun.c:6655
 msgid ""
 "Only signals 1-15 are valid as numeric signals.\n"
 "Use \"info signals\" for a list of symbolic signals."
 msgstr ""
 
-#: infrun.c:6694
+#: infrun.c:6698
 msgid ""
 "\n"
 "Use the \"handle\" command to change these tables.\n"
 msgstr ""
 
-#: infrun.c:6706
+#: infrun.c:6710
 msgid "No thread selected."
 msgstr ""
 
-#: infrun.c:6710
+#: infrun.c:6714
 msgid "The current thread has terminated"
 msgstr ""
 
-#: infrun.c:6745
+#: infrun.c:6749
 msgid "Unable to read siginfo"
 msgstr ""
 
-#: infrun.c:6766
+#: infrun.c:6770
 msgid "Unable to write siginfo"
 msgstr ""
 
-#: infrun.c:7004 stack.c:1826 stack.c:2051
+#: infrun.c:7008 stack.c:1826 stack.c:2051
 msgid "Unable to restore previously selected frame."
 msgstr ""
 
-#: infrun.c:7165
+#: infrun.c:7169
 msgid "Target does not support this operation."
 msgstr ""
 
-#: infrun.c:7175
+#: infrun.c:7179
 msgid "Forward.\n"
 msgstr ""
 
-#: infrun.c:7178
+#: infrun.c:7182
 msgid "Reverse.\n"
 msgstr ""
 
-#: infrun.c:7182
+#: infrun.c:7186
 #, possible-c-format
 msgid "bogus execution_direction value: %d"
 msgstr ""
 
-#: infrun.c:7191
+#: infrun.c:7195
 #, possible-c-format
 msgid "Resuming the execution of threads of all processes is %s.\n"
 msgstr ""
 
-#: infrun.c:7211 infrun.c:7244
+#: infrun.c:7215 infrun.c:7248
 msgid ""
 "What debugger does when program gets various signals.\n"
 "Specify a signal as argument to print info on that signal only."
 msgstr ""
 
-#: infrun.c:7216
+#: infrun.c:7220
 msgid ""
 "Specify how to handle signals.\n"
 "Usage: handle SIGNAL [ACTIONS]\n"
@@ -13434,7 +13434,7 @@ msgid ""
 "all signals cumulatively specified."
 msgstr ""
 
-#: infrun.c:7247
+#: infrun.c:7251
 msgid ""
 "Specify how to handle a signal.\n"
 "Args are signals and actions to apply to those signals.\n"
@@ -13453,46 +13453,46 @@ msgid ""
 "Pass and Stop may be combined."
 msgstr ""
 
-#: infrun.c:7267
+#: infrun.c:7271
 msgid ""
 "There is no `stop' command, but you can set a hook on `stop'.\n"
 "This allows you to set a list of commands to be run each time execution\n"
 "of the program stops."
 msgstr ""
 
-#: infrun.c:7272
+#: infrun.c:7276
 msgid "Set inferior debugging."
 msgstr ""
 
-#: infrun.c:7273
+#: infrun.c:7277
 msgid "Show inferior debugging."
 msgstr ""
 
-#: infrun.c:7274
+#: infrun.c:7278
 msgid "When non-zero, inferior specific debugging is enabled."
 msgstr ""
 
-#: infrun.c:7281
+#: infrun.c:7285
 msgid "Set displaced stepping debugging."
 msgstr ""
 
-#: infrun.c:7282
+#: infrun.c:7286
 msgid "Show displaced stepping debugging."
 msgstr ""
 
-#: infrun.c:7283
+#: infrun.c:7287
 msgid "When non-zero, displaced stepping specific debugging is enabled."
 msgstr ""
 
-#: infrun.c:7290
+#: infrun.c:7294
 msgid "Set whether gdb controls the inferior in non-stop mode."
 msgstr ""
 
-#: infrun.c:7291
+#: infrun.c:7295
 msgid "Show whether gdb controls the inferior in non-stop mode."
 msgstr ""
 
-#: infrun.c:7292
+#: infrun.c:7296
 msgid ""
 "When debugging a multi-threaded program and this setting is\n"
 "off (the default, also called all-stop mode), when one thread stops\n"
@@ -13507,30 +13507,30 @@ msgid ""
 "leave it stopped or free to run as needed."
 msgstr ""
 
-#: infrun.c:7367
+#: infrun.c:7371
 msgid "Set stopping for shared library events."
 msgstr ""
 
-#: infrun.c:7368
+#: infrun.c:7372
 msgid "Show stopping for shared library events."
 msgstr ""
 
-#: infrun.c:7369
+#: infrun.c:7373
 msgid ""
 "If nonzero, gdb will give control to the user when the dynamic linker\n"
 "notifies gdb of shared library events.  The most common event of interest\n"
 "to the user would be loading/unloading of a new library."
 msgstr ""
 
-#: infrun.c:7379
+#: infrun.c:7383
 msgid "Set debugger response to a program call of fork or vfork."
 msgstr ""
 
-#: infrun.c:7380
+#: infrun.c:7384
 msgid "Show debugger response to a program call of fork or vfork."
 msgstr ""
 
-#: infrun.c:7381
+#: infrun.c:7385
 msgid ""
 "A fork or vfork creates a new process.  follow-fork-mode can be:\n"
 "  parent  - the original process is debugged after a fork\n"
@@ -13539,15 +13539,15 @@ msgid ""
 "By default, the debugger will follow the parent process."
 msgstr ""
 
-#: infrun.c:7393
+#: infrun.c:7397
 msgid "Set debugger response to a program call of exec."
 msgstr ""
 
-#: infrun.c:7394
+#: infrun.c:7398
 msgid "Show debugger response to a program call of exec."
 msgstr ""
 
-#: infrun.c:7395
+#: infrun.c:7399
 msgid ""
 "An exec call replaces the program image of a process.\n"
 "\n"
@@ -13566,15 +13566,15 @@ msgid ""
 "By default, the debugger will use the same inferior."
 msgstr ""
 
-#: infrun.c:7416
+#: infrun.c:7420
 msgid "Set mode for locking scheduler during execution."
 msgstr ""
 
-#: infrun.c:7417
+#: infrun.c:7421
 msgid "Show mode for locking scheduler during execution."
 msgstr ""
 
-#: infrun.c:7418
+#: infrun.c:7422
 msgid ""
 "off  == no locking (threads may preempt at any time)\n"
 "on   == full locking (no thread except the current thread may run)\n"
@@ -13583,15 +13583,15 @@ msgid ""
 "\tOther threads may run while stepping over a function call ('next')."
 msgstr ""
 
-#: infrun.c:7428
+#: infrun.c:7432
 msgid "Set mode for resuming threads of all processes."
 msgstr ""
 
-#: infrun.c:7429
+#: infrun.c:7433
 msgid "Show mode for resuming threads of all processes."
 msgstr ""
 
-#: infrun.c:7430
+#: infrun.c:7434
 msgid ""
 "When on, execution commands (such as 'continue' or 'next') resume all\n"
 "threads of all processes.  When off (which is the default), execution\n"
@@ -13600,30 +13600,30 @@ msgid ""
 "mode (see help set scheduler-locking)."
 msgstr ""
 
-#: infrun.c:7440
+#: infrun.c:7444
 msgid "Set mode of the step operation."
 msgstr ""
 
-#: infrun.c:7441
+#: infrun.c:7445
 msgid "Show mode of the step operation."
 msgstr ""
 
-#: infrun.c:7442
+#: infrun.c:7446
 msgid ""
 "When set, doing a step over a function without debug line information\n"
 "will stop at the first instruction of that function. Otherwise, the\n"
 "function is skipped and the step command stops at a different source line."
 msgstr ""
 
-#: infrun.c:7451
+#: infrun.c:7455
 msgid "Set debugger's willingness to use displaced stepping."
 msgstr ""
 
-#: infrun.c:7452
+#: infrun.c:7456
 msgid "Show debugger's willingness to use displaced stepping."
 msgstr ""
 
-#: infrun.c:7453
+#: infrun.c:7457
 msgid ""
 "If on, gdb will use displaced stepping to step over breakpoints if it is\n"
 "supported by the target architecture.  If off, gdb will not use displaced\n"
@@ -13635,57 +13635,57 @@ msgid ""
 "use it in all-stop mode (see help set non-stop)."
 msgstr ""
 
-#: infrun.c:7465
+#: infrun.c:7469
 msgid ""
 "Set direction of execution.\n"
 "Options are 'forward' or 'reverse'."
 msgstr ""
 
-#: infrun.c:7467
+#: infrun.c:7471
 msgid "Show direction of execution (forward/reverse)."
 msgstr ""
 
-#: infrun.c:7468
+#: infrun.c:7472
 msgid "Tells gdb whether to execute forward or backward."
 msgstr ""
 
 #. Set/show detach-on-fork: user-settable mode.
-#: infrun.c:7474
+#: infrun.c:7478
 msgid "Set whether gdb will detach the child of a fork."
 msgstr ""
 
-#: infrun.c:7475
+#: infrun.c:7479
 msgid "Show whether gdb will detach the child of a fork."
 msgstr ""
 
-#: infrun.c:7476
+#: infrun.c:7480
 msgid "Tells gdb whether to detach the child of a fork."
 msgstr ""
 
-#: infrun.c:7483
+#: infrun.c:7487
 msgid "Set disabling of debuggee's virtual address space randomization."
 msgstr ""
 
-#: infrun.c:7484
+#: infrun.c:7488
 msgid "Show disabling of debuggee's virtual address space randomization."
 msgstr ""
 
-#: infrun.c:7485
+#: infrun.c:7489
 msgid ""
 "When this mode is on (which is the default), randomization of the virtual\n"
 "address space is disabled.  Standalone programs run with the randomization\n"
 "enabled by default on some platforms."
 msgstr ""
 
-#: infrun.c:7509
+#: infrun.c:7513
 msgid "Set whether gdb controls the inferior in observer mode."
 msgstr ""
 
-#: infrun.c:7510
+#: infrun.c:7514
 msgid "Show whether gdb controls the inferior in observer mode."
 msgstr ""
 
-#: infrun.c:7511
+#: infrun.c:7515
 msgid ""
 "In observer mode, GDB can get data from the inferior, but not\n"
 "affect its execution.  Registers and memory may not be changed,\n"
@@ -25001,72 +25001,72 @@ msgstr ""
 msgid "Cannot find thread-local variables on this target"
 msgstr ""
 
-#: target.c:1555
+#: target.c:1572
 msgid "Writing to flash memory forbidden in this context"
 msgstr ""
 
-#: target.c:1700
+#: target.c:1691
 #, possible-c-format
 msgid "Writing to memory is not allowed (addr %s, len %s)"
 msgstr ""
 
-#: target.c:1908
+#: target.c:1899
 msgid "Overlapping regions in memory map: ignoring"
 msgstr ""
 
-#: target.c:1958
+#: target.c:1949
 #, possible-c-format
 msgid "Mode for reading from readonly sections is %s.\n"
 msgstr ""
 
-#: target.c:2424
+#: target.c:2415
 #, possible-c-format
 msgid "target object %d, annex %s, contained unexpected null characters"
 msgstr ""
 
-#: target.c:2465
+#: target.c:2456
 msgid "May not insert breakpoints"
 msgstr ""
 
-#: target.c:2482
+#: target.c:2473
 msgid "May not remove breakpoints"
 msgstr ""
 
-#: target.c:2496
+#: target.c:2487
 #, possible-c-format
 msgid "Symbols from \"%s\".\n"
 msgstr ""
 
-#: target.c:2507
+#: target.c:2498
 msgid "\tWhile running this, GDB does not access memory from...\n"
 msgstr ""
 
-#: target.c:2594
+#: target.c:2585
 msgid "Program not killed."
 msgstr ""
 
-#: target.c:2636
+#: target.c:2627
 msgid "could not find a target to detach"
 msgstr ""
 
-#: target.c:2837
+#: target.c:2828
 msgid "could not find a target to follow fork"
 msgstr ""
 
-#: target.c:2863
+#: target.c:2854
 msgid "could not find a target to follow mourn inferior"
 msgstr ""
 
-#: target.c:2914
+#: target.c:2905
 msgid "Unable to allocate memory to perform the search."
 msgstr ""
 
-#: target.c:2922 target.c:2977
+#: target.c:2913 target.c:2968
 #, possible-c-format
 msgid "Unable to access %s bytes of target memory at %s, halting search."
 msgstr ""
 
-#: target.c:3067
+#: target.c:3058
 #, possible-c-format
 msgid ""
 "The \"%s\" target does not support \"run\".  Try \"help target\" or "
@@ -25076,184 +25076,184 @@ msgstr ""
 #. This function is only called if the target is running.  In that
 #. case there should have been a process_stratum target and it
 #. should either know how to create inferiors, or not...
-#: target.c:3075
+#: target.c:3066
 msgid "No targets found"
 msgstr ""
 
-#: target.c:3107
+#: target.c:3098
 #, possible-c-format
 msgid "Don't know how to %s.  Try \"help target\"."
 msgstr ""
 
-#: target.c:3294
+#: target.c:3285
 #, possible-c-format
 msgid "Can't determine the current address space of thread %s\n"
 msgstr ""
 
-#: target.c:3591
+#: target.c:3582
 #, possible-c-format
 msgid "target file %s contained unexpected null characters"
 msgstr ""
 
-#: target.c:3713 target.c:3721
+#: target.c:3704 target.c:3712
 msgid "Command not implemented for this target."
 msgstr ""
 
-#: target.c:3817
+#: target.c:3808
 msgid "could not find a target to attach"
 msgstr ""
 
-#: target.c:3866
+#: target.c:3857
 msgid "May not interrupt or stop the target, ignoring attempt"
 msgstr ""
 
-#: target.c:3989
+#: target.c:3980
 #, possible-c-format
 msgid "Writing to registers is not allowed (regno %d)"
 msgstr ""
 
-#: target.c:4980
+#: target.c:4971
 msgid "\"monitor\" command not supported by this target."
 msgstr ""
 
-#: target.c:4991
+#: target.c:4982
 msgid "The current target stack is:\n"
 msgstr ""
 
-#: target.c:5025
+#: target.c:5016
 #, possible-c-format
 msgid "Controlling the inferior in asynchronous mode is %s.\n"
 msgstr ""
 
-#: target.c:5094
+#: target.c:5085
 msgid "Set target debugging."
 msgstr ""
 
-#: target.c:5095
+#: target.c:5086
 msgid "Show target debugging."
 msgstr ""
 
-#: target.c:5096
+#: target.c:5087
 msgid ""
 "When non-zero, target debugging is enabled.  Higher numbers are more\n"
 "verbose.  Changes do not take effect until the next \"run\" or \"target\"\n"
 "command."
 msgstr ""
 
-#: target.c:5105
+#: target.c:5096
 msgid "Set mode for reading from readonly sections."
 msgstr ""
 
-#: target.c:5106
+#: target.c:5097
 msgid "Show mode for reading from readonly sections."
 msgstr ""
 
-#: target.c:5107
+#: target.c:5098
 msgid ""
 "When this mode is on, memory reads from readonly sections (such as .text)\n"
 "will be read from the object file instead of from the target.  This will\n"
 "result in significant performance improvement for remote targets."
 msgstr ""
 
-#: target.c:5116
+#: target.c:5107
 msgid "Send a command to the remote monitor (remote targets only)."
 msgstr ""
 
-#: target.c:5119
+#: target.c:5110
 msgid "Print the name of each layer of the internal target stack."
 msgstr ""
 
-#: target.c:5123
+#: target.c:5114
 msgid "Set whether gdb controls the inferior in asynchronous mode."
 msgstr ""
 
-#: target.c:5124
+#: target.c:5115
 msgid "Show whether gdb controls the inferior in asynchronous mode."
 msgstr ""
 
-#: target.c:5125
+#: target.c:5116
 msgid "Tells gdb whether to control the inferior in asynchronous mode."
 msgstr ""
 
-#: target.c:5133
+#: target.c:5124
 msgid "Set permission to write into registers."
 msgstr ""
 
-#: target.c:5134
+#: target.c:5125
 msgid "Show permission to write into registers."
 msgstr ""
 
-#: target.c:5135
+#: target.c:5126
 msgid ""
 "When this permission is on, GDB may write into the target's registers.\n"
 "Otherwise, any sort of write attempt will result in an error."
 msgstr ""
 
-#: target.c:5142
+#: target.c:5133
 msgid "Set permission to write into target memory."
 msgstr ""
 
-#: target.c:5143
+#: target.c:5134
 msgid "Show permission to write into target memory."
 msgstr ""
 
-#: target.c:5144
+#: target.c:5135
 msgid ""
 "When this permission is on, GDB may write into the target's memory.\n"
 "Otherwise, any sort of write attempt will result in an error."
 msgstr ""
 
-#: target.c:5151
+#: target.c:5142
 msgid "Set permission to insert breakpoints in the target."
 msgstr ""
 
-#: target.c:5152
+#: target.c:5143
 msgid "Show permission to insert breakpoints in the target."
 msgstr ""
 
-#: target.c:5153
+#: target.c:5144
 msgid ""
 "When this permission is on, GDB may insert breakpoints in the program.\n"
 "Otherwise, any sort of insertion attempt will result in an error."
 msgstr ""
 
-#: target.c:5160
+#: target.c:5151
 msgid "Set permission to insert tracepoints in the target."
 msgstr ""
 
-#: target.c:5161
+#: target.c:5152
 msgid "Show permission to insert tracepoints in the target."
 msgstr ""
 
-#: target.c:5162
+#: target.c:5153
 msgid ""
 "When this permission is on, GDB may insert tracepoints in the program.\n"
 "Otherwise, any sort of insertion attempt will result in an error."
 msgstr ""
 
-#: target.c:5169
+#: target.c:5160
 msgid "Set permission to insert fast tracepoints in the target."
 msgstr ""
 
-#: target.c:5170
+#: target.c:5161
 msgid "Show permission to insert fast tracepoints in the target."
 msgstr ""
 
-#: target.c:5171
+#: target.c:5162
 msgid ""
 "When this permission is on, GDB may insert fast tracepoints.\n"
 "Otherwise, any sort of insertion attempt will result in an error."
 msgstr ""
 
-#: target.c:5178
+#: target.c:5169
 msgid "Set permission to interrupt or signal the target."
 msgstr ""
 
-#: target.c:5179
+#: target.c:5170
 msgid "Show permission to interrupt or signal the target."
 msgstr ""
 
-#: target.c:5180
+#: target.c:5171
 msgid ""
 "When this permission is on, GDB may interrupt/stop the target's execution.\n"
 "Otherwise, any attempt to interrupt or stop will be ignored."
@@ -28173,31 +28173,31 @@ msgstr ""
 msgid "Unable to determine location of registers"
 msgstr ""
 
-#: windows-nat.c:313
+#: windows-nat.c:318
 #, possible-c-format
 msgid "SuspendThread (tid=0x%x) failed. (winerr %u)"
 msgstr ""
 
-#: windows-nat.c:401
+#: windows-nat.c:407
 #, possible-c-format
 msgid "[%s exited with code %u]\n"
 msgstr ""
 
-#: windows-nat.c:572
+#: windows-nat.c:578
 msgid "Can't get module info"
 msgstr ""
 
-#: windows-nat.c:582 windows-nat.c:591
+#: windows-nat.c:588 windows-nat.c:597
 #, possible-c-format
 msgid "Error getting dll name: %u."
 msgstr ""
 
-#: windows-nat.c:586
+#: windows-nat.c:592
 #, possible-c-format
 msgid "Error converting dll name to POSIX: %d."
 msgstr ""
 
-#: windows-nat.c:750
+#: windows-nat.c:756
 msgid "dll path too long"
 msgstr ""
 
@@ -28208,147 +28208,147 @@ msgstr ""
 #. 4 mysterious UNLOAD_DLL_DEBUG_EVENTs during the startup phase (these
 #. events are apparently caused by the WOW layer, the interface between
 #. 32bit and 64bit worlds).
-#: windows-nat.c:924
+#: windows-nat.c:930
 #, possible-c-format
 msgid "dll starting at %s not found."
 msgstr ""
 
-#: windows-nat.c:946
+#: windows-nat.c:952
 msgid "dll-symbols requires a file name"
 msgstr ""
 
-#: windows-nat.c:1327
+#: windows-nat.c:1344
 #, possible-c-format
 msgid "OpenProcess call failed, GetLastError = %u"
 msgstr ""
 
-#: windows-nat.c:1452
+#: windows-nat.c:1469
 msgid "Could not interrupt program.  Press Ctrl-c in the program console."
 msgstr ""
 
-#: windows-nat.c:1562
+#: windows-nat.c:1579
 #, possible-c-format
 msgid "During startup program exited with code 0x%x."
 msgstr ""
 
-#: windows-nat.c:1941
+#: windows-nat.c:1958
 msgid "Can't attach to process."
 msgstr ""
 
-#: windows-nat.c:1973
+#: windows-nat.c:1990
 #, possible-c-format
 msgid "Can't detach process %u (error %u)"
 msgstr ""
 
-#: windows-nat.c:2161
+#: windows-nat.c:2178
 msgid "No executable specified, use `target exec'."
 msgstr ""
 
-#: windows-nat.c:2178 windows-nat.c:2183
+#: windows-nat.c:2195 windows-nat.c:2200
 #, possible-c-format
 msgid "Error starting executable: %d"
 msgstr ""
 
-#: windows-nat.c:2196
+#: windows-nat.c:2213
 #, possible-c-format
 msgid "Error starting executable via shell: %d"
 msgstr ""
 
-#: windows-nat.c:2320
+#: windows-nat.c:2337
 #, possible-c-format
 msgid "Warning: Failed to open TTY %s, error %#x."
 msgstr ""
 
-#: windows-nat.c:2372
+#: windows-nat.c:2389
 #, possible-c-format
 msgid "Error creating process %s, (error %u)."
 msgstr ""
 
-#: windows-nat.c:2667
+#: windows-nat.c:2684
 msgid "Load dll library symbols from FILE."
 msgstr ""
 
-#: windows-nat.c:2677
+#: windows-nat.c:2694
 msgid "Set use of shell to start subprocess."
 msgstr ""
 
-#: windows-nat.c:2678
+#: windows-nat.c:2695
 msgid "Show use of shell to start subprocess."
 msgstr ""
 
-#: windows-nat.c:2685
+#: windows-nat.c:2702
 msgid "Break when an exception is detected in the Cygwin DLL itself."
 msgstr ""
 
-#: windows-nat.c:2686
+#: windows-nat.c:2703
 msgid "Show whether gdb breaks on exceptions in the Cygwin DLL itself."
 msgstr ""
 
-#: windows-nat.c:2693
+#: windows-nat.c:2710
 msgid "Set creation of new console when creating child process."
 msgstr ""
 
-#: windows-nat.c:2694
+#: windows-nat.c:2711
 msgid "Show creation of new console when creating child process."
 msgstr ""
 
-#: windows-nat.c:2700
+#: windows-nat.c:2717
 msgid "Set creation of new group when creating child process."
 msgstr ""
 
-#: windows-nat.c:2701
+#: windows-nat.c:2718
 msgid "Show creation of new group when creating child process."
 msgstr ""
 
-#: windows-nat.c:2707
+#: windows-nat.c:2724
 msgid "Set whether to display execution in child process."
 msgstr ""
 
-#: windows-nat.c:2708
+#: windows-nat.c:2725
 msgid "Show whether to display execution in child process."
 msgstr ""
 
-#: windows-nat.c:2714
+#: windows-nat.c:2731
 msgid "Set whether to display kernel events in child process."
 msgstr ""
 
-#: windows-nat.c:2715
+#: windows-nat.c:2732
 msgid "Show whether to display kernel events in child process."
 msgstr ""
 
-#: windows-nat.c:2721
+#: windows-nat.c:2738
 msgid "Set whether to display memory accesses in child process."
 msgstr ""
 
-#: windows-nat.c:2722
+#: windows-nat.c:2739
 msgid "Show whether to display memory accesses in child process."
 msgstr ""
 
-#: windows-nat.c:2729
+#: windows-nat.c:2746
 msgid "Set whether to display kernel exceptions in child process."
 msgstr ""
 
-#: windows-nat.c:2730
+#: windows-nat.c:2747
 msgid "Show whether to display kernel exceptions in child process."
 msgstr ""
 
-#: windows-nat.c:2739
+#: windows-nat.c:2756
 msgid "Display selectors infos."
 msgstr ""
 
-#: windows-nat.c:2755
+#: windows-nat.c:2772
 #, possible-c-format
 msgid "Invalid register %d in cygwin_set_dr.\n"
 msgstr ""
 
-#: windows-nat.c:2842
+#: windows-nat.c:2859
 #, possible-c-format
 msgid "obsolete '%s' found. Rename to '%s'."
 msgstr ""
 
 #. This will probably fail on Windows 9x/Me.  Let the user know
 #. that we're missing some functionality.
-#: windows-nat.c:2973
+#: windows-nat.c:2990
 msgid ""
 "cannot automatically find executable file or library to read symbols.\n"
 "Use \"file\" or \"dll\" command to load executable/libraries directly."
diff --git a/gdb/python/py-linetable.c b/gdb/python/py-linetable.c
index e83d46d..8b5362b 100644
--- a/gdb/python/py-linetable.c
+++ b/gdb/python/py-linetable.c
@@ -168,7 +168,7 @@ static PyObject *
 ltpy_get_pcs_for_line (PyObject *self, PyObject *args)
 {
   struct symtab *symtab;
-  int py_line;
+  gdb_py_longest py_line;
   struct linetable_entry *best_entry = NULL;
   linetable_entry_object *result;
   VEC (CORE_ADDR) *pcs = NULL;
@@ -200,7 +200,7 @@ static PyObject *
 ltpy_has_line (PyObject *self, PyObject *args)
 {
   struct symtab *symtab;
-  int py_line;
+  gdb_py_longest py_line;
   int index;
 
   LTPY_REQUIRE_VALID (self, symtab);
diff --git a/gdb/target.c b/gdb/target.c
index 42a8741..a8eeace 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -1418,6 +1418,23 @@ raw_memory_xfer_partial (struct target_ops *ops, void *readbuf,
     }
   while (ops != NULL);
 
+  /* The cache works at the raw memory level.  Make sure the cache
+     gets updated with raw contents no matter what kind of memory
+     object was originally being written.  Note we do write-through
+     first, so that if it fails, we don't write to the cache contents
+     that never made it to the target.  */
+  if (writebuf != NULL
+      && !ptid_equal (inferior_ptid, null_ptid)
+      && target_dcache_init_p ()
+      && (stack_cache_enabled_p () || code_cache_enabled_p ()))
+    {
+      DCACHE *dcache = target_dcache_get ();
+
+      /* Note that writing to an area of memory which wasn't present
+	 in the cache doesn't cause it to be loaded in.  */
+      dcache_update (dcache, res, memaddr, writebuf, len);
+    }
+
   return res;
 }
 
@@ -1565,6 +1582,7 @@ memory_xfer_partial_1 (struct target_ops *ops, enum target_object object,
     inf = NULL;
 
   if (inf != NULL
+      && readbuf != NULL
       /* The dcache reads whole cache lines; that doesn't play well
 	 with reading from a trace buffer, because reading outside of
 	 the collected memory range fails.  */
@@ -1575,18 +1593,8 @@ memory_xfer_partial_1 (struct target_ops *ops, enum target_object object,
     {
       DCACHE *dcache = target_dcache_get_or_init ();
 
-      if (readbuf != NULL)
-	res = dcache_xfer_memory (ops, dcache, memaddr, readbuf, reg_len, 0);
-      else
-	/* FIXME drow/2006-08-09: If we're going to preserve const
-	   correctness dcache_xfer_memory should take readbuf and
-	   writebuf.  */
-	res = dcache_xfer_memory (ops, dcache, memaddr, (void *) writebuf,
-				  reg_len, 1);
-      if (res <= 0)
-	return -1;
-      else
-	return res;
+      return dcache_read_memory_partial (ops, dcache, memaddr, readbuf,
+					 reg_len);
     }
 
   /* If none of those methods found the memory we wanted, fall back
@@ -1597,23 +1605,6 @@ memory_xfer_partial_1 (struct target_ops *ops, enum target_object object,
      object which can be read from more than one valid target.  */
   res = raw_memory_xfer_partial (ops, readbuf, writebuf, memaddr, reg_len);
 
-  /* Make sure the cache gets updated no matter what - if we are writing
-     to the stack.  Even if this write is not tagged as such, we still need
-     to update the cache.  */
-
-  if (res > 0
-      && inf != NULL
-      && writebuf != NULL
-      && target_dcache_init_p ()
-      && !region->attrib.cache
-      && ((stack_cache_enabled_p () && object != TARGET_OBJECT_STACK_MEMORY)
-	  || (code_cache_enabled_p () && object != TARGET_OBJECT_CODE_MEMORY)))
-    {
-      DCACHE *dcache = target_dcache_get ();
-
-      dcache_update (dcache, memaddr, (void *) writebuf, res);
-    }
-
   /* If we still haven't got anything, return the last error.  We
      give up.  */
   return res;
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index d7eaa39..ecf8ad3 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,30 @@
+2014-03-05  Pedro Alves  <palves at redhat.com>
+
+	PR gdb/16575
+	* gdb.base/breakpoint-shadow.exp (compare_disassembly): New
+	procedure.
+	(top level): Adjust to use it.  Add tests that exercise breakpoint
+	interaction with the code-cache.
+
+2014-02-26  Pedro Alves  <pedro at codesourcery.com>
+	    Pedro Alves  <palves at redhat.com>
+
+	PR breakpoints/16292
+	* gdb.threads/signal-while-stepping-over-bp-other-thread.c: New
+	file.
+	* gdb.threads/signal-while-stepping-over-bp-other-thread.exp: New
+	file.
+
+2014-02-25  Jan Kratochvil  <jan.kratochvil at redhat.com>
+
+	PR gdb/16626
+	* gdb.base/auto-load-script: New file.
+	* gdb.base/auto-load.c: New file.
+	* gdb.base/auto-load.exp: New file.
+
+	PR gdb/16626
+	* gdb.base/auto-load.exp: Fix out-of-srctree run.
+
 2014-02-05  Yao Qi  <yao at codesourcery.com>
 
 	* gdb.trace/report.exp (use_collected_data): Test the output
diff --git a/gdb/testsuite/gdb.base/auto-load-script b/gdb/testsuite/gdb.base/auto-load-script
new file mode 100644
index 0000000..d02bd1a
--- /dev/null
+++ b/gdb/testsuite/gdb.base/auto-load-script
@@ -0,0 +1,17 @@
+# Copyright 2014 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+echo script_loaded\n
+set $script_loaded=42
diff --git a/gdb/testsuite/gdb.base/auto-load.c b/gdb/testsuite/gdb.base/auto-load.c
new file mode 100644
index 0000000..4b94803
--- /dev/null
+++ b/gdb/testsuite/gdb.base/auto-load.c
@@ -0,0 +1,22 @@
+/* This testcase is part of GDB, the GNU debugger.
+
+   Copyright 2014 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
+
+int
+main (void)
+{
+  return 0;
+}
diff --git a/gdb/testsuite/gdb.base/auto-load.exp b/gdb/testsuite/gdb.base/auto-load.exp
new file mode 100644
index 0000000..d0e93f0
--- /dev/null
+++ b/gdb/testsuite/gdb.base/auto-load.exp
@@ -0,0 +1,41 @@
+# Copyright 2014 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+standard_testfile
+
+if [is_remote host] {
+    return 0
+}
+
+set targetdir "${binfile}.dir"
+set sourcescript "${srcdir}/${subdir}/${testfile}-script"
+set targetscriptdir "${targetdir}/[file dirname ${binfile}]"
+set targetscript "${targetscriptdir}/${testfile}-gdb.gdb"
+
+remote_exec host "rm -rf ${targetdir}"
+
+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile}] } {
+    return -1
+}
+
+remote_exec host "mkdir -p ${targetscriptdir}"
+remote_exec host "cp ${sourcescript} ${targetscript}"
+
+gdb_test_no_output "set auto-load scripts-directory ${targetdir}" "set auto-load scripts-directory"
+gdb_test_no_output "set auto-load safe-path ${targetscript}" "set auto-load safe-path"
+
+gdb_load ${binfile}
+
+gdb_test {print $script_loaded} " = 42"
diff --git a/gdb/testsuite/gdb.base/breakpoint-shadow.exp b/gdb/testsuite/gdb.base/breakpoint-shadow.exp
index 74f7c8f..1414ec0 100644
--- a/gdb/testsuite/gdb.base/breakpoint-shadow.exp
+++ b/gdb/testsuite/gdb.base/breakpoint-shadow.exp
@@ -44,14 +44,36 @@ gdb_test_multiple "disass main" $test {
 gdb_test "b [gdb_get_line_number "break-first"]" "Breakpoint \[0-9\] at .*" "First breakpoint placed"
 gdb_test "b [gdb_get_line_number "break-second"]" "Breakpoint \[0-9\] at .*" "Second breakpoint placed"
 
-set test "disassembly with breakpoints"
-gdb_test_multiple "disass main" $test {
-    -re $match {
-    	set got $expect_out(1,string)
-	if [string equal -nocase $orig $got] {
-	    pass $test
-	} else {
-	    fail $test
+# Disassemble main, and compare the output to the original output
+# before breakpoints were inserted.  TEST is used as test message.
+
+proc test_disassembly {test} {
+    global match orig
+
+    gdb_test_multiple "disass main" $test {
+	-re $match {
+	    set got $expect_out(1,string)
+	    if [string equal -nocase $orig $got] {
+		pass $test
+	    } else {
+		fail $test
+	    }
 	}
     }
 }
+
+test_disassembly "disassembly with breakpoints"
+
+# Now check the interaction between the code cache and breakpoint
+# always-inserted mode.
+
+# Recreate the code cache when breakpoints are already inserted.
+gdb_test_no_output "set code-cache off"
+gdb_test_no_output "set code-cache on"
+
+test_disassembly "disassembly with breakpoints, fresh code cache"
+
+# Delete breakpoints.  This should update the code cache as well.
+delete_breakpoints
+
+test_disassembly "disassembly without breakpoints, no stale breakpoints"
diff --git a/gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.c b/gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.c
new file mode 100644
index 0000000..a4634f2
--- /dev/null
+++ b/gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.c
@@ -0,0 +1,145 @@
+/* This testcase is part of GDB, the GNU debugger.
+
+   Copyright 2009-2014 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
+
+#include <pthread.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <signal.h>
+
+unsigned int args[2];
+
+pid_t pid;
+pthread_barrier_t barrier;
+pthread_t child_thread_2, child_thread_3;
+
+void
+handler (int signo)
+{
+  /* so that thread 3 is sure to run, in case the bug is present.  */
+  usleep (10);
+}
+
+void
+callme (void)
+{
+}
+
+void
+block_signals (void)
+{
+  sigset_t mask;
+
+  sigfillset (&mask);
+  sigprocmask (SIG_BLOCK, &mask, NULL);
+}
+
+void
+unblock_signals (void)
+{
+  sigset_t mask;
+
+  sigfillset (&mask);
+  sigprocmask (SIG_UNBLOCK, &mask, NULL);
+}
+
+void *
+child_function_3 (void *arg)
+{
+  int my_number =  (long) arg;
+  volatile int *myp = (int *) &args[my_number];
+
+  pthread_barrier_wait (&barrier);
+
+  while (*myp > 0)
+    {
+      (*myp) ++; /* set breakpoint child_two here */
+      callme ();
+    }
+
+  pthread_exit (NULL);
+}
+
+void *
+child_function_2 (void *arg)
+{
+  int my_number =  (long) arg;
+  volatile int *myp = (int *) &args[my_number];
+
+  unblock_signals ();
+
+  pthread_barrier_wait (&barrier);
+
+  while (*myp > 0)
+    {
+      (*myp) ++;
+      callme (); /* set breakpoint child_one here */
+    }
+
+  *myp = 1;
+  while (*myp > 0)
+    {
+      (*myp) ++;
+      callme ();
+    }
+
+  pthread_exit (NULL);
+}
+
+
+int
+main ()
+{
+  int res;
+  long i;
+
+  /* Block signals in all threads but one, so that we're sure which
+     thread gets the signal we send from the command line.  */
+  block_signals ();
+
+  signal (SIGUSR1, handler);
+
+  /* Call these early so that PLTs for these are resolved soon,
+     instead of in the threads.  RTLD_NOW should work as well.  */
+  usleep (0);
+  pthread_barrier_init (&barrier, NULL, 1);
+  pthread_barrier_wait (&barrier);
+
+  pthread_barrier_init (&barrier, NULL, 2);
+
+  /* The test uses this global to know where to send the signal
+     to.  */
+  pid = getpid ();
+
+  i = 0;
+  args[i] = 1;
+  res = pthread_create (&child_thread_2,
+			NULL, child_function_2, (void *) i);
+  pthread_barrier_wait (&barrier);
+  callme (); /* set wait-thread-2 breakpoint here */
+
+  i = 1;
+  args[i] = 1;
+  res = pthread_create (&child_thread_3,
+			NULL, child_function_3, (void *) i);
+  pthread_barrier_wait (&barrier);
+  callme (); /* set wait-thread-3 breakpoint here */
+
+  pthread_join (child_thread_2, NULL);
+  pthread_join (child_thread_3, NULL);
+
+  exit(EXIT_SUCCESS);
+}
diff --git a/gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.exp b/gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.exp
new file mode 100644
index 0000000..6b93d9c
--- /dev/null
+++ b/gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.exp
@@ -0,0 +1,120 @@
+# Copyright (C) 2011-2014 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Test that GDB doesn't inadvertently resume the stepped thread when a
+# signal arrives while stepping over the breakpoint that last caused a
+# stop, when the thread that hit that breakpoint is not the stepped
+# thread.
+
+standard_testfile
+set executable ${testfile}
+
+if [target_info exists gdb,nosignals] {
+    verbose "Skipping ${testfile}.exp because of nosignals."
+    return -1
+}
+
+# Test uses host "kill".
+if { [is_remote target] } {
+    return -1
+}
+
+if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
+	 executable [list debug "incdir=${objdir}"]] != "" } {
+    return -1
+}
+
+proc get_value {var test} {
+    global expect_out
+    global gdb_prompt
+    global decimal
+
+    set value -1
+    gdb_test_multiple "print $var" "$test" {
+	-re ".*= ($decimal).*\r\n$gdb_prompt $" {
+	    set value $expect_out(1,string)
+	    pass "$test"
+        }
+    }
+    return ${value}
+}
+
+# Start with a fresh gdb.
+
+clean_restart $executable
+
+if ![runto_main] {
+    return -1
+}
+
+gdb_breakpoint [gdb_get_line_number "set wait-thread-2 breakpoint here"]
+gdb_continue_to_breakpoint "run to wait-thread-2 breakpoint"
+gdb_test "info threads" "" "info threads with thread 2"
+
+gdb_breakpoint [gdb_get_line_number "set wait-thread-3 breakpoint here"]
+gdb_continue_to_breakpoint "run to breakpoint"
+gdb_test "info threads" "" "info threads with thread 3"
+
+set testpid [get_value "pid" "get pid of inferior"]
+
+gdb_test "set scheduler-locking on"
+
+gdb_breakpoint [gdb_get_line_number "set breakpoint child_two here"]
+gdb_breakpoint [gdb_get_line_number "set breakpoint child_one here"]
+
+gdb_test "thread 3" "" "switch to thread 3 to run to its breakpoint"
+gdb_continue_to_breakpoint "run to breakpoint in thread 3"
+
+gdb_test "thread 2" "" "switch to thread 2 to run to its breakpoint"
+gdb_continue_to_breakpoint "run to breakpoint in thread 2"
+
+delete_breakpoints
+
+gdb_test "b *\$pc" "" "set breakpoint to be stepped over"
+# Make sure the first loop breaks without hitting the breakpoint
+# again.
+gdb_test "p *myp = 0" " = 0" "force loop break in thread 2"
+
+# We want "print" to make sure the target reports the signal to the
+# core.
+gdb_test "handle SIGUSR1 print nostop pass" "" ""
+
+# Queue a signal in thread 2.
+remote_exec host "kill -SIGUSR1 ${testpid}"
+
+gdb_test "thread 3" "" "switch to thread 3 for stepping"
+set my_number [get_value "my_number" "get my_number"]
+set cnt_before [get_value "args\[$my_number\]" "get count before step"]
+gdb_test "set scheduler-locking off"
+
+# Make sure we're exercising the paths we want to.
+gdb_test "set debug infrun 1"
+
+gdb_test \
+    "step" \
+    ".*prepare_to_proceed \\(step=1\\), switched to.*signal arrived while stepping over breakpoint.*switching back to stepped thread.*stepped to a different line.*callme.*" \
+    "step"
+
+set cnt_after [get_value "args\[$my_number\]" "get count after step"]
+
+# Test that GDB doesn't inadvertently resume the stepped thread when a
+# signal arrives while stepping over a breakpoint in another thread.
+
+set test "stepped thread under control"
+if { $cnt_before + 1 == $cnt_after } {
+    pass $test
+} else {
+    fail $test
+}
diff --git a/gdb/version.in b/gdb/version.in
index 25b629b..5942a0d 100644
--- a/gdb/version.in
+++ b/gdb/version.in
@@ -1 +1 @@
-7.7
+7.7.1
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index 6cd2c46..4fa07bd 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -310,12 +310,18 @@ thread_rec (DWORD id, int get_context)
 		  {
 		    DWORD err = GetLastError ();
 
-		    warning (_("SuspendThread (tid=0x%x) failed."
-			       " (winerr %u)"),
-			     (unsigned) id, (unsigned) err);
-		    return NULL;
+		    /* We get Access Denied (5) when trying to suspend
+		       threads that Windows started on behalf of the
+		       debuggee, usually when those threads are just
+		       about to exit.  */
+		    if (err != ERROR_ACCESS_DENIED)
+		      warning (_("SuspendThread (tid=0x%x) failed."
+				 " (winerr %u)"),
+			       (unsigned) id, (unsigned) err);
+		    th->suspended = -1;
 		  }
-		th->suspended = 1;
+		else
+		  th->suspended = 1;
 	      }
 	    else if (get_context < 0)
 	      th->suspended = -1;
@@ -445,7 +451,7 @@ do_windows_fetch_inferior_registers (struct regcache *regcache, int r)
 	{
 	  thread_info *th = current_thread;
 	  th->context.ContextFlags = CONTEXT_DEBUGGER_DR;
-	  GetThreadContext (th->h, &th->context);
+	  CHECK (GetThreadContext (th->h, &th->context));
 	  /* Copy dr values from that thread.
 	     But only if there were not modified since last stop.
 	     PR gdb/2388 */
@@ -1266,10 +1272,12 @@ handle_exception (struct target_waitstatus *ourstatus)
   return 1;
 }
 
-/* Resume all artificially suspended threads if we are continuing
-   execution.  */
+/* Resume thread specified by ID, or all artificially suspended
+   threads, if we are continuing execution.  KILLED non-zero means we
+   have killed the inferior, so we should ignore weird errors due to
+   threads shutting down.  */
 static BOOL
-windows_continue (DWORD continue_status, int id)
+windows_continue (DWORD continue_status, int id, int killed)
 {
   int i;
   thread_info *th;
@@ -1297,7 +1305,16 @@ windows_continue (DWORD continue_status, int id)
 	  }
 	if (th->context.ContextFlags)
 	  {
-	    CHECK (SetThreadContext (th->h, &th->context));
+	    DWORD ec = 0;
+
+	    if (GetExitCodeThread (th->h, &ec)
+		&& ec == STILL_ACTIVE)
+	      {
+		BOOL status = SetThreadContext (th->h, &th->context);
+
+		if (!killed)
+		  CHECK (status);
+	      }
 	    th->context.ContextFlags = 0;
 	  }
 	if (th->suspended > 0)
@@ -1425,9 +1442,9 @@ windows_resume (struct target_ops *ops,
      Otherwise complain.  */
 
   if (resume_all)
-    windows_continue (continue_status, -1);
+    windows_continue (continue_status, -1, 0);
   else
-    windows_continue (continue_status, ptid_get_tid (ptid));
+    windows_continue (continue_status, ptid_get_tid (ptid), 0);
 }
 
 /* Ctrl-C handler used when the inferior is not run in the same console.  The
@@ -1645,7 +1662,7 @@ get_windows_debug_event (struct target_ops *ops,
       if (continue_status == -1)
 	windows_resume (ops, minus_one_ptid, 0, 1);
       else
-	CHECK (windows_continue (continue_status, -1));
+	CHECK (windows_continue (continue_status, -1, 0));
     }
   else
     {
@@ -2382,13 +2399,13 @@ windows_create_inferior (struct target_ops *ops, char *exec_file,
 
   do_initial_windows_stuff (ops, pi.dwProcessId, 0);
 
-  /* windows_continue (DBG_CONTINUE, -1); */
+  /* windows_continue (DBG_CONTINUE, -1, 0); */
 }
 
 static void
 windows_mourn_inferior (struct target_ops *ops)
 {
-  (void) windows_continue (DBG_CONTINUE, -1);
+  (void) windows_continue (DBG_CONTINUE, -1, 0);
   i386_cleanup_dregs();
   if (open_process_used)
     {
@@ -2456,7 +2473,7 @@ windows_kill_inferior (struct target_ops *ops)
 
   for (;;)
     {
-      if (!windows_continue (DBG_CONTINUE, -1))
+      if (!windows_continue (DBG_CONTINUE, -1, 1))
 	break;
       if (!WaitForDebugEvent (&current_event, INFINITE))
 	break;
diff --git a/md5.sum b/md5.sum
index 9ce3725..00675cc 100644
--- a/md5.sum
+++ b/md5.sum
@@ -93,7 +93,7 @@ c33e7b476fff49257bec843b4b756e64  bfd/coff-i960.c
 9ac71375350838903d4e2ea5e273328a  bfd/pc532-mach.c
 bff5cefe7a6dca2fb2cac08f4f44f3dd  bfd/elf32-i386.c
 b50493dbeeb6a6c72d74c195d4334bf9  bfd/cpu-xgate.c
-3891f546135da051bf92c4366687c79b  bfd/section.c
+638f1ae0e9e474e96973222f235d05ca  bfd/section.c
 e24c26414c8cffc67b83fcb4bcfb2a55  bfd/elf32-tic6x.h
 a1e9a3c25fd579771da3e57df20efbdc  bfd/elf32-sh64.c
 7f7679ad0dc080844c3868739e9db1b0  bfd/MAINTAINERS
@@ -163,7 +163,7 @@ bd49f101cccf144e25059c613c931182  bfd/elf32-xgate.c
 3e40145c4c05424dab23bc65eb4c5753  bfd/elf-ifunc.c
 1c74bfe93f1fe779fe093320c36b4443  bfd/cpu-moxie.c
 6474afde93f8e964e3d6dddffde3c41e  bfd/ChangeLog-0001
-390127806fd49f3cbb7ad14ea2456202  bfd/rs6000-core.c
+1acae1a038a61e4486ec3f62e6d338fc  bfd/rs6000-core.c
 5bdcb0777ada79fecad6acd7f24e9623  bfd/cpu-m32c.c
 30bb118e27b056030ba33809380bd65b  bfd/cpu-rx.c
 0c2ce76ab285ecdbaeca2b307517268e  bfd/elfnn-aarch64.c
@@ -186,7 +186,7 @@ dd692bb9e8a6d38982c0cb78b8c14daa  bfd/elf-nacl.c
 b0682558ad69d3671cc55f83abebf32d  bfd/genlink.h
 25509065b1ee664694b3e5c37bb433e0  bfd/init.c
 61035a9ec1c8ace84fb7d95293f1437b  bfd/cpu-tilegx.c
-163620f024dd51b93258ffa380b67b11  bfd/ChangeLog
+557bd76544cc978b311ad2edf622385a  bfd/ChangeLog
 2260d5d5b17087621f4d22d664caca17  bfd/nlm-target.h
 2c65a22621d3101c1bd6b480a6987bb4  bfd/elf32-ppc.c
 a3d9b5e913108cded9ca9ccd0597756c  bfd/elf32-tilegx.c
@@ -195,7 +195,7 @@ bf0b3463ab0847d483c28446c7efea99  bfd/cpu-z8k.c
 140b65ea1bdd039c81067900b5124da8  bfd/elf32-pj.c
 325696a8a9e20f4bc7e62bd8bc702277  bfd/configure.com
 5cc2d4dfcaec81ddf7c88e00d48b7b01  bfd/elf32-xc16x.c
-0a020ae85f45619e7be78a32f07f13ff  bfd/bfd-in.h
+092dbbb4302cca17531be888d92813a8  bfd/bfd-in.h
 ea01dce96afa052c76fd823efca3f370  bfd/aout-target.h
 f7b33e7dcd153dc5e4a4905f65772e08  bfd/i386aout.c
 b00f7cb9262913124b87eee21a7532d1  bfd/elfxx-sparc.c
@@ -283,7 +283,7 @@ e3a11b8c38f8beb8cb380d2556b1fe88  bfd/nlm32-alpha.c
 e9765c7c89f2baeb3273a69fced434e1  bfd/linker.c
 c3e727bdfb7a73954c1f7ea914d5de0e  bfd/elf32-sh64-com.c
 546640a80c1b867a387381e1eee30607  bfd/cpu-iq2000.c
-b180737ba2abbeaae9d169a8fe4b9207  bfd/version.h
+a5e3c7e44ad41d94d9d4b942471925a5  bfd/version.h
 95d88c934f24ee90233fcbdc7fb43423  bfd/elf32-sh-symbian.c
 da142f9c2f88b9c7588bc32183dad968  bfd/elf-m10200.c
 fcf3f7fff3f72094447832681d4e23e3  bfd/elf64-tilegx.h
@@ -348,7 +348,7 @@ a9c5cd8e9c43829ec43055139e9684ed  bfd/coff-apollo.c
 80da78edc286647ccdfe7ac1beb7847f  bfd/cpu-alpha.c
 58a3fb1e054b540ef5c1329799b824bb  bfd/ChangeLog-2005
 93f032da48de60e018eddb5e7080efa4  bfd/elfxx-tilegx.h
-10804ec8277e65abd79022a18068f84a  bfd/bfd.c
+280dbf301cc98855cd36c878799a4584  bfd/bfd.c
 7bfeb177a026abccd2614544aea7bf69  bfd/cpu-cr16c.c
 d26a1e4adc9f59c9f83fd37a4dfcbb1e  bfd/cpu-aarch64.c
 e10350123329061cf3ae2dd4bacf141c  bfd/configure.host
@@ -362,7 +362,7 @@ d07092c82681bbe409474bac57f06843  bfd/config.bfd
 14daf53f44846e0adf24caa24bf52257  bfd/cpu-ns32k.c
 7944adcc0e356862a28598769de73fc4  bfd/cpu-tic54x.c
 546e2d7c5c9da674ed7600fa87823b1c  bfd/cpu-lm32.c
-bb3d6835e31501e321cd2d8bff767f6b  bfd/cache.c
+89cd43d235de68b8c6fc8af59a3e8586  bfd/cache.c
 7d0efdbb284f00939c3d7f6de24235da  bfd/coff-z8k.c
 973084456c9fa330b3b39bd3f1055ee4  bfd/cpu-xtensa.c
 b7cb85d00b253b2fe42cea4a8a7640f9  bfd/elf32-xtensa.c
@@ -385,15 +385,15 @@ e65fcc0e9242ddf2063b573b70bdddbd  bfd/nlm32-sparc.c
 d9f7fec3dee69a6c3084e6d4cfd88371  bfd/doc/cache.texi
 d7a37304ccd7b245f93df4be02797477  bfd/doc/proto.str
 5b09719958f9cc1430c13ac46f2339c9  bfd/doc/bfdint.texi
-4e7d1b90700096087c7f85f2b33467b0  bfd/doc/bfdt.texi
+73fb54bccbe394235ae4b770ad285169  bfd/doc/bfdt.texi
 87862cb3a4d559ae6f8837193037a762  bfd/doc/targets.texi
 58f9e78e71f2d034a79e172899e792f6  bfd/doc/mmo.texi
 2b2af4fc0532d1286cd9293d8bda2f1d  bfd/doc/syms.texi
 f2a35ae681f6ea06b3f73c7a23a28163  bfd/doc/chew.c
 65d07f43470f76ee35cc0104a40bba62  bfd/doc/bfd.texinfo
 71ed03090263856b9b82dcd682df2c19  bfd/doc/ChangeLog
-e11cfb66254ed5451e7edf713331747a  bfd/doc/bfdver.texi
-a376d2626be11d4e8aab25f553feca38  bfd/doc/bfd.info
+e756ddd0825dd68278c7887244f04d55  bfd/doc/bfdver.texi
+0fda17b5a30f020be4e6ec82c9454be6  bfd/doc/bfd.info
 072910d553f79906db69fa7c0e956bba  bfd/doc/fdl.texi
 7fd361850a5f96c0087b16241a4de6d5  bfd/doc/bfdsumm.texi
 51139f6af786e74446d01ec49807fc28  bfd/doc/elf.texi
@@ -407,7 +407,7 @@ d41d8cd98f00b204e9800998ecf8427e  bfd/doc/elfcode.texi
 6a1a507e85b4d8cee41c3defa9d24e6a  bfd/doc/opncls.texi
 7edf511939deb638e8291f264c4249e1  bfd/doc/bfdio.texi
 6f32bdfe0063cdb0c3aa73cceee3a1e1  bfd/doc/archive.texi
-04a07152780205865412e3ef222415f9  bfd/doc/section.texi
+caacf088de29d05e198c468432d127b2  bfd/doc/section.texi
 0fc22c68d543f8dc7cc4548a3fad3557  bfd/doc/libbfd.texi
 6dd9da257666139a061d6905349d9614  bfd/doc/core.texi
 8571ff0c1ad78f4460c4535fb10cac48  bfd/doc/Makefile.in
@@ -557,7 +557,7 @@ e84bc89f466a9d1d9299892dac70ddc6  bfd/elf32-bfin.c
 b02c183fdd2c8d15a1b6e6762e20e5fc  bfd/m68klinux.c
 f5b2082a5a1a29c38e706e3d9c0a8af7  bfd/coff-go32.c
 2cfd53095c676672fd9cfdf2d39f2f44  bfd/tekhex.c
-43005e7aab68c3a43d6ab84a4c28d989  bfd/bfd-in2.h
+e1375f1c96e996a5f55a238d7cf2e1ea  bfd/bfd-in2.h
 db369cf9b35a5d46abb160aa8bbf4145  bfd/elf32-tilepro.c
 8e875336f2874e801daca2e0ce78bb22  bfd/coff-sparc.c
 cf952c320bd31f09566ef5512192907b  bfd/pei-arm.c
@@ -755,7 +755,7 @@ c350827ae3cb69760e8e91598e8e6dc0  gdb/i386-nat.h
 50b03d22794b76df053667062b99bde2  gdb/sparc-sol2-nat.c
 354cbe95c70c88697011debe2d034fee  gdb/gnu-nat.h
 830a61a4b9cd4dfb089abc36c750cddf  gdb/serial.c
-7c0a7cecab6f5125ac995252aace9b33  gdb/infrun.c
+35aad96d79ff372b50874f5447312718  gdb/infrun.c
 dc95e9b0ddb41416d9fbb2273170e006  gdb/monitor.h
 ad19160e8dd67e397c3fca20ea8b3453  gdb/dwarf2read.c
 66060ebf32b75aeeccb9c06ce599d418  gdb/amd64fbsd-nat.c
@@ -803,7 +803,7 @@ b651746fdfc39f9356f5a8aab538dfea  gdb/block.h
 18cd6ab578028383eb92571228c8f8e6  gdb/python/py-cmd.c
 ead8e6cd55f833d428b68144ee3b11fc  gdb/python/py-function.c
 41dc73f87400ac722da4be9477d0eadc  gdb/python/py-continueevent.c
-4c7502726fa6b135b5371ed789b87e6f  gdb/python/py-linetable.c
+c7cf76d517bc002c26287acec489dd9a  gdb/python/py-linetable.c
 472a1ecd7064576ed64598fc22862a99  gdb/python/py-finishbreakpoint.c
 718a36b43700bdb4fb7fdc6dad35085d  gdb/python/py-inferior.c
 96a70fa36e8d872384482ac518e18720  gdb/python/py-evtregistry.c
@@ -873,7 +873,7 @@ ad75ddecfecb5a114e46d94f57eac7eb  gdb/configure
 31fe08c7e03330b571268f06ee54b1c4  gdb/coffread.c
 9e255ba94dc111fcc573af935b464f3e  gdb/arm-tdep.h
 ebf64a3f08d112ef607af758fa337854  gdb/inf-loop.c
-d7b51a602243b2186cc471f23f3caac5  gdb/auto-load.c
+013712a548f34099e9f5769e7ea5bbd2  gdb/auto-load.c
 fd7b0fb712258d1fa8589cc2dd421daf  gdb/ctf.h
 10899c020b94f342c87c1e5bec49b0c0  gdb/dummy-frame.c
 b8b7753728ac44d9e95d81953320efcf  gdb/inf-ptrace.c
@@ -990,7 +990,7 @@ ee7592884fd086ff43e7cf0b0298df73  gdb/proc-service.c
 9507570ff03c81cf48645d8b2b243192  gdb/vax-nat.c
 e9073adfe0140b34cb4ad424772e4fcc  gdb/score-tdep.c
 e7d4a4de7112cdafd14f2d2128719210  gdb/p-valprint.c
-0c6cb62bf04050897f9560f2a2cde2b0  gdb/MAINTAINERS
+95c6bdfd4fc27305edd46c80fc722301  gdb/MAINTAINERS
 6c8ce6d488761d95eb2fa10c35fa0d61  gdb/m68kbsd-nat.c
 4305d8cc143b2eb0968b392a9e6caf1f  gdb/alphabsd-nat.c
 7a7b0a6d875f1a5badebf85367b3fb24  gdb/sparc-ravenscar-thread.h
@@ -1016,7 +1016,7 @@ c4f27bf498495a200bdd82f356fb5e62  gdb/symtab.c
 8eff99035a942ae675cc6c7f3ac8d053  gdb/typeprint.c
 d67aa574e3ada6b61b701a51f0b049a5  gdb/bsd-kvm.c
 bd8640dd04668bbb178f2a2520cb9a4b  gdb/target-memory.c
-f3ba054c93dbc83a7186ba05390b5f12  gdb/avr-tdep.c
+55d21644100fcaa390e878eaec39a36f  gdb/avr-tdep.c
 32d6f9c8f9471270d10bbdd2645f0820  gdb/gcore.c
 16384fb34ba55b9955bb4ff9a396c8e0  gdb/features/mips64-cp0.xml
 e02f6dd77e5775afccf160656dddba41  gdb/features/arm-with-m-fpa-layout.xml
@@ -1264,7 +1264,7 @@ d46847539ab120d3a557e441f6069072  gdb/amd64obsd-tdep.c
 ca568d3af7d6ae508a2c0179ede9bbcf  gdb/gdb.h
 c8923a078f6531cbdd72d6d98a132d31  gdb/dfp.c
 7e2adc52e509bdae9d333f4782c23c2c  gdb/ppcobsd-tdep.c
-5a63a02d9580329864532c08f4c5d16c  gdb/po/gdb.pot
+9cbc57e424e9db9fa2ea095323137459  gdb/po/gdb.pot
 1851bff0653201a488dcae18dde7efad  gdb/po/gdbtext
 8e0007f6395e21d254d1ac539608c8f8  gdb/go-exp.c
 8b9b1aaa262d27476210b75f9c9b6cbb  gdb/dwarf2loc.c
@@ -1277,7 +1277,7 @@ afd520812ce095423aa9f55603b75fed  gdb/dink32-rom.c
 1e1c2c423f1413bf27e82eaac8cbecd3  gdb/inflow.c
 7e2616730c03776cf51b3a289782cc4b  gdb/i386-dicos-tdep.c
 32f5147fc89716698c88ccc74f5ae6fa  gdb/i386gnu-nat.c
-5592444ed03ba54f4c087fb6f5b4edc4  gdb/version.in
+9b61718a9b29c999d83042de4504ee06  gdb/version.in
 3a107fccd4ad682a20212c7c47817ab6  gdb/macrotab.h
 076f775ad2d40deda81f7be7da62ae76  gdb/posix-hdep.c
 ed3460c657770a83837a39f914a3c38b  gdb/solib-aix.h
@@ -1407,13 +1407,13 @@ ca585285eb7b591590c980ca5694ba0e  gdb/hppa-linux-nat.c
 efa1b8401486cc3519f688ebd1c89c0d  gdb/spu-tdep.h
 7901bae4507272bff063ad44a07ac721  gdb/dwarf2-frame.h
 ea70d216e42f194b910eb441f3fa5b72  gdb/amd64-sol2-tdep.c
-1e53627bae8bae2d7b496f41d50f5291  gdb/ChangeLog
+fb264e371df3f1c2fbf1b86dd30bf7b5  gdb/ChangeLog
 16dc208205d75892c640e632ff307ff0  gdb/arm-linux-nat.c
 404305970676c09e77dd7cb3b748566b  gdb/sparc-nat.h
 1ee1dc6fffdd147747fd45623bb35225  gdb/armnbsd-tdep.c
 5a59ca31efc91ff2fd45527fc90d0779  gdb/solib-spu.c
 e0eaf56005381b28e172ec7b1ad88497  gdb/cp-support.h
-9aad86371744732bb66f2c2004d538d7  gdb/windows-nat.c
+f16ee91360720cf7105cd5d83716ef4e  gdb/windows-nat.c
 9f1bdffe26dc71b3509bf069abcfc64b  gdb/main.c
 d52d6e6d5494cfd13854379f701dd9b5  gdb/nbsd-tdep.c
 710b368ba5c704a4c9b86d0212448c9d  gdb/linespec.c
@@ -1788,7 +1788,7 @@ ff865252591f37164ea594c888c17964  gdb/interps.c
 b5d5a9a42a0955ff4d97209a40a706bc  gdb/xstormy16-tdep.c
 e6d9d892be2b5c9950ce88a416d2b191  gdb/ser-unix.h
 cca59b1562e25e48063d9b9d15c8a0bb  gdb/jv-exp.c
-0293698c2f794fd8a7f9cab3290f19ed  gdb/dcache.c
+0e48f58b6f09b8e24c48683b75c5ddc4  gdb/dcache.c
 0233cc263565b923eeb92a4830942ce9  gdb/vax-tdep.c
 8767b1bd22d34c9f77e8a2ab83526ff6  gdb/ppc-sysv-tdep.c
 29d0cbde19dd75d8a06e93e53e15ed0c  gdb/completer.c
@@ -2856,7 +2856,7 @@ e4708e4b23e4e6ddd07c7245736d37b3  gdb/testsuite/config/h8300.exp
 1e63d632aebde719ad143f95a1613d44  gdb/testsuite/config/unix.exp
 50f6a13c0fd1efa871f0b7c0dc273e0d  gdb/testsuite/config/m32r-stub.exp
 fa9ec353aaf2a8f6ebaf916205906049  gdb/testsuite/config/default.exp
-6a07b6870f5f40abf4228540dab71132  gdb/testsuite/ChangeLog
+4b9d1ff654f8b7ed745816fe7d4d09c6  gdb/testsuite/ChangeLog
 3bf59fe4ee125fed62e361a4235f302d  gdb/testsuite/gdb.go/integers.go
 ea5ff936bcbd68cbc91cb8771230db91  gdb/testsuite/gdb.go/strings.go
 42285908fe9cffdad5e7e8c08d189f9e  gdb/testsuite/gdb.go/methods.exp
@@ -3433,6 +3433,7 @@ fe778e4ca9af81e067b376479c5f876d  gdb/testsuite/gdb.base/execd-prog.c
 9bb628d1233b58397949f35c005c7164  gdb/testsuite/gdb.base/random-signal.exp
 14ef835164b7090f513b27bc74a11cca  gdb/testsuite/gdb.base/disp-step-syscall.exp
 15b94a2810ce675f9e359a347b700382  gdb/testsuite/gdb.base/argv0-symlink.exp
+a1068c7fe8664cbe7fd82e3f011239c9  gdb/testsuite/gdb.base/auto-load.c
 55143311aaa933db91b23d2b9900c9e7  gdb/testsuite/gdb.base/annota3.c
 87cc97500a902f79ea1351f8bb0f7b47  gdb/testsuite/gdb.base/info-target.exp
 0cb031a7e7dc09f9db15197f07176655  gdb/testsuite/gdb.base/info-fun.exp
@@ -3508,6 +3509,7 @@ d299dd9a4cbedf5a92eada97f1d944c1  gdb/testsuite/gdb.base/solib-display-main.c
 3ed557fc791da5b82f32ee1d95f4a31c  gdb/testsuite/gdb.base/dump.exp
 a02acebb010a9aebf38dd1262c73e6fc  gdb/testsuite/gdb.base/ctxobj.exp
 810a04bc0c50752c6664032a6176ce6c  gdb/testsuite/gdb.base/info-shared-solib1.c
+f0401d4a401e48ecabc7716942278cc6  gdb/testsuite/gdb.base/auto-load-script
 bece708edda16f2794a94d57898b2da9  gdb/testsuite/gdb.base/commands.exp
 40ea0b637bee041d22c72ad5ce356d17  gdb/testsuite/gdb.base/attach2.c
 5c53217539317f767797f308fa2d2450  gdb/testsuite/gdb.base/print-file-var-lib2.c
@@ -3917,7 +3919,7 @@ ef8cdf869a09d1411c0be3d73841413e  gdb/testsuite/gdb.base/setshow.c
 820a7f175e6e83da237f87e2c5d74088  gdb/testsuite/gdb.base/break.exp
 b2ee495137691e70d3ad7c4aae6f2f22  gdb/testsuite/gdb.base/disasm-end-cu-1.c
 b4816e4b91e99aa3e905b5d44802e907  gdb/testsuite/gdb.base/spu.ld
-7be20c4b0c8c0e679fe4358e35e6b831  gdb/testsuite/gdb.base/breakpoint-shadow.exp
+e4a5459490946fb7a33114e06bc814bd  gdb/testsuite/gdb.base/breakpoint-shadow.exp
 0d6ef9d803f27a96e9756635d57c3939  gdb/testsuite/gdb.base/longest-types.c
 35ce0d1e8a6cc6a278649ec7464d8a1c  gdb/testsuite/gdb.base/d10vovly.c
 50d5cd12a173a5fbb0c89f3e1e4581d8  gdb/testsuite/gdb.base/gcore-relro.exp
@@ -3963,6 +3965,7 @@ ff8e162ed58d025c5e290a06c9aa30ab  gdb/testsuite/gdb.base/restore.exp
 51eb9b89892b516752e0aa20fd2e3818  gdb/testsuite/gdb.base/signull.exp
 6e8b1ebb505d77ac53cfaab60499a09d  gdb/testsuite/gdb.base/skip-solib-lib.c
 0dfb974a35473524ad9a4e81d1f319ad  gdb/testsuite/gdb.base/gnu_vector.c
+a06c8332ff4e84ff4c559c521adf8cce  gdb/testsuite/gdb.base/auto-load.exp
 8d3ddf4ea359b538d909ebda31f83b8f  gdb/testsuite/gdb.base/trace-commands.exp
 dc1c7b2d0d97de5e07f0046fca14d586  gdb/testsuite/gdb.base/macscp4.h
 91907e60647909daed2a097be0d47d27  gdb/testsuite/gdb.base/type-opaque-main.c
@@ -4365,12 +4368,14 @@ daba9799c8549458c9783ed546a03051  gdb/testsuite/gdb.threads/no-unwaited-for-left
 c5bd39c5b29f906164d3040f8e10a730  gdb/testsuite/gdb.threads/watchthreads2.exp
 1c7c3f475ff5763d3779825e29c8bcf3  gdb/testsuite/gdb.threads/manythreads.exp
 e706ebfe1b780e01050d61fb4fc654ef  gdb/testsuite/gdb.threads/print-threads.exp
+ec64e55141d583bd2b48cd9361bfde67  gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.exp
 d8f8b782a5bc6c1c8122861a1be9a062  gdb/testsuite/gdb.threads/corethreads.exp
 65afebe3bcb48182792b0c16b5796838  gdb/testsuite/gdb.threads/non-ldr-exc-3.exp
 a58389be21255b20dc2aa91107ae9520  gdb/testsuite/gdb.threads/create-fail.c
 dd7e048ba4d52b17979242914fa1312d  gdb/testsuite/gdb.threads/corethreads.c
 8fdd249775ceffe2b2bb9d1007db01e8  gdb/testsuite/gdb.threads/execl.exp
 7a2c4885bd5b64e65b71db9bf589ca1a  gdb/testsuite/gdb.threads/multi-create.exp
+3d62dbccacc2a334c6886ba79813d2f4  gdb/testsuite/gdb.threads/signal-while-stepping-over-bp-other-thread.c
 946d19bccefa54d0df3b39f74aadfd1d  gdb/testsuite/gdb.threads/ia64-sigill.exp
 63c9a72298d67e76ddc71e8a78ab3d68  gdb/testsuite/gdb.threads/watchpoint-fork.h
 c845000202b82a03c1626ae3b56d6869  gdb/testsuite/gdb.threads/bp_in_thread.exp
@@ -4498,31 +4503,31 @@ feb6b41b364f2afc2b8093d0ae2d4278  gdb/solib.c
 40d5a9165335a9512d647423ec4c4e1d  gdb/moxie-tdep.c
 5fc90173f374a3b462c578a5b6613e76  gdb/amd64-tdep.c
 e89051f69c9abf9baf2f9276fff8b109  gdb/macroexp.c
-5df4df15bf6f3765350c471a16f9a3c6  gdb/doc/gdbserver.1
+b1ce7438fd9dae4311d9a6f0dc7f7664  gdb/doc/gdbserver.1
 0a01a0d57ee6760b805e1e507efd14fa  gdb/doc/gdb.info-2
-528bcba85b53579e0c481261fca0f181  gdb/doc/gdb.info-5
+368a8e888d527af8f5699272de2a0701  gdb/doc/gdb.info-5
 9015134b8028aa4415bec5eea0c3d925  gdb/doc/gdb.info-4
 994065978669071f5e0a82de422596e2  gdb/doc/observer.texi
 e42729d6ac4bb241500d0e33d24a69a6  gdb/doc/ChangeLog
 d5d06eaf9b4d44aa442a4a281aa9aea4  gdb/doc/a4rc.sed
-6305d2ae333ae73be8bbc70b0684ea68  gdb/doc/gdb.info-1
+9d1ed6ad4db47804385626416051a652  gdb/doc/gdb.info-1
 8108dd8f906f2654fecc74958cf383db  gdb/doc/psrc.sed
 d39233c86ed6a6dc9e853ae6a11fe03e  gdb/doc/stack_frame.pdf
 8d169ff7e7d99dff9d951fa869f90fe2  gdb/doc/annotate.texinfo
 ab0fe311032294b952da80585b8b90e7  gdb/doc/fdl.texi
 6076d300a46651562d4ecd0604442414  gdb/doc/stack_frame.png
-0e266bd015d7c39f709fc33be3830d16  gdb/doc/gcore.1
+47beeaacf9f16d6196db50259be3f644  gdb/doc/gcore.1
 d18f5345c0efad2e1ea93d32fe5aa220  gdb/doc/agentexpr.texi
 73ec71cd3b2e7f61bc530f19d4b35056  gdb/doc/lpsrc.sed
 7bfdb0765c5d050d204fbb30aeeba0d8  gdb/doc/stack_frame.eps
 0e455dcf84caa950691bf7ba8c5741ad  gdb/doc/all-cfg.texi
 0ce6c0e21f178ab50efe511a07e2229a  gdb/doc/annotate.info
 d3beca78a6ced3dbd2ca6f00102f3e5d  gdb/doc/gdb.info-6
-9262fdfbfd4c525e4fa3fd38c2e6ec01  gdb/doc/gdb.1
-4aab686e0f1fc1d4534ec56ea1c71aed  gdb/doc/gdbinit.5
+8f718355f2f6a1b584ef12b5d2c74c3a  gdb/doc/gdb.1
+4e0a4d7bfd357690b82813d4c2ba04a9  gdb/doc/gdbinit.5
 bf96494e6e4d346175babd5ef9781882  gdb/doc/gpl.texi
 f44023a05ad33ffb8254965d32eef766  gdb/doc/refcard.tex
-f1cb6de90418ffafaa2516d10bece7a0  gdb/doc/gdb.info
+3e442f21b3e1c50b84c0138d500fbcbb  gdb/doc/gdb.info
 553b7fe1bf4b5d8b96fdb8cd83503de1  gdb/doc/stack_frame.svg
 f2037884ba0a0f4a8dd5363ccc973aca  gdb/doc/gdb.texinfo
 f2893d2988807ffbd3a87823b4b87f1a  gdb/doc/Makefile.in
@@ -4595,7 +4600,7 @@ ef7f67e5720cf7b193349f8687243947  gdb/stubs/m32r-stub.c
 5fae2f235bdac98328fc9da7a4b4b01d  gdb/stubs/ia64vms-stub.c
 ffc93e69a8813484cec63da022b68375  gdb/stubs/sh-stub.c
 d90ac312feb6560716bb616c2c770fb9  gdb/bsd-kvm.h
-9420b8f84d43efcd1a87d2a12b5e890f  gdb/dcache.h
+318722a7aee1f3fa64aac531eac284eb  gdb/dcache.h
 5cbff1f3c3de2abd63a44ab4e723f872  gdb/observer.c
 e46d3e5b47032cc9103b7f6c36d8d84e  gdb/amd64-nat.h
 d14e1f94693af6c18fff71dd48a0b56c  gdb/Makefile.in
@@ -4725,7 +4730,7 @@ c946d0b80d213a9eef7d2da1e16cc57b  gdb/bfin-tdep.c
 0632556e4e9f184017fb21ba04250eb9  gdb/memattr.c
 24b94c533f3b1df00748d6032d756533  gdb/inf-ttrace.h
 7d64d551fcf8b2be0064b79c5f749d98  gdb/disasm.c
-6ec7c7a0405aa83fbeefd3c894f9cf09  gdb/target.c
+b3c32081fbfec6e2084b530bdf2ab583  gdb/target.c
 614b080e900d72ffdd6b8d3d6a919067  gdb/demangle.c
 1ae3b001ce4665cfe6908c9511018626  gdb/linux-tdep.c
 0757bc6becdb634b53cb552121a33525  gdb/go-lang.c
diff --git a/readline/doc/history.3 b/readline/doc/history.3
deleted file mode 100644
index 4eb159c..0000000
--- a/readline/doc/history.3
+++ /dev/null
@@ -1,672 +0,0 @@
-.\"
-.\" MAN PAGE COMMENTS to
-.\"
-.\"	Chet Ramey
-.\"	Information Network Services
-.\"	Case Western Reserve University
-.\"	chet at ins.CWRU.Edu
-.\"
-.\"	Last Change: Thu Aug 12 22:24:41 EDT 2010
-.\"
-.TH HISTORY 3 "2010 August 12" "GNU History 6.2"
-.\"
-.\" File Name macro.  This used to be `.PN', for Path Name,
-.\" but Sun doesn't seem to like that very much.
-.\"
-.de FN
-\fI\|\\$1\|\fP
-..
-.ds lp \fR\|(\fP
-.ds rp \fR\|)\fP
-.\" FnN return-value fun-name N arguments
-.de Fn1
-\fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3\fP\\*(rp
-.br
-..
-.de Fn2
-.if t \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3,\|\\$4\fP\\*(rp
-.if n \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3, \\$4\fP\\*(rp
-.br
-..
-.de Fn3
-.if t \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3,\|\\$4,\|\\$5\fP\|\\*(rp
-.if n \fI\\$1\fP \fB\\$2\fP \\*(lp\fI\\$3, \\$4, \\$5\fP\\*(rp
-.br
-..
-.de Vb
-\fI\\$1\fP \fB\\$2\fP
-.br
-..
-.SH NAME
-history \- GNU History Library
-.SH COPYRIGHT
-.if t The GNU History Library is Copyright \(co 1989-2011 by the Free Software Foundation, Inc.
-.if n The GNU History Library is Copyright (C) 1989-2011 by the Free Software Foundation, Inc.
-.SH DESCRIPTION
-Many programs read input from the user a line at a time.  The GNU
-History library is able to keep track of those lines, associate arbitrary
-data with each line, and utilize information from previous lines in
-composing new ones. 
-.PP
-.SH "HISTORY EXPANSION"
-.PP
-The history library supports a history expansion feature that
-is identical to the history expansion in
-.BR bash.
-This section describes what syntax features are available.
-.PP
-History expansions introduce words from the history list into
-the input stream, making it easy to repeat commands, insert the
-arguments to a previous command into the current input line, or
-fix errors in previous commands quickly.
-.PP
-History expansion is usually performed immediately after a complete line
-is read.
-It takes place in two parts.
-The first is to determine which line from the history list
-to use during substitution.
-The second is to select portions of that line for inclusion into
-the current one.
-The line selected from the history is the \fIevent\fP,
-and the portions of that line that are acted upon are \fIwords\fP.
-Various \fImodifiers\fP are available to manipulate the selected words.
-The line is broken into words in the same fashion as \fBbash\fP
-does when reading input,
-so that several words that would otherwise be separated 
-are considered one word when surrounded by quotes (see the
-description of \fBhistory_tokenize()\fP below).
-History expansions are introduced by the appearance of the
-history expansion character, which is \^\fB!\fP\^ by default.
-Only backslash (\^\fB\e\fP\^) and single quotes can quote
-the history expansion character.
-.SS Event Designators
-.PP
-An event designator is a reference to a command line entry in the
-history list.
-Unless the reference is absolute, events are relative to the current
-position in the history list.
-.PP
-.PD 0
-.TP
-.B !
-Start a history substitution, except when followed by a
-.BR blank ,
-newline, = or (.
-.TP
-.B !\fIn\fR
-Refer to command line
-.IR n .
-.TP
-.B !\-\fIn\fR
-Refer to the current command minus
-.IR n .
-.TP
-.B !!
-Refer to the previous command.  This is a synonym for `!\-1'.
-.TP
-.B !\fIstring\fR
-Refer to the most recent command
-preceding the current position in the history list
-starting with
-.IR string .
-.TP
-.B !?\fIstring\fR\fB[?]\fR
-Refer to the most recent command
-preceding the current postition in the history list
-containing
-.IR string .
-The trailing \fB?\fP may be omitted if
-.I string
-is followed immediately by a newline.
-.TP
-.B \d\s+2^\s-2\u\fIstring1\fP\d\s+2^\s-2\u\fIstring2\fP\d\s+2^\s-2\u
-Quick substitution.  Repeat the last command, replacing
-.I string1
-with
-.IR string2 .
-Equivalent to
-``!!:s/\fIstring1\fP/\fIstring2\fP/''
-(see \fBModifiers\fP below).
-.TP
-.B !#
-The entire command line typed so far.
-.PD
-.SS Word Designators
-.PP
-Word designators are used to select desired words from the event.
-A 
-.B :
-separates the event specification from the word designator.
-It may be omitted if the word designator begins with a
-.BR ^ ,
-.BR $ ,
-.BR * ,
-.BR \- ,
-or
-.BR % .
-Words are numbered from the beginning of the line,
-with the first word being denoted by 0 (zero).
-Words are inserted into the current line separated by single spaces.
-.PP
-.PD 0
-.TP
-.B 0 (zero)
-The zeroth word.  For the shell, this is the command
-word.
-.TP
-.I n
-The \fIn\fRth word.
-.TP
-.B ^
-The first argument.  That is, word 1.
-.TP
-.B $
-The last argument.
-.TP
-.B %
-The word matched by the most recent `?\fIstring\fR?' search.
-.TP
-.I x\fB\-\fPy
-A range of words; `\-\fIy\fR' abbreviates `0\-\fIy\fR'.
-.TP
-.B *
-All of the words but the zeroth.  This is a synonym
-for `\fI1\-$\fP'.  It is not an error to use
-.B *
-if there is just one
-word in the event; the empty string is returned in that case.
-.TP
-.B x*
-Abbreviates \fIx\-$\fP.
-.TP
-.B x\-
-Abbreviates \fIx\-$\fP like \fBx*\fP, but omits the last word.
-.PD
-.PP
-If a word designator is supplied without an event specification, the
-previous command is used as the event.
-.SS Modifiers
-.PP
-After the optional word designator, there may appear a sequence of
-one or more of the following modifiers, each preceded by a `:'.
-.PP
-.PD 0
-.PP
-.TP
-.B h
-Remove a trailing file name component, leaving only the head.
-.TP
-.B t
-Remove all leading file name components, leaving the tail.
-.TP
-.B r
-Remove a trailing suffix of the form \fI.xxx\fP, leaving the
-basename.
-.TP
-.B e
-Remove all but the trailing suffix.
-.TP
-.B p
-Print the new command but do not execute it.
-.TP
-.B q
-Quote the substituted words, escaping further substitutions.
-.TP
-.B x
-Quote the substituted words as with
-.BR q ,
-but break into words at
-.B blanks
-and newlines.
-.TP
-.B s/\fIold\fP/\fInew\fP/
-Substitute
-.I new
-for the first occurrence of
-.I old
-in the event line.  Any delimiter can be used in place of /.  The
-final delimiter is optional if it is the last character of the
-event line.  The delimiter may be quoted in
-.I old
-and
-.I new
-with a single backslash.  If & appears in
-.IR new ,
-it is replaced by
-.IR old .
-A single backslash will quote the &.  If
-.I old
-is null, it is set to the last
-.I old
-substituted, or, if no previous history substitutions took place,
-the last
-.I string
-in a
-.B !?\fIstring\fR\fB[?]\fR
-search.
-.TP
-.B &
-Repeat the previous substitution.
-.TP
-.B g
-Cause changes to be applied over the entire event line.  This is
-used in conjunction with `\fB:s\fP' (e.g., `\fB:gs/\fIold\fP/\fInew\fP/\fR')
-or `\fB:&\fP'.  If used with
-`\fB:s\fP', any delimiter can be used
-in place of /, and the final delimiter is optional
-if it is the last character of the event line.
-An \fBa\fP may be used as a synonym for \fBg\fP.
-.TP
-.B G
-Apply the following `\fBs\fP' modifier once to each word in the event line.
-.PD
-.SH "PROGRAMMING WITH HISTORY FUNCTIONS"
-This section describes how to use the History library in other programs.
-.SS Introduction to History
-.PP
-The programmer using the History library has available functions
-for remembering lines on a history list, associating arbitrary data
-with a line, removing lines from the list, searching through the list
-for a line containing an arbitrary text string, and referencing any line
-in the list directly.  In addition, a history \fIexpansion\fP function
-is available which provides for a consistent user interface across
-different programs.
-.PP
-The user using programs written with the History library has the
-benefit of a consistent user interface with a set of well-known
-commands for manipulating the text of previous lines and using that text
-in new commands.  The basic history manipulation commands are
-identical to
-the history substitution provided by \fBbash\fP.
-.PP
-If the programmer desires, he can use the Readline library, which
-includes some history manipulation by default, and has the added
-advantage of command line editing.
-.PP
-Before declaring any functions using any functionality the History
-library provides in other code, an application writer should include
-the file
-.FN <readline/history.h>
-in any file that uses the
-History library's features.  It supplies extern declarations for all
-of the library's public functions and variables, and declares all of
-the public data structures.
-
-.SS History Storage
-.PP
-The history list is an array of history entries.  A history entry is
-declared as follows:
-.PP
-.Vb "typedef void *" histdata_t;
-.PP
-.nf
-typedef struct _hist_entry {
-  char *line;
-  char *timestamp;
-  histdata_t data;
-} HIST_ENTRY;
-.fi
-.PP
-The history list itself might therefore be declared as
-.PP
-.Vb "HIST_ENTRY **" the_history_list;
-.PP
-The state of the History library is encapsulated into a single structure:
-.PP
-.nf
-/*
- * A structure used to pass around the current state of the history.
- */
-typedef struct _hist_state {
-  HIST_ENTRY **entries; /* Pointer to the entries themselves. */
-  int offset;           /* The location pointer within this array. */
-  int length;           /* Number of elements within this array. */
-  int size;             /* Number of slots allocated to this array. */
-  int flags;
-} HISTORY_STATE;
-.fi
-.PP
-If the flags member includes \fBHS_STIFLED\fP, the history has been
-stifled.
-.SH "History Functions"
-.PP
-This section describes the calling sequence for the various functions
-exported by the GNU History library.
-.SS Initializing History and State Management
-This section describes functions used to initialize and manage
-the state of the History library when you want to use the history
-functions in your program.
-
-.Fn1 void using_history void
-Begin a session in which the history functions might be used.  This
-initializes the interactive variables.
-
-.Fn1 "HISTORY_STATE *" history_get_history_state void
-Return a structure describing the current state of the input history.
-
-.Fn1 void history_set_history_state "HISTORY_STATE *state"
-Set the state of the history list according to \fIstate\fP.
-
-.SS History List Management
-
-These functions manage individual entries on the history list, or set
-parameters managing the list itself.
-
-.Fn1 void add_history "const char *string"
-Place \fIstring\fP at the end of the history list.  The associated data
-field (if any) is set to \fBNULL\fP.
-
-.Fn1 void add_history_time "const char *string"
-Change the time stamp associated with the most recent history entry to
-\fIstring\fP.
-
-.Fn1 "HIST_ENTRY *" remove_history "int which"
-Remove history entry at offset \fIwhich\fP from the history.  The
-removed element is returned so you can free the line, data,
-and containing structure.
-
-.Fn1 "histdata_t" free_history_entry "HIST_ENTRY *histent"
-Free the history entry \fIhistent\fP and any history library private
-data associated with it.  Returns the application-specific data
-so the caller can dispose of it.
-
-.Fn3 "HIST_ENTRY *" replace_history_entry "int which" "const char *line" "histdata_t data"
-Make the history entry at offset \fIwhich\fP have \fIline\fP and \fIdata\fP.
-This returns the old entry so the caller can dispose of any
-application-specific data.  In the case
-of an invalid \fIwhich\fP, a \fBNULL\fP pointer is returned.
-
-.Fn1 void clear_history "void"
-Clear the history list by deleting all the entries.
-
-.Fn1 void stifle_history "int max"
-Stifle the history list, remembering only the last \fImax\fP entries.
-
-.Fn1 int unstifle_history "void"
-Stop stifling the history.  This returns the previously-set
-maximum number of history entries (as set by \fBstifle_history()\fP).
-history was stifled.  The value is positive if the history was
-stifled, negative if it wasn't.
-
-.Fn1 int history_is_stifled "void"
-Returns non-zero if the history is stifled, zero if it is not.
-
-.SS Information About the History List
-
-These functions return information about the entire history list or
-individual list entries.
-
-.Fn1 "HIST_ENTRY **" history_list "void"
-Return a \fBNULL\fP terminated array of \fIHIST_ENTRY *\fP which is the
-current input history.  Element 0 of this list is the beginning of time.
-If there is no history, return \fBNULL\fP.
-
-.Fn1 int where_history "void"
-Returns the offset of the current history element.
-
-.Fn1 "HIST_ENTRY *" current_history "void"
-Return the history entry at the current position, as determined by
-\fBwhere_history()\fP.  If there is no entry there, return a \fBNULL\fP
-pointer.
-
-.Fn1 "HIST_ENTRY *" history_get "int offset"
-Return the history entry at position \fIoffset\fP, starting from
-\fBhistory_base\fP.
-If there is no entry there, or if \fIoffset\fP
-is greater than the history length, return a \fBNULL\fP pointer.
-
-.Fn1 "time_t" history_get_time "HIST_ENTRY *"
-Return the time stamp associated with the history entry passed as the argument.
-
-.Fn1 int history_total_bytes "void"
-Return the number of bytes that the primary history entries are using.
-This function returns the sum of the lengths of all the lines in the
-history.
-
-.SS Moving Around the History List
-
-These functions allow the current index into the history list to be
-set or changed.
-
-.Fn1 int history_set_pos "int pos"
-Set the current history offset to \fIpos\fP, an absolute index
-into the list.
-Returns 1 on success, 0 if \fIpos\fP is less than zero or greater
-than the number of history entries.
-
-.Fn1 "HIST_ENTRY *" previous_history "void"
-Back up the current history offset to the previous history entry, and
-return a pointer to that entry.  If there is no previous entry, return
-a \fBNULL\fP pointer.
-
-.Fn1 "HIST_ENTRY *" next_history "void"
-Move the current history offset forward to the next history entry, and
-return the a pointer to that entry.  If there is no next entry, return
-a \fBNULL\fP pointer.
-
-.SS Searching the History List
-
-These functions allow searching of the history list for entries containing
-a specific string.  Searching may be performed both forward and backward
-from the current history position.  The search may be \fIanchored\fP,
-meaning that the string must match at the beginning of the history entry.
-
-.Fn2 int history_search "const char *string" "int direction"
-Search the history for \fIstring\fP, starting at the current history offset.
-If \fIdirection\fP is less than 0, then the search is through
-previous entries, otherwise through subsequent entries.
-If \fIstring\fP is found, then
-the current history index is set to that history entry, and the value
-returned is the offset in the line of the entry where
-\fIstring\fP was found.  Otherwise, nothing is changed, and a -1 is
-returned.
-
-.Fn2 int history_search_prefix "const char *string" "int direction"
-Search the history for \fIstring\fP, starting at the current history
-offset.  The search is anchored: matching lines must begin with
-\fIstring\fP.  If \fIdirection\fP is less than 0, then the search is
-through previous entries, otherwise through subsequent entries.
-If \fIstring\fP is found, then the
-current history index is set to that entry, and the return value is 0. 
-Otherwise, nothing is changed, and a -1 is returned. 
-
-.Fn3 int history_search_pos "const char *string" "int direction" "int pos"
-Search for \fIstring\fP in the history list, starting at \fIpos\fP, an
-absolute index into the list.  If \fIdirection\fP is negative, the search
-proceeds backward from \fIpos\fP, otherwise forward.  Returns the absolute
-index of the history element where \fIstring\fP was found, or -1 otherwise.
-
-.SS Managing the History File
-The History library can read the history from and write it to a file.
-This section documents the functions for managing a history file.
-
-.Fn1 int read_history "const char *filename"
-Add the contents of \fIfilename\fP to the history list, a line at a time.
-If \fIfilename\fP is \fBNULL\fP, then read from \fI~/.history\fP.
-Returns 0 if successful, or \fBerrno\fP if not.
-
-.Fn3 int read_history_range "const char *filename" "int from" "int to"
-Read a range of lines from \fIfilename\fP, adding them to the history list.
-Start reading at line \fIfrom\fP and end at \fIto\fP.
-If \fIfrom\fP is zero, start at the beginning.  If \fIto\fP is less than
-\fIfrom\fP, then read until the end of the file.  If \fIfilename\fP is
-\fBNULL\fP, then read from \fI~/.history\fP.  Returns 0 if successful,
-or \fBerrno\fP if not.
-
-.Fn1 int write_history "const char *filename"
-Write the current history to \fIfilename\fP, overwriting \fIfilename\fP
-if necessary.
-If \fIfilename\fP is \fBNULL\fP, then write the history list to \fI~/.history\fP.
-Returns 0 on success, or \fBerrno\fP on a read or write error.
-
-
-.Fn2 int append_history "int nelements" "const char *filename"
-Append the last \fInelements\fP of the history list to \fIfilename\fP.
-If \fIfilename\fP is \fBNULL\fP, then append to \fI~/.history\fP.
-Returns 0 on success, or \fBerrno\fP on a read or write error.
-
-.Fn2 int history_truncate_file "const char *filename" "int nlines"
-Truncate the history file \fIfilename\fP, leaving only the last
-\fInlines\fP lines.
-If \fIfilename\fP is \fBNULL\fP, then \fI~/.history\fP is truncated.
-Returns 0 on success, or \fBerrno\fP on failure.
-
-.SS History Expansion
-
-These functions implement history expansion.
-
-.Fn2 int history_expand "char *string" "char **output"
-Expand \fIstring\fP, placing the result into \fIoutput\fP, a pointer
-to a string.  Returns:
-.RS
-.PD 0
-.TP
-0
-If no expansions took place (or, if the only change in
-the text was the removal of escape characters preceding the history expansion
-character);
-.TP
-1
-if expansions did take place;
-.TP
--1
-if there was an error in expansion;
-.TP
-2
-if the returned line should be displayed, but not executed,
-as with the \fB:p\fP modifier.
-.PD
-.RE
-If an error ocurred in expansion, then \fIoutput\fP contains a descriptive
-error message.
-
-.Fn3 "char *" get_history_event "const char *string" "int *cindex" "int qchar"
-Returns the text of the history event beginning at \fIstring\fP +
-\fI*cindex\fP.  \fI*cindex\fP is modified to point to after the event
-specifier.  At function entry, \fIcindex\fP points to the index into
-\fIstring\fP where the history event specification begins.  \fIqchar\fP
-is a character that is allowed to end the event specification in addition
-to the ``normal'' terminating characters.
-
-.Fn1 "char **" history_tokenize "const char *string"
-Return an array of tokens parsed out of \fIstring\fP, much as the
-shell might.
-The tokens are split on the characters in the
-\fBhistory_word_delimiters\fP variable,
-and shell quoting conventions are obeyed.
-
-.Fn3 "char *" history_arg_extract "int first" "int last" "const char *string"
-Extract a string segment consisting of the \fIfirst\fP through \fIlast\fP
-arguments present in \fIstring\fP.  Arguments are split using
-\fBhistory_tokenize()\fP.
-
-.SS History Variables
-
-This section describes the externally-visible variables exported by
-the GNU History Library.
-
-.Vb int history_base
-The logical offset of the first entry in the history list.
-
-.Vb int history_length
-The number of entries currently stored in the history list.
-
-.Vb int history_max_entries
-The maximum number of history entries.  This must be changed using
-\fBstifle_history()\fP.
-
-.Vb int history_wite_timestamps
-If non-zero, timestamps are written to the history file, so they can be
-preserved between sessions.  The default value is 0, meaning that
-timestamps are not saved.
-The current timestamp format uses the value of \fIhistory_comment_char\fP
-to delimit timestamp entries in the history file.  If that variable does
-not have a value (the default), timestamps will not be written.
-
-.Vb char history_expansion_char
-The character that introduces a history event.  The default is \fB!\fP.
-Setting this to 0 inhibits history expansion.
-
-.Vb char history_subst_char
-The character that invokes word substitution if found at the start of
-a line.  The default is \fB^\fP.
-
-.Vb char history_comment_char
-During tokenization, if this character is seen as the first character
-of a word, then it and all subsequent characters up to a newline are
-ignored, suppressing history expansion for the remainder of the line.
-This is disabled by default.
-
-.Vb "char *" history_word_delimiters
-The characters that separate tokens for \fBhistory_tokenize()\fP.
-The default value is \fB"\ \et\en()<>;&|"\fP.
-
-.Vb "char *" history_no_expand_chars
-The list of characters which inhibit history expansion if found immediately
-following \fBhistory_expansion_char\fP.  The default is space, tab, newline,
-\fB\er\fP, and \fB=\fP.
-
-.Vb "char *" history_search_delimiter_chars
-The list of additional characters which can delimit a history search
-string, in addition to space, tab, \fI:\fP and \fI?\fP in the case of
-a substring search.  The default is empty.
-
-.Vb int history_quotes_inhibit_expansion
-If non-zero, single-quoted words are not scanned for the history expansion
-character.  The default value is 0.
-
-.Vb "rl_linebuf_func_t *" history_inhibit_expansion_function
-This should be set to the address of a function that takes two arguments:
-a \fBchar *\fP (\fIstring\fP)
-and an \fBint\fP index into that string (\fIi\fP).
-It should return a non-zero value if the history expansion starting at
-\fIstring[i]\fP should not be performed; zero if the expansion should
-be done.
-It is intended for use by applications like \fBbash\fP that use the history
-expansion character for additional purposes.
-By default, this variable is set to \fBNULL\fP.
-.SH FILES
-.PD 0 
-.TP
-.FN ~/.history
-Default filename for reading and writing saved history
-.PD
-.SH "SEE ALSO"
-.PD 0
-.TP
-\fIThe Gnu Readline Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIThe Gnu History Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIbash\fP(1)
-.TP
-\fIreadline\fP(3)
-.PD
-.SH AUTHORS
-Brian Fox, Free Software Foundation
-.br
-bfox at gnu.org
-.PP
-Chet Ramey, Case Western Reserve University
-.br
-chet at ins.CWRU.Edu
-.SH BUG REPORTS
-If you find a bug in the
-.B history
-library, you should report it.  But first, you should
-make sure that it really is a bug, and that it appears in the latest
-version of the
-.B history
-library that you have.
-.PP
-Once you have determined that a bug actually exists, mail a
-bug report to \fIbug\-readline\fP@\fIgnu.org\fP.
-If you have a fix, you are welcome to mail that
-as well!  Suggestions and `philosophical' bug reports may be mailed
-to \fPbug-readline\fP@\fIgnu.org\fP or posted to the Usenet
-newsgroup
-.BR gnu.bash.bug .
-.PP
-Comments and bug reports concerning
-this manual page should be directed to
-.IR chet at ins.CWRU.Edu .
diff --git a/readline/doc/readline.3 b/readline/doc/readline.3
deleted file mode 100644
index f79f4bb..0000000
--- a/readline/doc/readline.3
+++ /dev/null
@@ -1,1381 +0,0 @@
-.\"
-.\" MAN PAGE COMMENTS to
-.\"
-.\"	Chet Ramey
-.\"	Information Network Services
-.\"	Case Western Reserve University
-.\"	chet at ins.CWRU.Edu
-.\"
-.\"	Last Change: Sat Aug 28 18:56:32 EDT 2010
-.\"
-.TH READLINE 3 "2010 August 28" "GNU Readline 6.2"
-.\"
-.\" File Name macro.  This used to be `.PN', for Path Name,
-.\" but Sun doesn't seem to like that very much.
-.\"
-.de FN
-\fI\|\\$1\|\fP
-..
-.SH NAME
-readline \- get a line from a user with editing
-.SH SYNOPSIS
-.LP
-.nf
-.ft B
-#include <stdio.h>
-#include <readline/readline.h>
-#include <readline/history.h>
-.ft
-.fi
-.LP
-.nf
-\fIchar *\fP
-.br
-\fBreadline\fP (\fIconst char *prompt\fP);
-.fi
-.SH COPYRIGHT
-.if n Readline is Copyright (C) 1989\-2011 Free Software Foundation,  Inc.
-.if t Readline is Copyright \(co 1989\-2011 Free Software Foundation, Inc.
-.SH DESCRIPTION
-.LP
-.B readline
-will read a line from the terminal
-and return it, using
-.B prompt
-as a prompt.  If 
-.B prompt
-is \fBNULL\fP or the empty string, no prompt is issued.
-The line returned is allocated with
-.IR malloc (3);
-the caller must free it when finished.  The line returned
-has the final newline removed, so only the text of the line
-remains.
-.LP
-.B readline
-offers editing capabilities while the user is entering the
-line.
-By default, the line editing commands
-are similar to those of emacs.
-A vi\-style line editing interface is also available.
-.LP
-This manual page describes only the most basic use of \fBreadline\fP.
-Much more functionality is available; see
-\fIThe GNU Readline Library\fP and \fIThe GNU History Library\fP
-for additional information.
-.SH RETURN VALUE
-.LP
-.B readline
-returns the text of the line read.  A blank line
-returns the empty string.  If
-.B EOF
-is encountered while reading a line, and the line is empty,
-.B NULL
-is returned.  If an
-.B EOF
-is read with a non\-empty line, it is
-treated as a newline.
-.SH NOTATION
-.LP
-An Emacs-style notation is used to denote
-keystrokes.  Control keys are denoted by C\-\fIkey\fR, e.g., C\-n
-means Control\-N.  Similarly, 
-.I meta
-keys are denoted by M\-\fIkey\fR, so M\-x means Meta\-X.  (On keyboards
-without a 
-.I meta
-key, M\-\fIx\fP means ESC \fIx\fP, i.e., press the Escape key
-then the
-.I x
-key.  This makes ESC the \fImeta prefix\fP.
-The combination M\-C\-\fIx\fP means ESC\-Control\-\fIx\fP,
-or press the Escape key
-then hold the Control key while pressing the
-.I x
-key.)
-.PP
-Readline commands may be given numeric
-.IR arguments ,
-which normally act as a repeat count.  Sometimes, however, it is the
-sign of the argument that is significant.  Passing a negative argument
-to a command that acts in the forward direction (e.g., \fBkill\-line\fP)
-causes that command to act in a backward direction.  Commands whose
-behavior with arguments deviates from this are noted.
-.PP
-When a command is described as \fIkilling\fP text, the text
-deleted is saved for possible future retrieval
-(\fIyanking\fP).  The killed text is saved in a
-\fIkill ring\fP.  Consecutive kills cause the text to be
-accumulated into one unit, which can be yanked all at once. 
-Commands which do not kill text separate the chunks of text
-on the kill ring.
-.SH INITIALIZATION FILE
-.LP
-Readline is customized by putting commands in an initialization
-file (the \fIinputrc\fP file).
-The name of this file is taken from the value of the
-.B INPUTRC
-environment variable.  If that variable is unset, the default is
-.IR ~/.inputrc .
-If that file  does not exist or cannot be read, the ultimate default is
-.IR /etc/inputrc .
-When a program which uses the readline library starts up, the
-init file is read, and the key bindings and variables are set.
-There are only a few basic constructs allowed in the
-readline init file.  Blank lines are ignored.
-Lines beginning with a \fB#\fP are comments.
-Lines beginning with a \fB$\fP indicate conditional constructs.
-Other lines denote key bindings and variable settings.
-Each program using this library may add its own commands
-and bindings.
-.PP
-For example, placing
-.RS
-.PP
-M\-Control\-u: universal\-argument
-.RE
-or
-.RS
-C\-Meta\-u: universal\-argument
-.RE
-.sp
-into the 
-.I inputrc
-would make M\-C\-u execute the readline command
-.IR universal\-argument .
-.PP
-The following symbolic character names are recognized while
-processing key bindings:
-.IR DEL ,
-.IR ESC ,
-.IR ESCAPE ,
-.IR LFD ,
-.IR NEWLINE ,
-.IR RET ,
-.IR RETURN ,
-.IR RUBOUT ,
-.IR SPACE ,
-.IR SPC ,
-and
-.IR TAB .
-.PP
-In addition to command names, readline allows keys to be bound
-to a string that is inserted when the key is pressed (a \fImacro\fP).
-.PP
-.SS Key Bindings
-.PP
-The syntax for controlling key bindings in the
-.I inputrc
-file is simple.  All that is required is the name of the
-command or the text of a macro and a key sequence to which
-it should be bound. The name may be specified in one of two ways:
-as a symbolic key name, possibly with \fIMeta\-\fP or \fIControl\-\fP
-prefixes, or as a key sequence.
-The name and key sequence are separated by a colon.  There can be no
-whitespace between the name and the colon.
-.PP
-When using the form \fBkeyname\fP:\^\fIfunction-name\fP or \fImacro\fP,
-.I keyname
-is the name of a key spelled out in English.  For example:
-.sp
-.RS
-Control\-u: universal\-argument
-.br
-Meta\-Rubout: backward\-kill\-word
-.br
-Control\-o: "> output"
-.RE
-.LP
-In the above example,
-.I C\-u
-is bound to the function
-.BR universal\-argument ,
-.I M-DEL
-is bound to the function
-.BR backward\-kill\-word ,
-and
-.I C\-o
-is bound to run the macro
-expressed on the right hand side (that is, to insert the text
-.if t \f(CW> output\fP
-.if n ``> output''
-into the line).
-.PP
-In the second form, \fB"keyseq"\fP:\^\fIfunction\-name\fP or \fImacro\fP,
-.B keyseq
-differs from
-.B keyname
-above in that strings denoting
-an entire key sequence may be specified by placing the sequence
-within double quotes.  Some GNU Emacs style key escapes can be
-used, as in the following example, but the symbolic character names
-are not recognized.
-.sp
-.RS
-"\eC\-u": universal\-argument
-.br
-"\eC\-x\eC\-r": re\-read\-init\-file
-.br
-"\ee[11~": "Function Key 1"
-.RE
-.PP
-In this example,
-.I C-u
-is again bound to the function
-.BR universal\-argument .
-.I "C-x C-r"
-is bound to the function
-.BR re\-read\-init\-file ,
-and 
-.I "ESC [ 1 1 ~"
-is bound to insert the text
-.if t \f(CWFunction Key 1\fP.
-.if n ``Function Key 1''.
-.PP
-The full set of GNU Emacs style escape sequences available when specifying
-key sequences is
-.RS
-.PD 0
-.TP
-.B \eC\-
-control prefix
-.TP
-.B \eM\-
-meta prefix
-.TP
-.B \ee
-an escape character
-.TP
-.B \e\e
-backslash
-.TP
-.B \e"
-literal ", a double quote
-.TP
-.B \e'
-literal ', a single quote
-.RE
-.PD
-.PP
-In addition to the GNU Emacs style escape sequences, a second
-set of backslash escapes is available:
-.RS
-.PD 0
-.TP
-.B \ea
-alert (bell)
-.TP
-.B \eb
-backspace
-.TP
-.B \ed
-delete
-.TP
-.B \ef
-form feed
-.TP
-.B \en
-newline
-.TP
-.B \er
-carriage return
-.TP
-.B \et
-horizontal tab
-.TP
-.B \ev
-vertical tab
-.TP
-.B \e\fInnn\fP
-the eight-bit character whose value is the octal value \fInnn\fP
-(one to three digits)
-.TP
-.B \ex\fIHH\fP
-the eight-bit character whose value is the hexadecimal value \fIHH\fP
-(one or two hex digits)
-.RE
-.PD
-.PP
-When entering the text of a macro, single or double quotes should
-be used to indicate a macro definition.  Unquoted text
-is assumed to be a function name.
-In the macro body, the backslash escapes described above are expanded.
-Backslash will quote any other character in the macro text,
-including " and '.
-.PP
-.B Bash
-allows the current readline key bindings to be displayed or modified
-with the
-.B bind
-builtin command.  The editing mode may be switched during interactive
-use by using the
-.B \-o
-option to the
-.B set
-builtin command.  Other programs using this library provide
-similar mechanisms.  The
-.I inputrc
-file may be edited and re-read if a program does not provide
-any other means to incorporate new bindings.
-.SS Variables
-.PP
-Readline has variables that can be used to further customize its
-behavior.  A variable may be set in the
-.I inputrc
-file with a statement of the form
-.RS
-.PP
-\fBset\fP \fIvariable\-name\fP \fIvalue\fP
-.RE
-.PP
-Except where noted, readline variables can take the values
-.B On
-or
-.B Off
-(without regard to case).
-Unrecognized variable names are ignored.
-When a variable value is read, empty or null values, "on" (case-insensitive),
-and "1" are equivalent to \fBOn\fP.  All other values are equivalent to
-\fBOff\fP.
-The variables and their default values are:
-.PP
-.PD 0
-.TP
-.B bell\-style (audible)
-Controls what happens when readline wants to ring the terminal bell.
-If set to \fBnone\fP, readline never rings the bell.  If set to
-\fBvisible\fP, readline uses a visible bell if one is available.
-If set to \fBaudible\fP, readline attempts to ring the terminal's bell.
-.TP
-.B bind\-tty\-special\-chars (On)
-If set to \fBOn\fP, readline attempts to bind the control characters  
-treated specially by the kernel's terminal driver to their readline
-equivalents.
-.TP
-.B comment\-begin (``#'')
-The string that is inserted in \fBvi\fP mode when the
-.B insert\-comment
-command is executed.
-This command is bound to
-.B M\-#
-in emacs mode and to
-.B #
-in vi command mode.
-.TP
-.B completion\-display\-width (-1)
-The number of screen columns used to display possible matches
-when performing completion.
-The value is ignored if it is less than 0 or greater than the terminal
-screen width.
-A value of 0 will cause matches to be displayed one per line.
-The default value is -1.
-.TP 
-.B completion\-ignore\-case (Off)
-If set to \fBOn\fP, readline performs filename matching and completion
-in a case\-insensitive fashion.
-.TP
-.B completion\-map\-case (Off)
-If set to \fBOn\fP, and \fBcompletion\-ignore\-case\fP is enabled, readline
-treats hyphens (\fI\-\fP) and underscores (\fI_\fP) as equivalent when
-performing case\-insensitive filename matching and completion.
-.TP
-.B completion\-prefix\-display\-length (0)
-The length in characters of the common prefix of a list of possible
-completions that is displayed without modification.  When set to a
-value greater than zero, common prefixes longer than this value are
-replaced with an ellipsis when displaying possible completions.
-.TP
-.B completion\-query\-items (100)
-This determines when the user is queried about viewing
-the number of possible completions
-generated by the \fBpossible\-completions\fP command.
-It may be set to any integer value greater than or equal to
-zero.  If the number of possible completions is greater than
-or equal to the value of this variable, the user is asked whether
-or not he wishes to view them; otherwise they are simply listed
-on the terminal.  A negative value causes readline to never ask.
-.TP
-.B convert\-meta (On)
-If set to \fBOn\fP, readline will convert characters with the
-eighth bit set to an ASCII key sequence
-by stripping the eighth bit and prefixing it with an
-escape character (in effect, using escape as the \fImeta prefix\fP).
-.TP
-.B disable\-completion (Off)
-If set to \fBOn\fP, readline will inhibit word completion.  Completion 
-characters will be inserted into the line as if they had been
-mapped to \fBself-insert\fP.
-.TP
-.B editing\-mode (emacs)
-Controls whether readline begins with a set of key bindings similar
-to \fIEmacs\fP or \fIvi\fP.
-.B editing\-mode
-can be set to either
-.B emacs
-or
-.BR vi .
-.TP
-.B echo\-control\-characters (On)
-When set to \fBOn\fP, on operating systems that indicate they support it,
-readline echoes a character corresponding to a signal generated from the
-keyboard.
-.TP
-.B enable\-keypad (Off)
-When set to \fBOn\fP, readline will try to enable the application
-keypad when it is called.  Some systems need this to enable the
-arrow keys.
-.TP
-.B enable\-meta\-key (On)
-When set to \fBOn\fP, readline will try to enable any meta modifier
-key the terminal claims to support when it is called.  On many terminals,
-the meta key is used to send eight-bit characters.
-.TP
-.B expand\-tilde (Off)
-If set to \fBOn\fP, tilde expansion is performed when readline
-attempts word completion.
-.TP
-.B history\-preserve\-point (Off)
-If set to \fBOn\fP, the history code attempts to place point at the 
-same location on each history line retrieved with \fBprevious-history\fP 
-or \fBnext-history\fP.
-.TP
-.B history\-size (0)
-Set the maximum number of history entries saved in the history list.  If
-set to zero, the number of entries in the history list is not limited.
-.TP
-.B horizontal\-scroll\-mode (Off)
-When set to \fBOn\fP, makes readline use a single line for display,
-scrolling the input horizontally on a single screen line when it
-becomes longer than the screen width rather than wrapping to a new line.
-.TP
-.B input\-meta (Off)
-If set to \fBOn\fP, readline will enable eight-bit input (that is,
-it will not clear the eighth bit in the characters it reads),
-regardless of what the terminal claims it can support.  The name
-.B meta\-flag
-is a synonym for this variable.
-.TP
-.B isearch\-terminators (``C\-[ C\-J'')
-The string of characters that should terminate an incremental
-search without subsequently executing the character as a command.
-If this variable has not been given a value, the characters
-\fIESC\fP and \fIC\-J\fP will terminate an incremental search.
-.TP
-.B keymap (emacs)
-Set the current readline keymap.  The set of legal keymap names is
-\fIemacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,
-vi-command\fP, and
-.IR vi-insert .
-\fIvi\fP is equivalent to \fIvi-command\fP; \fIemacs\fP is
-equivalent to \fIemacs-standard\fP.  The default value is
-.IR emacs .
-The value of
-.B editing\-mode
-also affects the default keymap.
-.TP
-.B mark\-directories (On)
-If set to \fBOn\fP, completed directory names have a slash
-appended.
-.TP
-.B mark\-modified\-lines (Off)
-If set to \fBOn\fP, history lines that have been modified are displayed
-with a preceding asterisk (\fB*\fP).
-.TP
-.B mark\-symlinked\-directories (Off)
-If set to \fBOn\fP, completed names which are symbolic links to directories
-have a slash appended (subject to the value of
-\fBmark\-directories\fP).
-.TP
-.B match\-hidden\-files (On)
-This variable, when set to \fBOn\fP, causes readline to match files whose 
-names begin with a `.' (hidden files) when performing filename     
-completion.
-If set to \fBOff\fP, the leading `.' must be
-supplied by the user in the filename to be completed.
-.TP
-.B menu\-complete\-display\-prefix (Off)
-If set to \fBOn\fP, menu completion displays the common prefix of the
-list of possible completions (which may be empty) before cycling through
-the list.
-.TP
-.B output\-meta (Off)
-If set to \fBOn\fP, readline will display characters with the
-eighth bit set directly rather than as a meta-prefixed escape
-sequence.
-.TP
-.B page\-completions (On)
-If set to \fBOn\fP, readline uses an internal \fImore\fP-like pager
-to display a screenful of possible completions at a time.
-.TP
-.B print\-completions\-horizontally (Off)
-If set to \fBOn\fP, readline will display completions with matches
-sorted horizontally in alphabetical order, rather than down the screen.
-.TP
-.B revert\-all\-at\-newline (Off)
-If set to \fBOn\fP, readline will undo all changes to history lines
-before returning when \fBaccept\-line\fP is executed.  By default,
-history lines may be modified and retain individual undo lists across
-calls to \fBreadline\fP.
-.TP
-.B show\-all\-if\-ambiguous (Off)
-This alters the default behavior of the completion functions.  If
-set to
-.BR On ,
-words which have more than one possible completion cause the
-matches to be listed immediately instead of ringing the bell.
-.TP
-.B show\-all\-if\-unmodified (Off)
-This alters the default behavior of the completion functions in
-a fashion similar to \fBshow\-all\-if\-ambiguous\fP.
-If set to
-.BR On , 
-words which have more than one possible completion without any
-possible partial completion (the possible completions don't share 
-a common prefix) cause the matches to be listed immediately instead
-of ringing the bell.
-.TP
-.B skip\-completed\-text (Off)
-If set to \fBOn\fP, this alters the default completion behavior when
-inserting a single match into the line.  It's only active when
-performing completion in the middle of a word.  If enabled, readline
-does not insert characters from the completion that match characters
-after point in the word being completed, so portions of the word
-following the cursor are not duplicated.
-.TP
-.B visible\-stats (Off)
-If set to \fBOn\fP, a character denoting a file's type as reported  
-by \fIstat\fP(2) is appended to the filename when listing possible
-completions.
-.PD
-.SS Conditional Constructs
-.PP
-Readline implements a facility similar in spirit to the conditional
-compilation features of the C preprocessor which allows key
-bindings and variable settings to be performed as the result
-of tests.  There are four parser directives used.
-.IP \fB$if\fP
-The 
-.B $if
-construct allows bindings to be made based on the
-editing mode, the terminal being used, or the application using
-readline.  The text of the test extends to the end of the line;
-no characters are required to isolate it.
-.RS
-.IP \fBmode\fP
-The \fBmode=\fP form of the \fB$if\fP directive is used to test
-whether readline is in emacs or vi mode.
-This may be used in conjunction
-with the \fBset keymap\fP command, for instance, to set bindings in
-the \fIemacs-standard\fP and \fIemacs-ctlx\fP keymaps only if
-readline is starting out in emacs mode.
-.IP \fBterm\fP
-The \fBterm=\fP form may be used to include terminal-specific
-key bindings, perhaps to bind the key sequences output by the
-terminal's function keys.  The word on the right side of the
-.B =
-is tested against the full name of the terminal and the portion
-of the terminal name before the first \fB\-\fP.  This allows
-.I sun
-to match both
-.I sun
-and
-.IR sun\-cmd ,
-for instance.
-.IP \fBapplication\fP
-The \fBapplication\fP construct is used to include
-application-specific settings.  Each program using the readline
-library sets the \fIapplication name\fP, and an initialization
-file can test for a particular value.
-This could be used to bind key sequences to functions useful for
-a specific program.  For instance, the following command adds a
-key sequence that quotes the current or previous word in \fBbash\fP:
-.sp 1
-.RS
-.nf
-\fB$if\fP Bash
-# Quote the current or previous word
-"\eC-xq": "\eeb\e"\eef\e""
-\fB$endif\fP
-.fi
-.RE
-.RE
-.IP \fB$endif\fP
-This command, as seen in the previous example, terminates an
-\fB$if\fP command.
-.IP \fB$else\fP
-Commands in this branch of the \fB$if\fP directive are executed if
-the test fails.
-.IP \fB$include\fP
-This directive takes a single filename as an argument and reads commands
-and bindings from that file.  For example, the following directive
-would read \fI/etc/inputrc\fP:
-.sp 1
-.RS
-.nf
-\fB$include\fP \^ \fI/etc/inputrc\fP
-.fi 
-.RE
-.SH SEARCHING
-.PP
-Readline provides commands for searching through the command history
-for lines containing a specified string.
-There are two search modes:
-.I incremental
-and
-.IR non-incremental .
-.PP
-Incremental searches begin before the user has finished typing the
-search string.
-As each character of the search string is typed, readline displays
-the next entry from the history matching the string typed so far.
-An incremental search requires only as many characters as needed to
-find the desired history entry.
-To search backward in the history for a particular string, type
-\fBC\-r\fP.  Typing \fBC\-s\fP searches forward through the history.
-The characters present in the value of the \fBisearch-terminators\fP
-variable are used to terminate an incremental search.
-If that variable has not been assigned a value the \fIEscape\fP and
-\fBC\-J\fP characters will terminate an incremental search.
-\fBC\-G\fP will abort an incremental search and restore the original
-line.
-When the search is terminated, the history entry containing the
-search string becomes the current line.
-.PP
-To find other matching entries in the history list, type \fBC\-s\fP or
-\fBC\-r\fP as appropriate.
-This will search backward or forward in the history for the next
-line matching the search string typed so far.
-Any other key sequence bound to a readline command will terminate
-the search and execute that command.
-For instance, a newline will terminate the search and accept
-the line, thereby executing the command from the history list.
-A movement command will terminate the search, make the last line found
-the current line, and begin editing.
-.PP
-Non-incremental searches read the entire search string before starting
-to search for matching history lines.  The search string may be
-typed by the user or be part of the contents of the current line.
-.SH EDITING COMMANDS
-.PP
-The following is a list of the names of the commands and the default
-key sequences to which they are bound.
-Command names without an accompanying key sequence are unbound by default.
-.PP
-In the following descriptions, \fIpoint\fP refers to the current cursor
-position, and \fImark\fP refers to a cursor position saved by the
-\fBset\-mark\fP command.
-The text between the point and mark is referred to as the \fIregion\fP.
-.SS Commands for Moving
-.PP
-.PD 0
-.TP
-.B beginning\-of\-line (C\-a)
-Move to the start of the current line.
-.TP
-.B end\-of\-line (C\-e)
-Move to the end of the line.
-.TP
-.B forward\-char (C\-f)
-Move forward a character.
-.TP
-.B backward\-char (C\-b)
-Move back a character.
-.TP
-.B forward\-word (M\-f)
-Move forward to the end of the next word.  Words are composed of
-alphanumeric characters (letters and digits).
-.TP
-.B backward\-word (M\-b)
-Move back to the start of the current or previous word.  Words are
-composed of alphanumeric characters (letters and digits).
-.TP
-.B clear\-screen (C\-l)
-Clear the screen leaving the current line at the top of the screen.
-With an argument, refresh the current line without clearing the
-screen.
-.TP
-.B redraw\-current\-line
-Refresh the current line.
-.PD
-.SS Commands for Manipulating the History
-.PP
-.PD 0
-.TP
-.B accept\-line (Newline, Return)
-Accept the line regardless of where the cursor is.
-If this line is
-non-empty, it may be added to the history list for future recall with
-\fBadd_history()\fP.
-If the line is a modified history line, the history line is restored to its original state.
-.TP
-.B previous\-history (C\-p)
-Fetch the previous command from the history list, moving back in
-the list.
-.TP
-.B next\-history (C\-n)
-Fetch the next command from the history list, moving forward in the
-list.
-.TP
-.B beginning\-of\-history (M\-<)
-Move to the first line in the history.
-.TP
-.B end\-of\-history (M\->)
-Move to the end of the input history, i.e., the line currently being
-entered.
-.TP
-.B reverse\-search\-history (C\-r)
-Search backward starting at the current line and moving `up' through
-the history as necessary.  This is an incremental search.
-.TP
-.B forward\-search\-history (C\-s)
-Search forward starting at the current line and moving `down' through
-the history as necessary.  This is an incremental search.
-.TP
-.B non\-incremental\-reverse\-search\-history (M\-p)
-Search backward through the history starting at the current line
-using a non-incremental search for a string supplied by the user.
-.TP
-.B non\-incremental\-forward\-search\-history (M\-n)
-Search forward through the history using a non-incremental search
-for a string supplied by the user.
-.TP
-.B history\-search\-forward
-Search forward through the history for the string of characters
-between the start of the current line and the current cursor
-position (the \fIpoint\fP).
-This is a non-incremental search.
-.TP
-.B history\-search\-backward
-Search backward through the history for the string of characters
-between the start of the current line and the point.
-This is a non-incremental search.
-.TP
-.B yank\-nth\-arg (M\-C\-y)
-Insert the first argument to the previous command (usually
-the second word on the previous line) at point.
-With an argument
-.IR n ,
-insert the \fIn\fPth word from the previous command (the words
-in the previous command begin with word 0).  A negative argument
-inserts the \fIn\fPth word from the end of the previous command.
-Once the argument \fIn\fP is computed, the argument is extracted
-as if the "!\fIn\fP" history expansion had been specified.
-.TP
-.B
-yank\-last\-arg (M\-.\^, M\-_\^)
-Insert the last argument to the previous command (the last word of
-the previous history entry).
-With a numeric argument, behave exactly like \fByank\-nth\-arg\fP.
-Successive calls to \fByank\-last\-arg\fP move back through the history
-list, inserting the last word (or the word specified by the argument to
-the first call) of each line in turn.
-Any numeric argument supplied to these successive calls determines
-the direction to move through the history.  A negative argument switches
-the direction through the history (back or forward).
-The history expansion facilities are used to extract the last argument,
-as if the "!$" history expansion had been specified.
-.PD
-.SS Commands for Changing Text
-.PP
-.PD 0
-.TP
-.B delete\-char (C\-d)
-Delete the character at point.  If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to \fBdelete\-char\fP, then return
-.SM
-.BR EOF .
-.TP
-.B backward\-delete\-char (Rubout)
-Delete the character behind the cursor.  When given a numeric argument,
-save the deleted text on the kill ring.
-.TP
-.B forward\-backward\-delete\-char   
-Delete the character under the cursor, unless the cursor is at the
-end of the line, in which case the character behind the cursor is
-deleted.
-.TP
-.B quoted\-insert (C\-q, C\-v)
-Add the next character that you type to the line verbatim.  This is
-how to insert characters like \fBC\-q\fP, for example.
-.TP
-.B tab\-insert (M-TAB)
-Insert a tab character.
-.TP
-.B self\-insert (a,\ b,\ A,\ 1,\ !,\ ...)
-Insert the character typed.
-.TP
-.B transpose\-chars (C\-t)
-Drag the character before point forward over the character at point,
-moving point forward as well.
-If point is at the end of the line, then this transposes
-the two characters before point.
-Negative arguments have no effect.
-.TP
-.B transpose\-words (M\-t)
-Drag the word before point past the word after point,
-moving point over that word as well.
-If point is at the end of the line, this transposes
-the last two words on the line.
-.TP
-.B upcase\-word (M\-u)
-Uppercase the current (or following) word.  With a negative argument,
-uppercase the previous word, but do not move point.
-.TP
-.B downcase\-word (M\-l)
-Lowercase the current (or following) word.  With a negative argument,
-lowercase the previous word, but do not move point.
-.TP
-.B capitalize\-word (M\-c)
-Capitalize the current (or following) word.  With a negative argument,
-capitalize the previous word, but do not move point.
-.TP
-.B overwrite\-mode
-Toggle overwrite mode.  With an explicit positive numeric argument,
-switches to overwrite mode.  With an explicit non-positive numeric
-argument, switches to insert mode.  This command affects only
-\fBemacs\fP mode; \fBvi\fP mode does overwrite differently.
-Each call to \fIreadline()\fP starts in insert mode.
-In overwrite mode, characters bound to \fBself\-insert\fP replace   
-the text at point rather than pushing the text to the right.
-Characters bound to \fBbackward\-delete\-char\fP replace the character
-before point with a space.  By default, this command is unbound.
-.PD
-.SS Killing and Yanking
-.PP
-.PD 0
-.TP
-.B kill\-line (C\-k)
-Kill the text from point to the end of the line.
-.TP
-.B backward\-kill\-line (C\-x Rubout)
-Kill backward to the beginning of the line.
-.TP
-.B unix\-line\-discard (C\-u)
-Kill backward from point to the beginning of the line.
-The killed text is saved on the kill-ring.
-.\" There is no real difference between this and backward-kill-line
-.TP
-.B kill\-whole\-line
-Kill all characters on the current line, no matter where point is.
-.TP
-.B kill\-word  (M\-d)
-Kill from point the end of the current word, or if between
-words, to the end of the next word.  Word boundaries are the same as
-those used by \fBforward\-word\fP.
-.TP
-.B backward\-kill\-word (M\-Rubout)
-Kill the word behind point.
-Word boundaries are the same as those used by \fBbackward\-word\fP.
-.TP
-.B unix\-word\-rubout (C\-w)
-Kill the word behind point, using white space as a word boundary.
-The killed text is saved on the kill-ring.
-.TP
-.B unix\-filename\-rubout
-Kill the word behind point, using white space and the slash character
-as the word boundaries.
-The killed text is saved on the kill-ring.
-.TP
-.B delete\-horizontal\-space (M\-\e)
-Delete all spaces and tabs around point.
-.TP
-.B kill\-region
-Kill the text between the point and \fImark\fP (saved cursor position).
-This text is referred to as the \fIregion\fP.
-.TP
-.B copy\-region\-as\-kill
-Copy the text in the region to the kill buffer.
-.TP
-.B copy\-backward\-word
-Copy the word before point to the kill buffer.
-The word boundaries are the same as \fBbackward\-word\fP.
-.TP
-.B copy\-forward\-word
-Copy the word following point to the kill buffer.
-The word boundaries are the same as \fBforward\-word\fP.
-.TP
-.B yank (C\-y)
-Yank the top of the kill ring into the buffer at point.
-.TP
-.B yank\-pop (M\-y)
-Rotate the kill ring, and yank the new top.  Only works following
-.B yank
-or
-.BR yank\-pop .
-.PD
-.SS Numeric Arguments
-.PP
-.PD 0
-.TP
-.B digit\-argument (M\-0, M\-1, ..., M\-\-)
-Add this digit to the argument already accumulating, or start a new
-argument.  M\-\- starts a negative argument.
-.TP
-.B universal\-argument
-This is another way to specify an argument.
-If this command is followed by one or more digits, optionally with a
-leading minus sign, those digits define the argument.
-If the command is followed by digits, executing
-.B universal\-argument
-again ends the numeric argument, but is otherwise ignored.
-As a special case, if this command is immediately followed by a
-character that is neither a digit or minus sign, the argument count
-for the next command is multiplied by four.
-The argument count is initially one, so executing this function the
-first time makes the argument count four, a second time makes the
-argument count sixteen, and so on.
-.PD
-.SS Completing
-.PP
-.PD 0
-.TP
-.B complete (TAB)
-Attempt to perform completion on the text before point.
-The actual completion performed is application-specific.
-.BR Bash ,
-for instance, attempts completion treating the text as a variable
-(if the text begins with \fB$\fP), username (if the text begins with
-\fB~\fP), hostname (if the text begins with \fB@\fP), or
-command (including aliases and functions) in turn.  If none
-of these produces a match, filename completion is attempted.
-.BR Gdb ,
-on the other hand,
-allows completion of program functions and variables, and
-only attempts filename completion under certain circumstances.
-.TP
-.B possible\-completions (M\-?)
-List the possible completions of the text before point.
-When displaying completions, readline sets the number of columns used
-for display to the value of \fBcompletion-display-width\fP, the value of
-the environment variable
-.SM
-.BR COLUMNS ,
-or the screen width, in that order.
-.TP
-.B insert\-completions (M\-*)
-Insert all completions of the text before point
-that would have been generated by
-\fBpossible\-completions\fP.
-.TP
-.B menu\-complete
-Similar to \fBcomplete\fP, but replaces the word to be completed
-with a single match from the list of possible completions.
-Repeated execution of \fBmenu\-complete\fP steps through the list
-of possible completions, inserting each match in turn.
-At the end of the list of completions, the bell is rung
-(subject to the setting of \fBbell\-style\fP)
-and the original text is restored.
-An argument of \fIn\fP moves \fIn\fP positions forward in the list
-of matches; a negative argument may be used to move backward 
-through the list.
-This command is intended to be bound to \fBTAB\fP, but is unbound
-by default.
-.TP
-.B menu\-complete\-backward
-Identical to \fBmenu\-complete\fP, but moves backward through the list
-of possible completions, as if \fBmenu\-complete\fP had been given a
-negative argument.  This command is unbound by default.
-.TP
-.B delete\-char\-or\-list
-Deletes the character under the cursor if not at the beginning or
-end of the line (like \fBdelete-char\fP).
-If at the end of the line, behaves identically to
-\fBpossible-completions\fP.
-.PD
-.SS Keyboard Macros
-.PP
-.PD 0
-.TP
-.B start\-kbd\-macro (C\-x (\^)
-Begin saving the characters typed into the current keyboard macro.
-.TP
-.B end\-kbd\-macro (C\-x )\^)
-Stop saving the characters typed into the current keyboard macro
-and store the definition.
-.TP
-.B call\-last\-kbd\-macro (C\-x e)
-Re-execute the last keyboard macro defined, by making the characters
-in the macro appear as if typed at the keyboard.
-.PD
-.SS Miscellaneous
-.PP
-.PD 0
-.TP
-.B re\-read\-init\-file (C\-x C\-r)
-Read in the contents of the \fIinputrc\fP file, and incorporate
-any bindings or variable assignments found there.
-.TP
-.B abort (C\-g)
-Abort the current editing command and
-ring the terminal's bell (subject to the setting of
-.BR bell\-style ).
-.TP
-.B do\-uppercase\-version (M\-a, M\-b, M\-\fIx\fP, ...)
-If the metafied character \fIx\fP is lowercase, run the command
-that is bound to the corresponding uppercase character.
-.TP
-.B prefix\-meta (ESC)
-Metafy the next character typed.
-.SM
-.B ESC
-.B f
-is equivalent to
-.BR Meta\-f .
-.TP
-.B undo (C\-_, C\-x C\-u)
-Incremental undo, separately remembered for each line.
-.TP
-.B revert\-line (M\-r)
-Undo all changes made to this line.  This is like executing the
-.B undo
-command enough times to return the line to its initial state.
-.TP
-.B tilde\-expand (M\-&)
-Perform tilde expansion on the current word.
-.TP
-.B set\-mark (C\-@, M\-<space>)
-Set the mark to the point.  If a
-numeric argument is supplied, the mark is set to that position.
-.TP
-.B exchange\-point\-and\-mark (C\-x C\-x)
-Swap the point with the mark.  The current cursor position is set to
-the saved position, and the old cursor position is saved as the mark.
-.TP
-.B character\-search (C\-])
-A character is read and point is moved to the next occurrence of that
-character.  A negative count searches for previous occurrences.
-.TP
-.B character\-search\-backward (M\-C\-])
-A character is read and point is moved to the previous occurrence of that
-character.  A negative count searches for subsequent occurrences.
-.TP
-.B skip\-csi\-sequence
-Read enough characters to consume a multi-key sequence such as those
-defined for keys like Home and End.  Such sequences begin with a
-Control Sequence Indicator (CSI), usually ESC\-[.  If this sequence is
-bound to "\e[", keys producing such sequences will have no effect
-unless explicitly bound to a readline command, instead of inserting
-stray characters into the editing buffer.  This is unbound by default,
-but usually bound to ESC\-[.
-.TP
-.B insert\-comment (M\-#)
-Without a numeric argument, the value of the readline
-.B comment\-begin
-variable is inserted at the beginning of the current line.
-If a numeric argument is supplied, this command acts as a toggle:  if
-the characters at the beginning of the line do not match the value   
-of \fBcomment\-begin\fP, the value is inserted, otherwise             
-the characters in \fBcomment-begin\fP are deleted from the beginning of
-the line.
-In either case, the line is accepted as if a newline had been typed.
-The default value of
-.B comment\-begin
-makes the current line a shell comment.
-If a numeric argument causes the comment character to be removed, the line
-will be executed by the shell.
-.TP
-.B dump\-functions
-Print all of the functions and their key bindings to the
-readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an \fIinputrc\fP file.
-.TP
-.B dump\-variables
-Print all of the settable variables and their values to the
-readline output stream.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an \fIinputrc\fP file.
-.TP
-.B dump\-macros
-Print all of the readline key sequences bound to macros and the
-strings they output.  If a numeric argument is supplied,
-the output is formatted in such a way that it can be made part
-of an \fIinputrc\fP file.
-.TP
-.B emacs\-editing\-mode (C\-e)
-When in
-.B vi
-command mode, this causes a switch to
-.B emacs
-editing mode.
-.TP
-.B vi\-editing\-mode (M\-C\-j)
-When in
-.B emacs
-editing mode, this causes a switch to
-.B vi
-editing mode.
-.PD
-.SH DEFAULT KEY BINDINGS
-.LP
-The following is a list of the default emacs and vi bindings.
-Characters with the eighth bit set are written as M\-<character>, and
-are referred to as
-.I metafied
-characters.
-The printable ASCII characters not mentioned in the list of emacs
-standard bindings are bound to the
-.B self\-insert
-function, which just inserts the given character into the input line.
-In vi insertion mode, all characters not specifically mentioned are
-bound to
-.BR self\-insert .
-Characters assigned to signal generation by
-.IR stty (1)
-or the terminal driver, such as C-Z or C-C,
-retain that function.
-Upper and lower case metafied characters are bound to the same function in
-the emacs mode meta keymap.
-The remaining characters are unbound, which causes readline
-to ring the bell (subject to the setting of the
-.B bell\-style
-variable).
-.SS Emacs Mode
-.RS +.6i
-.nf
-.ta 2.5i
-.sp
-Emacs Standard bindings
-.sp
-"C-@"  set-mark
-"C-A"  beginning-of-line
-"C-B"  backward-char
-"C-D"  delete-char
-"C-E"  end-of-line
-"C-F"  forward-char
-"C-G"  abort
-"C-H"  backward-delete-char
-"C-I"  complete
-"C-J"  accept-line
-"C-K"  kill-line
-"C-L"  clear-screen
-"C-M"  accept-line
-"C-N"  next-history
-"C-P"  previous-history
-"C-Q"  quoted-insert
-"C-R"  reverse-search-history
-"C-S"  forward-search-history
-"C-T"  transpose-chars
-"C-U"  unix-line-discard
-"C-V"  quoted-insert
-"C-W"  unix-word-rubout
-"C-Y"  yank
-"C-]"  character-search
-"C-_"  undo
-"\^ " to "/"  self-insert
-"0"  to "9"  self-insert
-":"  to "~"  self-insert
-"C-?"  backward-delete-char
-.PP
-Emacs Meta bindings
-.sp
-"M-C-G"  abort
-"M-C-H"  backward-kill-word
-"M-C-I"  tab-insert
-"M-C-J"  vi-editing-mode
-"M-C-M"  vi-editing-mode
-"M-C-R"  revert-line
-"M-C-Y"  yank-nth-arg
-"M-C-["  complete
-"M-C-]"  character-search-backward
-"M-space"  set-mark
-"M-#"  insert-comment
-"M-&"  tilde-expand
-"M-*"  insert-completions
-"M--"  digit-argument
-"M-."  yank-last-arg
-"M-0"  digit-argument
-"M-1"  digit-argument
-"M-2"  digit-argument
-"M-3"  digit-argument
-"M-4"  digit-argument
-"M-5"  digit-argument
-"M-6"  digit-argument
-"M-7"  digit-argument
-"M-8"  digit-argument
-"M-9"  digit-argument
-"M-<"  beginning-of-history
-"M-="  possible-completions
-"M->"  end-of-history
-"M-?"  possible-completions
-"M-B"  backward-word
-"M-C"  capitalize-word
-"M-D"  kill-word
-"M-F"  forward-word
-"M-L"  downcase-word
-"M-N"  non-incremental-forward-search-history
-"M-P"  non-incremental-reverse-search-history
-"M-R"  revert-line
-"M-T"  transpose-words
-"M-U"  upcase-word
-"M-Y"  yank-pop
-"M-\e"  delete-horizontal-space
-"M-~"  tilde-expand
-"M-C-?"  backward-kill-word
-"M-_"  yank-last-arg
-.PP
-Emacs Control-X bindings
-.sp
-"C-XC-G"  abort
-"C-XC-R"  re-read-init-file
-"C-XC-U"  undo
-"C-XC-X"  exchange-point-and-mark
-"C-X("  start-kbd-macro
-"C-X)"  end-kbd-macro
-"C-XE"  call-last-kbd-macro
-"C-XC-?"  backward-kill-line
-.sp
-.RE
-.SS VI Mode bindings
-.RS +.6i
-.nf
-.ta 2.5i
-.sp
-.PP
-VI Insert Mode functions
-.sp
-"C-D"  vi-eof-maybe
-"C-H"  backward-delete-char
-"C-I"  complete
-"C-J"  accept-line
-"C-M"  accept-line
-"C-R"  reverse-search-history
-"C-S"  forward-search-history
-"C-T"  transpose-chars
-"C-U"  unix-line-discard
-"C-V"  quoted-insert
-"C-W"  unix-word-rubout
-"C-Y"  yank
-"C-["  vi-movement-mode
-"C-_"  undo
-"\^ " to "~"  self-insert
-"C-?"  backward-delete-char
-.PP
-VI Command Mode functions
-.sp
-"C-D"  vi-eof-maybe
-"C-E"  emacs-editing-mode
-"C-G"  abort
-"C-H"  backward-char
-"C-J"  accept-line
-"C-K"  kill-line
-"C-L"  clear-screen
-"C-M"  accept-line
-"C-N"  next-history
-"C-P"  previous-history
-"C-Q"  quoted-insert
-"C-R"  reverse-search-history
-"C-S"  forward-search-history
-"C-T"  transpose-chars
-"C-U"  unix-line-discard
-"C-V"  quoted-insert
-"C-W"  unix-word-rubout
-"C-Y"  yank
-"C-_"  vi-undo
-"\^ "  forward-char
-"#"  insert-comment
-"$"  end-of-line
-"%"  vi-match
-"&"  vi-tilde-expand
-"*"  vi-complete
-"+"  next-history
-","  vi-char-search
-"-"  previous-history
-"."  vi-redo
-"/"  vi-search
-"0"  beginning-of-line
-"1" to "9"  vi-arg-digit
-";"  vi-char-search
-"="  vi-complete
-"?"  vi-search
-"A"  vi-append-eol
-"B"  vi-prev-word
-"C"  vi-change-to
-"D"  vi-delete-to
-"E"  vi-end-word
-"F"  vi-char-search
-"G"  vi-fetch-history
-"I"  vi-insert-beg
-"N"  vi-search-again
-"P"  vi-put
-"R"  vi-replace
-"S"  vi-subst
-"T"  vi-char-search
-"U"  revert-line
-"W"  vi-next-word
-"X"  backward-delete-char
-"Y"  vi-yank-to
-"\e"  vi-complete
-"^"  vi-first-print
-"_"  vi-yank-arg
-"`"  vi-goto-mark
-"a"  vi-append-mode
-"b"  vi-prev-word
-"c"  vi-change-to
-"d"  vi-delete-to
-"e"  vi-end-word
-"f"  vi-char-search
-"h"  backward-char
-"i"  vi-insertion-mode
-"j"  next-history
-"k"  prev-history
-"l"  forward-char
-"m"  vi-set-mark
-"n"  vi-search-again
-"p"  vi-put
-"r"  vi-change-char
-"s"  vi-subst
-"t"  vi-char-search
-"u"  vi-undo
-"w"  vi-next-word
-"x"  vi-delete
-"y"  vi-yank-to
-"|"  vi-column
-"~"  vi-change-case
-.RE
-.SH "SEE ALSO"
-.PD 0
-.TP
-\fIThe Gnu Readline Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIThe Gnu History Library\fP, Brian Fox and Chet Ramey
-.TP
-\fIbash\fP(1)
-.PD
-.SH FILES
-.PD 0
-.TP
-.FN ~/.inputrc
-Individual \fBreadline\fP initialization file
-.PD
-.SH AUTHORS
-Brian Fox, Free Software Foundation
-.br
-bfox at gnu.org
-.PP
-Chet Ramey, Case Western Reserve University
-.br
-chet at ins.CWRU.Edu
-.SH BUG REPORTS
-If you find a bug in
-.B readline,
-you should report it.  But first, you should
-make sure that it really is a bug, and that it appears in the latest
-version of the
-.B readline
-library that you have.
-.PP
-Once you have determined that a bug actually exists, mail a
-bug report to \fIbug\-readline\fP@\fIgnu.org\fP.
-If you have a fix, you are welcome to mail that
-as well!  Suggestions and `philosophical' bug reports may be mailed
-to \fPbug-readline\fP@\fIgnu.org\fP or posted to the Usenet
-newsgroup
-.BR gnu.bash.bug .
-.PP
-Comments and bug reports concerning
-this manual page should be directed to
-.IR chet at ins.CWRU.Edu .
-.SH BUGS
-.PP
-It's too big and too slow.
diff --git a/sim/common/run.1 b/sim/common/run.1
deleted file mode 100644
index 8b13789..0000000
--- a/sim/common/run.1
+++ /dev/null
@@ -1 +0,0 @@
-

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gdb/gdb.git



More information about the Crosstoolchain-logs mailing list