diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/bfd/version.h ./bfd/version.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/bfd/version.h	2018-08-21 02:04:59.000000000 +0000
+++ ./bfd/version.h	2018-08-28 02:06:12.000000000 +0000
@@ -16,7 +16,7 @@
 
    In releases, the date is not included in either version strings or
    sonames.  */
-#define BFD_VERSION_DATE 20180821
+#define BFD_VERSION_DATE 20180828
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/djunpack.bat ./djunpack.bat
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/djunpack.bat	2018-08-21 02:09:01.000000000 +0000
+++ ./djunpack.bat	2018-08-28 02:10:33.000000000 +0000
@@ -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=$package-8.1.90.20180821
-if "%GDBVER%"=="$package-8.1.90.20180821" GoTo EnvOk
+set GDBVER=$package-8.1.90.20180828
+if "%GDBVER%"=="$package-8.1.90.20180828" 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 -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/arch/aarch64.h ./gdb/arch/aarch64.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/arch/aarch64.h	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/arch/aarch64.h	2018-08-28 02:06:13.000000000 +0000
@@ -49,7 +49,7 @@ enum aarch64_regnum
   AARCH64_SVE_P15_REGNUM = AARCH64_SVE_P0_REGNUM + 15,	/* Last SVE predicate
 							   register.  */
   AARCH64_SVE_FFR_REGNUM,	/* SVE First Fault Register.  */
-  AARCH64_SVE_VG_REGNUM,	/* SVE Vector Gradient.  */
+  AARCH64_SVE_VG_REGNUM,	/* SVE Vector Granule.  */
 
   /* Other useful registers.  */
   AARCH64_LAST_X_ARG_REGNUM = AARCH64_X0_REGNUM + 7,
@@ -71,7 +71,7 @@ enum aarch64_regnum
 	The number of bytes in an SVE Z register.
    VQ : Vector Quotient.
 	The number of 128bit chunks in an SVE Z register.
-   VG : Vector Gradient.
+   VG : Vector Granule.
 	The number of 64bit chunks in an SVE Z register.  */
 
 #define sve_vg_from_vl(vl)	((vl) / 8)
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/ax-gdb.c ./gdb/ax-gdb.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/ax-gdb.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/ax-gdb.c	2018-08-28 02:06:13.000000000 +0000
@@ -679,7 +679,7 @@ gen_var_ref (struct agent_expr *ax, stru
       break;
 
     case LOC_BLOCK:
-      ax_const_l (ax, BLOCK_START (SYMBOL_BLOCK_VALUE (var)));
+      ax_const_l (ax, BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (var)));
       value->kind = axs_rvalue;
       break;
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/block.c ./gdb/block.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/block.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/block.c	2018-08-28 02:06:13.000000000 +0000
@@ -807,3 +807,24 @@ block_find_non_opaque_type_preferred (st
   *best = sym;
   return 0;
 }
+
+/* See block.h.  */
+
+struct blockranges *
+make_blockranges (struct objfile *objfile,
+                  const std::vector<blockrange> &rangevec)
+{
+  struct blockranges *blr;
+  size_t n = rangevec.size();
+
+  blr = (struct blockranges *)
+    obstack_alloc (&objfile->objfile_obstack,
+                   sizeof (struct blockranges)
+		   + (n - 1) * sizeof (struct blockrange));
+
+  blr->nranges = n;
+  for (int i = 0; i < n; i++)
+    blr->range[i] = rangevec[i];
+  return blr;
+}
+
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/blockframe.c ./gdb/blockframe.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/blockframe.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/blockframe.c	2018-08-28 02:06:13.000000000 +0000
@@ -96,7 +96,7 @@ get_pc_function_start (CORE_ADDR pc)
       if (symbol)
 	{
 	  bl = SYMBOL_BLOCK_VALUE (symbol);
-	  return BLOCK_START (bl);
+	  return BLOCK_ENTRY_PC (bl);
 	}
     }
 
@@ -165,13 +165,35 @@ find_pc_sect_containing_function (CORE_A
   return block_containing_function (bl);
 }
 
-/* These variables are used to cache the most recent result
-   of find_pc_partial_function.  */
+/* These variables are used to cache the most recent result of
+   find_pc_partial_function.
+
+   The addresses cache_pc_function_low and cache_pc_function_high
+   record the range in which PC was found during the most recent
+   successful lookup.  When the function occupies a single contiguous
+   address range, these values correspond to the low and high
+   addresses of the function.  (The high address is actually one byte
+   beyond the last byte of the function.)  For a function with more
+   than one (non-contiguous) range, the range in which PC was found is
+   used to set the cache bounds.
+
+   When determining whether or not these cached values apply to a
+   particular PC value, PC must be within the range specified by
+   cache_pc_function_low and cache_pc_function_high.  In addition to
+   PC being in that range, cache_pc_section must also match PC's
+   section.  See find_pc_partial_function() for details on both the
+   comparison as well as how PC's section is determined.
+
+   The other values aren't used for determining whether the cache
+   applies, but are used for setting the outputs from
+   find_pc_partial_function.  cache_pc_function_low and
+   cache_pc_function_high are used to set outputs as well.  */
 
 static CORE_ADDR cache_pc_function_low = 0;
 static CORE_ADDR cache_pc_function_high = 0;
 static const char *cache_pc_function_name = 0;
 static struct obj_section *cache_pc_function_section = NULL;
+static const struct block *cache_pc_function_block = nullptr;
 
 /* Clear cache, e.g. when symbol table is discarded.  */
 
@@ -182,24 +204,14 @@ clear_pc_function_cache (void)
   cache_pc_function_high = 0;
   cache_pc_function_name = (char *) 0;
   cache_pc_function_section = NULL;
+  cache_pc_function_block = nullptr;
 }
 
-/* Finds the "function" (text symbol) that is smaller than PC but
-   greatest of all of the potential text symbols in SECTION.  Sets
-   *NAME and/or *ADDRESS conditionally if that pointer is non-null.
-   If ENDADDR is non-null, then set *ENDADDR to be the end of the
-   function (exclusive), but passing ENDADDR as non-null means that
-   the function might cause symbols to be read.  This function either
-   succeeds or fails (not halfway succeeds).  If it succeeds, it sets
-   *NAME, *ADDRESS, and *ENDADDR to real information and returns 1.
-   If it fails, it sets *NAME, *ADDRESS and *ENDADDR to zero and
-   returns 0.  */
-
-/* Backward compatibility, no section argument.  */
+/* See symtab.h.  */
 
 int
 find_pc_partial_function (CORE_ADDR pc, const char **name, CORE_ADDR *address,
-			  CORE_ADDR *endaddr)
+			  CORE_ADDR *endaddr, const struct block **block)
 {
   struct obj_section *section;
   struct symbol *f;
@@ -241,17 +253,62 @@ find_pc_partial_function (CORE_ADDR pc, 
   if (compunit_symtab != NULL)
     {
       /* Checking whether the msymbol has a larger value is for the
-	 "pathological" case mentioned in print_frame_info.  */
+	 "pathological" case mentioned in stack.c:find_frame_funname.
+
+	 We use BLOCK_ENTRY_PC instead of BLOCK_START_PC for this
+	 comparison because the minimal symbol should refer to the
+	 function's entry pc which is not necessarily the lowest
+	 address of the function.  This will happen when the function
+	 has more than one range and the entry pc is not within the
+	 lowest range of addresses.  */
       f = find_pc_sect_function (mapped_pc, section);
       if (f != NULL
 	  && (msymbol.minsym == NULL
-	      || (BLOCK_START (SYMBOL_BLOCK_VALUE (f))
+	      || (BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (f))
 		  >= BMSYMBOL_VALUE_ADDRESS (msymbol))))
 	{
-	  cache_pc_function_low = BLOCK_START (SYMBOL_BLOCK_VALUE (f));
-	  cache_pc_function_high = BLOCK_END (SYMBOL_BLOCK_VALUE (f));
+	  const struct block *b = SYMBOL_BLOCK_VALUE (f);
+
 	  cache_pc_function_name = SYMBOL_LINKAGE_NAME (f);
 	  cache_pc_function_section = section;
+	  cache_pc_function_block = b;
+
+	  /* For blocks occupying contiguous addresses (i.e. no gaps),
+	     the low and high cache addresses are simply the start
+	     and end of the block.
+
+	     For blocks with non-contiguous ranges, we have to search
+	     for the range containing mapped_pc and then use the start
+	     and end of that range.
+
+	     This causes the returned *ADDRESS and *ENDADDR values to
+	     be limited to the range in which mapped_pc is found.  See
+	     comment preceding declaration of find_pc_partial_function
+	     in symtab.h for more information.  */
+
+	  if (BLOCK_CONTIGUOUS_P (b))
+	    {
+	      cache_pc_function_low = BLOCK_START (b);
+	      cache_pc_function_high = BLOCK_END (b);
+	    }
+	  else
+	    {
+	      int i;
+	      for (i = 0; i < BLOCK_NRANGES (b); i++)
+	        {
+		  if (BLOCK_RANGE_START (b, i) <= mapped_pc
+		      && mapped_pc < BLOCK_RANGE_END (b, i))
+		    {
+		      cache_pc_function_low = BLOCK_RANGE_START (b, i);
+		      cache_pc_function_high = BLOCK_RANGE_END (b, i);
+		      break;
+		    }
+		}
+	      /* Above loop should exit via the break.  */
+	      gdb_assert (i < BLOCK_NRANGES (b));
+	    }
+
+
 	  goto return_cached_value;
 	}
     }
@@ -281,6 +338,7 @@ find_pc_partial_function (CORE_ADDR pc, 
   cache_pc_function_name = MSYMBOL_LINKAGE_NAME (msymbol.minsym);
   cache_pc_function_section = section;
   cache_pc_function_high = minimal_symbol_upper_bound (msymbol);
+  cache_pc_function_block = nullptr;
 
  return_cached_value:
 
@@ -311,17 +369,57 @@ find_pc_partial_function (CORE_ADDR pc, 
 	*endaddr = cache_pc_function_high;
     }
 
+  if (block != nullptr)
+    *block = cache_pc_function_block;
+
   return 1;
 }
 
 /* See symtab.h.  */
 
+bool
+find_function_entry_range_from_pc (CORE_ADDR pc, const char **name,
+				   CORE_ADDR *address, CORE_ADDR *endaddr)
+{
+  const struct block *block;
+  bool status = find_pc_partial_function (pc, name, address, endaddr, &block);
+
+  if (status && block != nullptr && !BLOCK_CONTIGUOUS_P (block))
+    {
+      CORE_ADDR entry_pc = BLOCK_ENTRY_PC (block);
+
+      for (int i = 0; i < BLOCK_NRANGES (block); i++)
+        {
+	  if (BLOCK_RANGE_START (block, i) <= entry_pc
+	      && entry_pc < BLOCK_RANGE_END (block, i))
+	    {
+	      if (address != nullptr)
+	        *address = BLOCK_RANGE_START (block, i);
+
+	      if (endaddr != nullptr)
+	        *endaddr = BLOCK_RANGE_END (block, i);
+
+	      return status;
+	    }
+	}
+
+      /* It's an internal error if we exit the above loop without finding
+         the range.  */
+      internal_error (__FILE__, __LINE__,
+                      _("Entry block not found in find_function_entry_range_from_pc"));
+    }
+
+  return status;
+}
+
+/* See symtab.h.  */
+
 struct type *
 find_function_type (CORE_ADDR pc)
 {
   struct symbol *sym = find_pc_function (pc);
 
-  if (sym != NULL && BLOCK_START (SYMBOL_BLOCK_VALUE (sym)) == pc)
+  if (sym != NULL && BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym)) == pc)
     return SYMBOL_TYPE (sym);
 
   return NULL;
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/block.h ./gdb/block.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/block.h	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/block.h	2018-08-28 02:06:13.000000000 +0000
@@ -31,6 +31,37 @@ struct using_direct;
 struct obstack;
 struct addrmap;
 
+/* Blocks can occupy non-contiguous address ranges.  When this occurs,
+   startaddr and endaddr within struct block (still) specify the lowest
+   and highest addresses of all ranges, but each individual range is
+   specified by the addresses in struct blockrange.  */
+
+struct blockrange
+{
+  blockrange (CORE_ADDR startaddr_, CORE_ADDR endaddr_)
+    : startaddr (startaddr_),
+      endaddr (endaddr_)
+  {
+  }
+
+  /* Lowest address in this range.  */
+
+  CORE_ADDR startaddr;
+
+  /* One past the highest address in the range.  */
+
+  CORE_ADDR endaddr;
+};
+
+/* Two or more non-contiguous ranges in the same order as that provided
+   via the debug info.  */
+
+struct blockranges
+{
+  int nranges;
+  struct blockrange range[1];
+};
+
 /* All of the name-scope contours of the program
    are represented by `struct block' objects.
    All of these objects are pointed to by the blockvector.
@@ -86,6 +117,12 @@ struct block
      using directives and the current namespace scope.  */
 
   struct block_namespace_info *namespace_info;
+
+  /* Address ranges for blocks with non-contiguous ranges.  If this
+     is NULL, then there is only one range which is specified by
+     startaddr and endaddr above.  */
+
+  struct blockranges *ranges;
 };
 
 /* The global block is singled out so that we can provide a back-link
@@ -109,6 +146,49 @@ struct global_block
 #define BLOCK_DICT(bl)		(bl)->dict
 #define BLOCK_NAMESPACE(bl)	(bl)->namespace_info
 
+/* Accessor for ranges field within block BL.  */
+
+#define BLOCK_RANGES(bl)	(bl)->ranges
+
+/* Number of ranges within a block.  */
+
+#define BLOCK_NRANGES(bl)	(bl)->ranges->nranges
+
+/* Access range array for block BL.  */
+
+#define BLOCK_RANGE(bl)		(bl)->ranges->range
+
+/* Are all addresses within a block contiguous?  */
+
+#define BLOCK_CONTIGUOUS_P(bl)	(BLOCK_RANGES (bl) == nullptr \
+				 || BLOCK_NRANGES (bl) <= 1)
+
+/* Obtain the start address of the Nth range for block BL.  */
+
+#define BLOCK_RANGE_START(bl,n) (BLOCK_RANGE (bl)[n].startaddr)
+
+/* Obtain the end address of the Nth range for block BL.  */
+
+#define BLOCK_RANGE_END(bl,n)	(BLOCK_RANGE (bl)[n].endaddr)
+
+/* Define the "entry pc" for a block BL to be the lowest (start) address
+   for the block when all addresses within the block are contiguous.  If
+   non-contiguous, then use the start address for the first range in the
+   block.
+
+   At the moment, this almost matches what DWARF specifies as the entry
+   pc.  (The missing bit is support for DW_AT_entry_pc which should be
+   preferred over range data and the low_pc.)
+
+   Once support for DW_AT_entry_pc is added, I expect that an entry_pc
+   field will be added to one of these data structures.  Once that's done,
+   the entry_pc field can be set from the dwarf reader (and other readers
+   too).  BLOCK_ENTRY_PC can then be redefined to be less DWARF-centric.  */
+
+#define BLOCK_ENTRY_PC(bl)	(BLOCK_CONTIGUOUS_P (bl) \
+				 ? BLOCK_START (bl) \
+				 : BLOCK_RANGE_START (bl,0))
+
 struct blockvector
 {
   /* Number of blocks in the list.  */
@@ -322,4 +402,9 @@ extern int block_find_non_opaque_type_pr
        (sym) != NULL;							\
        (sym) = block_iter_match_next ((name), &(iter)))
 
+/* Given a vector of pairs, allocate and build an obstack allocated
+   blockranges struct for a block.  */
+struct blockranges *make_blockranges (struct objfile *objfile,
+                                      const std::vector<blockrange> &rangevec);
+
 #endif /* BLOCK_H */
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/ChangeLog ./gdb/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/ChangeLog	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/ChangeLog	2018-08-28 02:06:13.000000000 +0000
@@ -1,3 +1,101 @@
+2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
+
+	* python/py-threadevent.c (py_get_event_thread): Initialize
+	pythread.
+
+2018-08-24  Kevin Buettner  <kevinb@redhat.com>
+
+	PR gdb/23021
+	* block.h (blockrange, blockranges): New struct declarations.
+	(struct block): Add new field named `ranges'.
+	(BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
+	(BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
+	macros for accessing ranges in struct block.
+	(make_blockranges): New declaration.
+	block.c (make_blockranges): New function.
+	* dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
+	for block.
+	* symtab.h (find_pc_partial_function): Add new parameter `block'.
+	* blockframe.c (cache_pc_function_block): New static global.
+	(clear_pc_function_cache): Clear cache_pc_function_block.
+	(find_pc_partial_function): Move comment to symtab.h.  Add
+	support for non-contiguous blocks.
+	* cli/cli-cmds.c (block.h): Include.
+	(print_disassembly): Handle printing of non-contiguous blocks.
+	(disassemble_current_function): Likewise.
+	(disassemble_command): Likewise.
+
+	* ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
+	BLOCK_START.
+	* blockframe.c (get_pc_function_start): Likewise.
+	* compile/compile-c-symbols.c (convert_one_symbol): Likewise.
+	(gcc_symbol_address): Likewise.
+	* compile/compile-object-run.c (compile_object_run): Likewise.
+	* compile/compile.c (get_expr_block_and_pc): Likewise.
+	* dwarf2loc.c (dwarf2_find_location_expression): Likewise.
+	(func_addr_to_tail_call_list): Likewise.
+	* findvar.c (default_read_var_value): Likewise.
+	* inline-frame.c (inline_frame_this_id): Likewise.
+	(skip-inline_frames): Likewise.
+	* infcmd.c (until_next_command): Likewise.
+	* linespec.c (convert_linespec_to_sals): Likewise.
+	* parse.c (parse_exp_in_context_1): Likewise.
+	* printcmd.c (build_address_symbolic): likewise.
+	(info_address_command): Likewise.
+	symtab.c (find_function_start_sal): Likewise.
+	(skip_prologue_sal): Likewise.
+	(find_function_alias_target): Likewise.
+	(find_gnu_ifunc): Likewise.
+	* stack.c (find_frame_funname): Likewise.
+	* symtab.c (fixup_symbol_section): Likewise.
+	(find_function_start_sal): Likewise.
+	(skip_prologue_sal): Likewsie.
+	(find_function_alias_target): Likewise.
+	(find_gnu_ifunc): Likewise.
+	* tracepoint.c (info_scope_command): Likewise.
+	* value.c (value_fn_field): Likewise.
+
+	* infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
+	in place of find_pc_partial_function.
+	* blockframe.c (find_function_entry_range_from_pc): New function.
+	* symtab.h (find_function_entry_range_from_pc): Declare and document.
+	* objfiles.c (objfile_relocate1): Relocate start and end addresses
+	for each range in a block.
+
+2018-08-24  Pedro Alves  <palves@redhat.com>
+	    Simon Marchi  <simon.marchi@ericsson.com>
+
+	PR gdb/23379
+	* python/py-continueevent.c: Include "gdbthread.h".
+	(create_continue_event_object): Add intro comment.  Add 'ptid'
+	parameter.  Use it to find thread to pass to
+	create_thread_event_object.
+	(emit_continue_event): Pass PTID down to
+	create_continue_event_object.
+	* python/py-event.h (py_get_event_thread): Declare.
+	(create_thread_event_object): Remove default from 'thread'
+	parameter.
+	* python/py-stopevent.c (create_stop_event_object): Use
+	py_get_event_thread.
+	* python/py-threadevent.c (get_event_thread): Rename to ...
+	(py_get_event_thread): ... this, make extern, add 'ptid' parameter
+	and use it to find the thread.
+	(create_thread_event_object): Assert that THREAD isn't null.
+	Don't find the event thread here.
+
+2018-08-23  Xavier Roirand  <roirand@adacore.com>
+
+	* machoread.c (macho_symfile_read_all_oso): Remove uneeded
+	incrementation.
+
+2018-08-21  Alan Hayward  <alan.hayward@arm.com>
+
+	* arch/aarch64.h (aarch64_regnum): Update comment.
+
+2018-08-21  Alan Hayward  <alan.hayward@arm.com>
+
+	* NEWS: Add SVE to 8.2 section.
+
 2018-08-16  Tom Tromey  <tom@tromey.com>
 
 	* top.c (read_command_file): Update.
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/cli/cli-cmds.c ./gdb/cli/cli-cmds.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/cli/cli-cmds.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/cli/cli-cmds.c	2018-08-28 02:06:13.000000000 +0000
@@ -38,6 +38,7 @@
 #include "tracepoint.h"
 #include "filestuff.h"
 #include "location.h"
+#include "block.h"
 
 #include "ui-out.h"
 
@@ -1091,11 +1092,15 @@ list_command (const char *arg, int from_
    Perform the disassembly.
    NAME is the name of the function if known, or NULL.
    [LOW,HIGH) are the range of addresses to disassemble.
+   BLOCK is the block to disassemble; it needs to be provided
+   when non-contiguous blocks are disassembled; otherwise
+   it can be NULL.
    MIXED is non-zero to print source with the assembler.  */
 
 static void
 print_disassembly (struct gdbarch *gdbarch, const char *name,
 		   CORE_ADDR low, CORE_ADDR high,
+		   const struct block *block,
 		   gdb_disassembly_flags flags)
 {
 #if defined(TUI)
@@ -1104,14 +1109,28 @@ print_disassembly (struct gdbarch *gdbar
     {
       printf_filtered ("Dump of assembler code ");
       if (name != NULL)
-        printf_filtered ("for function %s:\n", name);
-      else
-        printf_filtered ("from %s to %s:\n",
-			 paddress (gdbarch, low), paddress (gdbarch, high));
-
-      /* Dump the specified range.  */
-      gdb_disassembly (gdbarch, current_uiout, flags, -1, low, high);
+	printf_filtered ("for function %s:\n", name);
+      if (block == nullptr || BLOCK_CONTIGUOUS_P (block))
+        {
+	  if (name == NULL)
+	    printf_filtered ("from %s to %s:\n",
+			     paddress (gdbarch, low), paddress (gdbarch, high));
 
+	  /* Dump the specified range.  */
+	  gdb_disassembly (gdbarch, current_uiout, flags, -1, low, high);
+	}
+      else
+        {
+	  for (int i = 0; i < BLOCK_NRANGES (block); i++)
+	    {
+	      CORE_ADDR low = BLOCK_RANGE_START (block, i);
+	      CORE_ADDR high = BLOCK_RANGE_END (block, i);
+	      printf_filtered (_("Address range %s to %s:\n"),
+			       paddress (gdbarch, low),
+			       paddress (gdbarch, high));
+	      gdb_disassembly (gdbarch, current_uiout, flags, -1, low, high);
+	    }
+	}
       printf_filtered ("End of assembler dump.\n");
       gdb_flush (gdb_stdout);
     }
@@ -1133,11 +1152,12 @@ disassemble_current_function (gdb_disass
   struct gdbarch *gdbarch;
   CORE_ADDR low, high, pc;
   const char *name;
+  const struct block *block;
 
   frame = get_selected_frame (_("No frame selected."));
   gdbarch = get_frame_arch (frame);
   pc = get_frame_address_in_block (frame);
-  if (find_pc_partial_function (pc, &name, &low, &high) == 0)
+  if (find_pc_partial_function (pc, &name, &low, &high, &block) == 0)
     error (_("No function contains program counter for selected frame."));
 #if defined(TUI)
   /* NOTE: cagney/2003-02-13 The `tui_active' was previously
@@ -1148,7 +1168,7 @@ disassemble_current_function (gdb_disass
 #endif
   low += gdbarch_deprecated_function_start_offset (gdbarch);
 
-  print_disassembly (gdbarch, name, low, high, flags);
+  print_disassembly (gdbarch, name, low, high, block, flags);
 }
 
 /* Dump a specified section of assembly code.
@@ -1184,6 +1204,7 @@ disassemble_command (const char *arg, in
   CORE_ADDR pc;
   gdb_disassembly_flags flags;
   const char *p;
+  const struct block *block = nullptr;
 
   p = arg;
   name = NULL;
@@ -1234,7 +1255,7 @@ disassemble_command (const char *arg, in
   if (p[0] == '\0')
     {
       /* One argument.  */
-      if (find_pc_partial_function (pc, &name, &low, &high) == 0)
+      if (find_pc_partial_function (pc, &name, &low, &high, &block) == 0)
 	error (_("No function contains specified address."));
 #if defined(TUI)
       /* NOTE: cagney/2003-02-13 The `tui_active' was previously
@@ -1262,7 +1283,7 @@ disassemble_command (const char *arg, in
 	high += low;
     }
 
-  print_disassembly (gdbarch, name, low, high, flags);
+  print_disassembly (gdbarch, name, low, high, block, flags);
 }
 
 static void
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/compile/compile.c ./gdb/compile/compile.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/compile/compile.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/compile/compile.c	2018-08-28 02:06:14.000000000 +0000
@@ -272,10 +272,10 @@ get_expr_block_and_pc (CORE_ADDR *pc)
 	block = BLOCKVECTOR_BLOCK (SYMTAB_BLOCKVECTOR (cursal.symtab),
 				   STATIC_BLOCK);
       if (block != NULL)
-	*pc = BLOCK_START (block);
+	*pc = BLOCK_ENTRY_PC (block);
     }
   else
-    *pc = BLOCK_START (block);
+    *pc = BLOCK_ENTRY_PC (block);
 
   return block;
 }
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/compile/compile-c-symbols.c ./gdb/compile/compile-c-symbols.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/compile/compile-c-symbols.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/compile/compile-c-symbols.c	2018-08-28 02:06:14.000000000 +0000
@@ -184,7 +184,7 @@ convert_one_symbol (struct compile_c_ins
 
 	case LOC_BLOCK:
 	  kind = GCC_C_SYMBOL_FUNCTION;
-	  addr = BLOCK_START (SYMBOL_BLOCK_VALUE (sym.symbol));
+	  addr = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym.symbol));
 	  if (is_global && TYPE_GNU_IFUNC (SYMBOL_TYPE (sym.symbol)))
 	    addr = gnu_ifunc_resolve_addr (target_gdbarch (), addr);
 	  break;
@@ -497,7 +497,7 @@ gcc_symbol_address (void *datum, struct 
 	    fprintf_unfiltered (gdb_stdlog,
 				"gcc_symbol_address \"%s\": full symbol\n",
 				identifier);
-	  result = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+	  result = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
 	  if (TYPE_GNU_IFUNC (SYMBOL_TYPE (sym)))
 	    result = gnu_ifunc_resolve_addr (target_gdbarch (), result);
 	  found = 1;
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/compile/compile-object-run.c ./gdb/compile/compile-object-run.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/compile/compile-object-run.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/compile/compile-object-run.c	2018-08-28 02:06:14.000000000 +0000
@@ -152,7 +152,7 @@ compile_object_run (struct compile_modul
 
       gdb_assert (TYPE_CODE (func_type) == TYPE_CODE_FUNC);
       func_val = value_from_pointer (lookup_pointer_type (func_type),
-				   BLOCK_START (SYMBOL_BLOCK_VALUE (func_sym)));
+				   BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (func_sym)));
 
       vargs = XALLOCAVEC (struct value *, TYPE_NFIELDS (func_type));
       if (TYPE_NFIELDS (func_type) >= 1)
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/ChangeLog ./gdb/doc/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/ChangeLog	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/doc/ChangeLog	2018-08-28 02:06:14.000000000 +0000
@@ -1,3 +1,7 @@
+2018-08-21  Alan Hayward  <alan.hayward@arm.com>
+
+	* gdb.texinfo (AArch64 SVE): New subsubsection.
+
 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
 
 	PR tdep/8282
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gcore.1 ./gdb/doc/gcore.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gcore.1	2018-08-21 02:08:55.000000000 +0000
+++ ./gdb/doc/gcore.1	2018-08-28 02:10:27.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GCORE 1"
-.TH GCORE 1 "2018-08-21" "gdb-8.1.90.20180821-git" "GNU Development Tools"
+.TH GCORE 1 "2018-08-28" "gdb-8.1.90.20180828-git" "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
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.1 ./gdb/doc/gdb.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.1	2018-08-21 02:08:54.000000000 +0000
+++ ./gdb/doc/gdb.1	2018-08-28 02:10:26.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDB 1"
-.TH GDB 1 "2018-08-21" "gdb-8.1.90.20180821-git" "GNU Development Tools"
+.TH GDB 1 "2018-08-28" "gdb-8.1.90.20180828-git" "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
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb-add-index.1 ./gdb/doc/gdb-add-index.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb-add-index.1	2018-08-21 02:08:55.000000000 +0000
+++ ./gdb/doc/gdb-add-index.1	2018-08-28 02:10:27.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDB-ADD-INDEX 1"
-.TH GDB-ADD-INDEX 1 "2018-08-21" "gdb-8.1.90.20180821-git" "GNU Development Tools"
+.TH GDB-ADD-INDEX 1 "2018-08-28" "gdb-8.1.90.20180828-git" "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
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info ./gdb/doc/gdb.info
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info	2018-08-21 02:08:51.000000000 +0000
+++ ./gdb/doc/gdb.info	2018-08-28 02:10:23.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
@@ -41,10 +41,10 @@ Indirect:
 gdb.info-1: 1716
 gdb.info-2: 301867
 gdb.info-3: 604510
-gdb.info-4: 905850
-gdb.info-5: 1206106
-gdb.info-6: 1501788
-gdb.info-7: 1803837
+gdb.info-4: 906538
+gdb.info-5: 1206794
+gdb.info-6: 1502476
+gdb.info-7: 1804525
 
 Tag Table:
 (Indirect)
@@ -352,437 +352,437 @@ Node: CRIS824548
 Node: Super-H825524
 Node: Architectures826583
 Node: AArch64827032
-Node: i386827438
-Ref: i386-Footnote-1831648
-Node: Alpha831734
-Node: MIPS831867
-Node: HPPA835761
-Node: SPU836279
-Node: PowerPC838465
-Node: Nios II839200
-Node: Sparc64839605
-Node: Controlling GDB841960
-Node: Prompt842856
-Node: Editing844574
-Node: Command History845517
-Node: Screen Size849823
-Node: Numbers851832
-Node: ABI853811
-Node: Auto-loading856984
-Ref: set auto-load off858359
-Ref: show auto-load858995
-Ref: info auto-load859774
-Node: Init File in the Current Directory862741
-Ref: set auto-load local-gdbinit863316
-Ref: show auto-load local-gdbinit863498
-Ref: info auto-load local-gdbinit863662
-Node: libthread_db.so.1 file863810
-Ref: set auto-load libthread-db864749
-Ref: show auto-load libthread-db864880
-Ref: info auto-load libthread-db865017
-Node: Auto-loading safe path865201
-Ref: set auto-load safe-path866507
-Ref: show auto-load safe-path867246
-Ref: add-auto-load-safe-path867369
-Node: Auto-loading verbose mode870271
-Ref: set debug auto-load871434
-Ref: show debug auto-load871535
-Node: Messages/Warnings871657
-Ref: confirmation requests873091
-Node: Debugging Output874295
-Node: Other Misc Settings884113
-Node: Extending GDB885137
-Node: Sequences886990
-Node: Define887651
-Node: Hooks891731
-Node: Command Files894097
-Node: Output899170
-Ref: eval903972
-Node: Auto-loading sequences905850
-Ref: set auto-load gdb-scripts906345
-Ref: show auto-load gdb-scripts906469
-Ref: info auto-load gdb-scripts906599
-Node: Python906830
-Node: Python Commands908003
-Node: Python API910331
-Node: Basic Python912936
-Ref: prompt_hook923523
-Node: Exception Handling924121
-Node: Values From Inferior926617
-Node: Types In Python939814
-Node: Pretty Printing API949674
-Node: Selecting Pretty-Printers953570
-Node: Writing a Pretty-Printer955903
-Node: Type Printing API961225
-Node: Frame Filter API963841
-Node: Frame Decorator API971122
-Ref: frame_args974706
-Node: Writing a Frame Filter978036
-Node: Unwinding Frames in Python989510
-Node: Xmethods In Python994966
-Node: Xmethod API997862
-Node: Writing an Xmethod1001674
-Node: Inferiors In Python1007509
-Node: Events In Python1010653
-Node: Threads In Python1019571
-Node: Recordings In Python1022458
-Node: Commands In Python1029792
-Node: Parameters In Python1039205
-Node: Functions In Python1045146
-Node: Progspaces In Python1047363
-Node: Objfiles In Python1050864
-Node: Frames In Python1056643
-Node: Blocks In Python1063486
-Node: Symbols In Python1067848
-Node: Symbol Tables In Python1075076
-Node: Line Tables In Python1078299
-Node: Breakpoints In Python1081136
-Ref: python_breakpoint_thread1087459
-Node: Finish Breakpoints in Python1090492
-Node: Lazy Strings In Python1092598
-Node: Architectures In Python1094828
-Node: Python Auto-loading1097017
-Ref: set auto-load python-scripts1097646
-Ref: show auto-load python-scripts1097746
-Ref: info auto-load python-scripts1097852
-Node: Python modules1098986
-Node: gdb.printing1099372
-Node: gdb.types1100799
-Node: gdb.prompt1103811
-Node: Guile1105460
-Node: Guile Introduction1106119
-Node: Guile Commands1106990
-Node: Guile API1108844
-Node: Basic Guile1110841
-Node: Guile Configuration1116523
-Node: GDB Scheme Data Types1117499
-Node: Guile Exception Handling1119331
-Node: Values From Inferior In Guile1123365
-Node: Arithmetic In Guile1138900
-Node: Types In Guile1140531
-Ref: Fields of a type in Guile1148472
-Node: Guile Pretty Printing API1149860
-Node: Selecting Guile Pretty-Printers1155462
-Node: Writing a Guile Pretty-Printer1157838
-Node: Commands In Guile1163023
-Node: Parameters In Guile1173803
-Ref: Parameters In Guile-Footnote-11180684
-Node: Progspaces In Guile1180800
-Node: Objfiles In Guile1183388
-Node: Frames In Guile1185669
-Node: Blocks In Guile1192247
-Node: Symbols In Guile1197055
-Node: Symbol Tables In Guile1206106
-Node: Breakpoints In Guile1209069
-Node: Lazy Strings In Guile1219330
-Node: Architectures In Guile1221621
-Node: Disassembly In Guile1225928
-Node: I/O Ports in Guile1229130
-Node: Memory Ports in Guile1229686
-Node: Iterators In Guile1232952
-Node: Guile Auto-loading1237241
-Ref: set auto-load guile-scripts1237864
-Ref: show auto-load guile-scripts1237962
-Ref: info auto-load guile-scripts1238066
-Node: Guile Modules1239025
-Node: Guile Printing Module1239347
-Node: Guile Types Module1240166
-Node: Auto-loading extensions1241459
-Node: objfile-gdbdotext file1242657
-Ref: set auto-load scripts-directory1244093
-Ref: with-auto-load-dir1244469
-Ref: show auto-load scripts-directory1245287
-Ref: add-auto-load-scripts-directory1245367
-Node: dotdebug_gdb_scripts section1245843
-Node: Which flavor to choose?1249593
-Node: Multiple Extension Languages1251414
-Node: Aliases1252478
-Node: Interpreters1255343
-Node: TUI1258436
-Node: TUI Overview1259434
-Node: TUI Keys1261867
-Node: TUI Single Key Mode1264171
-Node: TUI Commands1265178
-Node: TUI Configuration1269117
-Node: Emacs1270423
-Node: GDB/MI1275860
-Node: GDB/MI General Design1277834
-Node: Context management1280354
-Node: Asynchronous and non-stop modes1284141
-Node: Thread groups1287115
-Node: GDB/MI Command Syntax1289393
-Node: GDB/MI Input Syntax1289636
-Node: GDB/MI Output Syntax1291186
-Node: GDB/MI Compatibility with CLI1294771
-Node: GDB/MI Development and Front Ends1295508
-Node: GDB/MI Output Records1297162
-Node: GDB/MI Result Records1297568
-Node: GDB/MI Stream Records1298918
-Node: GDB/MI Async Records1300183
-Node: GDB/MI Breakpoint Information1310620
-Node: GDB/MI Frame Information1314571
-Node: GDB/MI Thread Information1315657
-Node: GDB/MI Ada Exception Information1317127
-Node: GDB/MI Simple Examples1317677
-Node: GDB/MI Command Description Format1319885
-Node: GDB/MI Breakpoint Commands1320765
-Ref: -break-insert1327873
-Node: GDB/MI Catchpoint Commands1341328
-Node: Shared Library GDB/MI Catchpoint Commands1341696
-Node: Ada Exception GDB/MI Catchpoint Commands1343354
-Node: GDB/MI Program Context1346855
-Node: GDB/MI Thread Commands1351123
-Node: GDB/MI Ada Tasking Commands1354386
-Node: GDB/MI Program Execution1356658
-Node: GDB/MI Stack Manipulation1368692
-Ref: -stack-list-arguments1370591
-Ref: -stack-list-frames1374296
-Ref: -stack-list-locals1378159
-Ref: -stack-list-variables1379649
-Node: GDB/MI Variable Objects1381183
-Ref: -var-set-format1391148
-Ref: -var-list-children1392529
-Ref: -var-update1401337
-Ref: -var-set-frozen1404335
-Ref: -var-set-update-range1405132
-Ref: -var-set-visualizer1405661
-Node: GDB/MI Data Manipulation1407151
-Node: GDB/MI Tracepoint Commands1427325
-Node: GDB/MI Symbol Query1439116
-Node: GDB/MI File Commands1439805
-Node: GDB/MI Target Manipulation1444239
-Node: GDB/MI File Transfer Commands1450897
-Node: GDB/MI Ada Exceptions Commands1452220
-Node: GDB/MI Support Commands1453573
-Node: GDB/MI Miscellaneous Commands1458146
-Ref: -interpreter-exec1468480
-Node: Annotations1470820
-Node: Annotations Overview1471739
-Node: Server Prefix1474202
-Node: Prompting1474936
-Node: Errors1476453
-Node: Invalidation1477349
-Node: Annotations for Running1477828
-Node: Source Annotations1479362
-Node: JIT Interface1480291
-Node: Declarations1482090
-Node: Registering Code1483477
-Node: Unregistering Code1484449
-Node: Custom Debug Info1485076
-Node: Using JIT Debug Info Readers1486372
-Node: Writing JIT Debug Info Readers1487384
-Node: In-Process Agent1489579
-Ref: Control Agent1491522
-Node: In-Process Agent Protocol1492389
-Node: IPA Protocol Objects1493180
-Ref: agent expression object1494178
-Ref: tracepoint action object1494383
-Ref: tracepoint object1494463
-Node: IPA Protocol Commands1496993
-Node: GDB Bugs1498463
-Node: Bug Criteria1499195
-Node: Bug Reporting1501788
-Node: Command Line Editing1509617
-Node: Introduction and Notation1510269
-Node: Readline Interaction1511890
-Node: Readline Bare Essentials1513079
-Node: Readline Movement Commands1514860
-Node: Readline Killing Commands1515818
-Node: Readline Arguments1517734
-Node: Searching1518776
-Node: Readline Init File1520926
-Node: Readline Init File Syntax1522077
-Node: Conditional Init Constructs1537176
-Node: Sample Init File1539699
-Node: Bindable Readline Commands1542813
-Node: Commands For Moving1543865
-Node: Commands For History1544723
-Node: Commands For Text1548118
-Node: Commands For Killing1550841
-Node: Numeric Arguments1552981
-Node: Commands For Completion1554117
-Node: Keyboard Macros1556083
-Node: Miscellaneous Commands1556651
-Node: Readline vi Mode1560499
-Node: Using History Interactively1561409
-Node: History Interaction1561924
-Node: Event Designators1563346
-Node: Word Designators1564483
-Node: Modifiers1566118
-Node: In Memoriam1567339
-Node: Formatting Documentation1568222
-Ref: Formatting Documentation-Footnote-11571598
-Node: Installing GDB1571694
-Node: Requirements1572266
-Ref: Expat1572835
-Ref: MPFR1573785
-Node: Running Configure1576176
-Node: Separate Objdir1579955
-Node: Config Names1582934
-Node: Configure Options1584411
-Node: System-wide configuration1586782
-Node: System-wide Configuration Scripts1588742
-Node: Maintenance Commands1589926
-Ref: maint info breakpoints1591581
-Ref: maint check libthread-db1600046
-Node: Remote Protocol1613042
-Node: Overview1613734
-Ref: Binary Data1616279
-Node: Packets1618804
-Ref: thread-id syntax1619704
-Ref: extended mode1621149
-Ref: ? packet1621407
-Ref: bc1622873
-Ref: bs1623083
-Ref: read registers packet1624700
-Ref: cycle step packet1626555
-Ref: write register packet1629266
-Ref: step with signal packet1630245
-Ref: vCont packet1631721
-Ref: vCtrlC packet1634954
-Ref: vKill packet1637372
-Ref: X packet1638905
-Ref: insert breakpoint or watchpoint packet1639274
-Node: Stop Reply Packets1643600
-Ref: swbreak stop reason1646851
-Ref: thread create event1650448
-Ref: thread exit event1651651
-Node: General Query Packets1653860
-Ref: qCRC packet1656690
-Ref: QEnvironmentHexEncoded1659843
-Ref: QEnvironmentUnset1661073
-Ref: QEnvironmentReset1662017
-Ref: QSetWorkingDir packet1662961
-Ref: QNonStop1669412
-Ref: QCatchSyscalls1670088
-Ref: QPassSignals1671625
-Ref: QProgramSignals1672832
-Ref: QThreadEvents1674399
-Ref: qSearch memory1676417
-Ref: QStartNoAckMode1676925
-Ref: qSupported1677456
-Ref: multiprocess extensions1693463
-Ref: install tracepoint in tracing1695493
-Ref: qXfer read1700016
-Ref: qXfer auxiliary vector read1701623
-Ref: qXfer btrace read1701971
-Ref: qXfer btrace-conf read1703036
-Ref: qXfer executable filename read1703387
-Ref: qXfer target description read1704002
-Ref: qXfer library list read1704436
-Ref: qXfer svr4 library list read1705092
-Ref: qXfer memory map read1706945
-Ref: qXfer sdata read1707332
-Ref: qXfer siginfo read1707798
-Ref: qXfer spu read1708195
-Ref: qXfer threads read1708719
-Ref: qXfer traceframe info read1709122
-Ref: qXfer unwind info block1709540
-Ref: qXfer fdpic loadmap read1709774
-Ref: qXfer osdata read1710190
-Ref: qXfer write1710344
-Ref: qXfer siginfo write1711436
-Ref: qXfer spu write1711833
-Ref: General Query Packets-Footnote-11714689
-Node: Architecture-Specific Protocol Details1715016
-Node: ARM-Specific Protocol Details1715525
-Node: ARM Breakpoint Kinds1715773
-Node: MIPS-Specific Protocol Details1716104
-Node: MIPS Register packet Format1716387
-Node: MIPS Breakpoint Kinds1717314
-Node: Tracepoint Packets1717732
-Ref: QTEnable1727046
-Ref: QTDisable1727242
-Ref: qTfSTM1732779
-Ref: qTsSTM1732779
-Ref: qTSTMat1733856
-Ref: QTBuffer-size1735007
-Node: Host I/O Packets1736980
-Node: Interrupts1742560
-Ref: interrupting remote targets1742704
-Node: Notification Packets1744872
-Node: Remote Non-Stop1750297
-Node: Packet Acknowledgment1753413
-Node: Examples1755528
-Node: File-I/O Remote Protocol Extension1756122
-Node: File-I/O Overview1756584
-Node: Protocol Basics1758783
-Node: The F Request Packet1761012
-Node: The F Reply Packet1761913
-Node: The Ctrl-C Message1762831
-Node: Console I/O1764457
-Node: List of Supported Calls1765673
-Node: open1766035
-Node: close1768543
-Node: read1768926
-Node: write1769535
-Node: lseek1770306
-Node: rename1771190
-Node: unlink1772597
-Node: stat/fstat1773544
-Node: gettimeofday1774437
-Node: isatty1774873
-Node: system1775469
-Node: Protocol-specific Representation of Datatypes1777011
-Node: Integral Datatypes1777388
-Node: Pointer Values1778195
-Node: Memory Transfer1778899
-Node: struct stat1779519
-Node: struct timeval1781721
-Node: Constants1782238
-Node: Open Flags1782687
-Node: mode_t Values1783028
-Node: Errno Values1783520
-Node: Lseek Flags1784330
-Node: Limits1784515
-Node: File-I/O Examples1784875
-Node: Library List Format1785963
-Node: Library List Format for SVR4 Targets1788745
-Node: Memory Map Format1791212
-Node: Thread List Format1793736
-Node: Traceframe Info Format1794740
-Node: Branch Trace Format1796426
-Node: Branch Trace Configuration Format1798126
-Node: Agent Expressions1799300
-Node: General Bytecode Design1803837
-Node: Bytecode Descriptions1808631
-Node: Using Agent Expressions1822098
-Node: Varying Target Capabilities1824075
-Node: Rationale1825236
-Node: Target Descriptions1832625
-Node: Retrieving Descriptions1834568
-Node: Target Description Format1835653
-Node: Predefined Target Types1845528
-Node: Enum Target Types1846956
-Node: Standard Target Features1847951
-Node: AArch64 Features1849915
-Node: ARC Features1850490
-Node: ARM Features1852551
-Node: i386 Features1854065
-Node: MicroBlaze Features1856280
-Node: MIPS Features1856857
-Node: M68K Features1858048
-Node: NDS32 Features1858709
-Node: Nios II Features1859733
-Node: OpenRISC 1000 Features1860138
-Node: PowerPC Features1860504
-Node: S/390 and System z Features1861835
-Node: Sparc Features1863980
-Node: TIC6x Features1864885
-Node: Operating System Information1865434
-Node: Process list1866269
-Node: Trace File Format1867332
-Node: Index Section Format1870546
-Node: Man Pages1878472
-Node: gdb man1878942
-Node: gdbserver man1884978
-Node: gcore man1892175
-Node: gdbinit man1893117
-Node: gdb-add-index man1894026
-Ref: gdb-add-index1894135
-Node: Copying1895009
-Node: GNU Free Documentation License1932570
-Node: Concept Index1957717
-Node: Command and Variable Index2095131
+Node: i386828126
+Ref: i386-Footnote-1832336
+Node: Alpha832422
+Node: MIPS832555
+Node: HPPA836449
+Node: SPU836967
+Node: PowerPC839153
+Node: Nios II839888
+Node: Sparc64840293
+Node: Controlling GDB842648
+Node: Prompt843544
+Node: Editing845262
+Node: Command History846205
+Node: Screen Size850511
+Node: Numbers852520
+Node: ABI854499
+Node: Auto-loading857672
+Ref: set auto-load off859047
+Ref: show auto-load859683
+Ref: info auto-load860462
+Node: Init File in the Current Directory863429
+Ref: set auto-load local-gdbinit864004
+Ref: show auto-load local-gdbinit864186
+Ref: info auto-load local-gdbinit864350
+Node: libthread_db.so.1 file864498
+Ref: set auto-load libthread-db865437
+Ref: show auto-load libthread-db865568
+Ref: info auto-load libthread-db865705
+Node: Auto-loading safe path865889
+Ref: set auto-load safe-path867195
+Ref: show auto-load safe-path867934
+Ref: add-auto-load-safe-path868057
+Node: Auto-loading verbose mode870959
+Ref: set debug auto-load872122
+Ref: show debug auto-load872223
+Node: Messages/Warnings872345
+Ref: confirmation requests873779
+Node: Debugging Output874983
+Node: Other Misc Settings884801
+Node: Extending GDB885825
+Node: Sequences887678
+Node: Define888339
+Node: Hooks892419
+Node: Command Files894785
+Node: Output899858
+Ref: eval904660
+Node: Auto-loading sequences906538
+Ref: set auto-load gdb-scripts907033
+Ref: show auto-load gdb-scripts907157
+Ref: info auto-load gdb-scripts907287
+Node: Python907518
+Node: Python Commands908691
+Node: Python API911019
+Node: Basic Python913624
+Ref: prompt_hook924211
+Node: Exception Handling924809
+Node: Values From Inferior927305
+Node: Types In Python940502
+Node: Pretty Printing API950362
+Node: Selecting Pretty-Printers954258
+Node: Writing a Pretty-Printer956591
+Node: Type Printing API961913
+Node: Frame Filter API964529
+Node: Frame Decorator API971810
+Ref: frame_args975394
+Node: Writing a Frame Filter978724
+Node: Unwinding Frames in Python990198
+Node: Xmethods In Python995654
+Node: Xmethod API998550
+Node: Writing an Xmethod1002362
+Node: Inferiors In Python1008197
+Node: Events In Python1011341
+Node: Threads In Python1020259
+Node: Recordings In Python1023146
+Node: Commands In Python1030480
+Node: Parameters In Python1039893
+Node: Functions In Python1045834
+Node: Progspaces In Python1048051
+Node: Objfiles In Python1051552
+Node: Frames In Python1057331
+Node: Blocks In Python1064174
+Node: Symbols In Python1068536
+Node: Symbol Tables In Python1075764
+Node: Line Tables In Python1078987
+Node: Breakpoints In Python1081824
+Ref: python_breakpoint_thread1088147
+Node: Finish Breakpoints in Python1091180
+Node: Lazy Strings In Python1093286
+Node: Architectures In Python1095516
+Node: Python Auto-loading1097705
+Ref: set auto-load python-scripts1098334
+Ref: show auto-load python-scripts1098434
+Ref: info auto-load python-scripts1098540
+Node: Python modules1099674
+Node: gdb.printing1100060
+Node: gdb.types1101487
+Node: gdb.prompt1104499
+Node: Guile1106148
+Node: Guile Introduction1106807
+Node: Guile Commands1107678
+Node: Guile API1109532
+Node: Basic Guile1111529
+Node: Guile Configuration1117211
+Node: GDB Scheme Data Types1118187
+Node: Guile Exception Handling1120019
+Node: Values From Inferior In Guile1124053
+Node: Arithmetic In Guile1139588
+Node: Types In Guile1141219
+Ref: Fields of a type in Guile1149160
+Node: Guile Pretty Printing API1150548
+Node: Selecting Guile Pretty-Printers1156150
+Node: Writing a Guile Pretty-Printer1158526
+Node: Commands In Guile1163711
+Node: Parameters In Guile1174491
+Ref: Parameters In Guile-Footnote-11181372
+Node: Progspaces In Guile1181488
+Node: Objfiles In Guile1184076
+Node: Frames In Guile1186357
+Node: Blocks In Guile1192935
+Node: Symbols In Guile1197743
+Node: Symbol Tables In Guile1206794
+Node: Breakpoints In Guile1209757
+Node: Lazy Strings In Guile1220018
+Node: Architectures In Guile1222309
+Node: Disassembly In Guile1226616
+Node: I/O Ports in Guile1229818
+Node: Memory Ports in Guile1230374
+Node: Iterators In Guile1233640
+Node: Guile Auto-loading1237929
+Ref: set auto-load guile-scripts1238552
+Ref: show auto-load guile-scripts1238650
+Ref: info auto-load guile-scripts1238754
+Node: Guile Modules1239713
+Node: Guile Printing Module1240035
+Node: Guile Types Module1240854
+Node: Auto-loading extensions1242147
+Node: objfile-gdbdotext file1243345
+Ref: set auto-load scripts-directory1244781
+Ref: with-auto-load-dir1245157
+Ref: show auto-load scripts-directory1245975
+Ref: add-auto-load-scripts-directory1246055
+Node: dotdebug_gdb_scripts section1246531
+Node: Which flavor to choose?1250281
+Node: Multiple Extension Languages1252102
+Node: Aliases1253166
+Node: Interpreters1256031
+Node: TUI1259124
+Node: TUI Overview1260122
+Node: TUI Keys1262555
+Node: TUI Single Key Mode1264859
+Node: TUI Commands1265866
+Node: TUI Configuration1269805
+Node: Emacs1271111
+Node: GDB/MI1276548
+Node: GDB/MI General Design1278522
+Node: Context management1281042
+Node: Asynchronous and non-stop modes1284829
+Node: Thread groups1287803
+Node: GDB/MI Command Syntax1290081
+Node: GDB/MI Input Syntax1290324
+Node: GDB/MI Output Syntax1291874
+Node: GDB/MI Compatibility with CLI1295459
+Node: GDB/MI Development and Front Ends1296196
+Node: GDB/MI Output Records1297850
+Node: GDB/MI Result Records1298256
+Node: GDB/MI Stream Records1299606
+Node: GDB/MI Async Records1300871
+Node: GDB/MI Breakpoint Information1311308
+Node: GDB/MI Frame Information1315259
+Node: GDB/MI Thread Information1316345
+Node: GDB/MI Ada Exception Information1317815
+Node: GDB/MI Simple Examples1318365
+Node: GDB/MI Command Description Format1320573
+Node: GDB/MI Breakpoint Commands1321453
+Ref: -break-insert1328561
+Node: GDB/MI Catchpoint Commands1342016
+Node: Shared Library GDB/MI Catchpoint Commands1342384
+Node: Ada Exception GDB/MI Catchpoint Commands1344042
+Node: GDB/MI Program Context1347543
+Node: GDB/MI Thread Commands1351811
+Node: GDB/MI Ada Tasking Commands1355074
+Node: GDB/MI Program Execution1357346
+Node: GDB/MI Stack Manipulation1369380
+Ref: -stack-list-arguments1371279
+Ref: -stack-list-frames1374984
+Ref: -stack-list-locals1378847
+Ref: -stack-list-variables1380337
+Node: GDB/MI Variable Objects1381871
+Ref: -var-set-format1391836
+Ref: -var-list-children1393217
+Ref: -var-update1402025
+Ref: -var-set-frozen1405023
+Ref: -var-set-update-range1405820
+Ref: -var-set-visualizer1406349
+Node: GDB/MI Data Manipulation1407839
+Node: GDB/MI Tracepoint Commands1428013
+Node: GDB/MI Symbol Query1439804
+Node: GDB/MI File Commands1440493
+Node: GDB/MI Target Manipulation1444927
+Node: GDB/MI File Transfer Commands1451585
+Node: GDB/MI Ada Exceptions Commands1452908
+Node: GDB/MI Support Commands1454261
+Node: GDB/MI Miscellaneous Commands1458834
+Ref: -interpreter-exec1469168
+Node: Annotations1471508
+Node: Annotations Overview1472427
+Node: Server Prefix1474890
+Node: Prompting1475624
+Node: Errors1477141
+Node: Invalidation1478037
+Node: Annotations for Running1478516
+Node: Source Annotations1480050
+Node: JIT Interface1480979
+Node: Declarations1482778
+Node: Registering Code1484165
+Node: Unregistering Code1485137
+Node: Custom Debug Info1485764
+Node: Using JIT Debug Info Readers1487060
+Node: Writing JIT Debug Info Readers1488072
+Node: In-Process Agent1490267
+Ref: Control Agent1492210
+Node: In-Process Agent Protocol1493077
+Node: IPA Protocol Objects1493868
+Ref: agent expression object1494866
+Ref: tracepoint action object1495071
+Ref: tracepoint object1495151
+Node: IPA Protocol Commands1497681
+Node: GDB Bugs1499151
+Node: Bug Criteria1499883
+Node: Bug Reporting1502476
+Node: Command Line Editing1510305
+Node: Introduction and Notation1510957
+Node: Readline Interaction1512578
+Node: Readline Bare Essentials1513767
+Node: Readline Movement Commands1515548
+Node: Readline Killing Commands1516506
+Node: Readline Arguments1518422
+Node: Searching1519464
+Node: Readline Init File1521614
+Node: Readline Init File Syntax1522765
+Node: Conditional Init Constructs1537864
+Node: Sample Init File1540387
+Node: Bindable Readline Commands1543501
+Node: Commands For Moving1544553
+Node: Commands For History1545411
+Node: Commands For Text1548806
+Node: Commands For Killing1551529
+Node: Numeric Arguments1553669
+Node: Commands For Completion1554805
+Node: Keyboard Macros1556771
+Node: Miscellaneous Commands1557339
+Node: Readline vi Mode1561187
+Node: Using History Interactively1562097
+Node: History Interaction1562612
+Node: Event Designators1564034
+Node: Word Designators1565171
+Node: Modifiers1566806
+Node: In Memoriam1568027
+Node: Formatting Documentation1568910
+Ref: Formatting Documentation-Footnote-11572286
+Node: Installing GDB1572382
+Node: Requirements1572954
+Ref: Expat1573523
+Ref: MPFR1574473
+Node: Running Configure1576864
+Node: Separate Objdir1580643
+Node: Config Names1583622
+Node: Configure Options1585099
+Node: System-wide configuration1587470
+Node: System-wide Configuration Scripts1589430
+Node: Maintenance Commands1590614
+Ref: maint info breakpoints1592269
+Ref: maint check libthread-db1600734
+Node: Remote Protocol1613730
+Node: Overview1614422
+Ref: Binary Data1616967
+Node: Packets1619492
+Ref: thread-id syntax1620392
+Ref: extended mode1621837
+Ref: ? packet1622095
+Ref: bc1623561
+Ref: bs1623771
+Ref: read registers packet1625388
+Ref: cycle step packet1627243
+Ref: write register packet1629954
+Ref: step with signal packet1630933
+Ref: vCont packet1632409
+Ref: vCtrlC packet1635642
+Ref: vKill packet1638060
+Ref: X packet1639593
+Ref: insert breakpoint or watchpoint packet1639962
+Node: Stop Reply Packets1644288
+Ref: swbreak stop reason1647539
+Ref: thread create event1651136
+Ref: thread exit event1652339
+Node: General Query Packets1654548
+Ref: qCRC packet1657378
+Ref: QEnvironmentHexEncoded1660531
+Ref: QEnvironmentUnset1661761
+Ref: QEnvironmentReset1662705
+Ref: QSetWorkingDir packet1663649
+Ref: QNonStop1670100
+Ref: QCatchSyscalls1670776
+Ref: QPassSignals1672313
+Ref: QProgramSignals1673520
+Ref: QThreadEvents1675087
+Ref: qSearch memory1677105
+Ref: QStartNoAckMode1677613
+Ref: qSupported1678144
+Ref: multiprocess extensions1694151
+Ref: install tracepoint in tracing1696181
+Ref: qXfer read1700704
+Ref: qXfer auxiliary vector read1702311
+Ref: qXfer btrace read1702659
+Ref: qXfer btrace-conf read1703724
+Ref: qXfer executable filename read1704075
+Ref: qXfer target description read1704690
+Ref: qXfer library list read1705124
+Ref: qXfer svr4 library list read1705780
+Ref: qXfer memory map read1707633
+Ref: qXfer sdata read1708020
+Ref: qXfer siginfo read1708486
+Ref: qXfer spu read1708883
+Ref: qXfer threads read1709407
+Ref: qXfer traceframe info read1709810
+Ref: qXfer unwind info block1710228
+Ref: qXfer fdpic loadmap read1710462
+Ref: qXfer osdata read1710878
+Ref: qXfer write1711032
+Ref: qXfer siginfo write1712124
+Ref: qXfer spu write1712521
+Ref: General Query Packets-Footnote-11715377
+Node: Architecture-Specific Protocol Details1715704
+Node: ARM-Specific Protocol Details1716213
+Node: ARM Breakpoint Kinds1716461
+Node: MIPS-Specific Protocol Details1716792
+Node: MIPS Register packet Format1717075
+Node: MIPS Breakpoint Kinds1718002
+Node: Tracepoint Packets1718420
+Ref: QTEnable1727734
+Ref: QTDisable1727930
+Ref: qTfSTM1733467
+Ref: qTsSTM1733467
+Ref: qTSTMat1734544
+Ref: QTBuffer-size1735695
+Node: Host I/O Packets1737668
+Node: Interrupts1743248
+Ref: interrupting remote targets1743392
+Node: Notification Packets1745560
+Node: Remote Non-Stop1750985
+Node: Packet Acknowledgment1754101
+Node: Examples1756216
+Node: File-I/O Remote Protocol Extension1756810
+Node: File-I/O Overview1757272
+Node: Protocol Basics1759471
+Node: The F Request Packet1761700
+Node: The F Reply Packet1762601
+Node: The Ctrl-C Message1763519
+Node: Console I/O1765145
+Node: List of Supported Calls1766361
+Node: open1766723
+Node: close1769231
+Node: read1769614
+Node: write1770223
+Node: lseek1770994
+Node: rename1771878
+Node: unlink1773285
+Node: stat/fstat1774232
+Node: gettimeofday1775125
+Node: isatty1775561
+Node: system1776157
+Node: Protocol-specific Representation of Datatypes1777699
+Node: Integral Datatypes1778076
+Node: Pointer Values1778883
+Node: Memory Transfer1779587
+Node: struct stat1780207
+Node: struct timeval1782409
+Node: Constants1782926
+Node: Open Flags1783375
+Node: mode_t Values1783716
+Node: Errno Values1784208
+Node: Lseek Flags1785018
+Node: Limits1785203
+Node: File-I/O Examples1785563
+Node: Library List Format1786651
+Node: Library List Format for SVR4 Targets1789433
+Node: Memory Map Format1791900
+Node: Thread List Format1794424
+Node: Traceframe Info Format1795428
+Node: Branch Trace Format1797114
+Node: Branch Trace Configuration Format1798814
+Node: Agent Expressions1799988
+Node: General Bytecode Design1804525
+Node: Bytecode Descriptions1809319
+Node: Using Agent Expressions1822786
+Node: Varying Target Capabilities1824763
+Node: Rationale1825924
+Node: Target Descriptions1833313
+Node: Retrieving Descriptions1835256
+Node: Target Description Format1836341
+Node: Predefined Target Types1846216
+Node: Enum Target Types1847644
+Node: Standard Target Features1848639
+Node: AArch64 Features1850603
+Node: ARC Features1851178
+Node: ARM Features1853239
+Node: i386 Features1854753
+Node: MicroBlaze Features1856968
+Node: MIPS Features1857545
+Node: M68K Features1858736
+Node: NDS32 Features1859397
+Node: Nios II Features1860421
+Node: OpenRISC 1000 Features1860826
+Node: PowerPC Features1861192
+Node: S/390 and System z Features1862523
+Node: Sparc Features1864668
+Node: TIC6x Features1865573
+Node: Operating System Information1866122
+Node: Process list1866957
+Node: Trace File Format1868020
+Node: Index Section Format1871234
+Node: Man Pages1879160
+Node: gdb man1879630
+Node: gdbserver man1885666
+Node: gcore man1892863
+Node: gdbinit man1893805
+Node: gdb-add-index man1894714
+Ref: gdb-add-index1894823
+Node: Copying1895697
+Node: GNU Free Documentation License1933258
+Node: Concept Index1958405
+Node: Command and Variable Index2095892
 
 End Tag Table
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-1 ./gdb/doc/gdb.info-1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-1	2018-08-21 02:08:39.000000000 +0000
+++ ./gdb/doc/gdb.info-1	2018-08-28 02:10:10.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
@@ -44,7 +44,7 @@ Debugging with GDB
 
 This file describes GDB, the GNU symbolic debugger.
 
-   This is the Tenth Edition, for GDB (GDB) Version 8.1.90.20180821-git.
+   This is the Tenth Edition, for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
@@ -501,7 +501,7 @@ Let us use GDB to try to see what is goi
      There is absolutely no warranty for GDB; type "show warranty"
       for details.
 
-     GDB 8.1.90.20180821-git, Copyright 1999 Free Software Foundation, Inc...
+     GDB 8.1.90.20180828-git, Copyright 1999 Free Software Foundation, Inc...
      (gdb)
 
 GDB reads only enough symbol data to know where to find the rest when
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-2 ./gdb/doc/gdb.info-2
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-2	2018-08-21 02:08:41.000000000 +0000
+++ ./gdb/doc/gdb.info-2	2018-08-28 02:10:12.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-3 ./gdb/doc/gdb.info-3
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-3	2018-08-21 02:08:43.000000000 +0000
+++ ./gdb/doc/gdb.info-3	2018-08-28 02:10:14.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
@@ -5231,6 +5231,21 @@ following special commands:
 'show debug aarch64'
      Show whether AArch64 debugging messages are displayed.
 
+21.4.1.1 AArch64 SVE.
+.....................
+
+When GDB is debugging the AArch64 architecture, if the Scalable Vector
+Extension (SVE) is present, then GDB will provide the vector registers
+'$z0' through '$z31', vector predicate registers '$p0' through '$p15',
+and the '$ffr' register.  In addition, the pseudo register '$vg' will be
+provided.  This is the vector granule for the current thread and
+represents the number of 64-bit chunks in an SVE 'z' register.
+
+   If the vector length changes, then the '$vg' register will be
+updated, but the lengths of the 'z' and 'p' registers will not change.
+This is a known limitation of GDB and does not affect the execution of
+the target process.
+
 
 File: gdb.info,  Node: i386,  Next: Alpha,  Prev: AArch64,  Up: Architectures
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-4 ./gdb/doc/gdb.info-4
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-4	2018-08-21 02:08:45.000000000 +0000
+++ ./gdb/doc/gdb.info-4	2018-08-28 02:10:17.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-5 ./gdb/doc/gdb.info-5
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-5	2018-08-21 02:08:47.000000000 +0000
+++ ./gdb/doc/gdb.info-5	2018-08-28 02:10:19.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-6 ./gdb/doc/gdb.info-6
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-6	2018-08-21 02:08:49.000000000 +0000
+++ ./gdb/doc/gdb.info-6	2018-08-28 02:10:21.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
@@ -1724,7 +1724,7 @@ and TeX (or 'texi2roff') to typeset the 
 
    GDB includes an already formatted copy of the on-line Info version of
 this manual in the 'gdb' subdirectory.  The main Info file is
-'gdb-8.1.90.20180821-git/gdb/gdb.info', and it refers to subordinate
+'gdb-8.1.90.20180828-git/gdb/gdb.info', and it refers to subordinate
 files matching 'gdb.info*' in the same directory.  If necessary, you can
 print out these files, or read them with any editor; but they are easier
 to read using the 'info' subsystem in GNU Emacs or the standalone 'info'
@@ -1734,8 +1734,8 @@ program, available as part of the GNU Te
 Info formatting programs, such as 'texinfo-format-buffer' or 'makeinfo'.
 
    If you have 'makeinfo' installed, and are in the top level GDB source
-directory ('gdb-8.1.90.20180821-git', in the case of version
-8.1.90.20180821-git), you can make the Info file by typing:
+directory ('gdb-8.1.90.20180828-git', in the case of version
+8.1.90.20180828-git), you can make the Info file by typing:
 
      cd gdb
      make gdb.info
@@ -1760,7 +1760,7 @@ On its own, TeX cannot either read or ty
 
    If you have TeX and a DVI printer program installed, you can typeset
 and print this manual.  First switch to the 'gdb' subdirectory of the
-main source directory (for example, to 'gdb-8.1.90.20180821-git/gdb')
+main source directory (for example, to 'gdb-8.1.90.20180828-git/gdb')
 and type:
 
      make gdb.dvi
@@ -1769,8 +1769,8 @@ and type:
 
    ---------- Footnotes ----------
 
-   (1) In 'gdb-8.1.90.20180821-git/gdb/refcard.ps' of the version
-8.1.90.20180821-git release.
+   (1) In 'gdb-8.1.90.20180828-git/gdb/refcard.ps' of the version
+8.1.90.20180828-git release.
 
 
 File: gdb.info,  Node: Installing GDB,  Next: Maintenance Commands,  Prev: Formatting Documentation,  Up: Top
@@ -1888,39 +1888,39 @@ preparing GDB for installation; you can 
 a single directory, whose name is usually composed by appending the
 version number to 'gdb'.
 
-   For example, the GDB version 8.1.90.20180821-git distribution is in
-the 'gdb-8.1.90.20180821-git' directory.  That directory contains:
+   For example, the GDB version 8.1.90.20180828-git distribution is in
+the 'gdb-8.1.90.20180828-git' directory.  That directory contains:
 
-'gdb-8.1.90.20180821-git/configure (and supporting files)'
+'gdb-8.1.90.20180828-git/configure (and supporting files)'
      script for configuring GDB and all its supporting libraries
 
-'gdb-8.1.90.20180821-git/gdb'
+'gdb-8.1.90.20180828-git/gdb'
      the source specific to GDB itself
 
-'gdb-8.1.90.20180821-git/bfd'
+'gdb-8.1.90.20180828-git/bfd'
      source for the Binary File Descriptor library
 
-'gdb-8.1.90.20180821-git/include'
+'gdb-8.1.90.20180828-git/include'
      GNU include files
 
-'gdb-8.1.90.20180821-git/libiberty'
+'gdb-8.1.90.20180828-git/libiberty'
      source for the '-liberty' free software library
 
-'gdb-8.1.90.20180821-git/opcodes'
+'gdb-8.1.90.20180828-git/opcodes'
      source for the library of opcode tables and disassemblers
 
-'gdb-8.1.90.20180821-git/readline'
+'gdb-8.1.90.20180828-git/readline'
      source for the GNU command-line interface
 
-'gdb-8.1.90.20180821-git/glob'
+'gdb-8.1.90.20180828-git/glob'
      source for the GNU filename pattern-matching subroutine
 
-'gdb-8.1.90.20180821-git/mmalloc'
+'gdb-8.1.90.20180828-git/mmalloc'
      source for the GNU memory-mapped malloc package
 
    The simplest way to configure and build GDB is to run 'configure'
 from the 'gdb-VERSION-NUMBER' source directory, which in this example is
-the 'gdb-8.1.90.20180821-git' directory.
+the 'gdb-8.1.90.20180828-git' directory.
 
    First switch to the 'gdb-VERSION-NUMBER' source directory if you are
 not already in it; then run 'configure'.  Pass the identifier for the
@@ -1928,7 +1928,7 @@ platform on which GDB will run as an arg
 
    For example:
 
-     cd gdb-8.1.90.20180821-git
+     cd gdb-8.1.90.20180828-git
      ./configure HOST
      make
 
@@ -1950,8 +1950,8 @@ need to run 'sh' on it explicitly:
 
    If you run 'configure' from a directory that contains source
 directories for multiple libraries or programs, such as the
-'gdb-8.1.90.20180821-git' source directory for version
-8.1.90.20180821-git, 'configure' creates configuration files for every
+'gdb-8.1.90.20180828-git' source directory for version
+8.1.90.20180828-git, 'configure' creates configuration files for every
 directory level underneath (unless you tell it not to, with the
 '--norecursion' option).
 
@@ -1991,13 +1991,13 @@ to specify a path to find 'configure' it
 directory.  If the path to 'configure' would be the same as the argument
 to '--srcdir', you can leave out the '--srcdir' option; it is assumed.)
 
-   For example, with version 8.1.90.20180821-git, you can build GDB in a
+   For example, with version 8.1.90.20180828-git, you can build GDB in a
 separate directory for a Sun 4 like this:
 
-     cd gdb-8.1.90.20180821-git
+     cd gdb-8.1.90.20180828-git
      mkdir ../gdb-sun4
      cd ../gdb-sun4
-     ../gdb-8.1.90.20180821-git/configure sun4
+     ../gdb-8.1.90.20180828-git/configure sun4
      make
 
    When 'configure' builds a configuration using a remote source
@@ -2008,7 +2008,7 @@ the example, you'd find the Sun 4 librar
 
    Make sure that your path to the 'configure' script has just one
 instance of 'gdb' in it.  If your path to 'configure' looks like
-'../gdb-8.1.90.20180821-git/gdb/configure', you are configuring only one
+'../gdb-8.1.90.20180828-git/gdb/configure', you are configuring only one
 subdirectory of GDB, not the whole package.  This leads to build errors
 about missing include files such as 'bfd/bfd.h'.
 
@@ -2024,8 +2024,8 @@ a configured directory--whatever directo
 
    The 'Makefile' that 'configure' generates in each source directory
 also runs recursively.  If you type 'make' in a source directory such as
-'gdb-8.1.90.20180821-git' (or in a separate configured directory
-configured with '--srcdir=DIRNAME/gdb-8.1.90.20180821-git'), you will
+'gdb-8.1.90.20180828-git' (or in a separate configured directory
+configured with '--srcdir=DIRNAME/gdb-8.1.90.20180828-git'), you will
 build all the required libraries, and then build GDB.
 
    When you have multiple hosts or targets configured in separate
@@ -2070,7 +2070,7 @@ you can use it to test your guesses on a
      Invalid configuration `i986v': machine `i986v' not recognized
 
 'config.sub' is also distributed in the GDB source directory
-('gdb-8.1.90.20180821-git', for version 8.1.90.20180821-git).
+('gdb-8.1.90.20180828-git', for version 8.1.90.20180828-git).
 
 
 File: gdb.info,  Node: Configure Options,  Next: System-wide configuration,  Prev: Config Names,  Up: Installing GDB
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-7 ./gdb/doc/gdb.info-7
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.info-7	2018-08-21 02:08:51.000000000 +0000
+++ ./gdb/doc/gdb.info-7	2018-08-28 02:10:23.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180821-git.
+Source-Level Debugger' for GDB (GDB) Version 8.1.90.20180828-git.
 
    Copyright (C) 1988-2018 Free Software Foundation, Inc.
 
@@ -3695,6 +3695,7 @@ Concept Index
 * {TYPE}:                                Expressions.        (line   41)
 * A packet:                              Packets.            (line   65)
 * AArch64 support:                       AArch64.            (line    6)
+* AArch64 SVE.:                          AArch64.            (line   19)
 * abbreviation:                          Command Syntax.     (line   13)
 * acknowledgment, for GDB remote:        Packet Acknowledgment.
                                                              (line    6)
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdbinit.5 ./gdb/doc/gdbinit.5
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdbinit.5	2018-08-21 02:08:55.000000000 +0000
+++ ./gdb/doc/gdbinit.5	2018-08-28 02:10:27.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDBINIT 5"
-.TH GDBINIT 5 "2018-08-21" "gdb-8.1.90.20180821-git" "GNU Development Tools"
+.TH GDBINIT 5 "2018-08-28" "gdb-8.1.90.20180828-git" "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
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdbserver.1 ./gdb/doc/gdbserver.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdbserver.1	2018-08-21 02:08:55.000000000 +0000
+++ ./gdb/doc/gdbserver.1	2018-08-28 02:10:26.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDBSERVER 1"
-.TH GDBSERVER 1 "2018-08-21" "gdb-8.1.90.20180821-git" "GNU Development Tools"
+.TH GDBSERVER 1 "2018-08-28" "gdb-8.1.90.20180828-git" "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
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.texinfo ./gdb/doc/gdb.texinfo
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/doc/gdb.texinfo	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/doc/gdb.texinfo	2018-08-28 02:06:14.000000000 +0000
@@ -23190,6 +23190,22 @@ Show whether AArch64 debugging messages 
 
 @end table
 
+@subsubsection AArch64 SVE.
+@cindex AArch64 SVE.
+
+When @value{GDBN} is debugging the AArch64 architecture, if the Scalable Vector
+Extension (SVE) is present, then @value{GDBN} will provide the vector registers
+@code{$z0} through @code{$z31}, vector predicate registers @code{$p0} through
+@code{$p15}, and the @code{$ffr} register.  In addition, the pseudo register
+@code{$vg} will be provided.  This is the vector granule for the current thread
+and represents the number of 64-bit chunks in an SVE @code{z} register.
+
+If the vector length changes, then the @code{$vg} register will be updated,
+but the lengths of the @code{z} and @code{p} registers will not change.  This
+is a known limitation of @value{GDBN} and does not affect the execution of the
+target process.
+
+
 @node i386
 @subsection x86 Architecture-specific Issues
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/dwarf2loc.c ./gdb/dwarf2loc.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/dwarf2loc.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/dwarf2loc.c	2018-08-28 02:06:14.000000000 +0000
@@ -361,7 +361,7 @@ dwarf2_find_location_expression (struct 
 	  if (pc_block)
 	    pc_func = block_linkage_function (pc_block);
 
-	  if (pc_func && pc == BLOCK_START (SYMBOL_BLOCK_VALUE (pc_func)))
+	  if (pc_func && pc == BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (pc_func)))
 	    {
 	      *locexpr_length = length;
 	      return loc_ptr;
@@ -833,7 +833,7 @@ func_addr_to_tail_call_list (struct gdba
   struct symbol *sym = find_pc_function (addr);
   struct type *type;
 
-  if (sym == NULL || BLOCK_START (SYMBOL_BLOCK_VALUE (sym)) != addr)
+  if (sym == NULL || BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym)) != addr)
     throw_error (NO_ENTRY_VALUE_ERROR,
 		 _("DW_TAG_call_site resolving failed to find function "
 		   "name for address %s"),
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/dwarf2read.c ./gdb/dwarf2read.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/dwarf2read.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/dwarf2read.c	2018-08-28 02:06:14.000000000 +0000
@@ -14737,6 +14737,7 @@ dwarf2_record_block_ranges (struct die_i
       unsigned long offset = (DW_UNSND (attr)
 			      + (need_ranges_base ? cu->ranges_base : 0));
 
+      std::vector<blockrange> blockvec;
       dwarf2_ranges_process (offset, cu,
 	[&] (CORE_ADDR start, CORE_ADDR end)
 	{
@@ -14745,7 +14746,10 @@ dwarf2_record_block_ranges (struct die_i
 	  start = gdbarch_adjust_dwarf2_addr (gdbarch, start);
 	  end = gdbarch_adjust_dwarf2_addr (gdbarch, end);
 	  record_block_range (block, start, end - 1);
+	  blockvec.emplace_back (start, end);
 	});
+
+      BLOCK_RANGES(block) = make_blockranges (objfile, blockvec);
     }
 }
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/findvar.c ./gdb/findvar.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/findvar.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/findvar.c	2018-08-28 02:06:14.000000000 +0000
@@ -702,10 +702,10 @@ default_read_var_value (struct symbol *v
     case LOC_BLOCK:
       if (overlay_debugging)
 	addr = symbol_overlayed_address
-	  (BLOCK_START (SYMBOL_BLOCK_VALUE (var)),
+	  (BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (var)),
 	   SYMBOL_OBJ_SECTION (symbol_objfile (var), var));
       else
-	addr = BLOCK_START (SYMBOL_BLOCK_VALUE (var));
+	addr = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (var));
       break;
 
     case LOC_REGISTER:
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/gdbserver/ChangeLog ./gdb/gdbserver/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/gdbserver/ChangeLog	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/gdbserver/ChangeLog	2018-08-28 02:06:14.000000000 +0000
@@ -1,3 +1,10 @@
+2018-08-26  Simon Marchi  <simon.marchi@ericsson.com>
+
+	PR gdb/23374
+	PR gdb/23375
+	* server.h (struct client_state) <disable_randomization>:
+	Initialize to 1.
+
 2018-07-11  Pedro Alves  <palves@redhat.com>
 
 	PR gdb/23377
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/gdbserver/server.h ./gdb/gdbserver/server.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/gdbserver/server.h	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/gdbserver/server.h	2018-08-28 02:06:14.000000000 +0000
@@ -176,7 +176,7 @@ struct client_state
 
   /* Whether we should attempt to disable the operating system's address
      space randomization feature before starting an inferior.  */
-  int disable_randomization = 0;
+  int disable_randomization = 1;
 
   int pass_signals[GDB_SIGNAL_LAST];
   int program_signals[GDB_SIGNAL_LAST];
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/infcmd.c ./gdb/infcmd.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/infcmd.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/infcmd.c	2018-08-28 02:06:14.000000000 +0000
@@ -1552,7 +1552,7 @@ until_next_command (int from_tty)
     {
       sal = find_pc_line (pc, 0);
 
-      tp->control.step_range_start = BLOCK_START (SYMBOL_BLOCK_VALUE (func));
+      tp->control.step_range_start = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (func));
       tp->control.step_range_end = sal.end;
     }
   tp->control.may_range_step = 1;
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/infrun.c ./gdb/infrun.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/infrun.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/infrun.c	2018-08-28 02:06:14.000000000 +0000
@@ -4291,9 +4291,10 @@ fill_in_stop_func (struct gdbarch *gdbar
     {
       /* Don't care about return value; stop_func_start and stop_func_name
 	 will both be 0 if it doesn't work.  */
-      find_pc_partial_function (ecs->event_thread->suspend.stop_pc,
-				&ecs->stop_func_name,
-				&ecs->stop_func_start, &ecs->stop_func_end);
+      find_function_entry_range_from_pc (ecs->event_thread->suspend.stop_pc,
+				         &ecs->stop_func_name,
+				         &ecs->stop_func_start,
+					 &ecs->stop_func_end);
       ecs->stop_func_start
 	+= gdbarch_deprecated_function_start_offset (gdbarch);
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/inline-frame.c ./gdb/inline-frame.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/inline-frame.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/inline-frame.c	2018-08-28 02:06:14.000000000 +0000
@@ -165,7 +165,7 @@ inline_frame_this_id (struct frame_info 
      in the frame ID (and eventually, to set breakpoints).  */
   func = get_frame_function (this_frame);
   gdb_assert (func != NULL);
-  (*this_id).code_addr = BLOCK_START (SYMBOL_BLOCK_VALUE (func));
+  (*this_id).code_addr = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (func));
   (*this_id).artificial_depth++;
 }
 
@@ -341,8 +341,8 @@ skip_inline_frames (thread_info *thread,
 	  if (block_inlined_p (cur_block))
 	    {
 	      /* See comments in inline_frame_this_id about this use
-		 of BLOCK_START.  */
-	      if (BLOCK_START (cur_block) == this_pc
+		 of BLOCK_ENTRY_PC.  */
+	      if (BLOCK_ENTRY_PC (cur_block) == this_pc
 		  || block_starting_point_at (this_pc, cur_block))
 		{
 		  /* Do not skip the inlined frame if execution
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/linespec.c ./gdb/linespec.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/linespec.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/linespec.c	2018-08-28 02:06:14.000000000 +0000
@@ -2285,7 +2285,7 @@ convert_linespec_to_sals (struct linespe
 		   && SYMBOL_CLASS (sym) == LOC_BLOCK)
 		{
 		  const CORE_ADDR addr
-		    = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+		    = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
 
 		  bound_minimal_symbol_d *elem;
 		  for (int m = 0;
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/machoread.c ./gdb/machoread.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/machoread.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/machoread.c	2018-08-28 02:06:14.000000000 +0000
@@ -616,7 +616,7 @@ macho_symfile_read_all_oso (std::vector<
   std::sort (oso_vector_ptr->begin (), oso_vector_ptr->end (),
 	     oso_el_compare_name);
 
-  for (ix = 0; ix < oso_vector_ptr->size (); ++ix)
+  for (ix = 0; ix < oso_vector_ptr->size ();)
     {
       int pfx_len;
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/NEWS ./gdb/NEWS
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/NEWS	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/NEWS	2018-08-28 02:06:13.000000000 +0000
@@ -34,6 +34,9 @@
 * C expressions can now use _Alignof, and C++ expressions can now use
   alignof.
 
+* Support for SVE on AArch64 Linux.  Note that GDB does not detect changes to
+  the vector length while the process is running.
+
 * New commands
 
 set debug fbsd-nat
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/objfiles.c ./gdb/objfiles.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/objfiles.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/objfiles.c	2018-08-28 02:06:14.000000000 +0000
@@ -831,6 +831,14 @@ objfile_relocate1 (struct objfile *objfi
 	  BLOCK_START (b) += ANOFFSET (delta, block_line_section);
 	  BLOCK_END (b) += ANOFFSET (delta, block_line_section);
 
+	  if (BLOCK_RANGES (b) != nullptr)
+	    for (int j = 0; j < BLOCK_NRANGES (b); j++)
+	      {
+		BLOCK_RANGE_START (b, j)
+		  += ANOFFSET (delta, block_line_section);
+		BLOCK_RANGE_END (b, j) += ANOFFSET (delta, block_line_section);
+	      }
+
 	  /* We only want to iterate over the local symbols, not any
 	     symbols in included symtabs.  */
 	  ALL_DICT_SYMBOLS (BLOCK_DICT (b), iter, sym)
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/parse.c ./gdb/parse.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/parse.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/parse.c	2018-08-28 02:06:14.000000000 +0000
@@ -1147,7 +1147,7 @@ parse_exp_in_context_1 (const char **str
   if (!expression_context_block)
     expression_context_block = get_selected_block (&expression_context_pc);
   else if (pc == 0)
-    expression_context_pc = BLOCK_START (expression_context_block);
+    expression_context_pc = BLOCK_ENTRY_PC (expression_context_block);
   else
     expression_context_pc = pc;
 
@@ -1161,7 +1161,7 @@ parse_exp_in_context_1 (const char **str
 	  = BLOCKVECTOR_BLOCK (SYMTAB_BLOCKVECTOR (cursal.symtab),
 			       STATIC_BLOCK);
       if (expression_context_block)
-	expression_context_pc = BLOCK_START (expression_context_block);
+	expression_context_pc = BLOCK_ENTRY_PC (expression_context_block);
     }
 
   if (language_mode == language_mode_auto && block != NULL)
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/po/gdb.pot ./gdb/po/gdb.pot
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/po/gdb.pot	2018-08-21 02:08:29.000000000 +0000
+++ ./gdb/po/gdb.pot	2018-08-28 02:09:58.000000000 +0000
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-08-21 02:08+0000\n"
+"POT-Creation-Date: 2018-08-28 02:09+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -268,7 +268,7 @@ msgstr ""
 msgid "No definition of \"%s\" found."
 msgstr ""
 
-#: ada-exp.y:1345 c-exp.y:1035 c-exp.y:1087 cli/cli-cmds.c:929 d-exp.y:488
+#: ada-exp.y:1345 c-exp.y:1035 c-exp.y:1087 cli/cli-cmds.c:930 d-exp.y:488
 #: f-exp.y:481 go-exp.y:579 linespec.c:1623 linespec.c:3909 p-exp.y:698
 #: p-exp.y:757 source.c:197 symtab.c:4196
 msgid "No symbol table is loaded.  Use the \"file\" command."
@@ -3148,6 +3148,10 @@ msgstr ""
 msgid "DW_OP_entry_value resolving cannot find DW_TAG_call_site %s in %s"
 msgstr ""
 
+#: blockframe.c:409
+msgid "Entry block not found in find_function_entry_range_from_pc"
+msgstr ""
+
 #: break-catch-sig.c:195
 #, possible-c-format
 msgid "Catchpoint %d (signal %s), "
@@ -5661,227 +5665,232 @@ msgstr ""
 msgid "Invalid command"
 msgstr ""
 
-#: cli/cli-cmds.c:187
+#: cli/cli-cmds.c:188
 #, possible-c-format
 msgid "Argument required (%s)."
 msgstr ""
 
-#: cli/cli-cmds.c:197
+#: cli/cli-cmds.c:198
 msgid "\"info\" must be followed by the name of an info command.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:235
+#: cli/cli-cmds.c:236
 msgid "max-completions is zero, completion is disabled.\n"
 msgstr ""
 
 #. ARG_PREFIX and WORD are included in the output so that emacs
 #. will include the message in the output.
-#: cli/cli-cmds.c:302
+#: cli/cli-cmds.c:303
 #, possible-c-format
 msgid "%s%s %s\n"
 msgstr ""
 
-#: cli/cli-cmds.c:345 cli/cli-script.c:1439 infcmd.c:1258 infcmd.c:1275
+#: cli/cli-cmds.c:346 cli/cli-script.c:1439 infcmd.c:1258 infcmd.c:1275
 #: infcmd.c:1375 infcmd.c:2051 infcmd.c:2598 symfile.c:1096 symfile.c:1261
 #: symfile.c:2281 symfile.c:2358 tracepoint.c:2025 tracepoint.c:2031
 msgid "Not confirmed."
 msgstr ""
 
-#: cli/cli-cmds.c:356
+#: cli/cli-cmds.c:357
 #, possible-c-format
 msgid "The \"pwd\" command does not take an argument: %s"
 msgstr ""
 
-#: cli/cli-cmds.c:361
+#: cli/cli-cmds.c:362
 #, possible-c-format
 msgid "Error finding name of working directory: %s"
 msgstr ""
 
-#: cli/cli-cmds.c:365
+#: cli/cli-cmds.c:366
 #, possible-c-format
 msgid ""
 "Working directory %s\n"
 " (canonically %s).\n"
 msgstr ""
 
-#: cli/cli-cmds.c:368
+#: cli/cli-cmds.c:369
 #, possible-c-format
 msgid "Working directory %s.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:482
+#: cli/cli-cmds.c:483
 #, possible-c-format
 msgid "Script filename extension recognition is \"%s\".\n"
 msgstr ""
 
-#: cli/cli-cmds.c:580
+#: cli/cli-cmds.c:581
 msgid "source command requires file name of file to source."
 msgstr ""
 
-#: cli/cli-cmds.c:752
+#: cli/cli-cmds.c:753
 msgid "Fork failed"
 msgstr ""
 
-#: cli/cli-cmds.c:785
+#: cli/cli-cmds.c:786
 msgid "No default source file yet."
 msgstr ""
 
-#: cli/cli-cmds.c:809
+#: cli/cli-cmds.c:810
 msgid "Specified line is ambiguous:\n"
 msgstr ""
 
-#: cli/cli-cmds.c:816 cli/cli-cmds.c:1011
+#: cli/cli-cmds.c:817 cli/cli-cmds.c:1012
 msgid "Junk at end of line specification."
 msgstr ""
 
-#: cli/cli-cmds.c:827 cli/cli-cmds.c:1029
+#: cli/cli-cmds.c:828 cli/cli-cmds.c:1030
 #, possible-c-format
 msgid "No source file for address %s."
 msgstr ""
 
-#: cli/cli-cmds.c:849 cli/cli-cmds.c:1050
+#: cli/cli-cmds.c:850 cli/cli-cmds.c:1051
 #, possible-c-format
 msgid "No line number known for %s."
 msgstr ""
 
-#: cli/cli-cmds.c:911
+#: cli/cli-cmds.c:912
 #, possible-c-format
 msgid "Already at the start of %s."
 msgstr ""
 
-#: cli/cli-cmds.c:971
+#: cli/cli-cmds.c:972
 #, possible-c-format
 msgid "Specified first line '%.*s' is ambiguous:\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1002
+#: cli/cli-cmds.c:1003
 #, possible-c-format
 msgid "Specified last line '%s' is ambiguous:\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1015
+#: cli/cli-cmds.c:1016
 msgid "Specified first and last lines are in different files."
 msgstr ""
 
-#: cli/cli-cmds.c:1017
+#: cli/cli-cmds.c:1018
 msgid "Two empty args do not say what lines to list."
 msgstr ""
 
-#: cli/cli-cmds.c:1059 cli/cli-cmds.c:1065
+#: cli/cli-cmds.c:1060 cli/cli-cmds.c:1066
 msgid "No default source file yet.  Do \"help list\"."
 msgstr ""
 
-#: cli/cli-cmds.c:1137 dwarf2loc.c:2226 dwarf2loc.c:2262
+#: cli/cli-cmds.c:1128
+#, possible-c-format
+msgid "Address range %s to %s:\n"
+msgstr ""
+
+#: cli/cli-cmds.c:1157 dwarf2loc.c:2226 dwarf2loc.c:2262
 #: python/py-symbol.c:394 stack.c:2058 stack.c:2138 valops.c:1302
 msgid "No frame selected."
 msgstr ""
 
-#: cli/cli-cmds.c:1141
+#: cli/cli-cmds.c:1161
 msgid "No function contains program counter for selected frame."
 msgstr ""
 
-#: cli/cli-cmds.c:1197 record.c:494 record.c:632
+#: cli/cli-cmds.c:1218 record.c:494 record.c:632
 msgid "Missing modifier."
 msgstr ""
 
-#: cli/cli-cmds.c:1213
+#: cli/cli-cmds.c:1234
 msgid "Invalid disassembly modifier."
 msgstr ""
 
-#: cli/cli-cmds.c:1222
+#: cli/cli-cmds.c:1243
 msgid "Cannot specify both /m and /s."
 msgstr ""
 
-#: cli/cli-cmds.c:1238
+#: cli/cli-cmds.c:1259
 msgid "No function contains specified address."
 msgstr ""
 
-#: cli/cli-cmds.c:1293
+#: cli/cli-cmds.c:1314
 msgid "Not a user command."
 msgstr ""
 
-#: cli/cli-cmds.c:1313
+#: cli/cli-cmds.c:1334
 msgid "REGEXP string is empty"
 msgstr ""
 
-#: cli/cli-cmds.c:1316
+#: cli/cli-cmds.c:1337
 msgid "Error in regular expression"
 msgstr ""
 
-#: cli/cli-cmds.c:1373
+#: cli/cli-cmds.c:1394
 msgid "Usage: alias [-a] [--] ALIAS = COMMAND"
 msgstr ""
 
-#: cli/cli-cmds.c:1421
+#: cli/cli-cmds.c:1442
 #, possible-c-format
 msgid "Invalid command name: %s"
 msgstr ""
 
-#: cli/cli-cmds.c:1423
+#: cli/cli-cmds.c:1444
 #, possible-c-format
 msgid "Invalid command element name: %s"
 msgstr ""
 
-#: cli/cli-cmds.c:1437
+#: cli/cli-cmds.c:1458
 #, possible-c-format
 msgid "Invalid command to alias to: %s"
 msgstr ""
 
-#: cli/cli-cmds.c:1443
+#: cli/cli-cmds.c:1464
 #, possible-c-format
 msgid "Alias already exists: %s"
 msgstr ""
 
-#: cli/cli-cmds.c:1466
+#: cli/cli-cmds.c:1487
 msgid "Mismatched command length between ALIAS and COMMAND."
 msgstr ""
 
-#: cli/cli-cmds.c:1484
+#: cli/cli-cmds.c:1505
 msgid "ALIAS and COMMAND prefixes do not match."
 msgstr ""
 
-#: cli/cli-cmds.c:1505
+#: cli/cli-cmds.c:1526
 #, possible-c-format
 msgid "file: \"%s\", line number: %d, symbol: \"%s\"\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1593
+#: cli/cli-cmds.c:1614
 msgid "\"set debug\" must be followed by the name of a debug subcommand.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1617
+#: cli/cli-cmds.c:1638
 #, possible-c-format
 msgid "Verbose printing of informational messages is %s.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1620
+#: cli/cli-cmds.c:1641
 #, possible-c-format
 msgid "Verbosity is %s.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1627
+#: cli/cli-cmds.c:1648
 #, possible-c-format
 msgid "History expansion on command input is %s.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1635
+#: cli/cli-cmds.c:1656
 #, possible-c-format
 msgid "Debugging of remote protocol is %s.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1644
+#: cli/cli-cmds.c:1665
 #, possible-c-format
 msgid "Timeout limit to wait for target to respond is %s.\n"
 msgstr ""
 
-#: cli/cli-cmds.c:1653
+#: cli/cli-cmds.c:1674
 #, possible-c-format
 msgid "The max call depth for user-defined commands is %s.\n"
 msgstr ""
 
 #. Define the classes of commands.
 #. They will appear in the help list in alphabetical order.
-#: cli/cli-cmds.c:1665
+#: cli/cli-cmds.c:1686
 msgid ""
 "Maintenance commands.\n"
 "Some gdb commands are provided just for use by gdb maintainers.\n"
@@ -5889,42 +5898,42 @@ msgid ""
 "well documented as user commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1671
+#: cli/cli-cmds.c:1692
 msgid "Obscure features."
 msgstr ""
 
-#: cli/cli-cmds.c:1673
+#: cli/cli-cmds.c:1694
 msgid "Aliases of other commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1674
+#: cli/cli-cmds.c:1695
 msgid ""
 "User-defined commands.\n"
 "The commands in this class are those defined by the user.\n"
 "Use the \"define\" command to define a command."
 msgstr ""
 
-#: cli/cli-cmds.c:1678
+#: cli/cli-cmds.c:1699
 msgid "Support facilities."
 msgstr ""
 
-#: cli/cli-cmds.c:1680
+#: cli/cli-cmds.c:1701
 msgid "Status inquiries."
 msgstr ""
 
-#: cli/cli-cmds.c:1681
+#: cli/cli-cmds.c:1702
 msgid "Specifying and examining files."
 msgstr ""
 
-#: cli/cli-cmds.c:1684
+#: cli/cli-cmds.c:1705
 msgid "Making program stop at certain points."
 msgstr ""
 
-#: cli/cli-cmds.c:1685
+#: cli/cli-cmds.c:1706
 msgid "Examining data."
 msgstr ""
 
-#: cli/cli-cmds.c:1686
+#: cli/cli-cmds.c:1707
 msgid ""
 "Examining the stack.\n"
 "The stack is made up of stack frames.  Gdb assigns numbers to stack frames\n"
@@ -5936,16 +5945,16 @@ msgid ""
 "The commands below can be used to select other frames by number or address."
 msgstr ""
 
-#: cli/cli-cmds.c:1695
+#: cli/cli-cmds.c:1716
 msgid "Running the program."
 msgstr ""
 
 #. Define general commands.
-#: cli/cli-cmds.c:1699
+#: cli/cli-cmds.c:1720
 msgid "Print working directory.  This is used for your program as well."
 msgstr ""
 
-#: cli/cli-cmds.c:1702
+#: cli/cli-cmds.c:1723
 msgid ""
 "Set working directory to DIR for debugger.\n"
 "The debugger's current working directory specifies where scripts and other\n"
@@ -5955,7 +5964,7 @@ msgid ""
 "way is to use the \"set cwd\" command."
 msgstr ""
 
-#: cli/cli-cmds.c:1710
+#: cli/cli-cmds.c:1731
 msgid ""
 "Print a constant string.  Give string as argument.\n"
 "C escape sequences may be used in the argument.\n"
@@ -5966,15 +5975,15 @@ msgid ""
 "to be printed or after trailing whitespace."
 msgstr ""
 
-#: cli/cli-cmds.c:1720
+#: cli/cli-cmds.c:1741
 msgid "Set mode for script filename extension recognition."
 msgstr ""
 
-#: cli/cli-cmds.c:1721
+#: cli/cli-cmds.c:1742
 msgid "Show mode for script filename extension recognition."
 msgstr ""
 
-#: cli/cli-cmds.c:1722
+#: cli/cli-cmds.c:1743
 msgid ""
 "off  == no filename extension recognition (all sourced files are GDB "
 "scripts)\n"
@@ -5984,7 +5993,7 @@ msgid ""
 "supported"
 msgstr ""
 
-#: cli/cli-cmds.c:1732
+#: cli/cli-cmds.c:1753
 msgid ""
 "Exit gdb.\n"
 "Usage: quit [EXPR]\n"
@@ -5992,113 +6001,113 @@ msgid ""
 "used as GDB's exit code.  The default is zero."
 msgstr ""
 
-#: cli/cli-cmds.c:1738
+#: cli/cli-cmds.c:1759
 msgid "Print list of commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1743
+#: cli/cli-cmds.c:1764
 msgid "Set verbosity."
 msgstr ""
 
-#: cli/cli-cmds.c:1744
+#: cli/cli-cmds.c:1765
 msgid "Show verbosity."
 msgstr ""
 
-#: cli/cli-cmds.c:1751
+#: cli/cli-cmds.c:1772
 msgid "Generic command for setting command history parameters."
 msgstr ""
 
-#: cli/cli-cmds.c:1754
+#: cli/cli-cmds.c:1775
 msgid "Generic command for showing command history parameters."
 msgstr ""
 
-#: cli/cli-cmds.c:1757
+#: cli/cli-cmds.c:1778
 msgid "Set history expansion on command input."
 msgstr ""
 
-#: cli/cli-cmds.c:1758
+#: cli/cli-cmds.c:1779
 msgid "Show history expansion on command input."
 msgstr ""
 
-#: cli/cli-cmds.c:1759
+#: cli/cli-cmds.c:1780
 msgid "Without an argument, history expansion is enabled."
 msgstr ""
 
-#: cli/cli-cmds.c:1765
+#: cli/cli-cmds.c:1786
 msgid "Generic command for showing things about the program being debugged."
 msgstr ""
 
-#: cli/cli-cmds.c:1772
+#: cli/cli-cmds.c:1793
 msgid "List the completions for the rest of the line as a command."
 msgstr ""
 
-#: cli/cli-cmds.c:1774
+#: cli/cli-cmds.c:1795
 msgid "Generic command for showing things about the debugger."
 msgstr ""
 
 #. Another way to get at the same thing.
-#: cli/cli-cmds.c:1778
+#: cli/cli-cmds.c:1799
 msgid "Show all GDB settings."
 msgstr ""
 
-#: cli/cli-cmds.c:1780
+#: cli/cli-cmds.c:1801
 msgid ""
 "Show the history of commands you typed.\n"
 "You can supply a command number to start with, or a `+' to start after\n"
 "the previous command number shown."
 msgstr ""
 
-#: cli/cli-cmds.c:1787
+#: cli/cli-cmds.c:1808
 msgid "Show what version of GDB this is."
 msgstr ""
 
-#: cli/cli-cmds.c:1790
+#: cli/cli-cmds.c:1811
 msgid "Show how GDB was configured at build time."
 msgstr ""
 
-#: cli/cli-cmds.c:1792
+#: cli/cli-cmds.c:1813
 msgid "Set debugging of remote protocol."
 msgstr ""
 
-#: cli/cli-cmds.c:1793
+#: cli/cli-cmds.c:1814
 msgid "Show debugging of remote protocol."
 msgstr ""
 
-#: cli/cli-cmds.c:1794
+#: cli/cli-cmds.c:1815
 msgid ""
 "When enabled, each packet sent or received with the remote target\n"
 "is displayed."
 msgstr ""
 
-#: cli/cli-cmds.c:1802
+#: cli/cli-cmds.c:1823
 msgid "Set timeout limit to wait for target to respond."
 msgstr ""
 
-#: cli/cli-cmds.c:1803
+#: cli/cli-cmds.c:1824
 msgid "Show timeout limit to wait for target to respond."
 msgstr ""
 
-#: cli/cli-cmds.c:1804
+#: cli/cli-cmds.c:1825
 msgid ""
 "This value is used to set the time limit for gdb to wait for a response\n"
 "from the target."
 msgstr ""
 
-#: cli/cli-cmds.c:1812
+#: cli/cli-cmds.c:1833
 msgid "Generic command for setting gdb debugging flags"
 msgstr ""
 
-#: cli/cli-cmds.c:1816
+#: cli/cli-cmds.c:1837
 msgid "Generic command for showing gdb debugging flags"
 msgstr ""
 
-#: cli/cli-cmds.c:1819
+#: cli/cli-cmds.c:1840
 msgid ""
 "Execute the rest of the line as a shell command.\n"
 "With no arguments, run an inferior shell."
 msgstr ""
 
-#: cli/cli-cmds.c:1824
+#: cli/cli-cmds.c:1845
 msgid ""
 "Edit specified file or function.\n"
 "With no argument, edits file containing most recent line listed.\n"
@@ -6110,7 +6119,7 @@ msgid ""
 "Uses EDITOR environment variable contents as editor (or ex as default)."
 msgstr ""
 
-#: cli/cli-cmds.c:1836
+#: cli/cli-cmds.c:1857
 msgid ""
 "List specified function or line.\n"
 "With no argument, lists ten more lines after or around previous listing.\n"
@@ -6131,7 +6140,7 @@ msgid ""
 "can be shown using \"show listsize\"."
 msgstr ""
 
-#: cli/cli-cmds.c:1860
+#: cli/cli-cmds.c:1881
 msgid ""
 "Disassemble a specified section of memory.\n"
 "Default is the function surrounding the pc of the selected frame.\n"
@@ -6161,42 +6170,42 @@ msgid ""
 "you must type \"disassemble 'foo.c'::bar\" and not \"disassemble foo.c:bar\"."
 msgstr ""
 
-#: cli/cli-cmds.c:1890
+#: cli/cli-cmds.c:1911
 msgid "Run the ``make'' program using the rest of the line as arguments."
 msgstr ""
 
-#: cli/cli-cmds.c:1893
+#: cli/cli-cmds.c:1914
 msgid ""
 "Show definitions of non-python/scheme user defined commands.\n"
 "Argument is the name of the user defined command.\n"
 "With no argument, show definitions of all user defined commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1898
+#: cli/cli-cmds.c:1919
 msgid "Search for commands matching a REGEXP"
 msgstr ""
 
-#: cli/cli-cmds.c:1901
+#: cli/cli-cmds.c:1922
 msgid "Set the max call depth for non-python/scheme user-defined commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1902
+#: cli/cli-cmds.c:1923
 msgid "Show the max call depth for non-python/scheme user-defined commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1908
+#: cli/cli-cmds.c:1929
 msgid "Set tracing of GDB CLI commands."
 msgstr ""
 
-#: cli/cli-cmds.c:1909
+#: cli/cli-cmds.c:1930
 msgid "Show state of GDB CLI command tracing."
 msgstr ""
 
-#: cli/cli-cmds.c:1910
+#: cli/cli-cmds.c:1931
 msgid "When 'on', each command is displayed as it is executed."
 msgstr ""
 
-#: cli/cli-cmds.c:1916
+#: cli/cli-cmds.c:1937
 msgid ""
 "Define a new command that is an alias of an existing command.\n"
 "Usage: alias [-a] [--] ALIAS = COMMAND\n"
@@ -6212,7 +6221,7 @@ msgid ""
 "  alias -a set print elms = set print elements"
 msgstr ""
 
-#: cli/cli-cmds.c:1937
+#: cli/cli-cmds.c:1958
 #, possible-c-format
 msgid ""
 "Read commands from a file named FILE.\n"
@@ -10107,7 +10116,7 @@ msgstr ""
 msgid "unhandled containing DIE tag %d for DIE at %s"
 msgstr ""
 
-#: dwarf2read.c:9087 dwarf2read.c:18258
+#: dwarf2read.c:9087 dwarf2read.c:18262
 msgid "malformed enumerator DIE ignored"
 msgstr ""
 
@@ -10118,15 +10127,15 @@ msgid ""
 "s]"
 msgstr ""
 
-#: dwarf2read.c:9179 dwarf2read.c:18479
+#: dwarf2read.c:9179 dwarf2read.c:18483
 msgid "ignoring absolute DW_AT_sibling"
 msgstr ""
 
-#: dwarf2read.c:9186 dwarf2read.c:18487
+#: dwarf2read.c:9186 dwarf2read.c:18491
 msgid "DW_AT_sibling points backwards"
 msgstr ""
 
-#: dwarf2read.c:9275 dwarf2read.c:19035
+#: dwarf2read.c:9275 dwarf2read.c:19039
 #, possible-c-format
 msgid "Dwarf Error: Cannot handle %s in DWARF reader [in module %s]"
 msgstr ""
@@ -10482,92 +10491,92 @@ msgstr ""
 msgid ".debug_ranges entry has start address of zero [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15117
+#: dwarf2read.c:15121
 #, possible-c-format
 msgid "Unhandled DW_AT_accessibility value (%x)"
 msgstr ""
 
-#: dwarf2read.c:15214
+#: dwarf2read.c:15218
 #, possible-c-format
 msgid "unsupported accessibility %d"
 msgstr ""
 
-#: dwarf2read.c:15226
+#: dwarf2read.c:15230
 msgid "unexpected virtuality in component of Ada type"
 msgstr ""
 
-#: dwarf2read.c:15278
+#: dwarf2read.c:15282
 msgid "unexpected member function in Ada type"
 msgstr ""
 
-#: dwarf2read.c:15343
+#: dwarf2read.c:15347
 #, possible-c-format
 msgid "member function type missing for '%s'"
 msgstr ""
 
-#: dwarf2read.c:15415
+#: dwarf2read.c:15419
 #, possible-c-format
 msgid "cannot determine context for virtual member function \"%s\" (offset %s)"
 msgstr ""
 
 #. GCC does this, as of 2008-08-25; PR debug/37237.
-#: dwarf2read.c:15442
+#: dwarf2read.c:15446
 #, possible-c-format
 msgid ""
 "Member function \"%s\" (offset %s) is virtual but the vtable offset is not "
 "specified"
 msgstr ""
 
-#: dwarf2read.c:15458
+#: dwarf2read.c:15462
 msgid "unexpected member functions in Ada type"
 msgstr ""
 
-#: dwarf2read.c:15555
+#: dwarf2read.c:15559
 #, possible-c-format
 msgid "DW_AT_alignment must have constant form - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15568
+#: dwarf2read.c:15572
 #, possible-c-format
 msgid "DW_AT_alignment value must not be negative - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15581
+#: dwarf2read.c:15585
 #, possible-c-format
 msgid "DW_AT_alignment value must not be zero - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15589
+#: dwarf2read.c:15593
 #, possible-c-format
 msgid "DW_AT_alignment value must be a power of 2 - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15607
+#: dwarf2read.c:15611
 #, possible-c-format
 msgid "DW_AT_alignment value too large - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15817
+#: dwarf2read.c:15821
 #, possible-c-format
 msgid "DW_AT_discr_list is not supported yet - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15870
+#: dwarf2read.c:15874
 #, possible-c-format
 msgid "DW_AT_discr does not have DIE reference form - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:15947
+#: dwarf2read.c:15951
 #, possible-c-format
 msgid "virtual function table pointer not found when defining class '%s'"
 msgstr ""
 
-#: dwarf2read.c:16319
+#: dwarf2read.c:16323
 #, possible-c-format
 msgid "unable to read array DW_AT_byte_stride  - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:16403
+#: dwarf2read.c:16407
 msgid "DW_AT_byte_size for array type smaller than the total size of elements"
 msgstr ""
 
@@ -10575,84 +10584,84 @@ msgstr ""
 #. not specified by DWARF.  It seems to have been
 #. emitted by gfortran at least as recently as:
 #. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23057.
-#: dwarf2read.c:16629
+#: dwarf2read.c:16633
 #, possible-c-format
 msgid ""
 "Variable in common block has DW_AT_data_member_location - DIE at %s [in "
 "module %s]"
 msgstr ""
 
-#: dwarf2read.c:16750
+#: dwarf2read.c:16754
 #, possible-c-format
 msgid "DW_TAG_module has no name, offset %s"
 msgstr ""
 
-#: dwarf2read.c:16866
+#: dwarf2read.c:16870
 #, possible-c-format
 msgid "invalid pointer size %d"
 msgstr ""
 
-#: dwarf2read.c:16870
+#: dwarf2read.c:16874
 #, possible-c-format
 msgid "Invalid DW_AT_alignment - DIE at %s [in module %s]"
 msgstr ""
 
 #. Self-referential typedefs are, it seems, not allowed by the DWARF
 #. spec and cause infinite loops in GDB.
-#: dwarf2read.c:17303
+#: dwarf2read.c:17307
 #, possible-c-format
 msgid "Self-referential DW_TAG_typedef - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:17357
+#: dwarf2read.c:17361
 msgid "DW_AT_name missing from DW_TAG_base_type"
 msgstr ""
 
-#: dwarf2read.c:17418
+#: dwarf2read.c:17422
 #, possible-c-format
 msgid "unsupported DW_ATE_UTF bit size: '%d'"
 msgstr ""
 
-#: dwarf2read.c:17427
+#: dwarf2read.c:17431
 #, possible-c-format
 msgid "unsupported DW_AT_encoding: '%s'"
 msgstr ""
 
-#: dwarf2read.c:17610
+#: dwarf2read.c:17614
 #, possible-c-format
 msgid "Missing DW_AT_lower_bound - DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:17860
+#: dwarf2read.c:17864
 #, possible-c-format
 msgid "Dwarf Error: could not find abbrev number %d [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:18243
+#: dwarf2read.c:18247
 #, possible-c-format
 msgid ""
 "DW_TAG_typedef has childen - GCC PR debug/47510 bug - DIE at %s [in module %"
 "s]"
 msgstr ""
 
-#: dwarf2read.c:18561
+#: dwarf2read.c:18565
 #, possible-c-format
 msgid "DW_AT_low_pc %s is zero for DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:18573
+#: dwarf2read.c:18577
 #, possible-c-format
 msgid "DW_AT_low_pc %s is not < DW_AT_high_pc %s for DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:18631
+#: dwarf2read.c:18635
 #, possible-c-format
 msgid ""
 "Dwarf Error: Type Unit at offset %s contains external reference to offset %s "
 "[in module %s].\n"
 msgstr ""
 
-#: dwarf2read.c:18666
+#: dwarf2read.c:18670
 #, possible-c-format
 msgid "could not find partial DIE %s in cache [from module %s]\n"
 msgstr ""
@@ -10661,141 +10670,141 @@ msgstr ""
 #. Later we can turn this into a complaint.
 #. For now flag a hard error.
 #. Later we can turn this into a complaint if warranted.
-#: dwarf2read.c:19009 dwarf2read.c:19021
+#: dwarf2read.c:19013 dwarf2read.c:19025
 #, possible-c-format
 msgid "Dwarf Error: %s found in non-DWO CU [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19055
+#: dwarf2read.c:19059
 #, possible-c-format
 msgid "Suspicious DW_AT_byte_size value treated as zero instead of %s"
 msgstr ""
 
-#: dwarf2read.c:19141
+#: dwarf2read.c:19145
 #, possible-c-format
 msgid "read_address: bad switch, signed [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19160
+#: dwarf2read.c:19164
 #, possible-c-format
 msgid "read_address: bad switch, unsigned [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19253
+#: dwarf2read.c:19257
 msgid "intermixed 32-bit and 64-bit DWARF sections"
 msgstr ""
 
-#: dwarf2read.c:19290
+#: dwarf2read.c:19294
 #, possible-c-format
 msgid "read_offset_1: bad switch [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19336
+#: dwarf2read.c:19340
 #, possible-c-format
 msgid "%s used without %s section [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19339
+#: dwarf2read.c:19343
 #, possible-c-format
 msgid "%s pointing outside of %s section [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19384
+#: dwarf2read.c:19388
 #, possible-c-format
 msgid "DW_FORM_GNU_strp_alt used without .debug_str section [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19388
+#: dwarf2read.c:19392
 #, possible-c-format
 msgid ""
 "DW_FORM_GNU_strp_alt pointing outside of .debug_str section [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19499
+#: dwarf2read.c:19503
 #, possible-c-format
 msgid "DW_FORM_addr_index used without .debug_addr section [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19502
+#: dwarf2read.c:19506
 #, possible-c-format
 msgid ""
 "DW_FORM_addr_index pointing outside of .debug_addr section [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19633
+#: dwarf2read.c:19637
 #, possible-c-format
 msgid ""
 "%s used without .debug_str.dwo section in CU at offset %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19637
+#: dwarf2read.c:19641
 #, possible-c-format
 msgid ""
 "%s used without .debug_str_offsets.dwo section in CU at offset %s [in module "
 "%s]"
 msgstr ""
 
-#: dwarf2read.c:19641
+#: dwarf2read.c:19645
 #, possible-c-format
 msgid ""
 "%s pointing outside of .debug_str_offsets.dwo section in CU at offset %s [in "
 "module %s]"
 msgstr ""
 
-#: dwarf2read.c:19651
+#: dwarf2read.c:19655
 #, possible-c-format
 msgid ""
 "Offset from %s pointing outside of .debug_str.dwo section in CU at offset %s "
 "[in module %s]"
 msgstr ""
 
-#: dwarf2read.c:19798
+#: dwarf2read.c:19802
 #, possible-c-format
 msgid "string type expected for attribute %s for DIE at %s in module %s"
 msgstr ""
 
-#: dwarf2read.c:20030
+#: dwarf2read.c:20034
 #, possible-c-format
 msgid "Unknown format content type %s"
 msgstr ""
 
-#: dwarf2read.c:20068
+#: dwarf2read.c:20072
 msgid "missing .debug_line.dwo section"
 msgstr ""
 
-#: dwarf2read.c:20070
+#: dwarf2read.c:20074
 msgid "missing .debug_line section"
 msgstr ""
 
 #. This is a version we don't understand.  The format could have
 #. changed in ways we don't handle properly so just punt.
-#: dwarf2read.c:20110
+#: dwarf2read.c:20114
 msgid "unsupported version in .debug_line section"
 msgstr ""
 
-#: dwarf2read.c:20125
+#: dwarf2read.c:20129
 #, possible-c-format
 msgid "unsupported segment selector size %u in .debug_line section"
 msgstr ""
 
-#: dwarf2read.c:20146
+#: dwarf2read.c:20150
 msgid "invalid maximum_ops_per_instruction in `.debug_line' section"
 msgstr ""
 
-#: dwarf2read.c:20220
+#: dwarf2read.c:20224
 msgid "line number info header doesn't fit in `.debug_line' section"
 msgstr ""
 
-#: dwarf2read.c:20686
+#: dwarf2read.c:20690
 #, possible-c-format
 msgid ".debug_line address at offset 0x%lx is 0 [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:20813 dwarf2read.c:20821
+#: dwarf2read.c:20817 dwarf2read.c:20825
 msgid "mangled .debug_line section"
 msgstr ""
 
-#: dwarf2read.c:21200
+#: dwarf2read.c:21204
 msgid "file index out of range"
 msgstr ""
 
@@ -10803,59 +10812,59 @@ msgstr ""
 #. trash data, but since we must specifically ignore things
 #. we don't recognize, there is nothing else we should do at
 #. this point.
-#: dwarf2read.c:21485
+#: dwarf2read.c:21489
 #, possible-c-format
 msgid "unsupported tag: '%s'"
 msgstr ""
 
-#: dwarf2read.c:21643 dwarf2read.c:23063
+#: dwarf2read.c:21647 dwarf2read.c:23067
 #, possible-c-format
 msgid "unsupported const value attribute form: '%s'"
 msgstr ""
 
-#: dwarf2read.c:21757
+#: dwarf2read.c:21761
 #, possible-c-format
 msgid ""
 "Dwarf Error: Problem turning containing type into gdb type [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:21773
+#: dwarf2read.c:21777
 #, possible-c-format
 msgid "<unknown type in %s, CU %s, DIE %s>"
 msgstr ""
 
-#: dwarf2read.c:21827
+#: dwarf2read.c:21831
 #, possible-c-format
 msgid "Dwarf Error: Bad type attribute %s in DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:21955
+#: dwarf2read.c:21959
 #, possible-c-format
 msgid "unexpected tag in read_type_die: '%s'"
 msgstr ""
 
-#: dwarf2read.c:22169
+#: dwarf2read.c:22173
 #, possible-c-format
 msgid "template param type '%s' defined within parent '%s'"
 msgstr ""
 
-#: dwarf2read.c:22704
+#: dwarf2read.c:22708
 #, possible-c-format
 msgid "unsupported die ref attribute form: '%s'"
 msgstr ""
 
 #. For DW_FORM_data16 see attr_form_is_constant.
-#: dwarf2read.c:22726
+#: dwarf2read.c:22730
 #, possible-c-format
 msgid "Attribute value is not a constant (%s)"
 msgstr ""
 
-#: dwarf2read.c:22749
+#: dwarf2read.c:22753
 #, possible-c-format
 msgid "Dwarf Error: Expected reference attribute [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:22827
+#: dwarf2read.c:22831
 #, possible-c-format
 msgid ""
 "Dwarf Error: Cannot find DIE at %s referenced from DIE at %s [in module %s]"
@@ -10863,279 +10872,279 @@ msgstr ""
 
 #. We shouldn't get here for a dummy CU, but don't crash on the user.
 #. Instead just throw an error, not much else we can do.
-#: dwarf2read.c:22860 dwarf2read.c:22967
+#: dwarf2read.c:22864 dwarf2read.c:22971
 #, possible-c-format
 msgid "Dwarf Error: Dummy CU at %s referenced in module %s"
 msgstr ""
 
-#: dwarf2read.c:22866 dwarf2read.c:22973
+#: dwarf2read.c:22870 dwarf2read.c:22977
 #, possible-c-format
 msgid "Dwarf Error: Cannot find DIE at %s referenced in module %s"
 msgstr ""
 
-#: dwarf2read.c:22893
+#: dwarf2read.c:22897
 #, possible-c-format
 msgid ""
 "Dwarf Error: DIE at %s referenced in module %s is neither DW_FORM_block* nor "
 "DW_FORM_exprloc"
 msgstr ""
 
-#: dwarf2read.c:23176 dwarf2read.c:23214
+#: dwarf2read.c:23180 dwarf2read.c:23218
 #, possible-c-format
 msgid ""
 "Dwarf Error: Cannot find signatured DIE %s referenced from DIE at %s [in "
 "module %s]"
 msgstr ""
 
-#: dwarf2read.c:23186 dwarf2read.c:23244
+#: dwarf2read.c:23190 dwarf2read.c:23248
 #, possible-c-format
 msgid ""
 "Dwarf Error: Problem reading signatured DIE %s referenced from DIE at %s [in "
 "module %s]"
 msgstr ""
 
-#: dwarf2read.c:23235
+#: dwarf2read.c:23239
 #, possible-c-format
 msgid ""
 "Dwarf Error: Cannot build signatured type %s referenced from DIE at %s [in "
 "module %s]"
 msgstr ""
 
-#: dwarf2read.c:23279
+#: dwarf2read.c:23283
 #, possible-c-format
 msgid ""
 "Dwarf Error: DW_AT_signature has bad form %s in DIE at %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:23599
+#: dwarf2read.c:23603
 #, possible-c-format
 msgid "unsupported stack op: '%s'"
 msgstr ""
 
-#: dwarf2read.c:23602
+#: dwarf2read.c:23606
 #, possible-c-format
 msgid "unsupported stack op: '%02x'"
 msgstr ""
 
-#: dwarf2read.c:23613
+#: dwarf2read.c:23617
 msgid "location description stack overflow"
 msgstr ""
 
-#: dwarf2read.c:23619
+#: dwarf2read.c:23623
 msgid "location description stack underflow"
 msgstr ""
 
-#: dwarf2read.c:23682
+#: dwarf2read.c:23686
 #, possible-c-format
 msgid "bad file number in macro information (%d)"
 msgstr ""
 
-#: dwarf2read.c:23744
+#: dwarf2read.c:23748
 #, possible-c-format
 msgid ""
 "macro definition contains spaces in formal argument list:\n"
 "`%s'"
 msgstr ""
 
-#: dwarf2read.c:23973
+#: dwarf2read.c:23977
 #, possible-c-format
 msgid "invalid form 0x%x in `%s'"
 msgstr ""
 
-#: dwarf2read.c:24000
+#: dwarf2read.c:24004
 #, possible-c-format
 msgid "unrecognized DW_MACFINO opcode 0x%x"
 msgstr ""
 
-#: dwarf2read.c:24045
+#: dwarf2read.c:24049
 #, possible-c-format
 msgid "unrecognized version `%d' in .debug_macro section"
 msgstr ""
 
 #. DWARF violation as no main source is present.
-#: dwarf2read.c:24192
+#: dwarf2read.c:24196
 #, possible-c-format
 msgid "debug info with no main source gives macro %s on line %d: %s"
 msgstr ""
 
-#: dwarf2read.c:24194 dwarf2read.c:24202
+#: dwarf2read.c:24198 dwarf2read.c:24206
 msgid "definition"
 msgstr ""
 
-#: dwarf2read.c:24194 dwarf2read.c:24202
+#: dwarf2read.c:24198 dwarf2read.c:24206
 msgid "undefinition"
 msgstr ""
 
-#: dwarf2read.c:24200
+#: dwarf2read.c:24204
 #, possible-c-format
 msgid "debug info gives %s macro %s with %s line %d: %s"
 msgstr ""
 
-#: dwarf2read.c:24201 dwarf2read.c:24231
+#: dwarf2read.c:24205 dwarf2read.c:24235
 msgid "command-line"
 msgstr ""
 
-#: dwarf2read.c:24201
+#: dwarf2read.c:24205
 msgid "in-file"
 msgstr ""
 
-#: dwarf2read.c:24203 dwarf2read.c:24232
+#: dwarf2read.c:24207 dwarf2read.c:24236
 msgid "zero"
 msgstr ""
 
-#: dwarf2read.c:24203 dwarf2read.c:24232
+#: dwarf2read.c:24207 dwarf2read.c:24236
 msgid "non-zero"
 msgstr ""
 
-#: dwarf2read.c:24229
+#: dwarf2read.c:24233
 #, possible-c-format
 msgid "debug info gives source %d included from %s at %s line %d"
 msgstr ""
 
-#: dwarf2read.c:24231 skip.c:331
+#: dwarf2read.c:24235 skip.c:331
 msgid "file"
 msgstr ""
 
-#: dwarf2read.c:24247
+#: dwarf2read.c:24251
 msgid "macro debug info has an unmatched `close_file' directive"
 msgstr ""
 
-#: dwarf2read.c:24274
+#: dwarf2read.c:24278
 msgid "no terminating 0-type entry for macros in `.debug_macinfo' section"
 msgstr ""
 
 #. This has actually happened; see
 #. http://sourceware.org/bugzilla/show_bug.cgi?id=13568.
-#: dwarf2read.c:24315
+#: dwarf2read.c:24319
 msgid "recursive DW_MACRO_import in .debug_macro section"
 msgstr ""
 
-#: dwarf2read.c:24410
+#: dwarf2read.c:24414
 #, possible-c-format
 msgid "missing %s section"
 msgstr ""
 
-#: dwarf2read.c:24708
+#: dwarf2read.c:24712
 msgid "Location list used without specifying the CU base address."
 msgstr ""
 
-#: dwarf2read.c:24883
+#: dwarf2read.c:24887
 #, possible-c-format
 msgid ""
 "Dwarf Error: could not find partial DIE containing offset %s [in module %s]"
 msgstr ""
 
-#: dwarf2read.c:24897
+#: dwarf2read.c:24901
 #, possible-c-format
 msgid "invalid dwarf2 offset %s"
 msgstr ""
 
-#: dwarf2read.c:25125
+#: dwarf2read.c:25129
 #, possible-c-format
 msgid "DW_AT_allocated has the wrong form (%s) at DIE %s"
 msgstr ""
 
-#: dwarf2read.c:25139
+#: dwarf2read.c:25143
 #, possible-c-format
 msgid "DW_AT_associated has the wrong form (%s) at DIE %s"
 msgstr ""
 
-#: dwarf2read.c:25167
+#: dwarf2read.c:25171
 #, possible-c-format
 msgid "A problem internal to GDB: DIE %s has type already set"
 msgstr ""
 
-#: dwarf2read.c:25326
+#: dwarf2read.c:25330
 #, possible-c-format
 msgid "Whether to always disassemble DWARF expressions is %s.\n"
 msgstr ""
 
-#: dwarf2read.c:25336
+#: dwarf2read.c:25340
 #, possible-c-format
 msgid "Whether to check \"physname\" is %s.\n"
 msgstr ""
 
-#: dwarf2read.c:25346
+#: dwarf2read.c:25350
 msgid ""
 "Set DWARF specific variables.\n"
 "Configure DWARF variables such as the cache size"
 msgstr ""
 
 #. allow-unknown
-#: dwarf2read.c:25352
+#: dwarf2read.c:25356
 msgid ""
 "Show DWARF specific variables\n"
 "Show DWARF variables such as the cache size"
 msgstr ""
 
-#: dwarf2read.c:25359
+#: dwarf2read.c:25363
 msgid "Set the upper bound on the age of cached DWARF compilation units."
 msgstr ""
 
-#: dwarf2read.c:25360
+#: dwarf2read.c:25364
 msgid "Show the upper bound on the age of cached DWARF compilation units."
 msgstr ""
 
-#: dwarf2read.c:25361
+#: dwarf2read.c:25365
 msgid ""
 "A higher limit means that cached compilation units will be stored\n"
 "in memory longer, and more total memory will be used.  Zero disables\n"
 "caching, which can slow down startup."
 msgstr ""
 
-#: dwarf2read.c:25371
+#: dwarf2read.c:25375
 msgid "Set whether `info address' always disassembles DWARF expressions."
 msgstr ""
 
-#: dwarf2read.c:25372
+#: dwarf2read.c:25376
 msgid "Show whether `info address' always disassembles DWARF expressions."
 msgstr ""
 
-#: dwarf2read.c:25373
+#: dwarf2read.c:25377
 msgid ""
 "When enabled, DWARF expressions are always printed in an assembly-like\n"
 "syntax.  When disabled, expressions will be printed in a more\n"
 "conversational style, when possible."
 msgstr ""
 
-#: dwarf2read.c:25382
+#: dwarf2read.c:25386
 msgid "Set debugging of the DWARF reader."
 msgstr ""
 
-#: dwarf2read.c:25383
+#: dwarf2read.c:25387
 msgid "Show debugging of the DWARF reader."
 msgstr ""
 
-#: dwarf2read.c:25384
+#: dwarf2read.c:25388
 msgid ""
 "When enabled (non-zero), debugging messages are printed during DWARF\n"
 "reading and symtab expansion.  A value of 1 (one) provides basic\n"
 "information.  A value greater than 1 provides more verbose information."
 msgstr ""
 
-#: dwarf2read.c:25392
+#: dwarf2read.c:25396
 msgid "Set debugging of the DWARF DIE reader."
 msgstr ""
 
-#: dwarf2read.c:25393
+#: dwarf2read.c:25397
 msgid "Show debugging of the DWARF DIE reader."
 msgstr ""
 
-#: dwarf2read.c:25394
+#: dwarf2read.c:25398
 msgid ""
 "When enabled (non-zero), DIEs are dumped after they are read in.\n"
 "The value is the maximum depth to print."
 msgstr ""
 
-#: dwarf2read.c:25401
+#: dwarf2read.c:25405
 msgid "Set debugging of the dwarf line reader."
 msgstr ""
 
-#: dwarf2read.c:25402
+#: dwarf2read.c:25406
 msgid "Show debugging of the dwarf line reader."
 msgstr ""
 
-#: dwarf2read.c:25403
+#: dwarf2read.c:25407
 msgid ""
 "When enabled (non-zero), line number entries are dumped as they are read "
 "in.\n"
@@ -11143,29 +11152,29 @@ msgid ""
 "A value greater than 1 provides more verbose information."
 msgstr ""
 
-#: dwarf2read.c:25411
+#: dwarf2read.c:25415
 msgid "Set cross-checking of \"physname\" code against demangler."
 msgstr ""
 
-#: dwarf2read.c:25412
+#: dwarf2read.c:25416
 msgid "Show cross-checking of \"physname\" code against demangler."
 msgstr ""
 
-#: dwarf2read.c:25413
+#: dwarf2read.c:25417
 msgid ""
 "When enabled, GDB's internal \"physname\" code is checked against\n"
 "the demangler."
 msgstr ""
 
-#: dwarf2read.c:25420
+#: dwarf2read.c:25424
 msgid "Set whether to use deprecated gdb_index sections."
 msgstr ""
 
-#: dwarf2read.c:25421
+#: dwarf2read.c:25425
 msgid "Show whether to use deprecated gdb_index sections."
 msgstr ""
 
-#: dwarf2read.c:25422
+#: dwarf2read.c:25426
 msgid ""
 "When enabled, deprecated .gdb_index sections are used anyway.\n"
 "Normally they are ignored either because of a missing feature or\n"
@@ -11963,7 +11972,7 @@ msgstr ""
 msgid "Show use of shell to start subprocesses."
 msgstr ""
 
-#: frame.c:283 infrun.c:8989 stack.c:1802 stack.c:1997
+#: frame.c:283 infrun.c:8990 stack.c:1802 stack.c:1997
 msgid "Unable to restore previously selected frame."
 msgstr ""
 
@@ -15744,108 +15753,108 @@ msgstr ""
 msgid "completed.\n"
 msgstr ""
 
-#: infrun.c:4997
+#: infrun.c:4998
 #, possible-c-format
 msgid "unhandled stop_soon: %d"
 msgstr ""
 
-#: infrun.c:5078
+#: infrun.c:5079
 msgid "Cannot fill $_exitsignal with the correct signal number.\n"
 msgstr ""
 
-#: infrun.c:8036
+#: infrun.c:8037
 msgid "Unknown value."
 msgstr ""
 
-#: infrun.c:8090
+#: infrun.c:8091
 msgid ""
 "Cannot remove breakpoints because program is no longer writable.\n"
 "Further execution is probably impossible.\n"
 msgstr ""
 
-#: infrun.c:8245 linux-fork.c:400 linux-fork.c:432
+#: infrun.c:8246 linux-fork.c:400 linux-fork.c:432
 #, possible-c-format
 msgid "[Switching to %s]\n"
 msgstr ""
 
-#: infrun.c:8258
+#: infrun.c:8259
 msgid "No unwaited-for children left.\n"
 msgstr ""
 
-#: infrun.c:8448
+#: infrun.c:8449
 msgid "Signal        Stop\tPrint\tPass to program\tDescription\n"
 msgstr ""
 
-#: infrun.c:8483
+#: infrun.c:8484
 msgid "signal to handle"
 msgstr ""
 
 #. Not a number and not a recognized flag word => complain.
-#: infrun.c:8585
+#: infrun.c:8586
 #, possible-c-format
 msgid "Unrecognized or ambiguous flag word: \"%s\"."
 msgstr ""
 
-#: infrun.c:8600
+#: infrun.c:8601
 #, possible-c-format
 msgid ""
 "%s is used by the debugger.\n"
 "Are you sure you want to change it? "
 msgstr ""
 
-#: infrun.c:8608
+#: infrun.c:8609
 msgid "Not confirmed, unchanged.\n"
 msgstr ""
 
-#: infrun.c:8675
+#: infrun.c:8676
 msgid ""
 "Only signals 1-15 are valid as numeric signals.\n"
 "Use \"info signals\" for a list of symbolic signals."
 msgstr ""
 
-#: infrun.c:8718
+#: infrun.c:8719
 msgid ""
 "\n"
 "Use the \"handle\" command to change these tables.\n"
 msgstr ""
 
-#: infrun.c:8752
+#: infrun.c:8753
 msgid "Unable to read siginfo"
 msgstr ""
 
-#: infrun.c:8775
+#: infrun.c:8776
 msgid "Unable to write siginfo"
 msgstr ""
 
-#: infrun.c:9112
+#: infrun.c:9113
 msgid "Target does not support this operation."
 msgstr ""
 
-#: infrun.c:9122
+#: infrun.c:9123
 msgid "Forward.\n"
 msgstr ""
 
-#: infrun.c:9125
+#: infrun.c:9126
 msgid "Reverse.\n"
 msgstr ""
 
-#: infrun.c:9129
+#: infrun.c:9130
 #, possible-c-format
 msgid "bogus execution_direction value: %d"
 msgstr ""
 
-#: infrun.c:9138
+#: infrun.c:9139
 #, possible-c-format
 msgid "Resuming the execution of threads of all processes is %s.\n"
 msgstr ""
 
-#: infrun.c:9171
+#: infrun.c:9172
 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:9176
+#: infrun.c:9177
 msgid ""
 "Specify how to handle signals.\n"
 "Usage: handle SIGNAL [ACTIONS]\n"
@@ -15872,46 +15881,46 @@ msgid ""
 "all signals cumulatively specified."
 msgstr ""
 
-#: infrun.c:9204
+#: infrun.c:9205
 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:9209
+#: infrun.c:9210
 msgid "Set inferior debugging."
 msgstr ""
 
-#: infrun.c:9210
+#: infrun.c:9211
 msgid "Show inferior debugging."
 msgstr ""
 
-#: infrun.c:9211
+#: infrun.c:9212
 msgid "When non-zero, inferior specific debugging is enabled."
 msgstr ""
 
-#: infrun.c:9218
+#: infrun.c:9219
 msgid "Set displaced stepping debugging."
 msgstr ""
 
-#: infrun.c:9219
+#: infrun.c:9220
 msgid "Show displaced stepping debugging."
 msgstr ""
 
-#: infrun.c:9220
+#: infrun.c:9221
 msgid "When non-zero, displaced stepping specific debugging is enabled."
 msgstr ""
 
-#: infrun.c:9227
+#: infrun.c:9228
 msgid "Set whether gdb controls the inferior in non-stop mode."
 msgstr ""
 
-#: infrun.c:9228
+#: infrun.c:9229
 msgid "Show whether gdb controls the inferior in non-stop mode."
 msgstr ""
 
-#: infrun.c:9229
+#: infrun.c:9230
 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"
@@ -15926,30 +15935,30 @@ msgid ""
 "leave it stopped or free to run as needed."
 msgstr ""
 
-#: infrun.c:9313
+#: infrun.c:9314
 msgid "Set stopping for shared library events."
 msgstr ""
 
-#: infrun.c:9314
+#: infrun.c:9315
 msgid "Show stopping for shared library events."
 msgstr ""
 
-#: infrun.c:9315
+#: infrun.c:9316
 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:9325
+#: infrun.c:9326
 msgid "Set debugger response to a program call of fork or vfork."
 msgstr ""
 
-#: infrun.c:9326
+#: infrun.c:9327
 msgid "Show debugger response to a program call of fork or vfork."
 msgstr ""
 
-#: infrun.c:9327
+#: infrun.c:9328
 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"
@@ -15958,15 +15967,15 @@ msgid ""
 "By default, the debugger will follow the parent process."
 msgstr ""
 
-#: infrun.c:9339
+#: infrun.c:9340
 msgid "Set debugger response to a program call of exec."
 msgstr ""
 
-#: infrun.c:9340
+#: infrun.c:9341
 msgid "Show debugger response to a program call of exec."
 msgstr ""
 
-#: infrun.c:9341
+#: infrun.c:9342
 msgid ""
 "An exec call replaces the program image of a process.\n"
 "\n"
@@ -15985,15 +15994,15 @@ msgid ""
 "By default, the debugger will use the same inferior."
 msgstr ""
 
-#: infrun.c:9362
+#: infrun.c:9363
 msgid "Set mode for locking scheduler during execution."
 msgstr ""
 
-#: infrun.c:9363
+#: infrun.c:9364
 msgid "Show mode for locking scheduler during execution."
 msgstr ""
 
-#: infrun.c:9364
+#: infrun.c:9365
 msgid ""
 "off    == no locking (threads may preempt at any time)\n"
 "on     == full locking (no thread except the current thread may run)\n"
@@ -16006,15 +16015,15 @@ msgid ""
 "execution."
 msgstr ""
 
-#: infrun.c:9376
+#: infrun.c:9377
 msgid "Set mode for resuming threads of all processes."
 msgstr ""
 
-#: infrun.c:9377
+#: infrun.c:9378
 msgid "Show mode for resuming threads of all processes."
 msgstr ""
 
-#: infrun.c:9378
+#: infrun.c:9379
 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"
@@ -16023,30 +16032,30 @@ msgid ""
 "mode (see help set scheduler-locking)."
 msgstr ""
 
-#: infrun.c:9388
+#: infrun.c:9389
 msgid "Set mode of the step operation."
 msgstr ""
 
-#: infrun.c:9389
+#: infrun.c:9390
 msgid "Show mode of the step operation."
 msgstr ""
 
-#: infrun.c:9390
+#: infrun.c:9391
 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:9399
+#: infrun.c:9400
 msgid "Set debugger's willingness to use displaced stepping."
 msgstr ""
 
-#: infrun.c:9400
+#: infrun.c:9401
 msgid "Show debugger's willingness to use displaced stepping."
 msgstr ""
 
-#: infrun.c:9401
+#: infrun.c:9402
 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"
@@ -16058,57 +16067,57 @@ msgid ""
 "use it in all-stop mode (see help set non-stop)."
 msgstr ""
 
-#: infrun.c:9413
+#: infrun.c:9414
 msgid ""
 "Set direction of execution.\n"
 "Options are 'forward' or 'reverse'."
 msgstr ""
 
-#: infrun.c:9415
+#: infrun.c:9416
 msgid "Show direction of execution (forward/reverse)."
 msgstr ""
 
-#: infrun.c:9416
+#: infrun.c:9417
 msgid "Tells gdb whether to execute forward or backward."
 msgstr ""
 
 #. Set/show detach-on-fork: user-settable mode.
-#: infrun.c:9422
+#: infrun.c:9423
 msgid "Set whether gdb will detach the child of a fork."
 msgstr ""
 
-#: infrun.c:9423
+#: infrun.c:9424
 msgid "Show whether gdb will detach the child of a fork."
 msgstr ""
 
-#: infrun.c:9424
+#: infrun.c:9425
 msgid "Tells gdb whether to detach the child of a fork."
 msgstr ""
 
-#: infrun.c:9431
+#: infrun.c:9432
 msgid "Set disabling of debuggee's virtual address space randomization."
 msgstr ""
 
-#: infrun.c:9432
+#: infrun.c:9433
 msgid "Show disabling of debuggee's virtual address space randomization."
 msgstr ""
 
-#: infrun.c:9433
+#: infrun.c:9434
 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:9457
+#: infrun.c:9458
 msgid "Set whether gdb controls the inferior in observer mode."
 msgstr ""
 
-#: infrun.c:9458
+#: infrun.c:9459
 msgid "Show whether gdb controls the inferior in observer mode."
 msgstr ""
 
-#: infrun.c:9459
+#: infrun.c:9460
 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"
@@ -20328,7 +20337,7 @@ msgstr ""
 msgid "unlink_objfile: objfile already unlinked"
 msgstr ""
 
-#: objfiles.c:1287
+#: objfiles.c:1295
 #, possible-c-format
 msgid ""
 "unexpected overlap between:\n"
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/printcmd.c ./gdb/printcmd.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/printcmd.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/printcmd.c	2018-08-28 02:06:14.000000000 +0000
@@ -609,7 +609,7 @@ build_address_symbolic (struct gdbarch *
 	 pointer is <function+3>.  This matches the ISA behavior.  */
       addr = gdbarch_addr_bits_remove (gdbarch, addr);
 
-      name_location = BLOCK_START (SYMBOL_BLOCK_VALUE (symbol));
+      name_location = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (symbol));
       if (do_demangle || asm_demangle)
 	name_temp = SYMBOL_PRINT_NAME (symbol);
       else
@@ -1520,7 +1520,7 @@ info_address_command (const char *exp, i
 
     case LOC_BLOCK:
       printf_filtered (_("a function at address "));
-      load_addr = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+      load_addr = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
       fputs_filtered (paddress (gdbarch, load_addr), gdb_stdout);
       if (section_is_overlay (section))
 	{
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-continueevent.c ./gdb/python/py-continueevent.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-continueevent.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/python/py-continueevent.c	2018-08-28 02:06:14.000000000 +0000
@@ -20,11 +20,24 @@
 #include "defs.h"
 #include "py-event.h"
 #include "py-ref.h"
+#include "gdbthread.h"
+
+/* Create a gdb.ContinueEvent event.  gdb.ContinueEvent is-a
+   gdb.ThreadEvent, and thread events can either be thread specific or
+   process wide.  If gdb is running in non-stop mode then the event is
+   thread specific (in which case the PTID thread is included in the
+   event), otherwise it is process wide (in which case PTID is
+   ignored).  In either case a new reference is returned.  */
 
 static gdbpy_ref<>
-create_continue_event_object (void)
+create_continue_event_object (ptid_t ptid)
 {
-  return create_thread_event_object (&continue_event_object_type);
+  PyObject *py_thr = py_get_event_thread (ptid);
+
+  if (py_thr == nullptr)
+    return nullptr;
+
+  return create_thread_event_object (&continue_event_object_type, py_thr);
 }
 
 /* Callback function which notifies observers when a continue event occurs.
@@ -37,7 +50,7 @@ emit_continue_event (ptid_t ptid)
   if (evregpy_no_listeners_p (gdb_py_events.cont))
     return 0;
 
-  gdbpy_ref<> event (create_continue_event_object ());
+  gdbpy_ref<> event (create_continue_event_object (ptid));
   if (event != NULL)
     return evpy_emit_event (event.get (), gdb_py_events.cont);
   return -1;
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-event.h ./gdb/python/py-event.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-event.h	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/python/py-event.h	2018-08-28 02:06:14.000000000 +0000
@@ -63,8 +63,18 @@ extern int evpy_emit_event (PyObject *ev
                             eventregistry_object *registry);
 
 extern gdbpy_ref<> create_event_object (PyTypeObject *py_type);
+
+/* thread events can either be thread specific or process wide.  If gdb is
+   running in non-stop mode then the event is thread specific, otherwise
+   it is process wide.
+   This function returns the currently stopped thread in non-stop mode and
+   Py_None otherwise.  In each case it returns a borrowed reference.  */
+extern PyObject *py_get_event_thread (ptid_t ptid)
+  CPYCHECKER_RETURNS_BORROWED_REF;
+
 extern gdbpy_ref<> create_thread_event_object (PyTypeObject *py_type,
-					       PyObject *thread = nullptr);
+					       PyObject *thread);
+
 extern int emit_new_objfile_event (struct objfile *objfile);
 extern int emit_clear_objfiles_event (void);
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-stopevent.c ./gdb/python/py-stopevent.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-stopevent.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/python/py-stopevent.c	2018-08-28 02:06:14.000000000 +0000
@@ -23,7 +23,8 @@
 gdbpy_ref<>
 create_stop_event_object (PyTypeObject *py_type)
 {
-  return create_thread_event_object (py_type);
+  return create_thread_event_object (py_type,
+				     py_get_event_thread (inferior_ptid));
 }
 
 /* Callback observers when a stop event occurs.  This function will create a
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-threadevent.c ./gdb/python/py-threadevent.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/python/py-threadevent.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/python/py-threadevent.c	2018-08-28 02:06:14.000000000 +0000
@@ -20,48 +20,40 @@
 #include "infrun.h"
 #include "gdbthread.h"
 
-/* thread events can either be thread specific or process wide.  If gdb is
-   running in non-stop mode then the event is thread specific, otherwise
-   it is process wide.
-   This function returns the currently stopped thread in non-stop mode and
-   Py_None otherwise.  In each case it returns a borrowed reference.  */
+/* See py-event.h.  */
 
-static PyObject *get_event_thread (void)
-  CPYCHECKER_RETURNS_BORROWED_REF;
-
-static PyObject *
-get_event_thread (void)
+PyObject *
+py_get_event_thread (ptid_t ptid)
 {
-  PyObject *thread;
+  PyObject *pythread = nullptr;
 
   if (non_stop)
-    thread = (PyObject *) thread_to_thread_object (inferior_thread ());
+    {
+      thread_info *thread = find_thread_ptid (ptid);
+      if (thread != nullptr)
+	pythread = (PyObject *) thread_to_thread_object (thread);
+    }
   else
-    thread = Py_None;
+    pythread = Py_None;
 
-  if (!thread)
+  if (pythread == nullptr)
     {
       PyErr_SetString (PyExc_RuntimeError, "Could not find event thread");
       return NULL;
     }
 
-  return thread;
+  return pythread;
 }
 
 gdbpy_ref<>
 create_thread_event_object (PyTypeObject *py_type, PyObject *thread)
 {
+  gdb_assert (thread != NULL);
+
   gdbpy_ref<> thread_event_obj (create_event_object (py_type));
   if (thread_event_obj == NULL)
     return NULL;
 
-  if (thread == NULL)
-    {
-      thread = get_event_thread ();
-      if (!thread)
-	return NULL;
-    }
-
   if (evpy_add_attribute (thread_event_obj.get (),
                           "inferior_thread",
                           thread) < 0)
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/stack.c ./gdb/stack.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/stack.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/stack.c	2018-08-28 02:06:14.000000000 +0000
@@ -1079,7 +1079,7 @@ find_frame_funname (struct frame_info *f
 
       if (msymbol.minsym != NULL
 	  && (BMSYMBOL_VALUE_ADDRESS (msymbol)
-	      > BLOCK_START (SYMBOL_BLOCK_VALUE (func))))
+	      > BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (func))))
 	{
 	  /* We also don't know anything about the function besides
 	     its address and name.  */
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/symtab.c ./gdb/symtab.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/symtab.c	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/symtab.c	2018-08-28 02:06:14.000000000 +0000
@@ -1746,7 +1746,7 @@ fixup_symbol_section (struct symbol *sym
       addr = SYMBOL_VALUE_ADDRESS (sym);
       break;
     case LOC_BLOCK:
-      addr = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+      addr = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
       break;
 
     default:
@@ -3638,7 +3638,7 @@ find_function_start_sal (symbol *sym, bo
 {
   fixup_symbol_section (sym, NULL);
   symtab_and_line sal
-    = find_function_start_sal_1 (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)),
+    = find_function_start_sal_1 (BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym)),
 				 SYMBOL_OBJ_SECTION (symbol_objfile (sym), sym),
 				 funfirstline);
   sal.symbol = sym;
@@ -3718,7 +3718,7 @@ skip_prologue_sal (struct symtab_and_lin
       fixup_symbol_section (sym, NULL);
 
       objfile = symbol_objfile (sym);
-      pc = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+      pc = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
       section = SYMBOL_OBJ_SECTION (objfile, sym);
       name = SYMBOL_LINKAGE_NAME (sym);
     }
@@ -3779,7 +3779,7 @@ skip_prologue_sal (struct symtab_and_lin
       /* Check if gdbarch_skip_prologue left us in mid-line, and the next
 	 line is still part of the same function.  */
       if (skip && start_sal.pc != pc
-	  && (sym ? (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)) <= start_sal.end
+	  && (sym ? (BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym)) <= start_sal.end
 		     && start_sal.end < BLOCK_END (SYMBOL_BLOCK_VALUE (sym)))
 	      : (lookup_minimal_symbol_by_pc_section (start_sal.end, section).minsym
 		 == lookup_minimal_symbol_by_pc_section (pc, section).minsym)))
@@ -3983,7 +3983,7 @@ find_function_alias_target (bound_minima
   symbol *sym = find_pc_function (func_addr);
   if (sym != NULL
       && SYMBOL_CLASS (sym) == LOC_BLOCK
-      && BLOCK_START (SYMBOL_BLOCK_VALUE (sym)) == func_addr)
+      && BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym)) == func_addr)
     return sym;
 
   return NULL;
@@ -4988,7 +4988,7 @@ find_gnu_ifunc (const symbol *sym)
 				symbol_name_match_type::SEARCH_NAME);
   struct objfile *objfile = symbol_objfile (sym);
 
-  CORE_ADDR address = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+  CORE_ADDR address = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
   minimal_symbol *ifunc = NULL;
 
   iterate_over_minimal_symbols (objfile, lookup_name,
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/symtab.h ./gdb/symtab.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/symtab.h	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/symtab.h	2018-08-28 02:06:14.000000000 +0000
@@ -1694,10 +1694,61 @@ extern struct symbol *find_pc_sect_conta
 
 extern struct symbol *find_symbol_at_address (CORE_ADDR);
 
-/* lookup function from address, return name, start addr and end addr.  */
-
-extern int find_pc_partial_function (CORE_ADDR, const char **, CORE_ADDR *,
-				     CORE_ADDR *);
+/* Finds the "function" (text symbol) that is smaller than PC but
+   greatest of all of the potential text symbols in SECTION.  Sets
+   *NAME and/or *ADDRESS conditionally if that pointer is non-null.
+   If ENDADDR is non-null, then set *ENDADDR to be the end of the
+   function (exclusive).  If the optional parameter BLOCK is non-null,
+   then set *BLOCK to the address of the block corresponding to the
+   function symbol, if such a symbol could be found during the lookup;
+   nullptr is used as a return value for *BLOCK if no block is found. 
+   This function either succeeds or fails (not halfway succeeds).  If
+   it succeeds, it sets *NAME, *ADDRESS, and *ENDADDR to real
+   information and returns 1.  If it fails, it sets *NAME, *ADDRESS
+   and *ENDADDR to zero and returns 0.
+   
+   If the function in question occupies non-contiguous ranges,
+   *ADDRESS and *ENDADDR are (subject to the conditions noted above) set
+   to the start and end of the range in which PC is found.  Thus
+   *ADDRESS <= PC < *ENDADDR with no intervening gaps (in which ranges
+   from other functions might be found).
+   
+   This property allows find_pc_partial_function to be used (as it had
+   been prior to the introduction of non-contiguous range support) by
+   various tdep files for finding a start address and limit address
+   for prologue analysis.  This still isn't ideal, however, because we
+   probably shouldn't be doing prologue analysis (in which
+   instructions are scanned to determine frame size and stack layout)
+   for any range that doesn't contain the entry pc.  Moreover, a good
+   argument can be made that prologue analysis ought to be performed
+   starting from the entry pc even when PC is within some other range.
+   This might suggest that *ADDRESS and *ENDADDR ought to be set to the
+   limits of the entry pc range, but that will cause the 
+   *ADDRESS <= PC < *ENDADDR condition to be violated; many of the
+   callers of find_pc_partial_function expect this condition to hold. 
+
+   Callers which require the start and/or end addresses for the range
+   containing the entry pc should instead call
+   find_function_entry_range_from_pc.  */
+
+extern int find_pc_partial_function (CORE_ADDR pc, const char **name,
+				     CORE_ADDR *address, CORE_ADDR *endaddr,
+				     const struct block **block = nullptr);
+
+/* Like find_pc_partial_function, above, but *ADDRESS and *ENDADDR are
+   set to start and end addresses of the range containing the entry pc.
+
+   Note that it is not necessarily the case that (for non-NULL ADDRESS
+   and ENDADDR arguments) the *ADDRESS <= PC < *ENDADDR condition will
+   hold.
+
+   See comment for find_pc_partial_function, above, for further
+   explanation.  */
+
+extern bool find_function_entry_range_from_pc (CORE_ADDR pc,
+					       const char **name,
+					       CORE_ADDR *address,
+					       CORE_ADDR *endaddr);
 
 /* Return the type of a function with its first instruction exactly at
    the PC address.  Return NULL otherwise.  */
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/testsuite/ChangeLog ./gdb/testsuite/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/testsuite/ChangeLog	2018-08-21 02:05:01.000000000 +0000
+++ ./gdb/testsuite/ChangeLog	2018-08-28 02:06:14.000000000 +0000
@@ -1,3 +1,8 @@
+2018-08-24  Kevin Buettner  <kevinb@redhat.com>
+
+	* gdb.dwarf2/dw2-ranges-func.c: New file.
+	* gdb.dwarf2/dw2-ranges-func.exp: New file.
+
 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
 
 	PR c++/23373
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c ./gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c	1970-01-01 00:00:00.000000000 +0000
+++ ./gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c	2018-08-28 02:06:14.000000000 +0000
@@ -0,0 +1,78 @@
+/* Copyright 2018 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/>.  */
+
+/* The idea here is to, via use of the dwarf assembler, create a function
+   which occupies two non-contiguous address ranges.
+
+   foo_low and foo will be combined into a single function foo with a
+   function bar in between these two ranges.
+
+   This test case was motivated by a bug in which a function which
+   occupied two non-contiguous address ranges was calling another
+   function which resides in between these ranges.  So we end up with
+   a situation in which the low/start address of our constructed foo
+   (in this case) will be less than any of the addresses in bar, but
+   the high/end address of foo will be greater than any of bar's
+   addresses.
+
+   This situation was causing a problem in the caching code of
+   find_pc_partial_function:  When the low and high addresses of foo
+   are placed in the cache, the simple check that was used to see if
+   the cache was applicable would (incorrectly) succeed when presented
+   with an address in bar.  I.e. an address in bar presented as an
+   input to find_pc_partial_function could produce the answer "this
+   address belongs to foo".  */
+
+volatile int e = 0;
+
+void
+baz (void)
+{
+  asm ("baz_label: .globl baz_label");
+}						/* baz end */
+
+void
+foo_low (void)
+{						/* foo_low prologue */
+  asm ("foo_low_label: .globl foo_low_label");
+  baz ();					/* foo_low baz call */
+  asm ("foo_low_label2: .globl foo_low_label2");
+}						/* foo_low end */
+
+void
+bar (void)
+{
+  asm ("bar_label: .globl bar_label");
+}						/* bar end */
+
+void
+foo (void)
+{						/* foo prologue */
+  asm ("foo_label: .globl foo_label");
+  bar ();					/* foo bar call */
+  asm ("foo_label2: .globl foo_label2");
+  if (e) foo_low ();				/* foo foo_low call */
+  asm ("foo_label3: .globl foo_label3");
+}						/* foo end */
+
+int
+main (void)
+{						/* main prologue */
+  asm ("main_label: .globl main_label");
+  foo ();					/* main foo call */
+  asm ("main_label2: .globl main_label2");
+  return 0;					/* main return */
+}						/* main end */
+
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp ./gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp	1970-01-01 00:00:00.000000000 +0000
+++ ./gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp	2018-08-28 02:06:14.000000000 +0000
@@ -0,0 +1,405 @@
+# Copyright 2018 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/>.
+load_lib dwarf.exp
+
+# Test DW_AT_ranges in the context of a subprogram scope.
+
+# This test can only be run on targets which support DWARF-2 and use gas.
+if {![dwarf2_support]} {
+    unsupported "dwarf2 support required for this test"
+    return 0
+}
+
+if [get_compiler_info] {
+    return -1
+}
+if !$gcc_compiled {
+    unsupported "gcc required for this test"
+    return 0
+}
+
+standard_testfile dw2-ranges-func.c dw2-ranges-func-dw.S
+
+# We need to know the size of integer and address types in order to
+# write some of the debugging info we'd like to generate.
+#
+# For that, we ask GDB by debugging our test program.  Any program
+# would do, but since we already have it specifically for this
+# testcase, might as well use that.
+
+if { [prepare_for_testing "failed to prepare" ${testfile} ${srcfile}] } {
+    return -1
+}
+
+set asm_file [standard_output_file $srcfile2]
+Dwarf::assemble $asm_file {
+    global srcdir subdir srcfile srcfile2
+    declare_labels integer_label volatile_label func_ranges_label cu_ranges_label L
+    set int_size [get_sizeof "int" 4]
+
+    # Find start address and length for our functions.
+    lassign [function_range main [list ${srcdir}/${subdir}/$srcfile]] \
+	main_start main_len
+    set main_end "$main_start + $main_len"
+    lassign [function_range foo [list ${srcdir}/${subdir}/$srcfile]] \
+	foo_start foo_len
+    set foo_end "$foo_start + $foo_len"
+    lassign [function_range foo_low [list ${srcdir}/${subdir}/$srcfile]] \
+	foo_low_start foo_low_len
+    set foo_low_end "$foo_low_start + $foo_low_len"
+    lassign [function_range bar [list ${srcdir}/${subdir}/$srcfile]] \
+	bar_start bar_len
+    set bar_end "$bar_start + $bar_len"
+    lassign [function_range baz [list ${srcdir}/${subdir}/$srcfile]] \
+	baz_start baz_len
+    set baz_end "$baz_start + $baz_len"
+
+    set e_var [gdb_target_symbol e]
+
+    cu {} {
+	compile_unit {
+	    {language @DW_LANG_C}
+	    {name dw-ranges-func.c}
+	    {stmt_list $L DW_FORM_sec_offset}
+	    {low_pc 0 addr}
+	    {ranges ${cu_ranges_label} DW_FORM_sec_offset}
+	} {
+	    integer_label: DW_TAG_base_type {
+		{DW_AT_byte_size $int_size DW_FORM_sdata}
+		{DW_AT_encoding  @DW_ATE_signed}
+		{DW_AT_name      integer}
+	    }
+	    volatile_label: DW_TAG_volatile_type {
+		{type :$integer_label}
+	    }
+	    DW_TAG_variable {
+		{name e}
+		{external 1 flag}
+		{type :$volatile_label}
+		{location {addr $e_var} SPECIAL_expr}
+	    }
+	    subprogram {
+		{external 1 flag}
+		{name main}
+		{DW_AT_type :$integer_label}
+		{low_pc $main_start addr}
+		{high_pc $main_len DW_FORM_data4}
+	    }
+	    subprogram {
+		{external 1 flag}
+		{name foo}
+		{ranges ${func_ranges_label} DW_FORM_sec_offset}
+	    }
+	    subprogram {
+		{external 1 flag}
+		{name bar}
+		{low_pc $bar_start addr}
+		{high_pc $bar_len DW_FORM_data4}
+	    }
+	    subprogram {
+		{external 1 flag}
+		{name baz}
+		{low_pc $baz_start addr}
+		{high_pc $baz_len DW_FORM_data4}
+	    }
+	}
+    }
+
+    lines {version 2} L {
+	include_dir "${srcdir}/${subdir}"
+	file_name "$srcfile" 1
+
+	# Generate a line table program.  An attempt was made to make it
+	# reasonably accurate as it made debugging the test case easier.
+	program {
+	    {DW_LNE_set_address $main_start}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "main prologue"] - 1]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address main_label}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "main foo call"] - [gdb_get_line_number "main prologue"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address main_label2}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "main return"] - [gdb_get_line_number "main foo call"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address $main_end}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "main end"] - [gdb_get_line_number "main return"] + 1]}
+	    {DW_LNS_copy}
+	    {DW_LNE_end_sequence}
+
+	    {DW_LNE_set_address $foo_start}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo prologue"] - 1] }
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address foo_label}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo bar call"] - [gdb_get_line_number "foo prologue"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address foo_label2}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo foo_low call"] - [gdb_get_line_number "foo bar call"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address foo_label3}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo end"] - [gdb_get_line_number "foo foo_low call"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address $foo_end}
+	    {DW_LNS_advance_line 1}
+	    {DW_LNS_copy}
+	    {DW_LNE_end_sequence}
+
+	    {DW_LNE_set_address $bar_start}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "bar end"] - 1]}
+	    {DW_LNS_copy}
+	    {DW_LNS_advance_pc $bar_len}
+	    {DW_LNS_advance_line 1}
+	    {DW_LNS_copy}
+	    {DW_LNE_end_sequence}
+
+	    {DW_LNE_set_address $baz_start}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "baz end"] - 1]}
+	    {DW_LNS_copy}
+	    {DW_LNS_advance_pc $baz_len}
+	    {DW_LNS_advance_line 1}
+	    {DW_LNS_copy}
+	    {DW_LNE_end_sequence}
+
+	    {DW_LNE_set_address $foo_low_start}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo_low prologue"] - 1]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address foo_low_label}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo_low baz call"] - [gdb_get_line_number "foo_low prologue"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address foo_low_label2}
+	    {DW_LNS_advance_line [expr [gdb_get_line_number "foo_low end"] - [gdb_get_line_number "foo_low baz call"]]}
+	    {DW_LNS_copy}
+	    {DW_LNE_set_address $foo_low_end}
+	    {DW_LNS_advance_line 1}
+	    {DW_LNS_copy}
+	    {DW_LNE_end_sequence}
+	}
+    }
+
+    # Generate ranges data.
+    ranges {is_64 [is_64_target]} {
+	func_ranges_label: sequence {
+	    {range {$foo_start } $foo_end}
+	    {range {$foo_low_start} $foo_low_end}
+	}
+	cu_ranges_label: sequence {
+	    {range {$foo_start } $foo_end}
+	    {range {$foo_low_start} $foo_low_end}
+	    {range {$main_start} $main_end}
+	    {range {$bar_start} $bar_end}
+	    {range {$baz_start} $baz_end}
+	}
+    }
+}
+
+if { [prepare_for_testing "failed to prepare" ${testfile} \
+	  [list $srcfile $asm_file] {nodebug}] } {
+    return -1
+}
+
+if ![runto_main] {
+    return -1
+}
+
+set main_prologue_line_num [gdb_get_line_number "main prologue"]
+# Do a sanity check to make sure that line number info is available.
+gdb_test "info line main" \
+    "Line ${main_prologue_line_num} of .* starts at address .* and ends at .*"
+
+with_test_prefix "step-test-1" {
+    set bp_foo_bar [gdb_get_line_number "foo bar call"]
+
+    gdb_test "break $bp_foo_bar" \
+	"Breakpoint.*at.* file .*$srcfile, line $bp_foo_bar\\." \
+	"break at call to bar"
+
+    gdb_test "continue" \
+	"Continuing\\..*Breakpoint \[0-9\]+, foo \\(\\).*$bp_foo_bar\\s+bar\\s\\(\\);.*foo bar call.*" \
+	"continue to call of bar"
+
+    gdb_test "step" \
+	"bar \\(\\).*bar end.*" \
+	"step into bar"
+
+    gdb_test "step" \
+	"foo \\(\\).*foo foo_low call.*" \
+	"step out of bar, back into foo"
+}
+
+with_test_prefix "step-test-2" {
+    clean_restart ${testfile}
+    if ![runto_main] {
+	return -1
+    }
+
+    # Note that the RE used for the following test will fail when the
+    # breakpoint has been set on multiple locations. E.g. "(2 locations)". 
+    # This is intentional since that behavior is one of the bugs that
+    # this test case tests for.
+    gdb_test "break foo" \
+	"Breakpoint.*at.* file .*$srcfile, line \\d+\\." \
+	"break foo"
+
+    # Continue to foo.  Allow execution to stop either on the prologue
+    # or on the call to bar since either behavior is acceptable though
+    # the latter is preferred.
+    set test "continue to foo"
+    gdb_test_multiple "continue" $test {
+	-re "Breakpoint \\d+, foo \\(\\).*foo prologue.*${gdb_prompt}" {
+	    pass $test
+	    gdb_test "step" \
+		     "foo bar call .*" \
+		     "step to call of bar after landing on prologue"
+	}
+	-re "Breakpoint \\d+, foo \\(\\).*foo bar call.*${gdb_prompt}" {
+	    pass $test
+	}
+    }
+
+    gdb_test "step" \
+	"bar \\(\\).*bar end.*" \
+	"step into bar"
+
+    gdb_test "step" \
+	"foo \\(\\).*foo foo_low call.*" \
+	"step out of bar, back into foo"
+}
+
+clean_restart ${testfile}
+if ![runto_main] {
+    return -1
+}
+
+# Disassembly of foo should have multiple address ranges.
+gdb_test_sequence "disassemble foo" "" [list \
+    "Dump of assembler code for function foo:" \
+    "Address range $hex to $hex:" \
+    "   $hex <\\+0>:" \
+    "Address range $hex to $hex:" \
+    "   $hex <(.+?)>:" \
+    "End of assembler dump\\." \
+]
+
+set foo_low_addr -1
+set test "x/i foo_low"
+gdb_test_multiple $test $test {
+    -re "   ($hex) <foo.*?>.*${gdb_prompt}" {
+	set foo_low_addr $expect_out(1,string)
+	pass $test
+    }
+}
+
+set foo_addr -1
+set test "x/i foo"
+gdb_test_multiple $test $test {
+    -re "   ($hex) <foo.*?>.*${gdb_prompt}" {
+	set foo_addr $expect_out(1,string)
+	pass $test
+    }
+}
+
+gdb_assert {$foo_low_addr != $foo_addr} "foo and foo_low are at different addresses"
+
+# This more permissive RE for "break foo" will allow a breakpoint on
+# multiple locations to PASS.  */
+gdb_test "break foo" \
+    "Breakpoint.*at.*" \
+    "break foo"
+
+gdb_test "break baz" \
+    "Breakpoint.*at.* file .*$srcfile, line \\d+\\."
+
+gdb_test "continue" \
+    "Breakpoint \\d+, foo \\(\\).*" \
+    "continue to foo"
+
+gdb_test_no_output "set variable e=1"
+
+# If GDB incorrectly places the foo breakpoint on multiple locations,
+# then GDB will (incorrectly) stop in foo_low instead of in baz.
+gdb_test "continue" \
+    "Breakpoint \\d+, (?:$hex in )?baz \\(\\).*" \
+    "continue to baz"
+
+with_test_prefix "step-test-3" {
+    clean_restart ${testfile}
+    if ![runto_main] {
+	return -1
+    }
+
+    gdb_test "step" \
+	     "foo \\(\\).*bar \\(\\);.*foo bar call.*" \
+	     "step into foo from main"
+
+    gdb_test "step" \
+	     "bar \\(\\).*\}.* bar end.*" \
+	     "step into bar from foo"
+
+    gdb_test "step" \
+	     "foo(_label2)? \\(\\).*foo_low \\(\\);.*foo foo_low call.*" \
+	     "step out of bar to foo"
+
+    # The tests in the "enable_foo_low_stepping" section, below, work
+    # with some versions of gcc, though it's not clear that they
+    # should.  This test case causes foo_low, originally a separate
+    # function invoked via a subroutine call, to be considered as part
+    # of foo via use of DW_AT_ranges.  Real code that I've looked at
+    # uses a branch instruction to cause code in the "cold" range to
+    # be executed. 
+    #
+    # For the moment though, these tests have been left in place, but
+    # disabled, in case we decide that making such a subroutine call
+    # is a reasonable thing to do that should also be supported by
+    # GDB.
+
+    set enable_foo_low_stepping false
+
+    if { $enable_foo_low_stepping } {
+	gdb_test_no_output "set variable e=1"
+
+	set test "step into foo_low from foo"
+	gdb_test_multiple "step" $test {
+	    -re "foo(_low)? \\(\\).*\{.*foo_low prologue.*${gdb_prompt}" {
+		pass $test
+		gdb_test "step" \
+			 "foo \\(\\).*baz \\(\\);.*foo_low baz call.*" \
+			 "step to baz call in foo_low"
+
+	    }
+	    -re "foo(_low)? \\(\\).*baz \\(\\);.*foo_low baz call.*${gdb_prompt}" {
+		pass $test
+	    }
+	}
+
+	gdb_test "step" \
+		 "baz \\(\\).*\}.*baz end.*" \
+		 "step into baz from foo_low"
+
+	gdb_test "step" \
+		 "foo(?:_low(?:_label2)?)? \\(\\).*\}.*foo_low end.*" \
+		 "step out of baz to foo_low"
+
+	gdb_test "step" \
+		 "foo(?:_label3)? \\(\\).*\}.*foo end.*" \
+		 "step out of foo_low to foo"
+    } else {
+	gdb_test "next" \
+		 ".*foo end.*" \
+		 "next over foo_low call"
+    }
+
+    gdb_test "step" \
+	     "main(?:_label2)? \\(\\).*" \
+	     "step out of foo to main"
+}
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/tracepoint.c ./gdb/tracepoint.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/tracepoint.c	2018-08-21 02:05:02.000000000 +0000
+++ ./gdb/tracepoint.c	2018-08-28 02:06:14.000000000 +0000
@@ -2491,7 +2491,7 @@ info_scope_command (const char *args_in,
 
 	  if (SYMBOL_COMPUTED_OPS (sym) != NULL)
 	    SYMBOL_COMPUTED_OPS (sym)->describe_location (sym,
-							  BLOCK_START (block),
+							  BLOCK_ENTRY_PC (block),
 							  gdb_stdout);
 	  else
 	    {
@@ -2568,7 +2568,7 @@ info_scope_command (const char *args_in,
 		case LOC_BLOCK:
 		  printf_filtered ("a function at address ");
 		  printf_filtered ("%s",
-				   paddress (gdbarch, BLOCK_START (SYMBOL_BLOCK_VALUE (sym))));
+				   paddress (gdbarch, BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym))));
 		  break;
 		case LOC_UNRESOLVED:
 		  msym = lookup_minimal_symbol (SYMBOL_LINKAGE_NAME (sym),
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/value.c ./gdb/value.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/gdb/value.c	2018-08-21 02:05:02.000000000 +0000
+++ ./gdb/value.c	2018-08-28 02:06:14.000000000 +0000
@@ -3051,7 +3051,7 @@ value_fn_field (struct value **arg1p, st
   VALUE_LVAL (v) = lval_memory;
   if (sym)
     {
-      set_value_address (v, BLOCK_START (SYMBOL_BLOCK_VALUE (sym)));
+      set_value_address (v, BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym)));
     }
   else
     {
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/md5.sum ./md5.sum
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-8.1.90.20180821/md5.sum	2018-08-21 02:09:01.000000000 +0000
+++ ./md5.sum	2018-08-28 02:10:33.000000000 +0000
@@ -36,7 +36,7 @@ f1d3d3b2e2ce3d9c8c6f9ceab9502966  bfd/el
 aca9b8a230aca9041fb5c04b5d2a65a4  bfd/wasm-module.c
 295cb120314ba3e0ecbc4719acbcb5e0  bfd/elf64-mips.c
 32c1c2c183f56bd2b5af2fb9c3ca94af  bfd/cpu-m9s12x.c
-39a1e05d531f0c2564ad87627af405f4  bfd/version.h
+3a044d7e7de393238e46c1bd7326ad90  bfd/version.h
 25cd4c1378787d5bb9fa74b13a55098a  bfd/cpu-tilegx.c
 cfcd2011881a504922bee6bf40ce6898  bfd/coff-mcore.c
 836b9de6d0ea1914f82c0ec0fa0341ef  bfd/cpu-avr.c
@@ -896,12 +896,12 @@ bfdb7070ef72fc3b18b5c753e42f23bf  gdb/xt
 922211a8a0648aa42ba42c339447ae32  gdb/python/py-record-full.h
 eacac7a6e0e8aa7cc5acec252b393092  gdb/python/py-cmd.c
 a326479a5aea1099113efc4471060908  gdb/python/py-infthread.c
-76f787a796aadb61e53c24949e85d08b  gdb/python/py-continueevent.c
+3a384e5ec006ca55e2e4ada0d9a69cb0  gdb/python/py-continueevent.c
 bb80d6b9196cb0a22c7f77cddca1448e  gdb/python/py-all-events.def
 71e58c3c8b418bd2b4e979ebad997ef2  gdb/python/python-internal.h
 ea05ba368591aa37dbcf0017dcbd7542  gdb/python/py-xmethods.c
 c017217596c0ae9ff3519d75af7b8ef5  gdb/python/py-objfile.c
-89a817f95eb1be8c7c7d8846800bd80b  gdb/python/py-event.h
+34adbc9886110fc61b640d2d4be214e0  gdb/python/py-event.h
 bb7e87f53f054ca7f9b6925c5231db33  gdb/python/py-event-types.def
 d7e75de86d964c5d969ce24daf16db4c  gdb/python/py-frame.c
 cd97570e0bc03201d1c30994222f9495  gdb/python/py-record-full.c
@@ -951,7 +951,7 @@ ee6fbd21646a87f6eb754524f8cb9810  gdb/py
 ef734f1eceac45714ef752aadaf9d996  gdb/python/py-event.c
 2106cae44a6ffbbda4724b107eff7964  gdb/python/py-symtab.c
 4a222fe3dc5fdfc8b4f2887a8c8eaefc  gdb/python/py-record-btrace.c
-b83234eba76090ed11db2f48162c36a0  gdb/python/py-stopevent.c
+7799522ad979219286fe8b31d3b3322e  gdb/python/py-stopevent.c
 d607ff6759c6f69991bdc37bea5818d8  gdb/python/python.h
 7ee9ff85729d9ca5eefdd2688a88c58b  gdb/python/py-signalevent.c
 1e7b24d0477bf74b5fafa902cfb58af6  gdb/python/py-breakpoint.c
@@ -967,7 +967,7 @@ fc54b55a377a03b14c7b22647c2a8784  gdb/py
 c601365d4ac0b5a469da071dc5fc3405  gdb/python/py-arch.c
 1f8906696661142ceec61bb63e8bc194  gdb/python/py-infevents.c
 5331944f93c9c8f429e0d1d10fa64e3f  gdb/python/py-auto-load.c
-60ffc81fe7c04c0d837a426ebdf94d8a  gdb/python/py-threadevent.c
+a289ccea662a7ae2b9d0f1cff3839cac  gdb/python/py-threadevent.c
 8a3cde43e1145d0ee17ea606f78f1927  gdb/python/py-finishbreakpoint.c
 1eced4c1b6303cc5f07513d355f25831  gdb/python/py-prettyprint.c
 3f03c4d073340838370c8a1c94d5b3e8  gdb/python/py-evts.c
@@ -1048,7 +1048,7 @@ ae5f4bf85bf43396b0f30d9e63330a37  gdb/na
 c12297b6e66ea50afbba0285d5da69f0  gdb/nat/linux-personality.c
 670f78d2abd3157b11fe7a425a596082  gdb/nat/linux-waitpid.c
 859e6f320dd488dd634e4bd47eb3e378  gdb/go-valprint.c
-35b9b80af872191df6c0118cc6bee226  gdb/dwarf2loc.c
+d9fc1761609aa35ffc78f8e95bf969c4  gdb/dwarf2loc.c
 31b8c73e5f12a59635c47e24d1ca58cd  gdb/tracepoint.h
 33cf30352f890d57854dc643b8c0db54  gdb/gnu-v3-abi.c
 52f2b5213f9809d711643881938c352a  gdb/extension.h
@@ -1089,7 +1089,7 @@ a7fe565f6eaaae530ad4c7a7d1ff4471  gdb/cl
 9a339c72e6c1a55648ba925efaaf03ca  gdb/cli/cli-setshow.c
 45622731d9ecdfebd1698345ffe5dd56  gdb/cli/cli-interp.h
 3980e2425991e7e3527ea54662e16c35  gdb/cli/cli-decode.c
-83a39dca488197b92ac550d2ac1b2b3d  gdb/cli/cli-cmds.c
+ec3fca19dd5dc706d0ec269d5539e336  gdb/cli/cli-cmds.c
 846046a4091c747ff77158b8f5a95919  gdb/cli/cli-utils.h
 110acbc38d81843685cfc63faa1d49c2  gdb/cli/cli-script.c
 3b6925bc7211285b555a52c091cc327f  gdb/cli/cli-logging.c
@@ -1181,7 +1181,7 @@ f48daece847f879834d8a8e232db0076  gdb/sy
 88b6b86f79cc95afb43c6b6c0477cd72  gdb/posix-hdep.c
 3f5e5d418aa0bdf72cb7a2270dbb519f  gdb/filename-seen-cache.h
 2c8f1c92ced17e5fe2c6adf1fd7d0aad  gdb/varobj.h
-e1c67b6626491341ccf584634836a484  gdb/tracepoint.c
+579a6e292ac0182bd39c573768c5290b  gdb/tracepoint.c
 3b34365fe29a5be128c71c552d656d4b  gdb/selftest-arch.c
 520c52eabaa42304ffa24ad96e18cf52  gdb/cris-tdep.h
 aa585453b137cfe491a78d1292ecd4aa  gdb/target-delegates.c
@@ -1207,7 +1207,7 @@ c347954d4517f60d1220db4d30f00f92  gdb/me
 dc1fb7238990b7dba8f5537390a9c16b  gdb/windows-tdep.c
 ec376335a92bd9f2ea53ee7c6e2c0e46  gdb/coff-pe-read.h
 7ca88f5387948fc57d606965e94c858f  gdb/go-lang.c
-022efcc816c0e4fd3f5f2258f54a25bb  gdb/infrun.c
+4d1d84553d8994988c313d6666632199  gdb/infrun.c
 8b9be5d5ad740c3fa64fb2dc3446c4b5  gdb/ppc-fbsd-nat.c
 9f17d928e1ed3e8a6423ba556d65ed00  gdb/jit-reader.in
 92133b9980933d7379c85aaf43aa9a7f  gdb/darwin-nat-info.c
@@ -1226,7 +1226,7 @@ b2c8fef3850846b8f0a4671cea240e1c  gdb/fr
 f044417404f6ae0c8dac89b4a1c420bb  gdb/spu-tdep.h
 696213c0267b89704df9cc43be03e27f  gdb/darwin-nat.c
 b6d79e9ae518964e4301adb41542e468  gdb/symfile-debug.c
-3b81f35dcef3d45d98a91d7e313deaea  gdb/stack.c
+94f3f35709ea0ec1e70406d1ec821c89  gdb/stack.c
 d86fe1dda238ab5c5048f68c3e77baea  gdb/ser-tcp.c
 4e82906dae65f215ebfb7f9d19dd22a8  gdb/vax-tdep.h
 a1de1ed6c56a3ddf88a67d37e68bed5d  gdb/ptrace.m4
@@ -1245,7 +1245,7 @@ c8dbea7d9389c08f3789b58a561a07f0  gdb/li
 0136d38e5c6b7d964f6aecbcad92fb1a  gdb/break-catch-throw.c
 dab68109c15df636e61c7b8177b99c99  gdb/rs6000-aix-tdep.h
 e3a08b131a85b6b1a09122266cb5d5ab  gdb/gnu-v2-abi.c
-13a98c4f6b65ba0201542793d0cf33ba  gdb/block.c
+4030c4e81d2cd94069d12930b7c18372  gdb/block.c
 46d4d315ccc5bbd3d3c8a7489262aa53  gdb/.gitignore
 3eb26bb8a5a80ff351f23af72c71faae  gdb/alpha-bsd-tdep.h
 322ef2bbd8f6789f19160b483d4c05e6  gdb/x86-tdep.c
@@ -1269,7 +1269,7 @@ dbbb62e3f15e0a463f16521f5641f345  gdb/c-
 dbeb7ed60c2a8516b5ba18758fa20340  gdb/m32r-linux-nat.c
 4f759babbd4e92af19d46831bf38b162  gdb/sparc64-nbsd-nat.c
 5bf55e318a32620260f5f79896f75edc  gdb/gdb_bfd.c
-3a18e1da4c824de022ce75bf8f92d45c  gdb/NEWS
+838600d40498366485eb78b499f7942e  gdb/NEWS
 bae6ac1422f437f8c30488c1db95fcbe  gdb/x86-nat.c
 f3bdf6ad3ec69fca2eec0d127037f387  gdb/dcache.c
 7a46561e7dee652558e7454750d05a7b  gdb/ada-lex.l
@@ -1377,7 +1377,7 @@ c5a6da46b3f28f588924bce923299b95  gdb/ar
 22bb7bb5cfac8600d54599f9e00b769d  gdb/bsd-uthread.c
 0e93a6bc18f45c245d71661c27920419  gdb/aarch32-linux-nat.h
 46af03315229324b1097463745cfdb3e  gdb/inf-ptrace.h
-a4e9943975a1683afc1163ba290f5518  gdb/findvar.c
+d13996593ef724b77b24934cd417edca  gdb/findvar.c
 c311d3a15e412d63bc5b150bca5c7a49  gdb/alpha-tdep.h
 83490fbe641715d2bad8f5e2366a0f83  gdb/ser-pipe.c
 22ee99381c4240c28585b4a2cf488476  gdb/p-valprint.c
@@ -1386,7 +1386,7 @@ c311d3a15e412d63bc5b150bca5c7a49  gdb/al
 9a6c5342ed843d818b450e5f857aa50a  gdb/arch-utils.c
 44f9af90f4739ed09ee15f55360be335  gdb/cp-valprint.c
 66f799c8dd14357e25888b2221b0ea52  gdb/disable-implicit-rules.mk
-a5ee4a2654be90d582f485849bff5f98  gdb/dwarf2read.c
+30c6138ffbee033b44b80d53d1530ad5  gdb/dwarf2read.c
 c64c7593e7d71625ee20f04d28ab988e  gdb/or1k-tdep.c
 958c565d08b70ee0dd494879c1e85771  gdb/amd64-windows-tdep.c
 e4708e4b23e4e6ddd07c7245736d37b3  gdb/testsuite/config/cygmon.exp
@@ -3352,6 +3352,7 @@ e0418ec1413d371ae9706e5b3cb63257  gdb/te
 ca079e54e5edc7e741acb81bb823d21f  gdb/testsuite/gdb.dwarf2/dup-psym.exp
 befb978088f4ce0e2076b0a7f3949728  gdb/testsuite/gdb.dwarf2/callframecfa.S
 c29d65d93d02cb605f6b8f876c07ad26  gdb/testsuite/gdb.dwarf2/dw2-cp-infcall-ref-static.exp
+fbb275da5530443c602887fef0b430ce  gdb/testsuite/gdb.dwarf2/dw2-ranges-func.exp
 95e283b2be3822e3788d284249edb95b  gdb/testsuite/gdb.dwarf2/dw2-filename.S
 7658f05bfd505b18fda739fba1bfbaf0  gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.S
 024c43ab96987851afc8af9217f765f8  gdb/testsuite/gdb.dwarf2/dw4-sig-types.exp
@@ -3555,6 +3556,7 @@ bf7e5d13e1e14c2f505a100b4de9e1b9  gdb/te
 bc24f6dc2f80a90720d889c923da1a65  gdb/testsuite/gdb.dwarf2/implref-struct.exp
 92f2d73c3f061a74b9aa39f7260e9f3a  gdb/testsuite/gdb.dwarf2/dw2-icc-opaque.S
 60841803e09a8cfd8518830375b700e1  gdb/testsuite/gdb.dwarf2/dynarr-ptr.c
+1f907f1f484b5954610dd36b4e81f36e  gdb/testsuite/gdb.dwarf2/dw2-ranges-func.c
 a3b0eaf83119697f5274d89cea6e212e  gdb/testsuite/gdb.dwarf2/typeddwarf.exp
 caaa599ddfd82546845c034fdf8c6d34  gdb/testsuite/gdb.dwarf2/main-subprogram.c
 82e7c1ef3244455761af29e650277fb6  gdb/testsuite/gdb.dwarf2/gdb-index.exp
@@ -4308,7 +4310,7 @@ d44d1fe2176806ee76348b558b3a67ab  gdb/te
 de055987af9fd672f5e6aa5280e504cf  gdb/testsuite/gdb.go/integers.exp
 68d17058fa82304a192749f0eadc138d  gdb/testsuite/gdb.go/strings.go
 81b7ed6cb92c627d245bd2efc4b953b9  gdb/testsuite/gdb.go/methods.go
-0edadf0d255c7d6ecf19b8d71627e875  gdb/testsuite/ChangeLog
+af0fe76bb8d88ad48f822aafaaeff592  gdb/testsuite/ChangeLog
 b3f11b21e5921c419a43f93720dedf85  gdb/testsuite/gdb.asm/empty.inc
 14f9e33160bd01242a862c5c90513000  gdb/testsuite/gdb.asm/asm-source.exp
 f1621bbbb2acbec5adef86d7d9549975  gdb/testsuite/gdb.asm/bfin.inc
@@ -5053,53 +5055,53 @@ db4894f09a7324b25de6b98a23383a5d  gdb/te
 d73a448e50a651ac6171a232b56ba1f1  gdb/testsuite/gdb.modula2/unbounded-array.exp
 2635b1ff15dfd3fa2dc596d43543ff8b  gdb/testsuite/gdb.modula2/unbounded1.c
 189e5da6330dc3a2d44a3205b91ee726  gdb/tilegx-tdep.h
-fffc5b8392be874e48a25586da651b0e  gdb/symtab.h
+02978a6b55ccd20e127520e4ba384095  gdb/symtab.h
 29209f0a84f981d84f100e8fc4c3a84b  gdb/f-valprint.c
 b6bbbfc248f90052ce30fda420c5916f  gdb/gdb_curses.h
 8108dd8f906f2654fecc74958cf383db  gdb/doc/psrc.sed
-eb3c5c93d247bdb8028a349b153d70f8  gdb/doc/gdb.info-3
-19dbeb417c399be8000c672a6554d9c2  gdb/doc/gdb.info-4
+279aac01538bde24f8c9d69a84d8837f  gdb/doc/gdb.info-3
+e2c967489422077f54fd824492140e8d  gdb/doc/gdb.info-4
 ab0fe311032294b952da80585b8b90e7  gdb/doc/fdl.texi
 7293ab6b8a4482a4fb58806f78e27fd9  gdb/doc/Makefile.in
-ca76945db83368d4d023f9dc5502e9a2  gdb/doc/gdb.info-7
-443bd255487e5443b13a269a08419be2  gdb/doc/gdbserver.1
+9f8538fa0b853a2de9d826f9be89412a  gdb/doc/gdb.info-7
+9d98be187a84454871ca1be4b4fe72e4  gdb/doc/gdbserver.1
 8a3211e1c1b6c1a9ae823c3c469675e8  gdb/doc/guile.texi
 f81a0e00e0cb9e41b078069fb9bedb07  gdb/doc/stack_frame.txt
 319d74c658533df2b0bedcca97af4d94  gdb/doc/stabs.info
-b375ed961c1d256c8747c021263d8ce2  gdb/doc/gdb.info-5
+0383efe463ae0b290f0c4ee272d8b46f  gdb/doc/gdb.info-5
 19abe6cc6d5cc545f19b7c7703223589  gdb/doc/agentexpr.texi
 66674dc351ba95941f422dc18cae24bb  gdb/doc/.gitignore
-494ca10568d4af5e959ee0ed4aa95cbd  gdb/doc/gdb.info-1
+45da98a56a60a317f9781c9fd9b8ef8d  gdb/doc/gdb.info-1
 d5d06eaf9b4d44aa442a4a281aa9aea4  gdb/doc/a4rc.sed
-daa70af548f6a8bdcdd047a4e2824685  gdb/doc/gdb.info-6
-c4f137eb4e230b7ee5413b2714846554  gdb/doc/gdb.texinfo
-c6ff198112a02e4c5e3eef0676d0cb69  gdb/doc/gdb-add-index.1
+131138cd786d5e4293cfabcf1b435c51  gdb/doc/gdb.info-6
+809c547c265d21f5be78e1318b18e7b9  gdb/doc/gdb.texinfo
+8f22716af2e2387e9a365c526ae062ac  gdb/doc/gdb-add-index.1
 553b7fe1bf4b5d8b96fdb8cd83503de1  gdb/doc/stack_frame.svg
 04c82b1da7e894a6555868e4f86225af  gdb/doc/filter-for-doxygen
 6eef6173ced7b929f5142c1577f2189a  gdb/doc/Doxyfile-gdb-api.in
 26a572acbe3a2b351c0d3c0a2790b07d  gdb/doc/annotate.info
-c4c27dfe3fa09971ac3371a4422e982c  gdb/doc/gdb.info-2
+37d0860b4e5ee6b6dc2e3a9e21973f5f  gdb/doc/gdb.info-2
 0e44f6ffe6996c2827630e31909c3e1e  gdb/doc/refcard.tex
 6076d300a46651562d4ecd0604442414  gdb/doc/stack_frame.png
-b0d29c7764920da57fef3dc2cf0575dc  gdb/doc/gdb.info
+3c249eb9a14f65463202d3cb1643d67e  gdb/doc/gdb.info
 65a7709429887bbf3a2d4cc49bfe2a38  gdb/doc/python.texi
 c3feb7ddebdf77fd82e65fc406bc2f23  gdb/doc/stabs.texinfo
-1734c16e75b7b00ef42f9968d9856563  gdb/doc/ChangeLog
-06db4eef48a5316fde1057075516acd6  gdb/doc/gdb.1
-1d915cf2c10b2f21c3df6361a2a6cea4  gdb/doc/gcore.1
+400ede90077a0aeaf3ad9dd9d51dd8fa  gdb/doc/ChangeLog
+9f0f709e194813322c7502678a90ca33  gdb/doc/gdb.1
+d9acb0716021bb4f1cdd2b05b1339737  gdb/doc/gcore.1
 d39233c86ed6a6dc9e853ae6a11fe03e  gdb/doc/stack_frame.pdf
 2ad37190a4e38a8186d90bc76fc4e551  gdb/doc/Doxyfile-base.in
 3e12b16a85438bdf1fd7355cd397282a  gdb/doc/all-cfg.texi
 bf96494e6e4d346175babd5ef9781882  gdb/doc/gpl.texi
 cd5e3faa9bd1b684a73c7d527cdb4988  gdb/doc/filter-params.pl
 7bfdb0765c5d050d204fbb30aeeba0d8  gdb/doc/stack_frame.eps
-41d5b3b167c2e63d0143f1ef0165f1c0  gdb/doc/gdbinit.5
+894427189554be7e8c22796787f22b50  gdb/doc/gdbinit.5
 78d7bd07699d6e1b53e552cc3a1c16ef  gdb/doc/Doxyfile-gdb-xref.in
 d398b8cec3d96f0f3267dac6b8fe64bb  gdb/doc/annotate.texinfo
 5863a78c1571978dc97dccb25e481134  gdb/doc/doxy-index.in
 5fd0b4ab51371cec2c95861526ff4b9e  gdb/doc/Doxyfile-gdbserver.in
 73ec71cd3b2e7f61bc530f19d4b35056  gdb/doc/lpsrc.sed
-828c160c19391f151ec7062a118331a6  gdb/parse.c
+b29521e7a6ee2df7ea10dafe64731f7c  gdb/parse.c
 c3db60566205ebafe84f5c3e8e10b65a  gdb/fbsd-nat.c
 c6e50b510f5aa2a361a607b7b68e24c2  gdb/windows-tdep.h
 57d3e4e0db70b1c2099ca24edc0efbb5  gdb/stap-probe.h
@@ -5162,8 +5164,8 @@ d35b315df8256bb77bf26fa28642a969  gdb/ri
 704c95954ef5b34bc650e078aedde839  gdb/dicos-tdep.c
 8231b684b7d88405d04d2bef46a24822  gdb/ChangeLog-2004
 86da50955a802a40f72545fdfc19c63e  gdb/record-btrace.h
-06a4237a871dbe75c6fea5c25dfd8e17  gdb/machoread.c
-951efdff8ce9755b27e81645a8119faa  gdb/printcmd.c
+a30769a485c863f1806f0625368af0d9  gdb/machoread.c
+7ef58791d6238d2928c5d534be55de70  gdb/printcmd.c
 3553b307e4b25392068d8f70aa7e80ae  gdb/serial.c
 df42b606868ed1d0f337a51b6c18f6d9  gdb/gcore.in
 23b6dba6d4c2f87b4f522a47dd854a34  gdb/ser-go32.c
@@ -5210,7 +5212,7 @@ c69ec28f1d579f91cac5015e9fd1ea0c  gdb/fb
 805a4605dc7a882d38a5c981772f1466  gdb/build-id.c
 9c2b4a34423c053dbc948a9ad841aaa3  gdb/ppc64-tdep.h
 21192b4878969ebd25eee6347c9bc4e8  gdb/c-valprint.c
-16b29d325525fe8c7ec81a254fd1436d  gdb/value.c
+b5f14257f9a6d472ee1c7fc533a867b7  gdb/value.c
 f1f9a3f461e16ede2de89f19a3b5fe4e  gdb/dummy-frame.c
 99ed19d384381a780a073c94e924d1c2  gdb/ser-mingw.c
 83d3b77c037b132a96c2a296685c74f8  gdb/completer.h
@@ -5501,15 +5503,15 @@ bd64b165a0376ee5e21256856a9ab023  gdb/fe
 ddb0e6961a8bafbe81ace0ae4c624062  gdb/features/nds32.xml
 6c760553daeaba1494447b8f5f1122ed  gdb/features/aarch64-fpu.xml
 9d9baf6ee79baadc2a660370cb2c1afc  gdb/gdb_indent.sh
-e89220297c615a1ee5bd581a2dee010a  gdb/infcmd.c
+207da244ec69a3389d57d72dd05017a1  gdb/infcmd.c
 63de0d406f081b32f3cb1ade3e683cdb  gdb/valprint.c
 849729fd85118146d99e48457eb0719a  gdb/solib-target.c
 fb88de598eefca882bafb5d68273125e  gdb/tilegx-tdep.c
 8f1e0ebb5b633e7183969b55a92d3cbf  gdb/c-lang.h
 7e00806498e0fde24d7ab6bd4b9cff35  gdb/breakpoint.c
-30e36d0136fd98d8aacfc29e3d11577b  gdb/block.h
+082794c3a72312f84ed0fad1d8a56490  gdb/block.h
 0d9514ca001efc59de5eb69b17e17e4d  gdb/s390-tdep.h
-24ae38503bbd94951e4d1435adb5f379  gdb/ax-gdb.c
+659d6b74968822e4e7262bc65b9d30e6  gdb/ax-gdb.c
 fe892fdb31b046f86b878c945007f8c5  gdb/i386-obsd-nat.c
 142653f491ffb49b8e8a205903fc3a11  gdb/selftest-arch.h
 2f3a431ad6de3bffcc67339cc73603c2  gdb/prologue-value.h
@@ -5564,7 +5566,7 @@ c8d711e40ef2ce2adcfc5aa36c327dfd  gdb/Ch
 a0999136dc61c9cd96d250578180d97b  gdb/c-varobj.c
 c9c5feb59254016bd1e92d838fb999ac  gdb/or1k-tdep.h
 10db0ed894d167c711262ccccfdb3399  gdb/i386-tdep.c
-20166299e060fd3b295b43a74af6cbb6  gdb/symtab.c
+0f50b60ae694578c2c5fd0f611f96933  gdb/symtab.c
 83b4a5046acc009222bac2a8794b290b  gdb/osabi.c
 4a717fc61f80cc15c9aefbf90f0fbbd5  gdb/m32r-linux-tdep.c
 84007546cc383fe97536f0a893c925a0  gdb/inf-child.c
@@ -5590,7 +5592,7 @@ a9395d09415322faea2304f9a1d7d9e2  gdb/co
 c8ad35fbed9ae9f7955517bb9dfddaf3  gdb/std-regs.c
 f18eaf82079c22fefde0df5f1a87e1e7  gdb/go-lang.h
 08acbfe7a6b5373b372b4cbe252da59c  gdb/i386-windows-nat.c
-13d2bcec3625a7a4b75945cdbf5199dd  gdb/po/gdb.pot
+9b3f4b4b101638b1efb534a399d04698  gdb/po/gdb.pot
 1851bff0653201a488dcae18dde7efad  gdb/po/gdbtext
 adca436720b0bc29414244d2dd3adf5e  gdb/break-catch-syscall.c
 aba34375ab4a5daec8508137e41495df  gdb/ada-lang.c
@@ -5622,7 +5624,7 @@ f539f4273565a74911411b6f401d41e5  gdb/nb
 fd69e90ca8fa4b06e4ca80d18cb2b6e3  gdb/i386-fbsd-nat.c
 22b7bd034786740f2c39f2e5011e6265  gdb/mipsread.c
 a9a6ddae1b01457074654fa044ccd35f  gdb/amd64-darwin-tdep.c
-f0d0a2349507259c6d4c84ca3ab6de52  gdb/ChangeLog
+0e8a641f39ba642413dea4af477c2524  gdb/ChangeLog
 59570a0bc164919d36efd6a8d2ef0c89  gdb/go-typeprint.c
 fc2f696609dae162343590eeb57eda62  gdb/score-tdep.c
 c75bca55efb6a051ca94c96437efc365  gdb/xml-support.h
@@ -5660,14 +5662,14 @@ eea0f72dba96d30ec4656e36bd40554f  gdb/c-
 44926c85efdd8b911b6f6890d36fbee8  gdb/memory-map.h
 8524cdd151a5749e8df8b2a6869e2f29  gdb/symfile-add-flags.h
 3e3c7d5f5a3f26da6f0a84a7373b2df2  gdb/nios2-tdep.c
-987d570ed673738d1e0a2f1c9bf387e2  gdb/inline-frame.c
+885eef58231b270b648029bdc05d963c  gdb/inline-frame.c
 dfe8251c7a84147830f8dcc4f260a7f9  gdb/p-typeprint.c
 60b3e39db511ab60e2b5879731a9ee70  gdb/xml-support.c
 00c06636678c973f5d087efc1b2368fd  gdb/amd64-nbsd-nat.c
 f3e46d6ec5f82e3b5b2a1ecc8ea26fbb  gdb/arch-utils.h
 79c3da1935bccd2e4a60e6493e3d1bdb  gdb/darwin-nat.h
 2c695d4fdfb01972eb44fc8dc37823e4  gdb/s390-tdep.c
-f8258c4c413ab8a7e92aca23d369db2a  gdb/linespec.c
+cc4057fdc2df0eab2fe3210dcd53c5d6  gdb/linespec.c
 02579627c2dda793c2bcab12c4b13533  gdb/proc-utils.h
 d49f80a15cff56e0861997f50769d218  gdb/frv-linux-tdep.c
 9fd87c7c9002efb0a727cd87a77e6388  gdb/ia64-libunwind-tdep.h
@@ -5837,7 +5839,7 @@ d9db185275091a20180154008c613689  gdb/ar
 7dafb7bd82528028883793742fac1900  gdb/arch/ppc-linux-common.c
 70f49d667b85200275918ad1203e281d  gdb/arch/ppc-linux-tdesc.h
 1711398748fce63990b1526874994c69  gdb/arch/aarch64.c
-26a0178ffe8d2945489046fb31549e84  gdb/arch/aarch64.h
+7c9383211424f40b05c7865c2d61afed  gdb/arch/aarch64.h
 0e777f54ba06ef4bc43f82bec99bdcdb  gdb/arch/aarch64-insn.c
 33da6ae5d5e074f7f541877d1d8f911a  gdb/arch/arm-linux.h
 f0cd473ef79fe1a466e33127fca0892b  gdb/arch/arm-linux.c
@@ -5893,7 +5895,7 @@ aea1db20cb13ec474c91b981b8c0e091  gdb/gd
 207d74deaad12ff158a7801976d95a6a  gdb/gdbserver/ax.c
 7638c716e72890dad46b0088532cb7c9  gdb/gdbserver/regcache.c
 67ed298173cad9e08c2d7a50ab9dcde7  gdb/gdbserver/target.c
-bfb67fa3db19771fc6dd4c4590cb4d47  gdb/gdbserver/server.h
+7586a92ccacdf315bf53142352d9318c  gdb/gdbserver/server.h
 00042badf2f58de35cea510ec016e07b  gdb/gdbserver/linux-i386-ipa.c
 117ca7c66926a45a859c23ea406f929d  gdb/gdbserver/.gitignore
 63bf1fa72d67f144f3c706d11d70aa1d  gdb/gdbserver/lynx-i386-low.c
@@ -5926,7 +5928,7 @@ c3667fdc9cd67df9fe41bd1bd00eb03c  gdb/gd
 5b4e2ef703e9d6c014dbdd97c1510cad  gdb/gdbserver/thread-db.c
 08befe1c7835400972ae8709aa89fe7b  gdb/gdbserver/linux-s390-ipa.c
 bfa9ceb983ffaf55b4025c073a0e8bbb  gdb/gdbserver/linux-tile-low.c
-72e3abd064ca19c02221498a3fe0a70e  gdb/gdbserver/ChangeLog
+9bd4a21a8e298f1559f14b8845e59b3c  gdb/gdbserver/ChangeLog
 b8c4bf711065622aa23d4c072fa00227  gdb/gdbserver/linux-ppc-low.c
 11d1edcae7e0ef90a6d80138b6117b28  gdb/gdbserver/linux-low.c
 2ce8d0b523754928d0d12157dc96db5d  gdb/gdbserver/proc-service.list
@@ -5968,7 +5970,7 @@ ef7f67e5720cf7b193349f8687243947  gdb/st
 ffc93e69a8813484cec63da022b68375  gdb/stubs/sh-stub.c
 145cd41185515b9c934b395a73ee7bbe  gdb/buildsym.c
 d113941c589b0fea225f6fffd516c4be  gdb/breakpoint.h
-e87715c46edddb056ba42b60c23b78e2  gdb/objfiles.c
+35933fcf9dd4974359180246f62c09a4  gdb/objfiles.c
 6dc50ee9f50761b994845c93e943ac7d  gdb/debug.c
 754096f3d7e72140a7b0c9af2957d9fd  gdb/sol2-tdep.h
 9d2fd03494bce6696908510bd9a0ba36  gdb/ppc-linux-tdep.c
@@ -5977,7 +5979,7 @@ e87715c46edddb056ba42b60c23b78e2  gdb/ob
 74fbbadad50a92b52cd30f29decafca5  gdb/gdbthread.h
 02ef9aff225507ce58db5a5711a3fe8b  gdb/silent-rules.mk
 f623ef7316f612fdda4447b44df30604  gdb/macroexp.c
-9cd13e603e0f173a9eaeb62eab2806d3  gdb/blockframe.c
+aceb6668f8c12d2ded3657b039af825a  gdb/blockframe.c
 516a10734b4563a3470510729222ddb5  gdb/ia64-vms-tdep.c
 0b34c41cf87db9800e72e09c95ffe2d3  gdb/rs6000-nat.c
 08407cde1879b563bd39262258ae3392  gdb/ppc-sysv-tdep.c
@@ -6306,13 +6308,13 @@ a205dd1a408fafb7fa5fd3bd59318168  gdb/ta
 6e04664fcc821015c33f4c9b04e23ff5  gdb/alpha-mdebug-tdep.c
 fa2c49f6af8a370ea30d4d8f6990fc1c  gdb/symmisc.c
 acf7e8747a65c0528dfa5f202c5024cd  gdb/compile/compile-loc2c.c
-ddf39a0740ac7fd0b923605a16b711d3  gdb/compile/compile.c
+8d4b9567458bbd8ee063a67fdbe893d4  gdb/compile/compile.c
 ce9306fc07761a9dee514d567ca01c7d  gdb/compile/compile.h
-eafcd9c1de6cad329c2a489b86a112ea  gdb/compile/compile-c-symbols.c
+fa33c200ca1e2462bf9298296b05fdb6  gdb/compile/compile-c-symbols.c
 1884269c365b328b46a183a1ef18ed88  gdb/compile/compile-object-run.h
 94aba61700f72dde7fa8bf03a274a1bc  gdb/compile/compile-object-load.c
 ea54d5d88189c724eb96aa3d07a6ba29  gdb/compile/compile-c-support.c
-5a775dbab2d0b82a93679dd0aa2f02cd  gdb/compile/compile-object-run.c
+f18db5eb07f3522a106e99efa6b0ed20  gdb/compile/compile-object-run.c
 3e4c216cafd445647b0852abf8e212b1  gdb/compile/compile-internal.h
 3e9f4485bdb3a38008f9a74d9e2a4cdc  gdb/compile/compile-object-load.h
 235111c4da0354473d7b4cbb0dcc33a3  gdb/compile/compile-c-types.c
