public inbox for gdb-testers@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] sparc-coff removal leftover
@ 2018-04-16 11:29 sergiodj+buildbot
  2018-04-16 11:29 ` *** COMPILATION FAILED *** Failures on RHEL-s390x-m64, branch master *** BREAKAGE *** sergiodj+buildbot
                   ` (17 more replies)
  0 siblings, 18 replies; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16 11:29 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5452f388a51463394553b29469e32e7765d874e1 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 5452f388a51463394553b29469e32e7765d874e1

sparc-coff removal leftover

	* coff/sparc.h: Delete.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] dwarf2read: replace gdb::optional<bool> with enum
@ 2019-08-25 23:11 gdb-buildbot
  2019-08-25 23:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-08-25 23:11 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT beadd3e84ed8e652015f07eb4734a6d3b17e79cb ***

commit beadd3e84ed8e652015f07eb4734a6d3b17e79cb
Author:     Simon Marchi <simon.marchi@efficios.com>
AuthorDate: Sun Aug 25 18:09:47 2019 -0400
Commit:     Simon Marchi <simon.marchi@efficios.com>
CommitDate: Sun Aug 25 18:09:47 2019 -0400

    dwarf2read: replace gdb::optional<bool> with enum
    
    gdb::optional<bool> is dangerous, because it's easy to do:
    
      if (opt_bool)
    
    when you actually meant
    
      if (*opt_bool)
    
    or vice-versa.  The first checks if the optional is set, the second
    checks if the wrapped bool is true.
    
    Replace it with an enum that explicitly defines the three possible
    states.
    
    gdb/ChangeLog:
    
            * dwarf2read.c (dw2_debug_names_iterator::next): Use enum to
            represent whether the symbol is static, dynamic, or we don't
            know.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index cbb83347f1..5f64ca6d4a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2019-08-25  Simon Marchi  <simon.marchi@efficios.com>
+
+	* dwarf2read.c (dw2_debug_names_iterator::next): Use enum to
+	represent whether the symbol is static, dynamic, or we don't
+	know.
+
 2019-08-25  Yoshinori Sato <ysato@users.sourceforge.jp>
 
         * gdb/rx-tdep.c (rx_register_names): New.
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index de9755f6ce..a0b989fd0c 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -5843,7 +5843,11 @@ dw2_debug_names_iterator::next ()
       return NULL;
     }
   const mapped_debug_names::index_val &indexval = indexval_it->second;
-  gdb::optional<bool> is_static;
+  enum class symbol_linkage {
+    unknown,
+    static_,
+    extern_,
+  } symbol_linkage = symbol_linkage::unknown;
   dwarf2_per_cu_data *per_cu = NULL;
   for (const mapped_debug_names::index_val::attr &attr : indexval.attr_vec)
     {
@@ -5895,12 +5899,12 @@ dw2_debug_names_iterator::next ()
 	case DW_IDX_GNU_internal:
 	  if (!m_map.augmentation_is_gdb)
 	    break;
-	  is_static = true;
+	  symbol_linkage = symbol_linkage::static_;
 	  break;
 	case DW_IDX_GNU_external:
 	  if (!m_map.augmentation_is_gdb)
 	    break;
-	  is_static = false;
+	  symbol_linkage = symbol_linkage::extern_;
 	  break;
 	}
     }
@@ -5910,10 +5914,11 @@ dw2_debug_names_iterator::next ()
     goto again;
 
   /* Check static vs global.  */
-  if (is_static.has_value () && m_block_index.has_value ())
+  if (symbol_linkage != symbol_linkage::unknown && m_block_index.has_value ())
     {
 	const bool want_static = *m_block_index == STATIC_BLOCK;
-	if (want_static != *is_static)
+	const bool symbol_is_static = symbol_linkage == symbol_linkage::static_;
+	if (want_static != symbol_is_static)
 	  goto again;
     }
 


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Introduce reset_locator function in tui-layout.c
@ 2019-07-18  1:24 gdb-buildbot
  2019-07-18  2:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-07-18  1:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1bf605de8e9ae4fcf77c21067ddaf4a242a873f7 ***

commit 1bf605de8e9ae4fcf77c21067ddaf4a242a873f7
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Fri Jun 28 23:56:25 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Wed Jul 17 12:19:13 2019 -0600

    Introduce reset_locator function in tui-layout.c
    
    init_and_make_win in tui-layout.c is now only called for the locator
    -- earlier changes have made most of the cases here obsolete.  This
    patch removes init_and_make_win and introduces a reset_locator
    function.  Window creation is now much simpler to follow, because it
    is no longer quite so dynamic.  (Though it will become even simpler in
    coming patches.)
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-layout.c (show_source_disasm_command): Use
            reset_locator.
            (reset_locator): New function.
            (init_and_make_win): Remove.
            (show_source_or_disasm_and_command): Use reset_locator.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1c56652d8a..76549e029a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2019-07-17  Tom Tromey  <tom@tromey.com>
+
+	* tui/tui-layout.c (show_source_disasm_command): Use
+	reset_locator.
+	(reset_locator): New function.
+	(init_and_make_win): Remove.
+	(show_source_or_disasm_and_command): Use reset_locator.
+
 2019-07-17  Tom Tromey  <tom@tromey.com>
 
 	* tui/tui-winsource.c (tui_set_exec_info_content): Remove
diff --git a/gdb/tui/tui-layout.c b/gdb/tui/tui-layout.c
index 23537b7f49..ab849a9813 100644
--- a/gdb/tui/tui-layout.c
+++ b/gdb/tui/tui-layout.c
@@ -43,10 +43,8 @@
 ** Static Local Decls
 ********************************/
 static void show_layout (enum tui_layout_type);
-static tui_gen_win_info *init_and_make_win (tui_gen_win_info *,
-					    enum tui_win_type,
-					    int, int, int, int,
-					    enum tui_box);
+static void reset_locator (tui_gen_win_info *,
+			   int, int, int, int);
 static void show_source_or_disasm_and_command (enum tui_layout_type);
 static struct tui_win_info *make_command_window (int, int);
 static struct tui_win_info *make_source_window (int, int);
@@ -614,13 +612,11 @@ show_source_disasm_command (void)
 	{
 	  tui_win_list[DISASSEM_WIN]
 	    = make_disasm_window (asm_height, src_height - 1);
-	  init_and_make_win (locator,
-			     LOCATOR_WIN,
-			     2 /* 1 */ ,
-			     tui_term_width (),
-			     0,
-			     (src_height + asm_height) - 1,
-			     DONT_BOX_WINDOW);
+	  reset_locator (locator,
+			 2 /* 1 */ ,
+			 tui_term_width (),
+			 0,
+			 (src_height + asm_height) - 1);
 	}
       else
 	{
@@ -696,13 +692,11 @@ show_data (enum tui_layout_type new_layout)
       else
 	tui_win_list[win_type]
 	  = make_disasm_window (src_height, data_height - 1);
-      init_and_make_win (locator,
-			     LOCATOR_WIN,
-			     2 /* 1 */ ,
-			     tui_term_width (),
-			     0,
-			     total_height - 1,
-			     DONT_BOX_WINDOW);
+      reset_locator (locator,
+		     2 /* 1 */ ,
+		     tui_term_width (),
+		     0,
+		     total_height - 1);
       base = (tui_source_window_base *) tui_win_list[win_type];
     }
   else
@@ -751,48 +745,13 @@ tui_gen_win_info::reset (enum tui_win_type win_type,
   origin.y = origin_y_;
 }
 
-/* init_and_make_win().
- */
-static tui_gen_win_info *
-init_and_make_win (tui_gen_win_info *win_info, 
-		   enum tui_win_type win_type,
-		   int height, int width, 
-		   int origin_x, int origin_y,
-		   enum tui_box box_it)
+static void
+reset_locator (tui_gen_win_info *win_info, 
+	       int height, int width, 
+	       int origin_x, int origin_y)
 {
-  if (win_info == NULL)
-    {
-      switch (win_type)
-	{
-	case SRC_WIN:
-	  win_info = new tui_source_window ();
-	  break;
-
-	case DISASSEM_WIN:
-	  win_info = new tui_disasm_window ();
-	  break;
-
-	case DATA_WIN:
-	  win_info = new tui_data_window ();
-	  break;
-
-	case CMD_WIN:
-	  win_info = new tui_cmd_window ();
-	  break;
-
-	case EXEC_INFO_WIN:
-	  win_info = new tui_exec_info_window ();
-	  break;
-
-	default:
-	  gdb_assert_not_reached (_("unhandled window type"));
-	}
-    }
-
-  win_info->reset (win_type, height, width, origin_x, origin_y);
-  tui_make_window (win_info, box_it);
-
-  return win_info;
+  win_info->reset (LOCATOR_WIN, height, width, origin_x, origin_y);
+  tui_make_window (win_info, DONT_BOX_WINDOW);
 }
 
 
@@ -825,13 +784,11 @@ show_source_or_disasm_and_command (enum tui_layout_type layout_type)
 	    *win_info_ptr = make_source_window (src_height - 1, 0);
 	  else
 	    *win_info_ptr = make_disasm_window (src_height - 1, 0);
-	  init_and_make_win (locator,
-			     LOCATOR_WIN,
-			     2 /* 1 */ ,
-			     tui_term_width (),
-			     0,
-			     src_height - 1,
-			     DONT_BOX_WINDOW);
+	  reset_locator (locator,
+			 2 /* 1 */ ,
+			 tui_term_width (),
+			 0,
+			 src_height - 1);
 	  base = (tui_source_window_base *) *win_info_ptr;
 	}
       else


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Always create an execution info window for a source window
@ 2019-07-18  1:11 gdb-buildbot
  2019-07-18  2:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-07-18  1:11 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 098f9ed48e1c94a2624c825ba93d72b163d41196 ***

commit 098f9ed48e1c94a2624c825ba93d72b163d41196
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Fri Jun 28 23:54:25 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Wed Jul 17 12:19:12 2019 -0600

    Always create an execution info window for a source window
    
    A source or disassembly window will always have an "execution info"
    window (the window along the side that displays breakpoint info), but
    this isn't immediately clear from the source.  As a result, some code
    has checks to see whether the execution_info is NULL.
    
    This changes the source window base class to always instantiate an
    execution_info window, then updates the rest of the code.  It also
    simplifies window creation in tui-layout.c.
    
    gdb/ChangeLog
    2019-07-17  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-winsource.c (tui_set_exec_info_content): Remove
            condition.
            * tui/tui-wingeneral.c (tui_source_window_base::make_visible):
            Remove condition.
            * tui/tui-source.c (tui_source_window_base::reset): New method.
            * tui/tui-layout.c (make_command_window): Don't call
            init_and_make_win.
            (make_source_window, make_disasm_window): Don't call
            make_source_or_disasm_window.
            (make_data_window): Don't call init_and_make_win.  Change calling
            convention.
            (show_source_disasm_command, show_data): Simplify.
            (make_source_or_disasm_window): Remove.
            (show_source_or_disasm_and_command): Simplify.
            * tui/tui-data.h (struct tui_gen_win_info) <reset>: Now virtual.
            (struct tui_source_window_base) <reset>: Likewise.
            <execution_info>: Remove initializer.
            * tui/tui-data.c (tui_source_window_base): Initialize
            execution_info.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 338c39a043..1c56652d8a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,25 @@
+2019-07-17  Tom Tromey  <tom@tromey.com>
+
+	* tui/tui-winsource.c (tui_set_exec_info_content): Remove
+	condition.
+	* tui/tui-wingeneral.c (tui_source_window_base::make_visible):
+	Remove condition.
+	* tui/tui-source.c (tui_source_window_base::reset): New method.
+	* tui/tui-layout.c (make_command_window): Don't call
+	init_and_make_win.
+	(make_source_window, make_disasm_window): Don't call
+	make_source_or_disasm_window.
+	(make_data_window): Don't call init_and_make_win.  Change calling
+	convention.
+	(show_source_disasm_command, show_data): Simplify.
+	(make_source_or_disasm_window): Remove.
+	(show_source_or_disasm_and_command): Simplify.
+	* tui/tui-data.h (struct tui_gen_win_info) <reset>: Now virtual.
+	(struct tui_source_window_base) <reset>: Likewise.
+	<execution_info>: Remove initializer.
+	* tui/tui-data.c (tui_source_window_base): Initialize
+	execution_info.
+
 2019-07-17  Tom Tromey  <tom@tromey.com>
 
 	* tui/tui-layout.c (tui_set_layout): Remove regs_populate
diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c
index 396635b779..ee5b3aa3a7 100644
--- a/gdb/tui/tui-data.c
+++ b/gdb/tui/tui-data.c
@@ -332,7 +332,8 @@ tui_win_info::tui_win_info (enum tui_win_type type)
 }
 
 tui_source_window_base::tui_source_window_base (enum tui_win_type type)
-  : tui_win_info (type)
+  : tui_win_info (type),
+    execution_info (new tui_exec_info_window ())
 {
   gdb_assert (type == SRC_WIN || type == DISASSEM_WIN);
   start_line_or_addr.loa = LOA_ADDRESS;
diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h
index fcbb940728..9bcfe4cfaf 100644
--- a/gdb/tui/tui-data.h
+++ b/gdb/tui/tui-data.h
@@ -61,9 +61,9 @@ public:
   /* Reset this window.  WIN_TYPE must match the existing type of this
      window (it is only passed for self-test purposes).  The other
      parameters are used to set the window's size and position.  */
-  void reset (enum tui_win_type win_type,
-	      int height, int width,
-	      int origin_x, int origin_y);
+  virtual void reset (enum tui_win_type win_type,
+		      int height, int width,
+		      int origin_x, int origin_y);
 
   /* Window handle.  */
   WINDOW *handle = nullptr;
@@ -395,10 +395,14 @@ public:
      LINE_NO in this source window; false otherwise.  */
   virtual bool location_matches_p (struct bp_location *loc, int line_no) = 0;
 
+  void reset (enum tui_win_type win_type,
+	      int height, int width,
+	      int origin_x, int origin_y) override;
+
   /* Does the locator belong to this window?  */
   bool m_has_locator = false;
   /* Execution information window.  */
-  struct tui_exec_info_window *execution_info = nullptr;
+  struct tui_exec_info_window *execution_info;
   /* Used for horizontal scroll.  */
   int horizontal_offset = 0;
   struct tui_line_or_address start_line_or_addr;
diff --git a/gdb/tui/tui-layout.c b/gdb/tui/tui-layout.c
index ac0d01c990..23537b7f49 100644
--- a/gdb/tui/tui-layout.c
+++ b/gdb/tui/tui-layout.c
@@ -48,12 +48,9 @@ static tui_gen_win_info *init_and_make_win (tui_gen_win_info *,
 					    int, int, int, int,
 					    enum tui_box);
 static void show_source_or_disasm_and_command (enum tui_layout_type);
-static struct tui_win_info *make_source_or_disasm_window (enum tui_win_type, 
-							  int, int);
 static struct tui_win_info *make_command_window (int, int);
 static struct tui_win_info *make_source_window (int, int);
 static struct tui_win_info *make_disasm_window (int, int);
-static void make_data_window (struct tui_win_info **, int, int);
 static void show_source_command (void);
 static void show_disasm_command (void);
 static void show_source_disasm_command (void);
@@ -522,14 +519,9 @@ prev_layout (void)
 static struct tui_win_info *
 make_command_window (int height, int origin_y)
 {
-  struct tui_win_info *result
-    = (struct tui_win_info *) init_and_make_win (NULL,
-						 CMD_WIN,
-						 height,
-						 tui_term_width (),
-						 0,
-						 origin_y,
-						 DONT_BOX_WINDOW);
+  struct tui_win_info *result = new tui_cmd_window ();
+  result->reset (CMD_WIN, height, tui_term_width (), 0, origin_y);
+  tui_make_window (result, DONT_BOX_WINDOW);
   return result;
 }
 
@@ -539,8 +531,11 @@ make_command_window (int height, int origin_y)
 static struct tui_win_info *
 make_source_window (int height, int origin_y)
 {
-  return make_source_or_disasm_window (SRC_WIN, height, origin_y);
-}				/* make_source_window */
+  tui_win_info *result = new tui_source_window ();
+  result->reset (SRC_WIN, height, tui_term_width (), 0, origin_y);
+  result->make_visible (true);
+  return result;
+}
 
 
 /* make_disasm_window().
@@ -548,22 +543,20 @@ make_source_window (int height, int origin_y)
 static struct tui_win_info *
 make_disasm_window (int height, int origin_y)
 {
-  return make_source_or_disasm_window (DISASSEM_WIN, height, origin_y);
-}				/* make_disasm_window */
+  tui_win_info *result = new tui_disasm_window ();
+  result->reset (SRC_WIN, height, tui_term_width (), 0, origin_y);
+  result->make_visible (true);
+  return result;
+}
 
 
-static void
-make_data_window (struct tui_win_info **win_info_ptr, 
-		  int height, int origin_y)
+static tui_win_info *
+make_data_window (int height, int origin_y)
 {
-  *win_info_ptr
-    = (struct tui_win_info *) init_and_make_win (*win_info_ptr,
-						 DATA_WIN,
-						 height,
-						 tui_term_width (),
-						 0,
-						 origin_y,
-						 BOX_WINDOW);
+  tui_win_info *result = new tui_data_window ();
+  result->reset (DATA_WIN, height, tui_term_width (), 0, origin_y);
+  result->make_visible (true);
+  return result;
 }
 
 
@@ -606,16 +599,10 @@ show_source_disasm_command (void)
 	{
 	  TUI_SRC_WIN->reset (TUI_SRC_WIN->type,
 			      src_height,
-			      TUI_SRC_WIN->width,
-			      TUI_SRC_WIN->execution_info->width,
+			      tui_term_width (),
+			      0,
 			      0);
-	  TUI_SRC_WIN->execution_info->reset (EXEC_INFO_WIN,
-					      src_height,
-					      3,
-					      0,
-					      0);
 	  tui_make_visible (TUI_SRC_WIN);
-	  tui_make_visible (TUI_SRC_WIN->execution_info);
 	  TUI_SRC_WIN->m_has_locator = false;
 	}
 
@@ -645,16 +632,10 @@ show_source_disasm_command (void)
 	  TUI_DISASM_WIN->m_has_locator = true;
 	  TUI_DISASM_WIN->reset (TUI_DISASM_WIN->type,
 				 asm_height,
-				 TUI_DISASM_WIN->width,
-				 TUI_DISASM_WIN->execution_info->width,
+				 tui_term_width (),
+				 0,
 				 src_height - 1);
-	  TUI_DISASM_WIN->execution_info->reset (EXEC_INFO_WIN,
-						 asm_height,
-						 3,
-						 0,
-						 src_height - 1);
 	  tui_make_visible (TUI_DISASM_WIN);
-	  tui_make_visible (TUI_DISASM_WIN->execution_info);
 	}
       TUI_SRC_WIN->m_has_locator = false;
       TUI_DISASM_WIN->m_has_locator = true;
@@ -695,7 +676,12 @@ show_data (enum tui_layout_type new_layout)
   src_height = total_height - data_height;
   tui_make_all_invisible ();
   tui_make_invisible (locator);
-  make_data_window (&tui_win_list[DATA_WIN], data_height, 0);
+  if (tui_win_list[DATA_WIN] == nullptr)
+    tui_win_list[DATA_WIN] = make_data_window (data_height, 0);
+  else
+    tui_win_list[DATA_WIN]->reset (data_height, tui_term_width (), 0, 0);
+  tui_win_list[DATA_WIN]->make_visible (true);
+
   if (new_layout == SRC_DATA_COMMAND)
     win_type = SRC_WIN;
   else
@@ -724,16 +710,10 @@ show_data (enum tui_layout_type new_layout)
       base = (tui_source_window_base *) tui_win_list[win_type];
       tui_win_list[win_type]->reset (tui_win_list[win_type]->type,
 				     src_height,
-				     tui_win_list[win_type]->width,
-				     base->execution_info->width,
+				     tui_term_width (),
+				     0,
 				     data_height - 1);
-      base->execution_info->reset (EXEC_INFO_WIN,
-				   src_height,
-				   3,
-				   0,
-				   data_height - 1);
       tui_make_visible (tui_win_list[win_type]);
-      tui_make_visible (base->execution_info);
       locator->reset (LOCATOR_WIN,
 		      2 /* 1 */ ,
 		      tui_term_width (),
@@ -816,34 +796,6 @@ init_and_make_win (tui_gen_win_info *win_info,
 }
 
 
-static struct tui_win_info *
-make_source_or_disasm_window (enum tui_win_type type,
-			      int height, int origin_y)
-{
-  struct tui_exec_info_window *execution_info
-    = (tui_exec_info_window *) init_and_make_win (nullptr,
-						  EXEC_INFO_WIN,
-						  height,
-						  3,
-						  0,
-						  origin_y,
-						  DONT_BOX_WINDOW);
-
-  /* Now create the source window.  */
-  struct tui_source_window_base *result
-    = ((struct tui_source_window_base *)
-       init_and_make_win (NULL,
-			  type,
-			  height,
-			  tui_term_width () - execution_info->width,
-			  execution_info->width,
-			  origin_y,
-			  BOX_WINDOW));
-  result->execution_info = execution_info;
-  return result;
-}
-
-
 /* Show the Source/Command or the Disassem layout.  */
 static void
 show_source_or_disasm_and_command (enum tui_layout_type layout_type)
@@ -893,16 +845,10 @@ show_source_or_disasm_and_command (enum tui_layout_type layout_type)
 	  base->m_has_locator = true;
 	  (*win_info_ptr)->reset ((*win_info_ptr)->type,
 				  src_height - 1,
-				  (*win_info_ptr)->width,
-				  base->execution_info->width,
+				  tui_term_width (),
+				  0,
 				  0);
-	  base->execution_info->reset (EXEC_INFO_WIN,
-				       src_height - 1,
-				       3,
-				       0,
-				       0);
 	  tui_make_visible (*win_info_ptr);
-	  tui_make_visible (base->execution_info);
 	}
 
       base->m_has_locator = true;
diff --git a/gdb/tui/tui-source.c b/gdb/tui/tui-source.c
index f0bac24bfe..873612fecc 100644
--- a/gdb/tui/tui-source.c
+++ b/gdb/tui/tui-source.c
@@ -291,3 +291,13 @@ tui_source_window::location_matches_p (struct bp_location *loc, int line_no)
 	  && filename_cmp (fullname,
 			   symtab_to_fullname (loc->symtab)) == 0);
 }
+
+void
+tui_source_window_base::reset (enum tui_win_type win_type,
+			       int height, int width,
+			       int origin_x, int origin_y)
+{
+  tui_gen_win_info::reset (win_type, height, width - 3,
+			   origin_x + 3, origin_y);
+  execution_info->reset (EXEC_INFO_WIN, height, 3, origin_x, origin_y);
+}
diff --git a/gdb/tui/tui-wingeneral.c b/gdb/tui/tui-wingeneral.c
index dc008cd719..3dca621b88 100644
--- a/gdb/tui/tui-wingeneral.c
+++ b/gdb/tui/tui-wingeneral.c
@@ -201,8 +201,7 @@ tui_make_invisible (struct tui_gen_win_info *win_info)
 void
 tui_source_window_base::make_visible (bool visible)
 {
-  if (execution_info != nullptr)
-    execution_info->make_visible (visible);
+  execution_info->make_visible (visible);
   tui_win_info::make_visible (visible);
 }
 
diff --git a/gdb/tui/tui-winsource.c b/gdb/tui/tui-winsource.c
index 38d5532912..d9f6425109 100644
--- a/gdb/tui/tui-winsource.c
+++ b/gdb/tui/tui-winsource.c
@@ -469,39 +469,36 @@ tui_exec_info_window::maybe_allocate_content (int n_elements)
 void
 tui_set_exec_info_content (struct tui_source_window_base *win_info)
 {
-  if (win_info->execution_info != NULL)
-    {
-      tui_exec_info_content *content
-	= win_info->execution_info->maybe_allocate_content (win_info->height);
+  tui_exec_info_content *content
+    = win_info->execution_info->maybe_allocate_content (win_info->height);
 
-      tui_update_breakpoint_info (win_info, nullptr, true);
-      for (int i = 0; i < win_info->content.size (); i++)
-	{
-	  tui_exec_info_content &element = content[i];
-	  struct tui_source_element *src_element;
-	  tui_bp_flags mode;
-
-	  src_element = &win_info->content[i];
-
-	  memset (element, ' ', sizeof (tui_exec_info_content));
-	  element[TUI_EXECINFO_SIZE - 1] = 0;
-
-	  /* Now update the exec info content based upon the state
-	     of each line as indicated by the source content.  */
-	  mode = src_element->break_mode;
-	  if (mode & TUI_BP_HIT)
-	    element[TUI_BP_HIT_POS] = (mode & TUI_BP_HARDWARE) ? 'H' : 'B';
-	  else if (mode & (TUI_BP_ENABLED | TUI_BP_DISABLED))
-	    element[TUI_BP_HIT_POS] = (mode & TUI_BP_HARDWARE) ? 'h' : 'b';
-
-	  if (mode & TUI_BP_ENABLED)
-	    element[TUI_BP_BREAK_POS] = '+';
-	  else if (mode & TUI_BP_DISABLED)
-	    element[TUI_BP_BREAK_POS] = '-';
-
-	  if (src_element->is_exec_point)
-	    element[TUI_EXEC_POS] = '>';
-	}
+  tui_update_breakpoint_info (win_info, nullptr, true);
+  for (int i = 0; i < win_info->content.size (); i++)
+    {
+      tui_exec_info_content &element = content[i];
+      struct tui_source_element *src_element;
+      tui_bp_flags mode;
+
+      src_element = &win_info->content[i];
+
+      memset (element, ' ', sizeof (tui_exec_info_content));
+      element[TUI_EXECINFO_SIZE - 1] = 0;
+
+      /* Now update the exec info content based upon the state
+	 of each line as indicated by the source content.  */
+      mode = src_element->break_mode;
+      if (mode & TUI_BP_HIT)
+	element[TUI_BP_HIT_POS] = (mode & TUI_BP_HARDWARE) ? 'H' : 'B';
+      else if (mode & (TUI_BP_ENABLED | TUI_BP_DISABLED))
+	element[TUI_BP_HIT_POS] = (mode & TUI_BP_HARDWARE) ? 'h' : 'b';
+
+      if (mode & TUI_BP_ENABLED)
+	element[TUI_BP_BREAK_POS] = '+';
+      else if (mode & TUI_BP_DISABLED)
+	element[TUI_BP_BREAK_POS] = '-';
+
+      if (src_element->is_exec_point)
+	element[TUI_EXEC_POS] = '>';
     }
 }
 


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove an unnecessary NULL check from the TUI
@ 2019-06-25 18:56 gdb-buildbot
  2019-07-09 18:06 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 18:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ec328aa512ee09ab326d59b417836bb950083230 ***

commit ec328aa512ee09ab326d59b417836bb950083230
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Sun Jun 16 10:23:10 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Tue Jun 25 07:48:25 2019 -0600

    Remove an unnecessary NULL check from the TUI
    
    In init_and_make_win, opaque_win_info can't be NULL after a new window
    is allocated.  This patch removes an unnecessary NULL check.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-layout.c (init_and_make_win): Remove NULL check.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index d01d1184d9..45415df087 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
 2019-06-25  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui-layout.c (init_and_make_win): Remove NULL check.
+
+2019-06-25  Tom Tromey  <tom@tromey.com>
+
 	* tui/tui-data.h (struct tui_win_info): Make constructor
 	protected.  Make destructor virtual.  Add initializers.
 	(tui_source_window, tui_data_window, tui_cmd_window): New
diff --git a/gdb/tui/tui-layout.c b/gdb/tui/tui-layout.c
index bcae819e51..695c56012c 100644
--- a/gdb/tui/tui-layout.c
+++ b/gdb/tui/tui-layout.c
@@ -842,18 +842,16 @@ init_and_make_win (void *opaque_win_info,
   else
     generic = &((struct tui_win_info *) opaque_win_info)->generic;
 
-  if (opaque_win_info != NULL)
+  init_gen_win_info (generic, win_type, height, width, origin_x, origin_y);
+  if (!tui_win_is_auxillary (win_type))
     {
-      init_gen_win_info (generic, win_type, height, width, origin_x, origin_y);
-      if (!tui_win_is_auxillary (win_type))
-	{
-	  if (generic->type == CMD_WIN)
-	    ((struct tui_win_info *) opaque_win_info)->can_highlight = FALSE;
-	  else
-	    ((struct tui_win_info *) opaque_win_info)->can_highlight = TRUE;
-	}
-      tui_make_window (generic, box_it);
+      if (generic->type == CMD_WIN)
+	((struct tui_win_info *) opaque_win_info)->can_highlight = FALSE;
+      else
+	((struct tui_win_info *) opaque_win_info)->can_highlight = TRUE;
     }
+  tui_make_window (generic, box_it);
+
   return opaque_win_info;
 }
 


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Create subclasses for different window types
@ 2019-06-25 17:51 gdb-buildbot
  2019-07-09 17:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 17:51 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 33b906abfa7721128791883875d90394f8e2e7c2 ***

commit 33b906abfa7721128791883875d90394f8e2e7c2
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Sun Jun 16 10:13:13 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Tue Jun 25 07:48:24 2019 -0600

    Create subclasses for different window types
    
    This changes the TUI so that each different major window type has its
    own subclass.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-data.h (struct tui_win_info): Make constructor
            protected.  Make destructor virtual.  Add initializers.
            (tui_source_window, tui_data_window, tui_cmd_window): New
            classes.
            * tui/tui-data.c (tui_win_info): Rename from init_win_info.  Now a
            constructor.  Add "type" parameter.
            (tui_source_window, tui_data_window, tui_cmd_window): New
            constructors.
            (tui_alloc_win_info): Instantiate the appropriate subclass.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 537c70bebd..d01d1184d9 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,17 @@
 2019-06-25  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui-data.h (struct tui_win_info): Make constructor
+	protected.  Make destructor virtual.  Add initializers.
+	(tui_source_window, tui_data_window, tui_cmd_window): New
+	classes.
+	* tui/tui-data.c (tui_win_info): Rename from init_win_info.  Now a
+	constructor.  Add "type" parameter.
+	(tui_source_window, tui_data_window, tui_cmd_window): New
+	constructors.
+	(tui_alloc_win_info): Instantiate the appropriate subclass.
+
+2019-06-25  Tom Tromey  <tom@tromey.com>
+
 	* tui/tui-win.c (tui_resize_all): Use delete.
 	* tui/tui-data.h (struct tui_win_info) <~tui_win_info>: Declare
 	destructor.
diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c
index 1c96fc1c07..3320b4fc62 100644
--- a/gdb/tui/tui-data.c
+++ b/gdb/tui/tui-data.c
@@ -495,47 +495,59 @@ init_content_element (struct tui_win_element *element,
     }
 }
 
-static void
-init_win_info (struct tui_win_info *win_info)
+tui_win_info::tui_win_info (enum tui_win_type type)
 {
-  tui_init_generic_part (&win_info->generic);
-  win_info->can_highlight =
-    win_info->is_highlighted = FALSE;
-  switch (win_info->generic.type)
-    {
-    case SRC_WIN:
-    case DISASSEM_WIN:
-      win_info->detail.source_info.execution_info = NULL;
-      win_info->detail.source_info.has_locator = FALSE;
-      win_info->detail.source_info.horizontal_offset = 0;
-      win_info->detail.source_info.gdbarch = NULL;
-      win_info->detail.source_info.start_line_or_addr.loa = LOA_ADDRESS;
-      win_info->detail.source_info.start_line_or_addr.u.addr = 0;
-      win_info->detail.source_info.fullname = NULL;
-      break;
-    case DATA_WIN:
-      win_info->detail.data_display_info.data_content = NULL;
-      win_info->detail.data_display_info.data_content_count = 0;
-      win_info->detail.data_display_info.regs_content = NULL;
-      win_info->detail.data_display_info.regs_content_count = 0;
-      win_info->detail.data_display_info.regs_column_count = 1;
-      win_info->detail.data_display_info.display_regs = FALSE;
-      win_info->detail.data_display_info.current_group = 0;
-      break;
-    case CMD_WIN:
-      break;
-    }
+  generic.type = type;
+  tui_init_generic_part (&generic);
 }
 
+tui_source_window::tui_source_window (enum tui_win_type type)
+  : tui_win_info (type)
+{
+  gdb_assert (type == SRC_WIN || type == DISASSEM_WIN);
+  detail.source_info.execution_info = NULL;
+  detail.source_info.has_locator = FALSE;
+  detail.source_info.horizontal_offset = 0;
+  detail.source_info.gdbarch = NULL;
+  detail.source_info.start_line_or_addr.loa = LOA_ADDRESS;
+  detail.source_info.start_line_or_addr.u.addr = 0;
+  detail.source_info.fullname = NULL;
+}
+
+tui_data_window::tui_data_window ()
+  : tui_win_info (DATA_WIN)
+{
+  detail.data_display_info.data_content = (tui_win_content) NULL;
+  detail.data_display_info.data_content_count = 0;
+  detail.data_display_info.regs_content = (tui_win_content) NULL;
+  detail.data_display_info.regs_content_count = 0;
+  detail.data_display_info.regs_column_count = 1;
+  detail.data_display_info.display_regs = FALSE;
+  detail.data_display_info.current_group = 0;
+}
+
+tui_cmd_window::tui_cmd_window ()
+  : tui_win_info (CMD_WIN)
+{
+}
 
 struct tui_win_info *
 tui_alloc_win_info (enum tui_win_type type)
 {
-  struct tui_win_info *win_info = new struct tui_win_info (type);
+  switch (type)
+    {
+    case SRC_WIN:
+    case DISASSEM_WIN:
+      return new tui_source_window (type);
 
-  init_win_info (win_info);
+    case DATA_WIN:
+      return new tui_data_window ();
 
-  return win_info;
+    case CMD_WIN:
+      return new tui_cmd_window ();
+    }
+
+  gdb_assert_not_reached (_("Unhandled window type"));
 }
 
 
diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h
index c5c2c2b278..1627625950 100644
--- a/gdb/tui/tui-data.h
+++ b/gdb/tui/tui-data.h
@@ -271,15 +271,15 @@ struct tui_command_info
 /* This defines information about each logical window.  */
 struct tui_win_info
 {
-  explicit tui_win_info (enum tui_win_type type)
-  {
-    generic.type = type;
-  }
-
-  ~tui_win_info ();
+protected:
 
+  explicit tui_win_info (enum tui_win_type type);
   DISABLE_COPY_AND_ASSIGN (tui_win_info);
 
+public:
+
+  virtual ~tui_win_info ();
+
   struct tui_gen_win_info generic;	/* General window information.  */
   union
   {
@@ -288,8 +288,30 @@ struct tui_win_info
     struct tui_command_info command_info;
   }
   detail;
-  int can_highlight;	/* Can this window ever be highlighted?  */
-  int is_highlighted;	/* Is this window highlighted?  */
+
+  /* Can this window ever be highlighted?  */
+  int can_highlight = 0;
+
+  /* Is this window highlighted?  */
+  int is_highlighted = 0;
+};
+
+struct tui_source_window : public tui_win_info
+{
+  explicit tui_source_window (enum tui_win_type type);
+  DISABLE_COPY_AND_ASSIGN (tui_source_window);
+};
+
+struct tui_data_window : public tui_win_info
+{
+  tui_data_window ();
+  DISABLE_COPY_AND_ASSIGN (tui_data_window);
+};
+
+struct tui_cmd_window : public tui_win_info
+{
+  tui_cmd_window ();
+  DISABLE_COPY_AND_ASSIGN (tui_cmd_window);
 };
 
 extern int tui_win_is_source_type (enum tui_win_type win_type);


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add destructor to tui_win_info
@ 2019-06-25 16:56 gdb-buildbot
  2019-07-09 17:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 16:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e7e11af42dca6482302833c4106974176aa66052 ***

commit e7e11af42dca6482302833c4106974176aa66052
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Sun Jun 16 09:43:21 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Tue Jun 25 07:48:24 2019 -0600

    Add destructor to tui_win_info
    
    This changes tui_free_window into a destructor for tui_free_window and
    then updates the users.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-win.c (tui_resize_all): Use delete.
            * tui/tui-data.h (struct tui_win_info) <~tui_win_info>: Declare
            destructor.
            (tui_free_window): Don't declare.
            * tui/tui-data.c (~tui_win_info): Rename from tui_free_window.
            Update.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b4395c0138..537c70bebd 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,14 @@
 2019-06-25  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui-win.c (tui_resize_all): Use delete.
+	* tui/tui-data.h (struct tui_win_info) <~tui_win_info>: Declare
+	destructor.
+	(tui_free_window): Don't declare.
+	* tui/tui-data.c (~tui_win_info): Rename from tui_free_window.
+	Update.
+
+2019-06-25  Tom Tromey  <tom@tromey.com>
+
 	* tui/tui-data.h (struct tui_win_info): Add constructor.
 	* tui/tui-data.c (tui_alloc_win_info): Use new.
 	(tui_free_window): Use delete.
diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c
index 117bda3c20..1c96fc1c07 100644
--- a/gdb/tui/tui-data.c
+++ b/gdb/tui/tui-data.c
@@ -603,21 +603,20 @@ tui_add_content_elements (struct tui_gen_win_info *win_info,
   return index_start;
 }
 
-void
-tui_free_window (struct tui_win_info *win_info)
+tui_win_info::~tui_win_info ()
 {
   struct tui_gen_win_info *generic_win;
 
-  switch (win_info->generic.type)
+  switch (generic.type)
     {
     case SRC_WIN:
     case DISASSEM_WIN:
-      if (win_info->detail.source_info.fullname)
+      if (detail.source_info.fullname)
         {
-          xfree (win_info->detail.source_info.fullname);
-          win_info->detail.source_info.fullname = NULL;
+          xfree (detail.source_info.fullname);
+          detail.source_info.fullname = NULL;
         }
-      generic_win = win_info->detail.source_info.execution_info;
+      generic_win = detail.source_info.execution_info;
       if (generic_win != NULL)
 	{
 	  tui_delete_win (generic_win->handle);
@@ -626,34 +625,33 @@ tui_free_window (struct tui_win_info *win_info)
 	}
       break;
     case DATA_WIN:
-      if (win_info->generic.content != NULL)
+      if (generic.content != NULL)
 	{
-	  tui_free_data_content (win_info->detail.data_display_info.regs_content,
-				 win_info->detail.data_display_info.regs_content_count);
-	  win_info->detail.data_display_info.regs_content = NULL;
-	  win_info->detail.data_display_info.regs_content_count = 0;
-	  tui_free_data_content (win_info->detail.data_display_info.data_content,
-				 win_info->detail.data_display_info.data_content_count);
-	  win_info->detail.data_display_info.data_content = NULL;
-	  win_info->detail.data_display_info.data_content_count = 0;
-	  win_info->detail.data_display_info.regs_column_count = 1;
-	  win_info->detail.data_display_info.display_regs = FALSE;
-	  win_info->generic.content = NULL;
-	  win_info->generic.content_size = 0;
+	  tui_free_data_content (detail.data_display_info.regs_content,
+				 detail.data_display_info.regs_content_count);
+	  detail.data_display_info.regs_content = NULL;
+	  detail.data_display_info.regs_content_count = 0;
+	  tui_free_data_content (detail.data_display_info.data_content,
+				 detail.data_display_info.data_content_count);
+	  detail.data_display_info.data_content = NULL;
+	  detail.data_display_info.data_content_count = 0;
+	  detail.data_display_info.regs_column_count = 1;
+	  detail.data_display_info.display_regs = FALSE;
+	  generic.content = NULL;
+	  generic.content_size = 0;
 	}
       break;
     default:
       break;
     }
-  if (win_info->generic.handle != NULL)
+  if (generic.handle != NULL)
     {
-      tui_delete_win (win_info->generic.handle);
-      win_info->generic.handle = NULL;
-      tui_free_win_content (&win_info->generic);
+      tui_delete_win (generic.handle);
+      generic.handle = NULL;
+      tui_free_win_content (&generic);
     }
-  if (win_info->generic.title)
-    xfree (win_info->generic.title);
-  delete win_info;
+  if (generic.title)
+    xfree (generic.title);
 }
 
 
diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h
index 047ee35d98..c5c2c2b278 100644
--- a/gdb/tui/tui-data.h
+++ b/gdb/tui/tui-data.h
@@ -276,6 +276,8 @@ struct tui_win_info
     generic.type = type;
   }
 
+  ~tui_win_info ();
+
   DISABLE_COPY_AND_ASSIGN (tui_win_info);
 
   struct tui_gen_win_info generic;	/* General window information.  */
@@ -313,7 +315,6 @@ extern void tui_init_generic_part (struct tui_gen_win_info *);
 extern tui_win_content tui_alloc_content (int, enum tui_win_type);
 extern int tui_add_content_elements (struct tui_gen_win_info *, 
 				     int);
-extern void tui_free_window (struct tui_win_info *);
 extern void tui_free_win_content (struct tui_gen_win_info *);
 extern void tui_free_data_content (tui_win_content, int);
 extern void tui_free_all_source_wins_content (void);
diff --git a/gdb/tui/tui-win.c b/gdb/tui/tui-win.c
index a1329e54a8..a69e0878ef 100644
--- a/gdb/tui/tui-win.c
+++ b/gdb/tui/tui-win.c
@@ -785,7 +785,7 @@ tui_resize_all (void)
 	      && (tui_win_list[win_type] != NULL)
 	      && !tui_win_list[win_type]->generic.is_visible)
 	    {
-	      tui_free_window (tui_win_list[win_type]);
+	      delete tui_win_list[win_type];
 	      tui_win_list[win_type] = NULL;
 	    }
 	}


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Use new and delete for TUI windows
@ 2019-06-25 16:22 gdb-buildbot
  2019-07-09 17:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 16:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6792b55e08ec49f40916d4f8d7168d0047b9e928 ***

commit 6792b55e08ec49f40916d4f8d7168d0047b9e928
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Sun Jun 16 09:41:06 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Tue Jun 25 07:48:23 2019 -0600

    Use new and delete for TUI windows
    
    This changes tui_win_info to use new and delete, rather than XNEW and
    xfree.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-data.h (struct tui_win_info): Add constructor.
            * tui/tui-data.c (tui_alloc_win_info): Use new.
            (tui_free_window): Use delete.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 29c568f5d3..b4395c0138 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2019-06-25  Tom Tromey  <tom@tromey.com>
+
+	* tui/tui-data.h (struct tui_win_info): Add constructor.
+	* tui/tui-data.c (tui_alloc_win_info): Use new.
+	(tui_free_window): Use delete.
+
 2019-06-22  Tom Tromey  <tom@tromey.com>
 
 	* tui/tui-windata.h (tui_first_data_element_no_in_line): Don't
diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c
index b67cb48c2e..117bda3c20 100644
--- a/gdb/tui/tui-data.c
+++ b/gdb/tui/tui-data.c
@@ -531,9 +531,8 @@ init_win_info (struct tui_win_info *win_info)
 struct tui_win_info *
 tui_alloc_win_info (enum tui_win_type type)
 {
-  struct tui_win_info *win_info = XNEW (struct tui_win_info);
+  struct tui_win_info *win_info = new struct tui_win_info (type);
 
-  win_info->generic.type = type;
   init_win_info (win_info);
 
   return win_info;
@@ -654,7 +653,7 @@ tui_free_window (struct tui_win_info *win_info)
     }
   if (win_info->generic.title)
     xfree (win_info->generic.title);
-  xfree (win_info);
+  delete win_info;
 }
 
 
diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h
index c696feed28..047ee35d98 100644
--- a/gdb/tui/tui-data.h
+++ b/gdb/tui/tui-data.h
@@ -271,6 +271,13 @@ struct tui_command_info
 /* This defines information about each logical window.  */
 struct tui_win_info
 {
+  explicit tui_win_info (enum tui_win_type type)
+  {
+    generic.type = type;
+  }
+
+  DISABLE_COPY_AND_ASSIGN (tui_win_info);
+
   struct tui_gen_win_info generic;	/* General window information.  */
   union
   {


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] bfd/elf-properties: avoid shadowing a C library symbol
@ 2019-06-25 15:25 gdb-buildbot
  2019-07-09 17:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 15:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ab9f654ca3f1222f63533aabfffc223ae1fc69dc ***

commit ab9f654ca3f1222f63533aabfffc223ae1fc69dc
Author:     Jan Beulich <jbeulich@novell.com>
AuthorDate: Tue Jun 25 12:01:50 2019 +0200
Commit:     Jan Beulich <jbeulich@suse.com>
CommitDate: Tue Jun 25 12:01:50 2019 +0200

    bfd/elf-properties: avoid shadowing a C library symbol
    
    With my (oldish) gcc/glibc combination I'm seeing
    
    .../bfd/elf-properties.c: In function elf_find_and_remove_property:
    .../bfd/elf-properties.c:244: error: declaration of remove shadows a global declaration
    /usr/include/stdio.h:157: error: shadowed declaration is here

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index d8cbef1bd1..0783242758 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
+	* elf-properties.c (elf_find_and_remove_property): Rename last
+	parameter. Mention it in comment.
+
 2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
 
 	* elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
diff --git a/bfd/elf-properties.c b/bfd/elf-properties.c
index a297c9c5c2..198eece084 100644
--- a/bfd/elf-properties.c
+++ b/bfd/elf-properties.c
@@ -236,12 +236,12 @@ elf_merge_gnu_properties (struct bfd_link_info *info, bfd *abfd, bfd *bbfd,
   return FALSE;
 }
 
-/* Return the property of TYPE on *LISTP and remove it from *LISTP.
-   Return NULL if not found.  */
+/* Return the property of TYPE on *LISTP and remove it from *LISTP if RM is
+   true.  Return NULL if not found.  */
 
 static elf_property *
 elf_find_and_remove_property (elf_property_list **listp,
-			      unsigned int type, bfd_boolean remove)
+			      unsigned int type, bfd_boolean rm)
 {
   elf_property_list *list;
 
@@ -250,7 +250,7 @@ elf_find_and_remove_property (elf_property_list **listp,
       if (type == list->property.pr_type)
 	{
 	  /* Remove this property.  */
-	  if (remove)
+	  if (rm)
 	    *listp = list->next;
 	  return &list->property;
 	}


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: correct / adjust debug printing
@ 2019-06-25 14:23 gdb-buildbot
  2019-07-09 17:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 14:23 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2c70385689542a4c4cbe160601e54f9f18a4c4c5 ***

commit 2c70385689542a4c4cbe160601e54f9f18a4c4c5
Author:     Jan Beulich <jbeulich@novell.com>
AuthorDate: Tue Jun 25 09:41:33 2019 +0200
Commit:     Jan Beulich <jbeulich@suse.com>
CommitDate: Tue Jun 25 09:41:33 2019 +0200

    x86: correct / adjust debug printing
    
    For quite some time we've been using combinations of bits for
    specifying various registers in operands and templates. I think it was
    Alan who had indicated that likely the debug printing would need
    adjustment as a result. Here we go.
    
    Accumulator handling for GPRs gets changed to match that for FPU regs.
    For this to work, OPERAND_TYPE_ACC{32,64} get repurposed, with their
    original uses replaced by direct checks of the two bits of interest,
    which is cheaper than operand_type_equal() invocations.
    
    For SIMD registers nothing similar appears to be needed, as respective
    operands get stripped from the (copy of the) template before pt() is
    reached.
    
    The type change on pi() is to silence a compiler diagnostic. Arguably
    its other parameter could also be const-qualified.

diff --git a/gas/ChangeLog b/gas/ChangeLog
index b76ae780e6..7272221aec 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,14 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* tc-i386.c (acc32, acc64): Delete.
+	(pi): Make first parameter pinter-to-const.
+	(type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
+	(pt): Use operand_type_equal().
+	(match_template): Replace use of acc32.
+	(process_suffix): Replace use of acc64.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to
 	use.
 
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 8263b15d6d..6c5d5b46c7 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1895,8 +1895,6 @@ operand_type_xor (i386_operand_type x, i386_operand_type y)
   return x;
 }
 
-static const i386_operand_type acc32 = OPERAND_TYPE_ACC32;
-static const i386_operand_type acc64 = OPERAND_TYPE_ACC64;
 static const i386_operand_type disp16 = OPERAND_TYPE_DISP16;
 static const i386_operand_type disp32 = OPERAND_TYPE_DISP32;
 static const i386_operand_type disp32s = OPERAND_TYPE_DISP32S;
@@ -3004,7 +3002,7 @@ static void pe (expressionS *);
 static void ps (symbolS *);
 
 static void
-pi (char *line, i386_insn *x)
+pi (const char *line, i386_insn *x)
 {
   unsigned int j;
 
@@ -3105,6 +3103,10 @@ const type_names[] =
   { OPERAND_TYPE_REG16, "r16" },
   { OPERAND_TYPE_REG32, "r32" },
   { OPERAND_TYPE_REG64, "r64" },
+  { OPERAND_TYPE_ACC8, "acc8" },
+  { OPERAND_TYPE_ACC16, "acc16" },
+  { OPERAND_TYPE_ACC32, "acc32" },
+  { OPERAND_TYPE_ACC64, "acc64" },
   { OPERAND_TYPE_IMM8, "i8" },
   { OPERAND_TYPE_IMM8, "i8s" },
   { OPERAND_TYPE_IMM16, "i16" },
@@ -3127,7 +3129,6 @@ const type_names[] =
   { OPERAND_TYPE_FLOATACC, "FAcc" },
   { OPERAND_TYPE_SREG2, "SReg2" },
   { OPERAND_TYPE_SREG3, "SReg3" },
-  { OPERAND_TYPE_ACC, "Acc" },
   { OPERAND_TYPE_JUMPABSOLUTE, "Jump Absolute" },
   { OPERAND_TYPE_REGMMX, "rMMX" },
   { OPERAND_TYPE_REGXMM, "rXMM" },
@@ -3146,7 +3147,7 @@ pt (i386_operand_type t)
   for (j = 0; j < ARRAY_SIZE (type_names); j++)
     {
       a = operand_type_and (t, type_names[j].mask);
-      if (!operand_type_all_zero (&a))
+      if (operand_type_equal (&a, &type_names[j].mask))
 	fprintf (stdout, "%s, ",  type_names[j].name);
     }
   fflush (stdout);
@@ -5814,8 +5815,8 @@ match_template (char mnem_suffix)
 	     zero-extend %eax to %rax.  */
 	  if (flag_code == CODE_64BIT
 	      && t->base_opcode == 0x90
-	      && operand_type_equal (&i.types [0], &acc32)
-	      && operand_type_equal (&i.types [1], &acc32))
+	      && i.types[0].bitfield.acc && i.types[0].bitfield.dword
+	      && i.types[1].bitfield.acc && i.types[1].bitfield.dword)
 	    continue;
 	  /* xrelease mov %eax, <disp> is another special case. It must not
 	     match the accumulator-only encoding of mov.  */
@@ -6409,8 +6410,8 @@ process_suffix (void)
 	  && ! (i.operands == 2
 		&& i.tm.base_opcode == 0x90
 		&& i.tm.extension_opcode == None
-		&& operand_type_equal (&i.types [0], &acc64)
-		&& operand_type_equal (&i.types [1], &acc64)))
+		&& i.types[0].bitfield.acc && i.types[0].bitfield.qword
+		&& i.types[1].bitfield.acc && i.types[1].bitfield.qword))
 	i.rex |= REX_W;
 
       break;
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index f7890e03c1..e669421a96 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,13 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* i386-gen.c (operand_type_init): Correct OPERAND_TYPE_DEBUG
+	entry. Drop OPERAND_TYPE_ACC entry. Add OPERAND_TYPE_ACC8 and
+	OPERAND_TYPE_ACC16 entries. Adjust OPERAND_TYPE_ACC32 and
+	OPERAND_TYPE_ACC64 entries.
+	* i386-init.h: Re-generate.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* i386-dis.c (Edqa, dqa_mode, EVEX_W_0F2A_P_1, EVEX_W_0F7B_P_1):
 	Delete.
 	(intel_operand_size, OP_E_register, OP_E_memory): Drop handling
diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c
index e80085a835..c0325ed16b 100644
--- a/opcodes/i386-gen.c
+++ b/opcodes/i386-gen.c
@@ -435,7 +435,7 @@ static initializer operand_type_init[] =
   { "OPERAND_TYPE_TEST",
     "Test" },
   { "OPERAND_TYPE_DEBUG",
-    "FloatReg" },
+    "Debug" },
   { "OPERAND_TYPE_FLOATREG",
     "FloatReg" },
   { "OPERAND_TYPE_FLOATACC",
@@ -444,8 +444,6 @@ static initializer operand_type_init[] =
     "SReg2" },
   { "OPERAND_TYPE_SREG3",
     "SReg3" },
-  { "OPERAND_TYPE_ACC",
-    "Acc" },
   { "OPERAND_TYPE_JUMPABSOLUTE",
     "JumpAbsolute" },
   { "OPERAND_TYPE_REGMMX",
@@ -460,10 +458,14 @@ static initializer operand_type_init[] =
     "RegMask" },
   { "OPERAND_TYPE_ESSEG",
     "EsSeg" },
+  { "OPERAND_TYPE_ACC8",
+    "Acc|Byte" },
+  { "OPERAND_TYPE_ACC16",
+    "Acc|Word" },
   { "OPERAND_TYPE_ACC32",
-    "Reg32|Acc|Dword" },
+    "Acc|Dword" },
   { "OPERAND_TYPE_ACC64",
-    "Reg64|Acc|Qword" },
+    "Acc|Qword" },
   { "OPERAND_TYPE_DISP16_32",
     "Disp16|Disp32" },
   { "OPERAND_TYPE_ANYDISP",
diff --git a/opcodes/i386-init.h b/opcodes/i386-init.h
index 1d9c17f922..735403a34c 100644
--- a/opcodes/i386-init.h
+++ b/opcodes/i386-init.h
@@ -1458,8 +1458,8 @@
       0, 0 } }
 
 #define OPERAND_TYPE_DEBUG \
-  { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
-      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, \
+  { { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 0 } }
 
 #define OPERAND_TYPE_FLOATREG \
@@ -1482,11 +1482,6 @@
       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 0 } }
 
-#define OPERAND_TYPE_ACC \
-  { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
-      0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
-      0, 0 } }
-
 #define OPERAND_TYPE_JUMPABSOLUTE \
   { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
@@ -1522,13 +1517,23 @@
       0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 0 } }
 
+#define OPERAND_TYPE_ACC8 \
+  { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+      0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+      0, 0 } }
+
+#define OPERAND_TYPE_ACC16 \
+  { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+      0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+      0, 0 } }
+
 #define OPERAND_TYPE_ACC32 \
-  { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+  { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 0 } }
 
 #define OPERAND_TYPE_ACC64 \
-  { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
+  { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
       0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, \
       0, 0 } }
 


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: drop dqa_mode
@ 2019-06-25 12:33 gdb-buildbot
  2019-07-09 17:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 12:33 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 54fbadc0c35f3dad663e2e175ea8d60546ffd710 ***

commit 54fbadc0c35f3dad663e2e175ea8d60546ffd710
Author:     Jan Beulich <jbeulich@novell.com>
AuthorDate: Tue Jun 25 09:28:33 2019 +0200
Commit:     Jan Beulich <jbeulich@suse.com>
CommitDate: Tue Jun 25 09:35:17 2019 +0200

    x86: drop dqa_mode
    
    I assume this mode was needed when EVEX.W handling wasn't really correct
    yet for other than 64-bit mode. It's clearly not needed anymore. Its
    elimination also allows dropping the EVEX.W split of VCVT{,U}SI2SS. (For
    the record, the dropped mode would have been wrong if used in any table
    entry not already guaranteeing EVEX.W=1.)

diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 78a8792a9e..f7890e03c1 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,16 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* i386-dis.c (Edqa, dqa_mode, EVEX_W_0F2A_P_1, EVEX_W_0F7B_P_1):
+	Delete.
+	(intel_operand_size, OP_E_register, OP_E_memory): Drop handling
+	of dqa_mode.
+	* i386-dis-evex-prefix.h: Move vcvtsi2ss and vcvtusi2ss leaf
+	entries here.
+	* i386-dis-evex-w.h: Drop EVEX_W_0F2A_P_1 and EVEX_W_0F7B_P_1
+	entries. Use Edq for vcvtsi2sd and vcvtusi2sd.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* i386-dis.c (OP_I64): Forword more cases to OP_I(). Drop local
 	variables.
 
diff --git a/opcodes/i386-dis-evex-prefix.h b/opcodes/i386-dis-evex-prefix.h
index def37781cc..261b01f0f7 100644
--- a/opcodes/i386-dis-evex-prefix.h
+++ b/opcodes/i386-dis-evex-prefix.h
@@ -64,7 +64,7 @@
   /* PREFIX_EVEX_0F2A */
   {
     { Bad_Opcode },
-    { VEX_W_TABLE (EVEX_W_0F2A_P_1) },
+    { "vcvtsi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Edq }, 0 },
     { Bad_Opcode },
     { VEX_W_TABLE (EVEX_W_0F2A_P_3) },
   },
@@ -404,7 +404,7 @@
   /* PREFIX_EVEX_0F7B */
   {
     { Bad_Opcode },
-    { VEX_W_TABLE (EVEX_W_0F7B_P_1) },
+    { "vcvtusi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Edq }, 0 },
     { VEX_W_TABLE (EVEX_W_0F7B_P_2) },
     { VEX_W_TABLE (EVEX_W_0F7B_P_3) },
   },
diff --git a/opcodes/i386-dis-evex-w.h b/opcodes/i386-dis-evex-w.h
index cd2333b083..2adfde9650 100644
--- a/opcodes/i386-dis-evex-w.h
+++ b/opcodes/i386-dis-evex-w.h
@@ -145,15 +145,10 @@
     { Bad_Opcode },
     { "vmovapd",	{ EXxS, XM }, 0 },
   },
-  /* EVEX_W_0F2A_P_1 */
-  {
-    { "vcvtsi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Ed }, 0 },
-    { "vcvtsi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Edqa }, 0 },
-  },
   /* EVEX_W_0F2A_P_3 */
   {
     { "vcvtsi2sd%LQ",	{ XMScalar, VexScalar, Ed }, 0 },
-    { "vcvtsi2sd%LQ",	{ XMScalar, VexScalar, EXxEVexR64, Edqa }, 0 },
+    { "vcvtsi2sd%LQ",	{ XMScalar, VexScalar, EXxEVexR64, Edq }, 0 },
   },
   /* EVEX_W_0F2B_P_0 */
   {
@@ -477,11 +472,6 @@
     { "vcvtudq2ps",	{ XM, EXx, EXxEVexR }, 0 },
     { "vcvtuqq2ps%XY",	{ XMxmmq, EXx, EXxEVexR }, 0 },
   },
-  /* EVEX_W_0F7B_P_1 */
-  {
-    { "vcvtusi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Ed }, 0 },
-    { "vcvtusi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Edqa }, 0 },
-  },
   /* EVEX_W_0F7B_P_2 */
   {
     { "vcvtps2qq",	{ XM, EXEvexHalfBcstXmmq, EXxEVexR }, 0 },
@@ -490,7 +480,7 @@
   /* EVEX_W_0F7B_P_3 */
   {
     { "vcvtusi2sd%LQ",	{ XMScalar, VexScalar, Ed }, 0 },
-    { "vcvtusi2sd%LQ",	{ XMScalar, VexScalar, EXxEVexR64, Edqa }, 0 },
+    { "vcvtusi2sd%LQ",	{ XMScalar, VexScalar, EXxEVexR64, Edq }, 0 },
   },
   /* EVEX_W_0F7E_P_1 */
   {
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index b9527ae84f..27e5d7791e 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -259,7 +259,6 @@ fetch_data (struct disassemble_info *info, bfd_byte *addr)
 #define Edb { OP_E, db_mode }
 #define Edw { OP_E, dw_mode }
 #define Edqd { OP_E, dqd_mode }
-#define Edqa { OP_E, dqa_mode }
 #define Eq { OP_E, q_mode }
 #define indirEv { OP_indirE, indir_v_mode }
 #define indirEp { OP_indirE, f_mode }
@@ -591,8 +590,6 @@ enum
   dw_mode,
   /* registers like dq_mode, memory like d_mode.  */
   dqd_mode,
-  /* operand size depends on the W bit as well as address mode.  */
-  dqa_mode,
   /* normal vex mode */
   vex_mode,
   /* 128bit vex mode */
@@ -2076,7 +2073,6 @@ enum
   EVEX_W_0F28_P_2,
   EVEX_W_0F29_P_0,
   EVEX_W_0F29_P_2,
-  EVEX_W_0F2A_P_1,
   EVEX_W_0F2A_P_3,
   EVEX_W_0F2B_P_0,
   EVEX_W_0F2B_P_2,
@@ -2149,7 +2145,6 @@ enum
   EVEX_W_0F7A_P_1,
   EVEX_W_0F7A_P_2,
   EVEX_W_0F7A_P_3,
-  EVEX_W_0F7B_P_1,
   EVEX_W_0F7B_P_2,
   EVEX_W_0F7B_P_3,
   EVEX_W_0F7E_P_1,
@@ -13522,7 +13517,6 @@ intel_operand_size (int bytemode, int sizeflag)
     case q_swap_mode:
       oappend ("QWORD PTR ");
       break;
-    case dqa_mode:
     case m_mode:
       if (address_mode == mode_64bit)
 	oappend ("QWORD PTR ");
@@ -13881,7 +13875,6 @@ OP_E_register (int bytemode, int sizeflag)
     case dqb_mode:
     case dqd_mode:
     case dqw_mode:
-    case dqa_mode:
       USED_REX (REX_W);
       if (rex & REX_W)
 	names = names64;
@@ -14031,9 +14024,6 @@ OP_E_memory (int bytemode, int sizeflag)
 	case xmm_mb_mode:
 	  shift = 0;
 	  break;
-	case dqa_mode:
-	  shift = address_mode == mode_64bit ? 3 : 2;
-	  break;
 	default:
 	  abort ();
 	}


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: simplify OP_I64()
@ 2019-06-25 11:32 gdb-buildbot
  2019-07-09 17:06 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 11:32 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a280ab8e81498c6049dca79f64bd0cc02ead01ab ***

commit a280ab8e81498c6049dca79f64bd0cc02ead01ab
Author:     Jan Beulich <jbeulich@novell.com>
AuthorDate: Tue Jun 25 09:27:05 2019 +0200
Commit:     Jan Beulich <jbeulich@suse.com>
CommitDate: Tue Jun 25 09:35:17 2019 +0200

    x86: simplify OP_I64()
    
    The only meaningful difference from OP_I() is the handling of the
    VEX.W=1 case in 64-bit mode for bytemode being v_mode. Funnel
    everything else into OP_I(), and drop no longer needed local
    variables.

diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index e02fd08400..78a8792a9e 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,10 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* i386-dis.c (OP_I64): Forword more cases to OP_I(). Drop local
+	variables.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* i386-dis.c (prefix_table): Use Edq for cvtsi2ss and cvtsi2sd.
 	Use Gdq for cvttss2si, cvttsd2si, cvtss2si, and cvtsd2si, and
 	movnti.
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index f7d9641ecb..b9527ae84f 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -14788,53 +14788,16 @@ OP_I (int bytemode, int sizeflag)
 static void
 OP_I64 (int bytemode, int sizeflag)
 {
-  bfd_signed_vma op;
-  bfd_signed_vma mask = -1;
-
-  if (address_mode != mode_64bit)
+  if (bytemode != v_mode || address_mode != mode_64bit || !(rex & REX_W))
     {
       OP_I (bytemode, sizeflag);
       return;
     }
 
-  switch (bytemode)
-    {
-    case b_mode:
-      FETCH_DATA (the_info, codep + 1);
-      op = *codep++;
-      mask = 0xff;
-      break;
-    case v_mode:
-      USED_REX (REX_W);
-      if (rex & REX_W)
-	op = get64 ();
-      else
-	{
-	  if (sizeflag & DFLAG)
-	    {
-	      op = get32 ();
-	      mask = 0xffffffff;
-	    }
-	  else
-	    {
-	      op = get16 ();
-	      mask = 0xfffff;
-	    }
-	  used_prefixes |= (prefixes & PREFIX_DATA);
-	}
-      break;
-    case w_mode:
-      mask = 0xfffff;
-      op = get16 ();
-      break;
-    default:
-      oappend (INTERNAL_DISASSEMBLER_ERROR);
-      return;
-    }
+  USED_REX (REX_W);
 
-  op &= mask;
   scratchbuf[0] = '$';
-  print_operand_value (scratchbuf + 1, 1, op);
+  print_operand_value (scratchbuf + 1, 1, get64 ());
   oappend_maybe_intel (scratchbuf);
   scratchbuf[0] = '\0';
 }


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: fix (dis)assembly of certain SSE2 insns in 16-bit mode
@ 2019-06-25 11:07 gdb-buildbot
  2019-07-09 17:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 11:07 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e1a1babdad9d14b935cbddc7d63fb76a580a16c5 ***

commit e1a1babdad9d14b935cbddc7d63fb76a580a16c5
Author:     Jan Beulich <jbeulich@novell.com>
AuthorDate: Tue Jun 25 09:25:26 2019 +0200
Commit:     Jan Beulich <jbeulich@suse.com>
CommitDate: Tue Jun 25 09:35:17 2019 +0200

    x86: fix (dis)assembly of certain SSE2 insns in 16-bit mode
    
    MOVNTI was wrongly assembled with a 66h prefix. Add IgnoreSize to
    address this. It and the scalar to/from integer conversion insns also
    were also wrongly using Ev / Gv, leading to 16-bit register names being
    printed when 32-bit ones were meant.
    
    Clone the 32-bit SSE2 test to cover both assembler and disassembler.

diff --git a/gas/ChangeLog b/gas/ChangeLog
index 416c2be4ec..2e123630b9 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,11 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* testsuite/gas/i386/sse2-16bit.d,
+	testsuite/gas/i386/sse2-16bit.s: New.
+	testsuite/gas/i386/i386.exp: Run new test.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* config/tc-i386.c (optimize_encoding): Also handle ANDQ with
 	immediatie fitting in 7 bits.
 	* testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index 5be713f3d7..7043da75b0 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -73,6 +73,7 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "relax-2"
     run_dump_test "ssemmx2"
     run_dump_test "sse2"
+    run_dump_test "sse2-16bit"
     run_dump_test "sub"
     run_dump_test "sse3"
     run_dump_test "sib"
diff --git a/gas/testsuite/gas/i386/sse2-16bit.d b/gas/testsuite/gas/i386/sse2-16bit.d
new file mode 100644
index 0000000000..16ea55fa6a
--- /dev/null
+++ b/gas/testsuite/gas/i386/sse2-16bit.d
@@ -0,0 +1,167 @@
+#as: -I${srcdir}/$subdir
+#objdump: -dwMaddr16 -Mdata16
+#name: i386 16-bit SSE2
+
+.*:     file format .*
+
+Disassembly of section .text:
+
+0+ <foo>:
+[ 	]*[a-f0-9]+:	67 0f c3 00          	movnti %eax,\(%eax\)
+[ 	]*[a-f0-9]+:	0f ae f8             	sfence 
+[ 	]*[a-f0-9]+:	0f ae e8             	lfence 
+[ 	]*[a-f0-9]+:	0f ae f0             	mfence 
+[ 	]*[a-f0-9]+:	67 66 0f 58 01       	addpd  \(%ecx\),%xmm0
+[ 	]*[a-f0-9]+:	66 0f 58 ca          	addpd  %xmm2,%xmm1
+[ 	]*[a-f0-9]+:	67 f2 0f 58 13       	addsd  \(%ebx\),%xmm2
+[ 	]*[a-f0-9]+:	f2 0f 58 dc          	addsd  %xmm4,%xmm3
+[ 	]*[a-f0-9]+:	67 66 0f 55 65 00    	andnpd 0x0\(%ebp\),%xmm4
+[ 	]*[a-f0-9]+:	66 0f 55 ee          	andnpd %xmm6,%xmm5
+[ 	]*[a-f0-9]+:	67 66 0f 54 37       	andpd  \(%edi\),%xmm6
+[ 	]*[a-f0-9]+:	66 0f 54 f8          	andpd  %xmm0,%xmm7
+[ 	]*[a-f0-9]+:	66 0f c2 c1 02       	cmplepd %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f c2 0a 03    	cmpunordpd \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f c2 d2 04       	cmpneqsd %xmm2,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f c2 1c 24 05 	cmpnltsd \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	66 0f c2 e5 06       	cmpnlepd %xmm5,%xmm4
+[ 	]*[a-f0-9]+:	67 66 0f c2 2e 07    	cmpordpd \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	f2 0f c2 f7 00       	cmpeqsd %xmm7,%xmm6
+[ 	]*[a-f0-9]+:	67 f2 0f c2 38 01    	cmpltsd \(%eax\),%xmm7
+[ 	]*[a-f0-9]+:	66 0f c2 c1 00       	cmpeqpd %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f c2 0a 00    	cmpeqpd \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f c2 d2 00       	cmpeqsd %xmm2,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f c2 1c 24 00 	cmpeqsd \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	66 0f c2 e5 01       	cmpltpd %xmm5,%xmm4
+[ 	]*[a-f0-9]+:	67 66 0f c2 2e 01    	cmpltpd \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	f2 0f c2 f7 01       	cmpltsd %xmm7,%xmm6
+[ 	]*[a-f0-9]+:	67 f2 0f c2 38 01    	cmpltsd \(%eax\),%xmm7
+[ 	]*[a-f0-9]+:	67 66 0f c2 01 02    	cmplepd \(%ecx\),%xmm0
+[ 	]*[a-f0-9]+:	66 0f c2 ca 02       	cmplepd %xmm2,%xmm1
+[ 	]*[a-f0-9]+:	67 f2 0f c2 13 02    	cmplesd \(%ebx\),%xmm2
+[ 	]*[a-f0-9]+:	f2 0f c2 dc 02       	cmplesd %xmm4,%xmm3
+[ 	]*[a-f0-9]+:	67 66 0f c2 65 00 03 	cmpunordpd 0x0\(%ebp\),%xmm4
+[ 	]*[a-f0-9]+:	66 0f c2 ee 03       	cmpunordpd %xmm6,%xmm5
+[ 	]*[a-f0-9]+:	67 f2 0f c2 37 03    	cmpunordsd \(%edi\),%xmm6
+[ 	]*[a-f0-9]+:	f2 0f c2 f8 03       	cmpunordsd %xmm0,%xmm7
+[ 	]*[a-f0-9]+:	66 0f c2 c1 04       	cmpneqpd %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f c2 0a 04    	cmpneqpd \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f c2 d2 04       	cmpneqsd %xmm2,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f c2 1c 24 04 	cmpneqsd \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	66 0f c2 e5 05       	cmpnltpd %xmm5,%xmm4
+[ 	]*[a-f0-9]+:	67 66 0f c2 2e 05    	cmpnltpd \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	f2 0f c2 f7 05       	cmpnltsd %xmm7,%xmm6
+[ 	]*[a-f0-9]+:	67 f2 0f c2 38 05    	cmpnltsd \(%eax\),%xmm7
+[ 	]*[a-f0-9]+:	67 66 0f c2 01 06    	cmpnlepd \(%ecx\),%xmm0
+[ 	]*[a-f0-9]+:	66 0f c2 ca 06       	cmpnlepd %xmm2,%xmm1
+[ 	]*[a-f0-9]+:	67 f2 0f c2 13 06    	cmpnlesd \(%ebx\),%xmm2
+[ 	]*[a-f0-9]+:	f2 0f c2 dc 06       	cmpnlesd %xmm4,%xmm3
+[ 	]*[a-f0-9]+:	67 66 0f c2 65 00 07 	cmpordpd 0x0\(%ebp\),%xmm4
+[ 	]*[a-f0-9]+:	66 0f c2 ee 07       	cmpordpd %xmm6,%xmm5
+[ 	]*[a-f0-9]+:	67 f2 0f c2 37 07    	cmpordsd \(%edi\),%xmm6
+[ 	]*[a-f0-9]+:	f2 0f c2 f8 07       	cmpordsd %xmm0,%xmm7
+[ 	]*[a-f0-9]+:	66 0f 2f c1          	comisd %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f 2f 0a       	comisd \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	66 0f 2a d3          	cvtpi2pd %mm3,%xmm2
+[ 	]*[a-f0-9]+:	67 66 0f 2a 1c 24    	cvtpi2pd \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	f2 0f 2a e5          	cvtsi2sd %ebp,%xmm4
+[ 	]*[a-f0-9]+:	67 f2 0f 2a 2e       	cvtsi2sdl \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	66 0f 2d f7          	cvtpd2pi %xmm7,%mm6
+[ 	]*[a-f0-9]+:	67 66 0f 2d 38       	cvtpd2pi \(%eax\),%mm7
+[ 	]*[a-f0-9]+:	67 f2 0f 2d 01       	cvtsd2si \(%ecx\),%eax
+[ 	]*[a-f0-9]+:	f2 0f 2d ca          	cvtsd2si %xmm2,%ecx
+[ 	]*[a-f0-9]+:	67 66 0f 2c 13       	cvttpd2pi \(%ebx\),%mm2
+[ 	]*[a-f0-9]+:	66 0f 2c dc          	cvttpd2pi %xmm4,%mm3
+[ 	]*[a-f0-9]+:	67 f2 0f 2c 65 00    	cvttsd2si 0x0\(%ebp\),%esp
+[ 	]*[a-f0-9]+:	f2 0f 2c ee          	cvttsd2si %xmm6,%ebp
+[ 	]*[a-f0-9]+:	66 0f 5e c1          	divpd  %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f 5e 0a       	divpd  \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f 5e d3          	divsd  %xmm3,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f 5e 1c 24    	divsd  \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	67 0f ae 55 00       	ldmxcsr 0x0\(%ebp\)
+[ 	]*[a-f0-9]+:	67 0f ae 1e          	stmxcsr \(%esi\)
+[ 	]*[a-f0-9]+:	0f ae f8             	sfence 
+[ 	]*[a-f0-9]+:	66 0f 5f c1          	maxpd  %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f 5f 0a       	maxpd  \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f 5f d3          	maxsd  %xmm3,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f 5f 1c 24    	maxsd  \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	66 0f 5d e5          	minpd  %xmm5,%xmm4
+[ 	]*[a-f0-9]+:	67 66 0f 5d 2e       	minpd  \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	f2 0f 5d f7          	minsd  %xmm7,%xmm6
+[ 	]*[a-f0-9]+:	67 f2 0f 5d 38       	minsd  \(%eax\),%xmm7
+[ 	]*[a-f0-9]+:	66 0f 28 c1          	movapd %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f 29 11       	movapd %xmm2,\(%ecx\)
+[ 	]*[a-f0-9]+:	67 66 0f 28 12       	movapd \(%edx\),%xmm2
+[ 	]*[a-f0-9]+:	67 66 0f 17 2c 24    	movhpd %xmm5,\(%esp\)
+[ 	]*[a-f0-9]+:	67 66 0f 16 2e       	movhpd \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	67 66 0f 13 07       	movlpd %xmm0,\(%edi\)
+[ 	]*[a-f0-9]+:	67 66 0f 12 00       	movlpd \(%eax\),%xmm0
+[ 	]*[a-f0-9]+:	66 0f 50 ca          	movmskpd %xmm2,%ecx
+[ 	]*[a-f0-9]+:	66 0f 10 d3          	movupd %xmm3,%xmm2
+[ 	]*[a-f0-9]+:	67 66 0f 11 22       	movupd %xmm4,\(%edx\)
+[ 	]*[a-f0-9]+:	67 66 0f 10 65 00    	movupd 0x0\(%ebp\),%xmm4
+[ 	]*[a-f0-9]+:	f2 0f 10 ee          	movsd  %xmm6,%xmm5
+[ 	]*[a-f0-9]+:	67 f2 0f 11 3e       	movsd  %xmm7,\(%esi\)
+[ 	]*[a-f0-9]+:	67 f2 0f 10 38       	movsd  \(%eax\),%xmm7
+[ 	]*[a-f0-9]+:	66 0f 59 c1          	mulpd  %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f 59 0a       	mulpd  \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f 59 d2          	mulsd  %xmm2,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f 59 1c 24    	mulsd  \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	66 0f 56 e5          	orpd   %xmm5,%xmm4
+[ 	]*[a-f0-9]+:	67 66 0f 56 2e       	orpd   \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	67 66 0f c6 37 02    	shufpd \$0x2,\(%edi\),%xmm6
+[ 	]*[a-f0-9]+:	66 0f c6 f8 03       	shufpd \$0x3,%xmm0,%xmm7
+[ 	]*[a-f0-9]+:	66 0f 51 c1          	sqrtpd %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f 51 0a       	sqrtpd \(%edx\),%xmm1
+[ 	]*[a-f0-9]+:	f2 0f 51 d2          	sqrtsd %xmm2,%xmm2
+[ 	]*[a-f0-9]+:	67 f2 0f 51 1c 24    	sqrtsd \(%esp\),%xmm3
+[ 	]*[a-f0-9]+:	66 0f 5c e5          	subpd  %xmm5,%xmm4
+[ 	]*[a-f0-9]+:	67 66 0f 5c 2e       	subpd  \(%esi\),%xmm5
+[ 	]*[a-f0-9]+:	f2 0f 5c f7          	subsd  %xmm7,%xmm6
+[ 	]*[a-f0-9]+:	67 f2 0f 5c 38       	subsd  \(%eax\),%xmm7
+[ 	]*[a-f0-9]+:	67 66 0f 2e 01       	ucomisd \(%ecx\),%xmm0
+[ 	]*[a-f0-9]+:	66 0f 2e ca          	ucomisd %xmm2,%xmm1
+[ 	]*[a-f0-9]+:	67 66 0f 15 13       	unpckhpd \(%ebx\),%xmm2
+[ 	]*[a-f0-9]+:	66 0f 15 dc          	unpckhpd %xmm4,%xmm3
+[ 	]*[a-f0-9]+:	67 66 0f 14 65 00    	unpcklpd 0x0\(%ebp\),%xmm4
+[ 	]*[a-f0-9]+:	66 0f 14 ee          	unpcklpd %xmm6,%xmm5
+[ 	]*[a-f0-9]+:	67 66 0f 57 37       	xorpd  \(%edi\),%xmm6
+[ 	]*[a-f0-9]+:	66 0f 57 f8          	xorpd  %xmm0,%xmm7
+[ 	]*[a-f0-9]+:	67 66 0f 2b 33       	movntpd %xmm6,\(%ebx\)
+[ 	]*[a-f0-9]+:	66 0f 57 c8          	xorpd  %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f3 0f e6 c8          	cvtdq2pd %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f2 0f e6 c8          	cvtpd2dq %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	0f 5b c8             	cvtdq2ps %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	66 0f 5a c8          	cvtpd2ps %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	0f 5a c8             	cvtps2pd %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	66 0f 5b c8          	cvtps2dq %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f2 0f 5a c8          	cvtsd2ss %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f3 0f 5a c8          	cvtss2sd %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	66 0f e6 c8          	cvttpd2dq %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f3 0f 5b c8          	cvttps2dq %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	66 0f f7 c8          	maskmovdqu %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	66 0f 6f c8          	movdqa %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	67 66 0f 7f 06       	movdqa %xmm0,\(%esi\)
+[ 	]*[a-f0-9]+:	f3 0f 6f c8          	movdqu %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	67 f3 0f 7f 06       	movdqu %xmm0,\(%esi\)
+[ 	]*[a-f0-9]+:	f2 0f d6 c8          	movdq2q %xmm0,%mm1
+[ 	]*[a-f0-9]+:	f3 0f d6 c8          	movq2dq %mm0,%xmm1
+[ 	]*[a-f0-9]+:	0f f4 c8             	pmuludq %mm0,%mm1
+[ 	]*[a-f0-9]+:	67 0f f4 08          	pmuludq \(%eax\),%mm1
+[ 	]*[a-f0-9]+:	66 0f f4 c8          	pmuludq %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	67 66 0f f4 08       	pmuludq \(%eax\),%xmm1
+[ 	]*[a-f0-9]+:	66 0f 70 c8 01       	pshufd \$0x1,%xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f3 0f 70 c8 01       	pshufhw \$0x1,%xmm0,%xmm1
+[ 	]*[a-f0-9]+:	f2 0f 70 c8 01       	pshuflw \$0x1,%xmm0,%xmm1
+[ 	]*[a-f0-9]+:	66 0f 73 f8 01       	pslldq \$0x1,%xmm0
+[ 	]*[a-f0-9]+:	66 0f 73 d8 01       	psrldq \$0x1,%xmm0
+[ 	]*[a-f0-9]+:	66 0f 6d c8          	punpckhqdq %xmm0,%xmm1
+[ 	]*[a-f0-9]+:	0f d4 c1             	paddq  %mm1,%mm0
+[ 	]*[a-f0-9]+:	67 0f d4 00          	paddq  \(%eax\),%mm0
+[ 	]*[a-f0-9]+:	66 0f d4 c1          	paddq  %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f d4 00       	paddq  \(%eax\),%xmm0
+[ 	]*[a-f0-9]+:	0f fb c1             	psubq  %mm1,%mm0
+[ 	]*[a-f0-9]+:	67 0f fb 00          	psubq  \(%eax\),%mm0
+[ 	]*[a-f0-9]+:	66 0f fb c1          	psubq  %xmm1,%xmm0
+[ 	]*[a-f0-9]+:	67 66 0f fb 00       	psubq  \(%eax\),%xmm0
+[ 	]*[a-f0-9]+:	0f 58 2f             	addps  \(%bx\),%xmm5
+#pass
diff --git a/gas/testsuite/gas/i386/sse2-16bit.s b/gas/testsuite/gas/i386/sse2-16bit.s
new file mode 100644
index 0000000000..ab9c323220
--- /dev/null
+++ b/gas/testsuite/gas/i386/sse2-16bit.s
@@ -0,0 +1,7 @@
+# Check SSE2 instructions in 16-bit mode
+
+	.code16
+	.include "sse2.s"
+	.att_syntax prefix
+
+	addps (%bx),%xmm5
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index c4c3e9901d..e02fd08400 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,13 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* i386-dis.c (prefix_table): Use Edq for cvtsi2ss and cvtsi2sd.
+	Use Gdq for cvttss2si, cvttsd2si, cvtss2si, and cvtsd2si, and
+	movnti.
+	* i386-opc.tbl (movnti): Add IgnoreSize. 
+	* i386-tbl.h: Re-generate.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* i386-opc.tbl (and): Mark Imm8S form for optimization.
 	* i386-tbl.h: Re-generate.
 
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index 184785502e..f7d9641ecb 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -3728,9 +3728,9 @@ static const struct dis386 prefix_table[][4] = {
   /* PREFIX_0F2A */
   {
     { "cvtpi2ps", { XM, EMCq }, PREFIX_OPCODE },
-    { "cvtsi2ss%LQ", { XM, Ev }, PREFIX_OPCODE },
+    { "cvtsi2ss%LQ", { XM, Edq }, PREFIX_OPCODE },
     { "cvtpi2pd", { XM, EMCq }, PREFIX_OPCODE },
-    { "cvtsi2sd%LQ", { XM, Ev }, 0 },
+    { "cvtsi2sd%LQ", { XM, Edq }, 0 },
   },
 
   /* PREFIX_0F2B */
@@ -3744,17 +3744,17 @@ static const struct dis386 prefix_table[][4] = {
   /* PREFIX_0F2C */
   {
     { "cvttps2pi", { MXC, EXq }, PREFIX_OPCODE },
-    { "cvttss2si", { Gv, EXd }, PREFIX_OPCODE },
+    { "cvttss2si", { Gdq, EXd }, PREFIX_OPCODE },
     { "cvttpd2pi", { MXC, EXx }, PREFIX_OPCODE },
-    { "cvttsd2si", { Gv, EXq }, PREFIX_OPCODE },
+    { "cvttsd2si", { Gdq, EXq }, PREFIX_OPCODE },
   },
 
   /* PREFIX_0F2D */
   {
     { "cvtps2pi", { MXC, EXq }, PREFIX_OPCODE },
-    { "cvtss2si", { Gv, EXd }, PREFIX_OPCODE },
+    { "cvtss2si", { Gdq, EXd }, PREFIX_OPCODE },
     { "cvtpd2pi", { MXC, EXx }, PREFIX_OPCODE },
-    { "cvtsd2si", { Gv, EXq }, PREFIX_OPCODE },
+    { "cvtsd2si", { Gdq, EXq }, PREFIX_OPCODE },
   },
 
   /* PREFIX_0F2E */
@@ -4063,7 +4063,7 @@ static const struct dis386 prefix_table[][4] = {
 
   /* PREFIX_MOD_0_0FC3 */
   {
-    { "movntiS", { Ev, Gv }, PREFIX_OPCODE },
+    { "movntiS", { Edq, Gdq }, PREFIX_OPCODE },
   },
 
   /* PREFIX_MOD_0_0FC7_REG_6 */
diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl
index b40fa8ee7f..e6a3f6159b 100644
--- a/opcodes/i386-opc.tbl
+++ b/opcodes/i386-opc.tbl
@@ -945,7 +945,7 @@ fucompi, 1, 0xdfe8, None, 2, Cpu687, ShortForm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|N
 
 // Pentium4 extensions.
 
-movnti, 2, 0xfc3, None, 2, CpuSSE2, Modrm|No_bSuf|No_wSuf|No_sSuf|No_ldSuf|NoAVX, { Reg32|Reg64, Dword|Qword|Unspecified|BaseIndex }
+movnti, 2, 0xfc3, None, 2, CpuSSE2, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_ldSuf|NoAVX, { Reg32|Reg64, Dword|Qword|Unspecified|BaseIndex }
 clflush, 1, 0xfae, 0x7, 2, CpuClflush, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Anysize|BaseIndex }
 lfence, 0, 0xfae, 0xe8, 2, CpuSSE2, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|NoAVX, { 0 }
 mfence, 0, 0xfae, 0xf0, 2, CpuSSE2, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|ImmExt|NoAVX, { 0 }
diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h
index e0bd493255..52b62d1bd0 100644
--- a/opcodes/i386-tbl.h
+++ b/opcodes/i386-tbl.h
@@ -9736,7 +9736,7 @@ const insn_template i386_optab[] =
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0 } },
-    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0,
       1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
       0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
     { { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86-64: also optimize ANDQ with immediate fitting in 7 bits
@ 2019-06-25 10:05 gdb-buildbot
  2019-07-09 17:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25 10:05 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b8364fa775112f036a80e799b70311f69baac131 ***

commit b8364fa775112f036a80e799b70311f69baac131
Author:     Jan Beulich <jbeulich@novell.com>
AuthorDate: Tue Jun 25 09:23:48 2019 +0200
Commit:     Jan Beulich <jbeulich@suse.com>
CommitDate: Tue Jun 25 09:35:17 2019 +0200

    x86-64: also optimize ANDQ with immediate fitting in 7 bits
    
    The same reasoning applies here as did/does for immediates fitting in
    31 bits.

diff --git a/gas/ChangeLog b/gas/ChangeLog
index 41400b4629..416c2be4ec 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,13 @@
 2019-06-25  Jan Beulich  <jbeulich@suse.com>
 
+	* config/tc-i386.c (optimize_encoding): Also handle ANDQ with
+	immediatie fitting in 7 bits.
+	* testsuite/gas/i386/x86-64-optimize-1.s: Add ANDQ cases with
+	7- and 8-bit immediates.
+	* testsuite/gas/i386/x86-64-optimize-1.d: Adjust expectations.
+
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
 	* testsuite/gas/i386/xmmword.s: Add cvtps2pi and cvttps2pi
 	tests.
 	* testsuite/gas/i386/xmmword.l: Adjust expectations.
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 050c87236a..39857561bd 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -3948,7 +3948,10 @@ optimize_encoding (void)
 				&& i.tm.extension_opcode == 0x4)
 			    || ((i.tm.base_opcode == 0xf6
 				 || i.tm.base_opcode == 0xc6)
-				&& i.tm.extension_opcode == 0x0)))))
+				&& i.tm.extension_opcode == 0x0)))
+		    || (fits_in_imm7 (i.op[0].imms->X_add_number)
+			&& i.tm.base_opcode == 0x83
+			&& i.tm.extension_opcode == 0x4)))
 	       || (i.types[0].bitfield.qword
 		   && ((i.reg_operands == 2
 			&& i.op[0].regs == i.op[1].regs
@@ -3962,6 +3965,7 @@ optimize_encoding (void)
     {
       /* Optimize: -O:
 	   andq $imm31, %r64   -> andl $imm31, %r32
+	   andq $imm7, %r64    -> andl $imm7, %r32
 	   testq $imm31, %r64  -> testl $imm31, %r32
 	   xorq %r64, %r64     -> xorl %r32, %r32
 	   subq %r64, %r64     -> subl %r32, %r32
diff --git a/gas/testsuite/gas/i386/x86-64-optimize-1.d b/gas/testsuite/gas/i386/x86-64-optimize-1.d
index f7fd1beeea..aa612612fd 100644
--- a/gas/testsuite/gas/i386/x86-64-optimize-1.d
+++ b/gas/testsuite/gas/i386/x86-64-optimize-1.d
@@ -15,6 +15,12 @@ Disassembly of section .text:
  +[a-f0-9]+:	48 25 00 00 00 80    	and    \$0xffffffff80000000,%rax
  +[a-f0-9]+:	48 81 e3 00 00 00 80 	and    \$0xffffffff80000000,%rbx
  +[a-f0-9]+:	49 81 e6 00 00 00 80 	and    \$0xffffffff80000000,%r14
+ +[a-f0-9]+:	83 e0 7f             	and    \$0x7f,%eax
+ +[a-f0-9]+:	83 e3 7f             	and    \$0x7f,%ebx
+ +[a-f0-9]+:	41 83 e6 7f          	and    \$0x7f,%r14d
+ +[a-f0-9]+:	48 83 e0 80          	and    \$0xffffffffffffff80,%rax
+ +[a-f0-9]+:	48 83 e3 80          	and    \$0xffffffffffffff80,%rbx
+ +[a-f0-9]+:	49 83 e6 80          	and    \$0xffffffffffffff80,%r14
  +[a-f0-9]+:	a9 ff ff ff 7f       	test   \$0x7fffffff,%eax
  +[a-f0-9]+:	f7 c3 ff ff ff 7f    	test   \$0x7fffffff,%ebx
  +[a-f0-9]+:	41 f7 c6 ff ff ff 7f 	test   \$0x7fffffff,%r14d
diff --git a/gas/testsuite/gas/i386/x86-64-optimize-1.s b/gas/testsuite/gas/i386/x86-64-optimize-1.s
index 15d8cb05da..b83ecb02da 100644
--- a/gas/testsuite/gas/i386/x86-64-optimize-1.s
+++ b/gas/testsuite/gas/i386/x86-64-optimize-1.s
@@ -10,6 +10,12 @@ _start:
 	andq	$-((1<<31)), %rax
 	andq	$-((1<<31)), %rbx
 	andq	$-((1<<31)), %r14
+	andq	$((1<<7) - 1), %rax
+	andq	$((1<<7) - 1), %rbx
+	andq	$((1<<7) - 1), %r14
+	andq	$-((1<<7)), %rax
+	andq	$-((1<<7)), %rbx
+	andq	$-((1<<7)), %r14
 	testq	$((1<<31) - 1), %rax
 	testq	$((1<<31) - 1), %rbx
 	testq	$((1<<31) - 1), %r14
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index da0d7abdb1..c4c3e9901d 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,8 @@
+2019-06-25  Jan Beulich  <jbeulich@suse.com>
+
+	* i386-opc.tbl (and): Mark Imm8S form for optimization.
+	* i386-tbl.h: Re-generate.
+
 2019-06-21  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* i386-dis-evex.h: Break into ...
diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl
index fc33555ae3..b40fa8ee7f 100644
--- a/opcodes/i386-opc.tbl
+++ b/opcodes/i386-opc.tbl
@@ -209,7 +209,7 @@ test, 2, 0xa8, None, 1, 0, W|No_sSuf|No_ldSuf|Optimize, { Imm8|Imm16|Imm32|Imm32
 test, 2, 0xf6, 0x0, 1, 0, W|Modrm|No_sSuf|No_ldSuf|Optimize, { Imm8|Imm16|Imm32|Imm32S, Reg8|Reg16|Reg32|Reg64|Byte|Word|Dword|Qword|Unspecified|BaseIndex }
 
 and, 2, 0x20, None, 1, 0, D|W|CheckRegSize|Modrm|No_sSuf|No_ldSuf|IsLockable|HLEPrefixOk, { Reg8|Reg16|Reg32|Reg64, Reg8|Reg16|Reg32|Reg64|Byte|Word|Dword|Qword|Unspecified|BaseIndex }
-and, 2, 0x83, 0x4, 1, 0, Modrm|No_bSuf|No_sSuf|No_ldSuf|IsLockable|HLEPrefixOk, { Imm8S, Reg16|Reg32|Reg64|Word|Dword|Qword|Unspecified|BaseIndex }
+and, 2, 0x83, 0x4, 1, 0, Modrm|No_bSuf|No_sSuf|No_ldSuf|IsLockable|HLEPrefixOk|Optimize, { Imm8S, Reg16|Reg32|Reg64|Word|Dword|Qword|Unspecified|BaseIndex }
 and, 2, 0x24, None, 1, 0, W|No_sSuf|No_ldSuf|Optimize, { Imm8|Imm16|Imm32|Imm32S, Acc|Byte|Word|Dword|Qword }
 and, 2, 0x80, 0x4, 1, 0, W|Modrm|No_sSuf|No_ldSuf|IsLockable|HLEPrefixOk|Optimize, { Imm8|Imm16|Imm32|Imm32S, Reg8|Reg16|Reg32|Reg64|Byte|Word|Dword|Qword|Unspecified|BaseIndex }
 
diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h
index 4244edec6d..e0bd493255 100644
--- a/opcodes/i386-tbl.h
+++ b/opcodes/i386-tbl.h
@@ -1729,7 +1729,7 @@ const insn_template i386_optab[] =
         0, 0, 0, 0, 0, 0, 0, 0, 0 } },
     { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0,
       1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
+      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
     { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
 	  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 	  0, 0 } },


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] RISC-V: Enable lui relaxation for CODE and MERGE sections.
@ 2019-06-25  8:53 gdb-buildbot
  2019-07-09 17:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25  8:53 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 04b865dc2ede2b8ca8c60f0487a179eb97895fee ***

commit 04b865dc2ede2b8ca8c60f0487a179eb97895fee
Author:     Jim Wilson <jimw@sifive.com>
AuthorDate: Mon Jun 24 13:50:10 2019 -0700
Commit:     Jim Wilson <jimw@sifive.com>
CommitDate: Mon Jun 24 13:50:10 2019 -0700

    RISC-V: Enable lui relaxation for CODE and MERGE sections.
    
            2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
            bfd/
            * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
            SEC_MERGE or SEC_CODE flags are set.
            (_bfd_riscv_relax_section): New local symtype.  Set sym_sec and
            symtype consistently.  Don't include sec_addr (sym_sec) in symval.
            Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
            Add sec_addr (sym_sec) after handling merge sections.

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ec272a8731..d8cbef1bd1 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,12 @@
+2019-06-24  Ilia Diachkov  <ilia.diachkov@optimitech.com>
+
+	* elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
+	SEC_MERGE or SEC_CODE flags are set.
+	(_bfd_riscv_relax_section): New local symtype.  Set sym_sec and
+	symtype consistently.  Don't include sec_addr (sym_sec) in symval.
+	Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
+	Add sec_addr (sym_sec) after handling merge sections.
+
 2019-06-24  H.J. Lu  <hongjiu.lu@intel.com>
 
 	PR ld/24721
diff --git a/bfd/elfnn-riscv.c b/bfd/elfnn-riscv.c
index 1bddbcaa93..003b4f868d 100644
--- a/bfd/elfnn-riscv.c
+++ b/bfd/elfnn-riscv.c
@@ -3517,10 +3517,6 @@ _bfd_riscv_relax_lui (bfd *abfd,
   bfd_vma gp = riscv_global_pointer_value (link_info);
   int use_rvc = elf_elfheader (abfd)->e_flags & EF_RISCV_RVC;
 
-  /* Mergeable symbols and code might later move out of range.  */
-  if (sym_sec->flags & (SEC_MERGE | SEC_CODE))
-    return TRUE;
-
   BFD_ASSERT (rel->r_offset + 4 <= sec->size);
 
   if (gp)
@@ -3881,6 +3877,7 @@ _bfd_riscv_relax_section (bfd *abfd, asection *sec,
       relax_func_t relax_func;
       int type = ELFNN_R_TYPE (rel->r_info);
       bfd_vma symval;
+      char symtype;
 
       relax_func = NULL;
       if (info->relax_pass == 0)
@@ -3946,7 +3943,7 @@ _bfd_riscv_relax_section (bfd *abfd, asection *sec,
 	    ? 0 : isym->st_size - rel->r_addend;
 
 	  if (isym->st_shndx == SHN_UNDEF)
-	    sym_sec = sec, symval = sec_addr (sec) + rel->r_offset;
+	    sym_sec = sec, symval = rel->r_offset;
 	  else
 	    {
 	      BFD_ASSERT (isym->st_shndx < elf_numsections (abfd));
@@ -3959,8 +3956,9 @@ _bfd_riscv_relax_section (bfd *abfd, asection *sec,
 	      if (sec_addr (sym_sec) == 0)
 		continue;
 #endif
-	      symval = sec_addr (sym_sec) + isym->st_value;
+	      symval = isym->st_value;
 	    }
+	  symtype = ELF_ST_TYPE (isym->st_info);
 	}
       else
 	{
@@ -3975,21 +3973,59 @@ _bfd_riscv_relax_section (bfd *abfd, asection *sec,
 	    h = (struct elf_link_hash_entry *) h->root.u.i.link;
 
 	  if (h->plt.offset != MINUS_ONE)
-	    symval = sec_addr (htab->elf.splt) + h->plt.offset;
+	    {
+	      sym_sec = htab->elf.splt;
+	      symval = h->plt.offset;
+	    }
 	  else if (h->root.u.def.section->output_section == NULL
 		   || (h->root.type != bfd_link_hash_defined
 		       && h->root.type != bfd_link_hash_defweak))
 	    continue;
 	  else
-	    symval = sec_addr (h->root.u.def.section) + h->root.u.def.value;
+	    {
+	      symval = h->root.u.def.value;
+	      sym_sec = h->root.u.def.section;
+	    }
 
 	  if (h->type != STT_FUNC)
 	    reserve_size =
 	      (h->size - rel->r_addend) > h->size ? 0 : h->size - rel->r_addend;
-	  sym_sec = h->root.u.def.section;
+	  symtype = h->type;
 	}
 
-      symval += rel->r_addend;
+      if (sym_sec->sec_info_type == SEC_INFO_TYPE_MERGE
+          && (sym_sec->flags & SEC_MERGE))
+	{
+	  /* At this stage in linking, no SEC_MERGE symbol has been
+	     adjusted, so all references to such symbols need to be
+	     passed through _bfd_merged_section_offset.  (Later, in
+	     relocate_section, all SEC_MERGE symbols *except* for
+	     section symbols have been adjusted.)
+
+	     gas may reduce relocations against symbols in SEC_MERGE
+	     sections to a relocation against the section symbol when
+	     the original addend was zero.  When the reloc is against
+	     a section symbol we should include the addend in the
+	     offset passed to _bfd_merged_section_offset, since the
+	     location of interest is the original symbol.  On the
+	     other hand, an access to "sym+addend" where "sym" is not
+	     a section symbol should not include the addend;  Such an
+	     access is presumed to be an offset from "sym";  The
+	     location of interest is just "sym".  */
+	   if (symtype == STT_SECTION)
+	     symval += rel->r_addend;
+
+	   symval = _bfd_merged_section_offset (abfd, &sym_sec,
+						elf_section_data (sym_sec)->sec_info,
+						symval);
+
+	   if (symtype != STT_SECTION)
+	     symval += rel->r_addend;
+	}
+      else
+	symval += rel->r_addend;
+
+      symval += sec_addr (sym_sec);
 
       if (!relax_func (abfd, sec, sym_sec, info, rel, symval,
 		       max_alignment, reserve_size, again,


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] elf: Remove the property after reporting its removal
@ 2019-06-25  8:03 gdb-buildbot
  2019-07-09 17:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-25  8:03 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f93ab3a0b8039a1667a666f013cca50b03d67f9b ***

commit f93ab3a0b8039a1667a666f013cca50b03d67f9b
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Mon Jun 24 11:08:40 2019 -0700
Commit:     H.J. Lu <hjl.tools@gmail.com>
CommitDate: Mon Jun 24 11:08:57 2019 -0700

    elf: Remove the property after reporting its removal
    
    commit d2ef37ebd9f771d06edf1fdea37970f60b242b2d
    Author: H.J. Lu <hjl.tools@gmail.com>
    Date:   Fri Dec 7 08:30:30 2018 -0800
    
        elf: Report property change when merging properties
    
    failed to remove the property after reporting it has been removed.  This
    patch corrects it.
    
    bfd/
    
            PR ld/24721
            * elf-properties.c (elf_merge_gnu_property_list): Remove the
            property after reporting property removal.
    
    ld/
    
            PR ld/24721
            * testsuite/ld-x86-64/x86-64.exp: Run PR ld/24721 tests.
            * testsuite/ld-x86-64/pr24721-x32.d: New file.
            * testsuite/ld-x86-64/pr24721.d: Likewise.
            * testsuite/ld-x86-64/pr24721.map: Likewise.
            * testsuite/ld-x86-64/pr24721a.s: Likewise.
            * testsuite/ld-x86-64/pr24721b.s: Likewise.

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0914e7d633..ec272a8731 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2019-06-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/24721
+	* elf-properties.c (elf_merge_gnu_property_list): Remove the
+	property after reporting property removal.
+
 2019-06-23  Alan Modra  <amodra@gmail.com>
 
 	PR 24704
diff --git a/bfd/elf-properties.c b/bfd/elf-properties.c
index 94ef2351cb..a297c9c5c2 100644
--- a/bfd/elf-properties.c
+++ b/bfd/elf-properties.c
@@ -322,12 +322,10 @@ elf_merge_gnu_property_list (struct bfd_link_info *info, bfd *first_pbfd,
 			 (bfd_vma) p->property.pr_type, first_pbfd, abfd);
 		  }
 	      }
-	    else
-	      {
-		/* Remove this property.  */
-		*lastp = p->next;
-		continue;
-	      }
+
+	    /* Remove this property.  */
+	    *lastp = p->next;
+	    continue;
 	  }
 	else if (number_p)
 	  {
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 6dcfe30696..2c11a66c5c 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,13 @@
+2019-06-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/24721
+	* testsuite/ld-x86-64/x86-64.exp: Run PR ld/24721 tests.
+	* testsuite/ld-x86-64/pr24721-x32.d: New file.
+	* testsuite/ld-x86-64/pr24721.d: Likewise.
+	* testsuite/ld-x86-64/pr24721.map: Likewise.
+	* testsuite/ld-x86-64/pr24721a.s: Likewise.
+	* testsuite/ld-x86-64/pr24721b.s: Likewise.
+
 2019-06-23  Alan Modra  <amodra@gmail.com>
 
 	PR 24704
diff --git a/ld/testsuite/ld-x86-64/pr24721-x32.d b/ld/testsuite/ld-x86-64/pr24721-x32.d
new file mode 100644
index 0000000000..9b067efdc1
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr24721-x32.d
@@ -0,0 +1,6 @@
+#source: pr24721a.s
+#source: pr24721b.s
+#as: --x32 -mx86-used-note=no
+#ld: -r -m elf32_x86_64 -Map tmpdir/pr24721.map
+#readelf: -n
+#map: pr24721.map
diff --git a/ld/testsuite/ld-x86-64/pr24721.d b/ld/testsuite/ld-x86-64/pr24721.d
new file mode 100644
index 0000000000..efa88db2b3
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr24721.d
@@ -0,0 +1,6 @@
+#source: pr24721a.s
+#source: pr24721b.s
+#as: --64 -defsym __64_bit__=1 -mx86-used-note=no
+#ld: -r -melf_x86_64 -Map tmpdir/pr24721.map
+#readelf: -n
+#map: pr24721.map
diff --git a/ld/testsuite/ld-x86-64/pr24721.map b/ld/testsuite/ld-x86-64/pr24721.map
new file mode 100644
index 0000000000..9e63fff275
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr24721.map
@@ -0,0 +1,3 @@
+#...
+Removed property 0xc0000002 to merge tmpdir/pr24721a.o \(0x1\) and tmpdir/pr24721b.o \(not found\)
+#pass
diff --git a/ld/testsuite/ld-x86-64/pr24721a.s b/ld/testsuite/ld-x86-64/pr24721a.s
new file mode 100644
index 0000000000..b229d19b02
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr24721a.s
@@ -0,0 +1,34 @@
+	.text
+	.globl foo
+	.type foo,@function
+	.p2align 4
+foo:
+	ret
+
+	.section ".note.gnu.property", "a"
+.ifdef __64_bit__
+	.p2align 3
+.else
+	.p2align 2
+.endif
+	.long 1f - 0f		/* name length */
+	.long 5f - 2f		/* data length */
+	.long 5			/* note type */
+0:	.asciz "GNU"		/* vendor name */
+1:
+.ifdef __64_bit__
+	.p2align 3
+.else
+	.p2align 2
+.endif
+2:	.long 0xc0000002	/* pr_type.  */
+	.long 4f - 3f		/* pr_datasz.  */
+3:
+	.long 0x1
+4:
+.ifdef __64_bit__
+	.p2align 3
+.else
+	.p2align 2
+.endif
+5:
diff --git a/ld/testsuite/ld-x86-64/pr24721b.s b/ld/testsuite/ld-x86-64/pr24721b.s
new file mode 100644
index 0000000000..3d11691166
--- /dev/null
+++ b/ld/testsuite/ld-x86-64/pr24721b.s
@@ -0,0 +1,6 @@
+	.text
+	.globl bar
+	.type bar,@function
+	.p2align 4
+bar:
+	ret
diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp
index 23f202017c..d815e5d633 100644
--- a/ld/testsuite/ld-x86-64/x86-64.exp
+++ b/ld/testsuite/ld-x86-64/x86-64.exp
@@ -456,6 +456,8 @@ run_dump_test "pr24458b"
 run_dump_test "pr24458b-x32"
 run_dump_test "pr24458c"
 run_dump_test "pr24458c-x32"
+run_dump_test "pr24721"
+run_dump_test "pr24721-x32"
 
 if { ![istarget "x86_64-*-linux*"] && ![istarget "x86_64-*-nacl*"]} {
     return


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [gdb/testsuite] Fix label reference in implptr-64bit.exp
@ 2019-06-24 21:19 gdb-buildbot
  2019-07-09 17:01 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-24 21:19 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 164e3873cf41d01a9a67396575dceef7489cee64 ***

commit 164e3873cf41d01a9a67396575dceef7489cee64
Author:     Tom de Vries <tdevries@suse.de>
AuthorDate: Mon Jun 24 18:26:10 2019 +0200
Commit:     Tom de Vries <tdevries@suse.de>
CommitDate: Mon Jun 24 18:26:10 2019 +0200

    [gdb/testsuite] Fix label reference in implptr-64bit.exp
    
    When running gdb.dwarf2/implptr-64bit.exp with board cc-with-dwz-m, we run into:
    ...
    dwz: dwz.c:2363: checksum_die: \
      Assertion `\
        ((!op_multifile && !rd_multifile && !fi_multifile) || cu != die_cu (ref)) \
        && (!op_multifile || cu->cu_chunk == die_cu (ref)->cu_chunk)' failed.
    cc-with-tweaks.sh: line 218: 13030 Aborted  \
      $DWZ -m ${output_file}.dwz "$output_file" ${output_file}.alt > /dev/null
    ...
    In other words, PR dwz/24170.
    
    The trigger for the dwz PR is when intra-CU references are encoded using
    section-relative encoding DW_FORM_ref_addr, but could have been encoded using
    CU-relative encoding DW_FORM_ref4.
    
    Fix the intra-CU '%' label reference in implptr-64bit.exp.
    
    Tested on x86_64-linux.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-24  Tom de Vries  <tdevries@suse.de>
    
            * gdb.dwarf2/implptr-64bit.exp: Fix intra-CU '%' label reference.

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index a8e47553e4..5b702011a7 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,9 @@
 2019-06-24  Tom de Vries  <tdevries@suse.de>
 
+	* gdb.dwarf2/implptr-64bit.exp: Fix intra-CU '%' label reference.
+
+2019-06-24  Tom de Vries  <tdevries@suse.de>
+
 	* gdb.trace/entry-values.exp: Use DW_FORM_udata instead of
 	DW_FOR_sdata for DW_AT_decl_file.  Use 0 for DW_AT_decl_file.
 	* gdb.trace/unavailable-dwarf-piece.exp: Same.
diff --git a/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp b/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp
index b023ca0f12..3e675016d0 100644
--- a/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp
+++ b/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp
@@ -84,7 +84,7 @@ proc test { dwarf_version offset_size addr_size ref_addr_size two_cu } {
 			{ name main }
 			{ low_pc main addr }
 			{ high_pc "main+0x100" addr }
-			{ type %$int_label }
+			{ type :$int_label }
 			{ external 1 flag }
 		    } {
 			DW_TAG_variable {


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [gdb/testsuite] Fix DW_AT_decl_file in gdb.trace tests
@ 2019-06-24 18:57 gdb-buildbot
  2019-07-09 17:01 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-24 18:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 824eacee59ea8c5625b9fad5b6eb0861b4d0f691 ***

commit 824eacee59ea8c5625b9fad5b6eb0861b4d0f691
Author:     Tom de Vries <tdevries@suse.de>
AuthorDate: Mon Jun 24 13:29:23 2019 +0200
Commit:     Tom de Vries <tdevries@suse.de>
CommitDate: Mon Jun 24 13:29:23 2019 +0200

    [gdb/testsuite] Fix DW_AT_decl_file in gdb.trace tests
    
    When running gdb.trace/{entry-values.exp,unavailable-dwarf-piece.exp} with
    board cc-with-dwz, we run into two failures related to the DW_AT_decl_file
    attribute:
    - The encoding DW_FOR_sdata is used for DW_AT_decl_file, while the attribute
      is required to have a an "unsigned integer constant" value.
    - The DW_AT_decl_file attributes refer to a file with index one, while there's
      no such file.
    
    Fix this by using DW_FOR_udata and the value 0, meaning "no file specified".
    
    Tested on x86_64-linux with board native-gdbserver.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-24  Tom de Vries  <tdevries@suse.de>
    
            * gdb.trace/entry-values.exp: Use DW_FORM_udata instead of
            DW_FOR_sdata for DW_AT_decl_file.  Use 0 for DW_AT_decl_file.
            * gdb.trace/unavailable-dwarf-piece.exp: Same.

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 4d48d2f63a..a8e47553e4 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,11 @@
 2019-06-24  Tom de Vries  <tdevries@suse.de>
 
+	* gdb.trace/entry-values.exp: Use DW_FORM_udata instead of
+	DW_FOR_sdata for DW_AT_decl_file.  Use 0 for DW_AT_decl_file.
+	* gdb.trace/unavailable-dwarf-piece.exp: Same.
+
+2019-06-24  Tom de Vries  <tdevries@suse.de>
+
 	* gdb.dwarf2/inlined_subroutine-inheritance.exp:
 
 2019-06-21  Tom de Vries  <tdevries@suse.de>
diff --git a/gdb/testsuite/gdb.trace/entry-values.exp b/gdb/testsuite/gdb.trace/entry-values.exp
index 13619bad9a..6637e5ecff 100644
--- a/gdb/testsuite/gdb.trace/entry-values.exp
+++ b/gdb/testsuite/gdb.trace/entry-values.exp
@@ -109,7 +109,7 @@ Dwarf::assemble $asm_file {
 	    }
 
 	    foo_label: subprogram {
-		{decl_file 1 sdata}
+		{decl_file 0 udata}
 		{MACRO_AT_func { foo ${srcdir}/${subdir}/${srcfile} }}
 	    } {
 		formal_parameter {
@@ -126,7 +126,7 @@ Dwarf::assemble $asm_file {
 
 	    subprogram {
 		{name bar}
-		{decl_file 1 sdata}
+		{decl_file 0 udata}
 		{low_pc $bar_start addr}
 		{high_pc "$bar_start + $bar_length" addr}
 		{GNU_all_call_sites 1 sdata}
diff --git a/gdb/testsuite/gdb.trace/unavailable-dwarf-piece.exp b/gdb/testsuite/gdb.trace/unavailable-dwarf-piece.exp
index c62e344ee0..87177857e3 100644
--- a/gdb/testsuite/gdb.trace/unavailable-dwarf-piece.exp
+++ b/gdb/testsuite/gdb.trace/unavailable-dwarf-piece.exp
@@ -44,7 +44,7 @@ Dwarf::assemble $asm_file {
 	    struct_s_label: DW_TAG_structure_type {
 		{name s}
 		{byte_size 3 DW_FORM_sdata}
-		{decl_file 1 DW_FORM_sdata}
+		{decl_file 0 DW_FORM_udata}
 		{decl_line 1 DW_FORM_sdata}
 	    } {
 		DW_TAG_member {
@@ -73,7 +73,7 @@ Dwarf::assemble $asm_file {
 	    struct_t_label: DW_TAG_structure_type {
 		{name t}
 		{byte_size 3 DW_FORM_sdata}
-		{decl_file 1 DW_FORM_sdata}
+		{decl_file 0 DW_FORM_udata}
 		{decl_line 1 DW_FORM_sdata}
 	    } {
 		DW_TAG_member {
@@ -174,7 +174,7 @@ Dwarf::assemble $asm_file {
 
 	    DW_TAG_subprogram {
 		{name foo}
-		{decl_file 1 sdata}
+		{decl_file 0 udata}
 		{low_pc foo_start_lbl addr}
 		{high_pc foo_end_lbl addr}
 	    } {
@@ -219,7 +219,7 @@ Dwarf::assemble $asm_file {
 
 	    DW_TAG_subprogram {
 		{name bar}
-		{decl_file 1 sdata}
+		{decl_file 0 udata}
 		{low_pc bar_start_lbl addr}
 		{high_pc bar_end_lbl addr}
 	    } {


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [gdb/testsuite] Fix inter-cu refs in inlined_subroutine-inheritance.exp
@ 2019-06-24 17:14 gdb-buildbot
  2019-07-09 17:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-24 17:14 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 385b97d3ac9c5c57a610d2e5b358ed888008ae31 ***

commit 385b97d3ac9c5c57a610d2e5b358ed888008ae31
Author:     Tom de Vries <tdevries@suse.de>
AuthorDate: Mon Jun 24 12:20:39 2019 +0200
Commit:     Tom de Vries <tdevries@suse.de>
CommitDate: Mon Jun 24 12:20:39 2019 +0200

    [gdb/testsuite] Fix inter-cu refs in inlined_subroutine-inheritance.exp
    
    When running gdb.dwarf2/inlined_subroutine-inheritance.exp with board
    cc-with-dwz, we run into:
    ...
    dwz: inlined_subroutine-inheritance: Couldn't find DIE referenced by \
      DW_AT_abstract_origin
    ...
    
    The problem is that the DW_AT_abstract_origin attributes refer to DIEs in
    other CUs, while the references are encoded using the cu-relative encoding
    DW_FORM_ref4.
    
    Fix this by forcing the references to use DW_FORM_ref_addr.
    
    Tested on x86_64-linux.
    
    Tested with commit c24bdb023c "Introduce dwarf2_cu::get_builder" reverted,
    and verified that the test-case fails in the same way before and after this
    patch.
    
    gdb/testsuite/ChangeLog:
    
    2019-06-24  Tom de Vries  <tdevries@suse.de>
    
            * gdb.dwarf2/inlined_subroutine-inheritance.exp:

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 8cd3c51194..4d48d2f63a 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2019-06-24  Tom de Vries  <tdevries@suse.de>
+
+	* gdb.dwarf2/inlined_subroutine-inheritance.exp:
+
 2019-06-21  Tom de Vries  <tdevries@suse.de>
 
 	* gdb.base/index-cache.exp: Add additional_flags=-Wl,--build-id.
diff --git a/gdb/testsuite/gdb.dwarf2/inlined_subroutine-inheritance.exp b/gdb/testsuite/gdb.dwarf2/inlined_subroutine-inheritance.exp
index 19b859492a..b51063c018 100644
--- a/gdb/testsuite/gdb.dwarf2/inlined_subroutine-inheritance.exp
+++ b/gdb/testsuite/gdb.dwarf2/inlined_subroutine-inheritance.exp
@@ -44,17 +44,17 @@ Dwarf::assemble $asm_file {
 	    {name "<artificial>"}
 	} {
 	    D72f8: subprogram {
-		{abstract_origin :$D272519}
+		{abstract_origin %$D272519}
 		{low_pc 0xb9e20 addr}
 		{high_pc 0x1f5 data4}
 	    } {
 		D736e: inlined_subroutine {
-		    {abstract_origin :$D26b227}
+		    {abstract_origin %$D26b227}
 		    {low_pc 0xb9efc addr}
 		    {high_pc 0xc data4}
 		} {
 		    formal_parameter {
-			{abstract_origin :$D274c42}
+			{abstract_origin %$D274c42}
 		    }
 		}
 	    }


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24689 again, string table corruption
@ 2019-06-24 11:49 gdb-buildbot
  2019-07-09 16:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-24 11:49 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 14b2a8e4244a29208ad430167860a0f01b20f215 ***

commit 14b2a8e4244a29208ad430167860a0f01b20f215
Author:     Alan Modra <amodra@gmail.com>
AuthorDate: Sun Jun 23 12:10:02 2019 +0930
Commit:     Alan Modra <amodra@gmail.com>
CommitDate: Sun Jun 23 14:24:45 2019 +0930

    PR24689 again, string table corruption
    
    Depending on optimisation level and gcc version, git commit 890f750a3b
    introduces a false positive warning that i_shdrp may be used
    uninitialized.
    
            PR 24689
            * elfcode.h (elf_object_p): Warning fix.

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index bc7671e9ea..964ab71b20 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2019-06-23  Alan Modra  <amodra@gmail.com>
+
+	PR 24689
+	* elfcode.h (elf_object_p): Warning fix.
+
 2019-06-21  Alan Modra  <amodra@gmail.com>
 
 	PR 24689
diff --git a/bfd/elfcode.h b/bfd/elfcode.h
index 5180f79a74..9a73c3b71f 100644
--- a/bfd/elfcode.h
+++ b/bfd/elfcode.h
@@ -749,11 +749,7 @@ elf_object_p (bfd *abfd)
 		  != 0))
 	    abfd->flags &= ~D_PAGED;
 	}
-    }
 
-  /* A further sanity check.  */
-  if (i_ehdrp->e_shnum != 0)
-    {
       if (i_ehdrp->e_shstrndx >= elf_numsections (abfd)
 	  || i_shdrp[i_ehdrp->e_shstrndx].sh_type != SHT_STRTAB)
 	{


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24704, Internal error building skiboot for powerpc64-linux-gnu
@ 2019-06-24 11:08 gdb-buildbot
  2019-07-09 16:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-24 11:08 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT bb22a41815facfaa3de621aad5d055eb8e477082 ***

commit bb22a41815facfaa3de621aad5d055eb8e477082
Author:     Alan Modra <amodra@gmail.com>
AuthorDate: Sun Jun 23 12:28:39 2019 +0930
Commit:     Alan Modra <amodra@gmail.com>
CommitDate: Sun Jun 23 23:11:27 2019 +0930

    PR24704, Internal error building skiboot for powerpc64-linux-gnu
    
    While the skiboot linker script bears some culpability in this PR,
    it's also true that the GOT indirect to GOT relative optimisation for
    16-bit offsets isn't safe.  At least, it isn't safe to remove the GOT
    entry based on distance between the GOT pointer and symbol calculated
    from the preliminary layout.  So this patch removes that optimisation,
    and reduces the range allowed for 32-bit and 34-bit offsets.
    
            PR 24704
    bfd/
            * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
            (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
            Reduce range of offsets allowed for other GOT relocs.
    ld/
            * testsuite/ld-powerpc/elfv2exe.d: Update.
            * testsuite/ld-powerpc/elfv2so.d: Update.

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 964ab71b20..0914e7d633 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,12 @@
 2019-06-23  Alan Modra  <amodra@gmail.com>
 
+	PR 24704
+	* elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
+	(ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
+	Reduce range of offsets allowed for other GOT relocs.
+
+2019-06-23  Alan Modra  <amodra@gmail.com>
+
 	PR 24689
 	* elfcode.h (elf_object_p): Warning fix.
 
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 61620190ce..c5c18d0823 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -4610,7 +4610,6 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
 	  sec->has_tls_reloc = 1;
 	  goto dogot;
 
-	case R_PPC64_GOT16_DS:
 	case R_PPC64_GOT16_HA:
 	case R_PPC64_GOT16_LO_DS:
 	case R_PPC64_GOT_PCREL34:
@@ -4618,6 +4617,7 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
 	  ppc64_elf_section_data (sec)->has_gotrel = 1;
 	  /* Fall through.  */
 
+	case R_PPC64_GOT16_DS:
 	case R_PPC64_GOT16:
 	case R_PPC64_GOT16_HI:
 	case R_PPC64_GOT16_LO:
@@ -9010,10 +9010,15 @@ ppc64_elf_edit_toc (struct bfd_link_info *info)
 	      r_type = ELF64_R_TYPE (rel->r_info);
 	      switch (r_type)
 		{
+		/* Note that we don't delete GOT entries for
+		   R_PPC64_GOT16_DS since we'd need a lot more
+		   analysis.  For starters, the preliminary layout is
+		   before the GOT, PLT, dynamic sections and stubs are
+		   laid out.  Then we'd need to allow for changes in
+		   distance between sections caused by alignment.  */
 		default:
 		  continue;
 
-		case R_PPC64_GOT16_DS:
 		case R_PPC64_GOT16_HA:
 		case R_PPC64_GOT16_LO_DS:
 		  sym_addend = rel->r_addend;
@@ -9039,24 +9044,18 @@ ppc64_elf_edit_toc (struct bfd_link_info *info)
 	      val += sym_addend;
 	      val += sym_sec->output_section->vma + sym_sec->output_offset;
 
+/* Fudge factor to allow for the fact that the preliminary layout
+   isn't exact.  Reduce limits by this factor.  */
+#define LIMIT_ADJUST(LIMIT) ((LIMIT) - (LIMIT) / 16)
+
 	      switch (r_type)
 		{
 		default:
 		  continue;
 
-		case R_PPC64_GOT16_DS:
-		  if (val - got + 0x8000 >= 0x10000)
-		    continue;
-		  if (!bfd_get_section_contents (ibfd, sec, buf,
-						 rel->r_offset & ~3, 4))
-		    goto got_error_ret;
-		  insn = bfd_get_32 (ibfd, buf);
-		  if ((insn & (0x3f << 26 | 0x3)) != 58u << 26 /* ld */)
-		    continue;
-		  break;
-
 		case R_PPC64_GOT16_HA:
-		  if (val - got + 0x80008000ULL >= 0x100000000ULL)
+		  if (val - got + LIMIT_ADJUST (0x80008000ULL)
+		      >= LIMIT_ADJUST (0x100000000ULL))
 		    continue;
 
 		  if (!bfd_get_section_contents (ibfd, sec, buf,
@@ -9069,7 +9068,8 @@ ppc64_elf_edit_toc (struct bfd_link_info *info)
 		  break;
 
 		case R_PPC64_GOT16_LO_DS:
-		  if (val - got + 0x80008000ULL >= 0x100000000ULL)
+		  if (val - got + LIMIT_ADJUST (0x80008000ULL)
+		      >= LIMIT_ADJUST (0x100000000ULL))
 		    continue;
 		  if (!bfd_get_section_contents (ibfd, sec, buf,
 						 rel->r_offset & ~3, 4))
@@ -9082,7 +9082,8 @@ ppc64_elf_edit_toc (struct bfd_link_info *info)
 		case R_PPC64_GOT_PCREL34:
 		  pc = rel->r_offset;
 		  pc += sec->output_section->vma + sec->output_offset;
-		  if (val - pc + (1ULL << 33) >= 1ULL << 34)
+		  if (val - pc + LIMIT_ADJUST (1ULL << 33)
+		      >= LIMIT_ADJUST (1ULL << 34))
 		    continue;
 		  if (!bfd_get_section_contents (ibfd, sec, buf,
 						 rel->r_offset & ~3, 8))
@@ -9095,6 +9096,7 @@ ppc64_elf_edit_toc (struct bfd_link_info *info)
 		    continue;
 		  break;
 		}
+#undef LIMIT_ADJUST
 
 	      if (h != NULL)
 		ent = h->got.glist;
diff --git a/ld/ChangeLog b/ld/ChangeLog
index e5c85e101e..6dcfe30696 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2019-06-23  Alan Modra  <amodra@gmail.com>
+
+	PR 24704
+	* testsuite/ld-powerpc/elfv2exe.d: Update.
+	* testsuite/ld-powerpc/elfv2so.d: Update.
+
 2019-06-14  Szabolcs Nagy  <szabolcs.nagy@arm.com>
 
 	* testsuite/ld-aarch64/aarch64-elf.exp: Add emit-relocs-22 and -23.
diff --git a/ld/testsuite/ld-powerpc/elfv2exe.d b/ld/testsuite/ld-powerpc/elfv2exe.d
index 769f8469a1..0ccfcbf345 100644
--- a/ld/testsuite/ld-powerpc/elfv2exe.d
+++ b/ld/testsuite/ld-powerpc/elfv2exe.d
@@ -34,7 +34,7 @@ Disassembly of section \.text:
 .*:	(e8 62 80 08|08 80 62 e8) 	ld      r3,-32760\(r2\)
 .*:	(4b .. .. ..|.. .. .. 4b) 	bl      .*\.plt_branch\.f2>
 .*:	(60 00 00 00|00 00 00 60) 	nop
-.*:	(38 62 80 10|10 80 62 38) 	addi    r3,r2,-32752
+.*:	(38 62 80 18|18 80 62 38) 	addi    r3,r2,-32744
 .*:	(48 .. .. ..|.. .. .. 48) 	bl      10008888 <f3>
 .*:	(60 00 00 00|00 00 00 60) 	nop
 .*:	(4b .. .. ..|.. .. .. 4b) 	bl      .*\.plt_branch\.f4>
diff --git a/ld/testsuite/ld-powerpc/elfv2so.d b/ld/testsuite/ld-powerpc/elfv2so.d
index 081eb4937f..0162bd0880 100644
--- a/ld/testsuite/ld-powerpc/elfv2so.d
+++ b/ld/testsuite/ld-powerpc/elfv2so.d
@@ -9,35 +9,35 @@ Disassembly of section \.text:
 
 .* <.*\.plt_call\.f4>:
 .*:	(f8 41 00 18|18 00 41 f8) 	std     r2,24\(r1\)
-.*:	(e9 82 80 38|38 80 82 e9) 	ld      r12,-32712\(r2\)
+.*:	(e9 82 80 40|40 80 82 e9) 	ld      r12,-32704\(r2\)
 .*:	(7d 89 03 a6|a6 03 89 7d) 	mtctr   r12
 .*:	(4e 80 04 20|20 04 80 4e) 	bctr
 	\.\.\.
 
 .* <.*\.plt_call\.f3>:
 .*:	(f8 41 00 18|18 00 41 f8) 	std     r2,24\(r1\)
-.*:	(e9 82 80 28|28 80 82 e9) 	ld      r12,-32728\(r2\)
+.*:	(e9 82 80 30|30 80 82 e9) 	ld      r12,-32720\(r2\)
 .*:	(7d 89 03 a6|a6 03 89 7d) 	mtctr   r12
 .*:	(4e 80 04 20|20 04 80 4e) 	bctr
 	\.\.\.
 
 .* <.*\.plt_call\.f5>:
 .*:	(f8 41 00 18|18 00 41 f8) 	std     r2,24\(r1\)
-.*:	(e9 82 80 20|20 80 82 e9) 	ld      r12,-32736\(r2\)
+.*:	(e9 82 80 28|28 80 82 e9) 	ld      r12,-32728\(r2\)
 .*:	(7d 89 03 a6|a6 03 89 7d) 	mtctr   r12
 .*:	(4e 80 04 20|20 04 80 4e) 	bctr
 	\.\.\.
 
 .* <.*\.plt_call\.f1>:
 .*:	(f8 41 00 18|18 00 41 f8) 	std     r2,24\(r1\)
-.*:	(e9 82 80 40|40 80 82 e9) 	ld      r12,-32704\(r2\)
+.*:	(e9 82 80 48|48 80 82 e9) 	ld      r12,-32696\(r2\)
 .*:	(7d 89 03 a6|a6 03 89 7d) 	mtctr   r12
 .*:	(4e 80 04 20|20 04 80 4e) 	bctr
 	\.\.\.
 
 .* <.*\.plt_call\.f2>:
 .*:	(f8 41 00 18|18 00 41 f8) 	std     r2,24\(r1\)
-.*:	(e9 82 80 30|30 80 82 e9) 	ld      r12,-32720\(r2\)
+.*:	(e9 82 80 38|38 80 82 e9) 	ld      r12,-32712\(r2\)
 .*:	(7d 89 03 a6|a6 03 89 7d) 	mtctr   r12
 .*:	(4e 80 04 20|20 04 80 4e) 	bctr
 	\.\.\.
@@ -52,7 +52,7 @@ Disassembly of section \.text:
 .*:	(e8 62 80 08|08 80 62 e8) 	ld      r3,-32760\(r2\)
 .*:	(4b .. .. ..|.. .. .. 4b) 	bl      .*\.plt_call\.f2>
 .*:	(e8 41 00 18|18 00 41 e8) 	ld      r2,24\(r1\)
-.*:	(38 62 80 48|48 80 62 38) 	addi    r3,r2,-32696
+.*:	(38 62 80 50|50 80 62 38) 	addi    r3,r2,-32688
 .*:	(4b .. .. ..|.. .. .. 4b) 	bl      .*\.plt_call\.f3>
 .*:	(e8 41 00 18|18 00 41 e8) 	ld      r2,24\(r1\)
 .*:	(4b .. .. ..|.. .. .. 4b) 	bl      .*\.plt_call\.f4>


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove tui_first_data_element_no_in_line
@ 2019-06-23 14:57 gdb-buildbot
  2019-07-09 16:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-23 14:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f95675e12d3ab100ce11257a09663c68df7784ee ***

commit f95675e12d3ab100ce11257a09663c68df7784ee
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Sat Jun 22 11:50:19 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Sat Jun 22 15:28:08 2019 -0600

    Remove tui_first_data_element_no_in_line
    
    tui_first_data_element_no_in_line is never used.  This patch removes
    it.  Tested by rebuilding, and by grep.
    
    gdb/ChangeLog
    2019-06-22  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-windata.h (tui_first_data_element_no_in_line): Don't
            declare.
            * tui/tui-windata.c (tui_first_data_element_no_in_line): Remove.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 78ea6cfb3e..29c568f5d3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,11 @@
 2019-06-22  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui-windata.h (tui_first_data_element_no_in_line): Don't
+	declare.
+	* tui/tui-windata.c (tui_first_data_element_no_in_line): Remove.
+
+2019-06-22  Tom Tromey  <tom@tromey.com>
+
 	* tui/tui-data.h (tui_del_window, tui_del_data_windows): Don't
 	declare.
 	* tui/tui-data.c (tui_del_window, tui_del_data_windows): Remove.
diff --git a/gdb/tui/tui-windata.c b/gdb/tui/tui-windata.c
index 8616b6c47b..646adfbb74 100644
--- a/gdb/tui/tui-windata.c
+++ b/gdb/tui/tui-windata.c
@@ -64,23 +64,6 @@ tui_first_data_item_displayed (void)
 }
 
 
-/* Answer the index of the first element in line_no.  If line_no is
-   past the data area (-1) is returned.  */
-int
-tui_first_data_element_no_in_line (int line_no)
-{
-  int first_element_no = (-1);
-
-  /* First see if there is a register on line_no, and if so, set the
-     first element number.  */
-  if ((first_element_no = tui_first_reg_element_no_inline (line_no)) == -1)
-    { /* Looking at the general data, the 1st element on line_no.  */
-    }
-
-  return first_element_no;
-}
-
-
 /* Function to delete all the item windows in the data window.  This
    is usually done when the data window is scrolled.  */
 void
diff --git a/gdb/tui/tui-windata.h b/gdb/tui/tui-windata.h
index 63fca0dd28..56bf1ede9b 100644
--- a/gdb/tui/tui-windata.h
+++ b/gdb/tui/tui-windata.h
@@ -29,7 +29,6 @@ extern void tui_display_all_data (void);
 extern void tui_check_data_values (struct frame_info *);
 extern void tui_display_data_from_line (int);
 extern int tui_first_data_item_displayed (void);
-extern int tui_first_data_element_no_in_line (int);
 extern void tui_delete_data_content_windows (void);
 extern void tui_refresh_data_win (void);
 extern void tui_display_data_from (int, int);


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove two unused functions from the TUI
@ 2019-06-23 14:05 gdb-buildbot
  2019-07-09 16:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: gdb-buildbot @ 2019-06-23 14:05 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5bff081c10ab4debfd3416739fda93b6c275496b ***

commit 5bff081c10ab4debfd3416739fda93b6c275496b
Author:     Tom Tromey <tom@tromey.com>
AuthorDate: Sun Jun 16 10:04:49 2019 -0600
Commit:     Tom Tromey <tom@tromey.com>
CommitDate: Sat Jun 22 15:22:49 2019 -0600

    Remove two unused functions from the TUI
    
    This removes two unused functions from the TUI.  According to
    "git grep -G", they have never been used.
    
    gdb/ChangeLog
    2019-06-22  Tom Tromey  <tom@tromey.com>
    
            * tui/tui-data.h (tui_del_window, tui_del_data_windows): Don't
            declare.
            * tui/tui-data.c (tui_del_window, tui_del_data_windows): Remove.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 7e7da824ba..78ea6cfb3e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2019-06-22  Tom Tromey  <tom@tromey.com>
+
+	* tui/tui-data.h (tui_del_window, tui_del_data_windows): Don't
+	declare.
+	* tui/tui-data.c (tui_del_window, tui_del_data_windows): Remove.
+
 2019-06-22  Tom de Vries  <tdevries@suse.de>
 
 	* dwarf2read.c (create_addrmap_from_aranges)
diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c
index 2df9cbcd07..b67cb48c2e 100644
--- a/gdb/tui/tui-data.c
+++ b/gdb/tui/tui-data.c
@@ -604,59 +604,6 @@ tui_add_content_elements (struct tui_gen_win_info *win_info,
   return index_start;
 }
 
-
-/* Delete all curses windows associated with win_info, leaving
-   everything else intact.  */
-void
-tui_del_window (struct tui_win_info *win_info)
-{
-  struct tui_gen_win_info *generic_win;
-
-  switch (win_info->generic.type)
-    {
-    case SRC_WIN:
-    case DISASSEM_WIN:
-      generic_win = tui_locator_win_info_ptr ();
-      if (generic_win != NULL)
-	{
-	  tui_delete_win (generic_win->handle);
-	  generic_win->handle = NULL;
-	  generic_win->is_visible = FALSE;
-	}
-      if (win_info->detail.source_info.fullname)
-        {
-          xfree (win_info->detail.source_info.fullname);
-          win_info->detail.source_info.fullname = NULL;
-        }
-      generic_win = win_info->detail.source_info.execution_info;
-      if (generic_win != NULL)
-	{
-	  tui_delete_win (generic_win->handle);
-	  generic_win->handle = NULL;
-	  generic_win->is_visible = FALSE;
-	}
-      break;
-    case DATA_WIN:
-      if (win_info->generic.content != NULL)
-	{
-	  tui_del_data_windows (win_info->detail.data_display_info.regs_content,
-				win_info->detail.data_display_info.regs_content_count);
-	  tui_del_data_windows (win_info->detail.data_display_info.data_content,
-				win_info->detail.data_display_info.data_content_count);
-	}
-      break;
-    default:
-      break;
-    }
-  if (win_info->generic.handle != NULL)
-    {
-      tui_delete_win (win_info->generic.handle);
-      win_info->generic.handle = NULL;
-      win_info->generic.is_visible = FALSE;
-    }
-}
-
-
 void
 tui_free_window (struct tui_win_info *win_info)
 {
@@ -744,30 +691,6 @@ tui_free_win_content (struct tui_gen_win_info *win_info)
 
 
 void
-tui_del_data_windows (tui_win_content content, 
-		      int content_size)
-{
-  int i;
-
-  /* Remember that data window content elements are of type struct
-     tui_gen_win_info *, each of which whose single element is a data
-     element.  */
-  for (i = 0; i < content_size; i++)
-    {
-      struct tui_gen_win_info *generic_win
-	= &content[i]->which_element.data_window;
-
-      if (generic_win != NULL)
-	{
-	  tui_delete_win (generic_win->handle);
-	  generic_win->handle = NULL;
-	  generic_win->is_visible = FALSE;
-	}
-    }
-}
-
-
-void
 tui_free_data_content (tui_win_content content, 
 		       int content_size)
 {
diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h
index c42647b230..c696feed28 100644
--- a/gdb/tui/tui-data.h
+++ b/gdb/tui/tui-data.h
@@ -310,8 +310,6 @@ extern void tui_free_window (struct tui_win_info *);
 extern void tui_free_win_content (struct tui_gen_win_info *);
 extern void tui_free_data_content (tui_win_content, int);
 extern void tui_free_all_source_wins_content (void);
-extern void tui_del_window (struct tui_win_info *);
-extern void tui_del_data_windows (tui_win_content, int);
 extern struct tui_win_info *tui_partial_win_by_name (const char *);
 extern const char *tui_win_name (const struct tui_gen_win_info *);
 extern enum tui_layout_type tui_current_layout (void);


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add intro comment to length_cond.exp
@ 2019-06-19 15:59 sergiodj+buildbot
  2019-06-19 16:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-19 15:59 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 899277ae529c2b743d22093fcc1a9e46aff4422a ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 899277ae529c2b743d22093fcc1a9e46aff4422a

Add intro comment to length_cond.exp

Pedro pointed out that the new length_cond.exp test did not have an
intro comment.  This adds one.

gdb/testsuite/ChangeLog
2019-06-19  Tom Tromey  <tromey@adacore.com>

	* gdb.ada/length_cond.exp: Add intro comment.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix crash when setting breakpoint condition
@ 2019-06-19 14:38 sergiodj+buildbot
  2019-06-19 15:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-19 14:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 680e1beed31da40080f61a35f6ccd626de818056 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 680e1beed31da40080f61a35f6ccd626de818056

Fix crash when setting breakpoint condition

gdb could crash when setting a breakpoint condition on a breakpoint
when using the Ada language.  The problem occurred because the
ada_evaluate_subexp would try to evaluate the array to compute its
attributes, but evaluating can't really be done at this time.

This patch fixes the problem by arranging not to try to evaluate in
EVAL_AVOID_SIDE_EFFECTS mode when computing an attribute.

Tested on x86-64 Fedora 29.  Because this is Ada-specific, and because
Joel approved it internally, I am checking it in.

gdb/ChangeLog
2019-06-19  Tom Tromey  <tromey@adacore.com>

	* ada-lang.c (ada_evaluate_subexp) <case OP_ATR_FIRST>: Handle
	EVAL_AVOID_SIDE_EFFECTS specially.

gdb/testsuite/ChangeLog
2019-06-19  Tom Tromey  <tromey@adacore.com>

	* gdb.ada/length_cond.exp: New file.
	* gdb.ada/length_cond/length_cond.adb: New file.
	* gdb.ada/length_cond/pck.adb: New file.
	* gdb.ada/length_cond/pck.ads: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Instantiate a single source highlighter
@ 2019-06-19 12:58 sergiodj+buildbot
  2019-06-19 13:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-19 12:58 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT dcf3792354ddcd6e10e59e32060e34b27246e7da ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: dcf3792354ddcd6e10e59e32060e34b27246e7da

Instantiate a single source highlighter

It occurred to me that there's no reason to make a new source
highlighter each time gdb needs to highlight some source code.
Instead, a single one can be created and then simply reused each time.

This patch implements this idea.  Tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-06-19  Tom Tromey  <tromey@adacore.com>

	* source-cache.c (highlighter): New global.
	(source_cache::get_source_lines): Create a highlighter on demand.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24697, R_PPC_EMB_SDA21 relocation
@ 2019-06-19 11:38 sergiodj+buildbot
  2019-06-19 11:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-19 11:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6f5601c4d0ad43254244f1b624900cdd5afd02ba ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 6f5601c4d0ad43254244f1b624900cdd5afd02ba

PR24697, R_PPC_EMB_SDA21 relocation

	PR 24697
	* elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
	R_PPC_EMB_RELSDA.  Mask low bit of R_PPC_EMB_SDA21 r_offset.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PowerPC64 notoc calls
@ 2019-06-19  8:47 sergiodj+buildbot
  2019-06-19 11:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-19  8:47 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4a4e7361d67cd9262be1413300795eede564f4cb ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 4a4e7361d67cd9262be1413300795eede564f4cb

PowerPC64 notoc calls

Calls from functions that don't have a valid toc pointer in r2 (these
calls are marked with _NOTOC relocs) to functions that require r2
valid must go via the callee global entry point.  This patch corrects
the condition the linker was using to detect functions that require r2
to be valid.  Values of both zero and one in st_other local entry bits
mean a function doesn't care about r2.

	* elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
	functions that require r2 valid to use local entry.
	(ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Remove use of deprecated_interactive_hook
@ 2019-06-19  5:18 sergiodj+buildbot
  2019-06-19  7:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-19  5:18 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 494986d596a977e1d24f9f068696f5b3e993ebf7 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 494986d596a977e1d24f9f068696f5b3e993ebf7

gdb: Remove use of deprecated_interactive_hook

The deprecated_interactive_hook is not used within GDB.  It is used in
gdbtk, however this patch removes that use:

  https://sourceware.org/ml/insight/2019-q2/msg00001.html

So I think there is no longer a reason to keep this hook around.

This patch removes it.  There should be no user visible changes after
this commit.

gdb/ChangeLog:

	* defs.h (deprecated_interactive_hook): Delete declaration.
	* interps.c (clear_interpreter_hooks): Remove use of
	deprecated_interactive_hook.
	* top.c (deprecated_interactive_hook): Delete definition.
	* utils.c (maybe_quit): Remove use of deprecated_interactive_hook.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [gdb/testsuite] Use -fuse-ld=gold in fission.exp
@ 2019-06-18 18:53 sergiodj+buildbot
  2019-06-18 19:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-18 18:53 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 0ed4690a67e2c4703d9088312de652d0d5f1aaaf ***

Author: Tom de Vries <tdevries@suse.de>
Branch: master
Commit: 0ed4690a67e2c4703d9088312de652d0d5f1aaaf

[gdb/testsuite] Use -fuse-ld=gold in fission.exp

The target board fission.exp requires the gold linker (because it supports
--gdb-index).

When running the target board on a system where the default linker is not
gold, most tests will fail to compile.

Fix this by adding "-fuse-ld=gold" ( supported in gcc since version 4.8).

gdb/testsuite/ChangeLog:

2019-06-18  Tom de Vries  <tdevries@suse.de>

	* boards/fission.exp (debug_flags): Add "-fuse-ld=gold".


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [gdb] Fix abstract_to_concrete type
@ 2019-06-18 18:43 sergiodj+buildbot
  2019-06-18 18:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-18 18:43 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3360b6e7963e3c579e50078e78d226ea63e2960f ***

Author: Tom de Vries <tdevries@suse.de>
Branch: master
Commit: 3360b6e7963e3c579e50078e78d226ea63e2960f

[gdb] Fix abstract_to_concrete type

The test-case varval.exp fails here:
...
FAIL: gdb.dwarf2/varval.exp: print varval2
...
with boards readnow/cc-with-gdb-index/cc-with-debug-names, as well as if gdb
is build with -fsanitize=address -lasan.

The problem is that the abstract_to_concrete map in which we track the
association of abstract to concrete DIEs (for DW_OP_GNU_variable_value
support) has type std::unordered_map<die_info_ptr, std::vector<die_info_ptr>>,
and the die_info_ptrs that we register in the map may be invalid by the time
that we start to lookup DIEs in the map.

Fix this by using the sect_offset instead to identify the DIEs in the map.

Build and tested on x86_64-linux.

gdb/ChangeLog:

2019-06-18  Tom de Vries  <tdevries@suse.de>

	PR gdb/24515
	* dwarf2read.h (abstract_to_concrete): Change type from
	std::unordered_map<die_info_ptr, std::vector<die_info_ptr>> to
	std::unordered_map<sect_offset, std::vector<sect_offset>>.
	* dwarf2read.c (read_variable): Update.
	(dwarf2_fetch_die_loc_sect_off): Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] NEWS and manual changes for command options changes
@ 2019-06-13  4:35 sergiodj+buildbot
  2019-06-13  7:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  4:35 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3345721af145007661f4e7e7f4300470095ba622 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 3345721af145007661f4e7e7f4300470095ba622

NEWS and manual changes for command options changes

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* NEWS (New commands): Mention "maint test-options
	require-delimiter", "maint test-options unknown-is-error", "maint
	test-options unknown-is-operand" and "maint show
	test-options-completion-result".
	(New command options, command completion): New section.
	(Completion improvements): New section.
	Mention that you can abbreviate "unlimited".

gdb/doc/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.texinfo (Command Completion): Mention command options too.
	(Command Options): New node.
	(Threads): Add anchors.  Extend descriptions of the "taas" and
	"tfaas" commands.
	(Backtrace): Describe new options of the "backtrace" command.  Add
	anchors.
	(Frame Apply): Describe new options of the "frame apply" and
	"faas" commands.  Add anchors.
	(Data): Describe new options of the "print" command.  Add anchors.
	(Compiling and Injecting Code): Mention options of the "compile
	print" command.
	(Maintenance Commands): Mention "maint test-options" subcommands
	and the "maint show test-options-completion-result" command.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Delete parse_flags/parse_flags_qcs
@ 2019-06-13  4:29 sergiodj+buildbot
  2019-06-13  6:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  4:29 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6206060d9be8da3e701fe0307c6c01390e2b4ae2 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 6206060d9be8da3e701fe0307c6c01390e2b4ae2

Delete parse_flags/parse_flags_qcs

Now that "thread/frame apply" have been converted to the gdb::option
framework, these functions are no longer used.

For a while, I thought about keeping the unit tests, by making a local
version of parse_flags_qcs in the unit tests file.  But all that would
really test that is used by GDB itself, is the validate_flags_qcs
function.  So in the end, I went through all the unit tests, and
converted any that wasn't already covered to gdb.base/options.exp
tests.  And those have all already been added in previous patches.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* cli/cli-utils.c (parse_flags, parse_flags_qcs): Delete.
	* cli/cli-utils.h (parse_flags, parse_flags_qcs): Delete.
	* unittests/cli-utils-selftests.c (test_parse_flags)
	(test_parse_flags_qcs): Delete.
	(test_cli_utils): Don't call deleted functions.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make "thread apply" use the gdb::option framework
@ 2019-06-13  4:21 sergiodj+buildbot
  2019-06-13  6:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  4:21 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6665660a411ead049daa85cac5c629d637e22044 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 6665660a411ead049daa85cac5c629d637e22044

Make "thread apply" use the gdb::option framework

Similarly to the "frame apply" patch, this makes the "thread apply"
family of commands -- "thread apply TID", "thread apply all" and
"taas" use the gdb::option framework for '-'-style options.

No new options are added, but there are some user-visible changes:

- Can now abbreviate and complete "-ascending"

- We now have a completer for "thread apply" commands

  Can now complete options ("thread apply all -[TAB]"), and also,
  'thread apply all COMMAND[TAB]' now does what you'd expect, by
  making use of the new complete_command routine.

- "help" output tweaked with auto-generated option descriptions:

   ~~~
   Usage: thread apply all [OPTION]... COMMAND
   Prints per-inferior thread number and target system's thread id
   followed by COMMAND output.

   By default, an error raised during the execution of COMMAND
   aborts "thread apply".

   Options:
     -ascending
       Call COMMAND for all threads in ascending order.
       The default is descending order.

     -q
       Disables printing the thread information.

     -c
       Print any error raised by COMMAND and continue.

     -s
       Silently ignore any errors or empty output produced by COMMAND.
   ~~~

  The "By default ..." sentence is new as well.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* thread.c: Include "cli/cli-option.h".
	(tp_array_compar_ascending): Global.
	(tp_array_compar): Delete function.
	(tp_array_compar_ascending, tp_array_compar_descending): New
	functions.
	(ascending_option_def, qcs_flag_option_def)
	(thr_qcs_flags_option_defs)
	(make_thread_apply_all_options_def_group)
	(make_thread_apply_options_def_group): New.
	(thread_apply_all_command): Use gdb::option::process_options.
	(thread_apply_command_completer)
	(thread_apply_all_command_completer): New.
	(thread_apply_command): Use gdb::option::process_options.
	(_initialize_thread): Delete THREAD_APPLY_FLAGS_HELP, replace it
	with a new THREAD_APPLY_OPTION_HELP.  Use gdb::option::build_help
	to generate help text of "thread apply".  Adjust "taas"'s help.
	* tid-parse.c (tid_range_parser::in_thread_range): New method.
	* tid-parse.h (tid_range_parser::in_thread_range): New method.

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.base/options.exp (test-thread-apply): New.
	(top level): Call it.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] "thread apply 1 -- -" vs "frame apply level 0 -- -"
@ 2019-06-13  4:08 sergiodj+buildbot
  2019-06-13  5:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  4:08 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f7e13587eaf1e2d433e21ac0a9e413a98e53652d ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: f7e13587eaf1e2d433e21ac0a9e413a98e53652d

"thread apply 1 -- -" vs "frame apply level 0 -- -"

With the following patch, we'll be able to explicitly tell "thread
apply" where options end, using the "--" delimiter.  A test added by
that patch caught a pre-existing inconsistency:

 (gdb) thread apply 1 -- -
 Invalid thread ID: -

 (gdb) frame apply level 0 -- -
 #0  main () at threads.c:55
 Cannot enable the TUI when output is not a terminal

Above, "thread apply" did not try to run the command, while "frame
apply level" did.  ("-" is a valid TUI command.)

That "-" is past "--", so it should have not been confused with an
invalid TID, in the "thread apply" case.

That error actually doesn't come from the TID parser, but instead from
thread_apply_command directly.

So that error/check needs tweaking.  The next question is what to
tweak it to.

"-" is actually a valid TUI command:

 (gdb) help -
 Scroll window backward.
 Usage: - [WIN] [N]

(gdb) frame apply level 0 -- -
#0  main () at threads.c:55
Cannot enable the TUI when output is not a terminal

While I don't imagine it being useful to use that "-" command with
"thread apply" or "frame apply level", the fact is that you can use it
with "frame apply level", but not with "thread apply".  And since it's
an actual command, pedantically it seems right to allow it.

That's what this commit does.

Note: simply removing the "isalpha" check regresses
gdb.multi/tids.exp -- see related commit 3f5b7598805c.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* thread.c (thread_apply_command): Check for invalid TID with
	isdigit instead of !isalpha.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make "frame apply" support -OPT options
@ 2019-06-13  3:56 sergiodj+buildbot
  2019-06-13  5:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  3:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5d7071341dd3c01d38fc01398ef8b23b1bd3783c ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 5d7071341dd3c01d38fc01398ef8b23b1bd3783c

Make "frame apply" support -OPT options

This adds support for '-'-style options to the "frame apply" family of
commands -- "frame apply COUNT", "frame apply level", "frame apply
all", "faas" and "tfaas".

The -q/-c/-s flags were already supported, -past-main/-past-entry is
new:

~~~
(gdb) help frame apply all
Apply a command to all frames.

Usage: frame apply all [OPTION]... COMMAND
Prints the frame location information followed by COMMAND output.

By default, an error raised during the execution of COMMAND
aborts "frame apply".

Options:
  -q
    Disables printing the frame location information.

  -c
    Print any error raised by COMMAND and continue.

  -s
    Silently ignore any errors or empty output produced by COMMAND.

  -past-main [on|off]
    Set whether backtraces should continue past "main".
    Normally the caller of "main" is not of interest, so GDB will terminate
    the backtrace at "main".  Set this if you need to see the rest
    of the stack trace.

  -past-entry [on|off]
    Set whether backtraces should continue past the entry point of a program.
    Normally there are no callers beyond the entry point of a program, so GDB
    will terminate the backtrace there.  Set this if you need to see
    the rest of the stack trace.
~~~

TAB completion of options is now supported.  Also, TAB completion of
COMMAND in "frame apply all COMMAND" does the right thing now, making
use of complete_command, added by the previous patch.  E.g.:

 (gdb) thread apply all -ascending frame apply all -past-main print -[TAB]
 -address         -elements        -pretty          -symbol
 -array           -null-stop       -repeats         -union
 -array-indexes   -object          -static-members  -vtbl
 (gdb) thread apply all -ascending frame apply all -past-main print glo[TAB]
 global1         global2

The change to tfaas_command is necessary because otherwise you get
this:

 (gdb) tfaas --
 Unrecognized option at: frame apply all -s --

That's because the above is equivalent to:

 (gdb) thread apply all -s frame apply all -s --

and the "--" instructs "thread apply" to consider everything up to
"--" as its command options.  And from that view, "frame" is an
invalid option.

The change makes tfaas be equivalent to:

 (gdb) thread apply all -s -- frame apply all -s --

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* cli/cli-utils.c (parse_flags_qcs): Use validate_flags_qcs.
	(validate_flags_qcs): New.
	* cli/cli-utils.h (struct qcs_flags): Change field types to int.
	(validate_flags_qcs): Declare.
	* stack.c (qcs_flag_option_def, fr_qcs_flags_option_defs): New.
	(make_frame_apply_options_def_group): New.
	(frame_apply_command_count): Process options with
	gdb::option::process_options.
	(frame_apply_completer): New.
	(frame_apply_level_completer, frame_apply_all_completer)
	(frame_apply_completer): New.
	(_initialize_stack): Update help of "frame apply", "frame apply
	level", "frame apply all" and "faas" to mention supported options
	and install command completers.
	* stack.h (frame_apply_all_completer): Declare.
	* thread.c: Include "stack.h".
	(tfaas_command): Add "--".
	(_initialize_thread): Update help "tfaas" to mention supported
	options and install command completer.

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.base/options.exp (test-frame-apply): New.
	(top level): Test print commands with different "frame apply"
	prefixes.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Introduce complete_nested_command_line
@ 2019-06-13  3:45 sergiodj+buildbot
  2019-06-13  5:33 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  3:45 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 272d4594343349a713f7d8967d90ae2413ecbc30 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 272d4594343349a713f7d8967d90ae2413ecbc30

Introduce complete_nested_command_line

This adds a completion helper routine that makes it possible for a
command that takes another command as argument, such as "frame apply
all COMMAND" as "thread apply all COMMAND", to complete on COMMAND,
and have the completion machinery recurse and complete COMMAND as if
you tried to complete "(gdb) COMMAND".  I.e., we'll be able to
complete like this, for example:

 (gdb) thread apply all -[TAB]
 -c           -ascending   -q           -s
 (gdb) thread apply all -ascending frame apply all -[TAB]
 -c           -limit       -past-entry  -past-main   -q           -s
 (gdb) thread apply all -ascending frame apply all -past-main print -[TAB]
 -address         -elements        -pretty          -symbol
 -array           -null-stop       -repeats         -union
 -array-indexes   -object          -static-members  -vtbl
 (gdb) thread apply all -ascending frame apply all -past-main print glo[TAB]
 global1         global2

Above, the completer function understands that "thread apply all" is a
command, and then parses "-ascending" successfully and understand that
the rest of the string is "thread apply all"'s operand.  And then, the
process repeats for the "frame apply" command, and on and on.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* completer.c (complete_nested_command_line): New.
	(gdb_completion_word_break_characters_throw): Add assertion.
	* completer.h (complete_nested_command_line): Declare.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] lib/completion-support.exp: Add test_gdb_completion_offers_commands
@ 2019-06-13  3:40 sergiodj+buildbot
  2019-06-13  5:22 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  3:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e2a689da55d3feb7b79a141f69c4049112f59c91 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: e2a689da55d3feb7b79a141f69c4049112f59c91

lib/completion-support.exp: Add test_gdb_completion_offers_commands

This adds a procedure to the collection of completion-testing
routines, that allows checking whether completion offers all commands
as completion candidates.  This will be used for testing completing
"frame apply all [TAB]", "thread apply all [TAB]", etc.

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

        * lib/completion-support.exp (test_gdb_complete_tab_multiple)
	(test_gdb_complete_cmd_multiple, test_gdb_complete_multiple): Add
	'max_completions' parameter and handle it.
	(test_gdb_completion_offers_commands): New.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] "backtrace full/no-filters/hide" completer
@ 2019-06-13  3:19 sergiodj+buildbot
  2019-06-13  5:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  3:19 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 90a1ef8762a57f3f57007db2186099c026152034 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 90a1ef8762a57f3f57007db2186099c026152034

"backtrace full/no-filters/hide" completer

"backtrace"'s completer now completes on command options:

 (gdb) bt -[TAB]
 -entry-values         -full                 -no-filters           -past-main
 -frame-arguments      -hide                 -past-entry           -raw-frame-arguments

But it doesn't know how to complete on qualifiers:

 (gdb) bt fu[TAB]
 funlockfile       futimens          futimes.c
 funlockfile.c     futimens.c        futimesat
 futex-internal.h  futimes           futimesat.c

This commit fixes that:

 (gdb) bt fu[TAB]ll
 (gdb) bt n[TAB]o-filters
 (gdb) bt h[TAB]ide

I considered teaching the gdb::option framework to handle non-'-'
options, but decided it wasn't worth it for this special case, and I'd
rather not make it easy to add new qualifier-like options.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* stack.c (parse_backtrace_qualifiers): New.
	(backtrace_command): Use it.
	(backtrace_command_completer): Complete on qualifiers.

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.base/options.exp (test-backtrace): Test completing qualifiers.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make "backtrace" support -OPT options
@ 2019-06-13  3:03 sergiodj+buildbot
  2019-06-13  5:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  3:03 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d4c16835cad70bd8c04ff30d5d6f40ac65e7f7e1 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: d4c16835cad70bd8c04ff30d5d6f40ac65e7f7e1

Make "backtrace" support -OPT options

This adds support for comand options to the "backtrace" command.  We'll get:

  (gdb) bt -
  -entry-values         -hide                 -past-main
  -frame-arguments      -no-filters           -raw-frame-arguments
  -full                 -past-entry

~~~~
(gdb) help backtrace
Print backtrace of all stack frames, or innermost COUNT frames.
Usage: backtrace [OPTION]... [QUALIFIER]... [COUNT | -COUNT]

Options:
  -entry-values no|only|preferred|if-needed|both|compact|default
    Set printing of function arguments at function entry
    GDB can sometimes determine the values of function arguments at entry,
    in addition to their current values.  This option tells GDB whether
    to print the current value, the value at entry (marked as val@entry),
    or both.  Note that one or both of these values may be <optimized out>.

  -frame-arguments all|scalars|none
    Set printing of non-scalar frame arguments

  -raw-frame-arguments [on|off]
    Set whether to print frame arguments in raw form.
    If set, frame arguments are printed in raw form, bypassing any
    pretty-printers for that value.

  -past-main [on|off]
    Set whether backtraces should continue past "main".
    Normally the caller of "main" is not of interest, so GDB will terminate
    the backtrace at "main".  Set this if you need to see the rest
    of the stack trace.

  -past-entry [on|off]
    Set whether backtraces should continue past the entry point of a program.
    Normally there are no callers beyond the entry point of a program, so GDB
    will terminate the backtrace there.  Set this if you need to see
    the rest of the stack trace.

  -full
    Print values of local variables.

  -no-filters
    Prohibit frame filters from executing on a backtrace.

  -hide
    Causes Python frame filter elided frames to not be printed.

For backward compatibility, the following qualifiers are supported:

   full       - same as -full option.
   no-filters - same as -no-filters option.
   hide       - same as -hide.

With a negative COUNT, print outermost -COUNT frames.
~~~~

Implementation wise, this:

- Moves relevant options/settings globals to structures.
- Tweaks a number of functions to pass down references to such structures.
- Adds option_def structures describing the options/settings.
- Makes backtrace_command parse the options, with gdb::option::process_options.
- Tweaks "backtrace"'s help to describe the new options.
- Adds testcases.

Note that backtrace is a PROCESS_OPTIONS_UNKNOWN_IS_OPERAND command,
because of the "-COUNT" argument.

The COUNT/-COUNT argument is currently parsed as an expression.  I
considered whether it would be prudent here to require "--", but
concluded that the risk of causing a significant breakage here is much
lower compared to "print", since printing the expression is not the
whole point of the "backtrace" command.  Seems OK to me to require
typing "backtrace -past-main -- -p" if the user truly wants to refer
to the negative of a backtrace count stored in an inferior variable
called "p".

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* frame.c: Include "cli/cli-option.h.
	(user_set_backtrace_options): New.
	(backtrace_past_main, backtrace_past_entry, backtrace_limit):
	Delete.
	(get_prev_frame): Adjust.
	(boolean_option_def, uinteger_option_def)
	(set_backtrace_option_defs): New.
	(_initialize_frame): Adjust and use
	gdb::option::add_setshow_cmds_for_options to install "set
	backtrace past-main" and "set backtrace past-entry".
	* frame.h: Include "cli/cli-option.h".
	(struct frame_print_options): Forward declare.
	(print_frame_arguments_all, print_frame_arguments_scalars)
	(print_frame_arguments_none): Declare.
	(print_entry_values): Delete declaration.
	(struct frame_print_options, user_frame_print_options): New.
	(struct set_backtrace_options): New.
	(set_backtrace_option_defs, user_set_backtrace_options): Declare.
	* mi/mi-cmd-stack.c (mi_cmd_stack_list_frames)
	(mi_cmd_stack_list_locals, mi_cmd_stack_list_args)
	(mi_cmd_stack_list_variables): Pass down USER_FRAME_PRINT_OPTIONS.
	(list_args_or_locals): Add frame_print_options parameter.
	(mi_cmd_stack_info_frame): Pass down USER_FRAME_PRINT_OPTIONS.
	* python/py-framefilter.c (enumerate_args): Pass down
	USER_FRAME_PRINT_OPTIONS.
	* stack.c: Include "cli/cli-option.h".
	(print_frame_arguments_all, print_frame_arguments_scalars)
	(print_frame_arguments_none): Declare.
	(print_raw_frame_arguments, print_entry_values): Delete.
	(user_frame_print_options): New.
	(boolean_option_def, enum_option_def, frame_print_option_defs):
	New.
	(struct backtrace_cmd_options): New.
	(bt_flag_option_def): New.
	(backtrace_command_option_defs): New.
	(print_stack_frame): Pass down USER_FRAME_PRINT_OPTIONS.
	(print_frame_arg, read_frame_arg, print_frame_args)
	(print_frame_info, print_frame): Add frame_print_options parameter
	and use it.
	(info_frame_command_core): Pass down USER_FRAME_PRINT_OPTIONS.
	(backtrace_command_1): Add frame_print_options and
	backtrace_cmd_options parameters and use them.
	(make_backtrace_options_def_group): New.
	(backtrace_command): Process command options with
	gdb::option::process_options.
	(backtrace_command_completer): New.
	(_initialize_stack): Extend "backtrace"'s help to mention
	supported options.  Install completer for "backtrace".
	Install some settings commands with add_setshow_cmds_for_options.

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.base/options.exp (test-backtrace): New.
	(top level): Call it.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] "set print raw frame-arguments" -> "set print raw-frame-arguments"
@ 2019-06-13  3:01 sergiodj+buildbot
  2019-06-13  5:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  3:01 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2daf894ed0baf72dd3f422b7a71630145568db30 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 2daf894ed0baf72dd3f422b7a71630145568db30

"set print raw frame-arguments" -> "set print raw-frame-arguments"

A following patch will introduce options for the "backtrace" command,
based on some "set print" and "set backtrace" settings.  There's one
setting in particular that is a bit annoying if we want to describe
the backtrace options and the settings commands using the same data
structures:

  "set print raw frame-arguments"

The problem is that space between "raw" and "frame-arguments".

Calling the option

  "bt -raw frame-arguments"

would be odd.  So I'm calling the option

  "bt -raw-frame-arguments"

instead.

And for consistency, this patch renames the set/show commands to:

 "set print raw-frame-arguments"
 "show print raw-frame-arguments"

I.e., dash instead of space.  The old commands are left in place, but
marked deprecated.

We need to adjust a couple testcases, because the relevant tests use
gdb_test_no_output and the old commands are no longer silent:

  (gdb) set print raw frame-arguments on
  Warning: command 'set print raw frame-arguments' is deprecated.
  Use 'set print raw-frame-arguments'.

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* NEWS (Changed commands): Mention set/show print raw-frame-arguments,
	and that "set/show print raw frame-arguments" are now deprecated.

	* cli/cli-decode.c (add_setshow_boolean_cmd): Now returns the
	command.
	* command.h (add_setshow_boolean_cmd): Return cmd_list_element *.
	* stack.c (_initialize_stack): Install "set/show print
	raw-frame-arguments", and deprecate "set/show print raw
	frame-arguments".
	* valprint.c (_initialize_valprint): Deprecate "set/show print
	raw".

gdb/doc/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.texinfo (Print Settings): Document "set/show print
	raw-frame-arguments" instead of "set/show print raw
	frame-arguments".

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.guile/scm-frame-args.exp: Use "set print
	raw-frame-arguments" instead of "set print raw frame-arguments".
	* gdb.python/py-frame-args.exp: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Migrate rest of compile commands to new options framework
@ 2019-06-13  2:57 sergiodj+buildbot
  2019-06-13  4:53 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-06-13  2:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e6ed716cd5514c08b9d7c469d185b1aa177dbc22 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: e6ed716cd5514c08b9d7c469d185b1aa177dbc22

Migrate rest of compile commands to new options framework

As I was in the neighbourhood, I converted the other "compile"
subcommands to the new options framework too.  Specifically, "compile
code" and "compile file".

The user-visible changes are:

  - All abbreviations of "-raw" are accepted now, instead of just -r.
    Obviously that means "-ra" is now accepted.

  - Option completion now works.

  - "compile file" did not have a completer yet, and now it knows to
    complete on filenames.

  - You couldn't use "compile file" with a file named "-something".
    You can now, with "compile file -- -something".

gdb/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* compile/compile.c (struct compile_options): New.
	(compile_flag_option_def, compile_command_option_defs)
	(make_compile_options_def_group): New.
	(compile_file_command): Handle options with
	gdb::option::process_options.
	(compile_file_command_completer): New function.
	(compile_code_command): Handle options with
	gdb::option::process_options.
	(compile_code_command_completer): New function.
	(_initialize_compiler): Install completers for "compile code" and
	"compile file".  Mention available options in "compile code" and
	"compile code"'s help.
	* completer.c (advance_to_completion_word): New, factored out from
	...
	(advance_to_expression_complete_word_point): ... this.
	(advance_to_filename_complete_word_point): New.
	* completer.h (advance_to_filename_complete_word_point): New
	declaration.

gdb/testsuite/ChangeLog:
2019-06-13  Pedro Alves  <palves@redhat.com>

	* gdb.compile/compile.exp: Adjust expected output to option
	processing changes.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Two comment fixes in gdbtypes.h
@ 2019-05-30 16:46 sergiodj+buildbot
  2019-05-30 20:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-30 16:46 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT bfcdb85206cd3c3b8ad73b13db6bfb2ec608239b ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: bfcdb85206cd3c3b8ad73b13db6bfb2ec608239b

Two comment fixes in gdbtypes.h

This fixes a couple of comments in gdbtypes.h.  One comment had a
typo; and another comment referred to "Moto", which is presumably some
long-gone Motorola-related project.

Tested by rebuilding.

gdb/ChangeLog
2019-05-30  Tom Tromey  <tromey@adacore.com>

	* gdbtypes.h (struct range_bounds) <flag_upper_bound_is_count>:
	Fix comment.
	(TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): Rewrite comment.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Initialize variable word in complete
@ 2019-05-30 14:19 sergiodj+buildbot
  2019-05-30 15:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-30 14:19 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 0ef209f22c24b9243de68c35c576f7111198f915 ***

Author: Jan Vrany <jan.vrany@fit.cvut.cz>
Branch: master
Commit: 0ef209f22c24b9243de68c35c576f7111198f915

Initialize variable word in complete

The complete function should set parameter word to the end of the
word to complete. However, completion_find_completion_word may fail,
leaving word uninitialized.

To make sure word is always set, initialize it to the completion point
which is the end of the line parameter.

gdb/Changelog

	PR cli/24587
	* completer.c (complete): Initialize variable word.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Revert "Sync top level files with versions from gcc."
@ 2019-05-30 11:54 sergiodj+buildbot
  2019-05-30 12:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-30 11:54 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e3f56a99f66298bb505d0426950b9716a853a5df ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: e3f56a99f66298bb505d0426950b9716a853a5df

Revert "Sync top level files with versions from gcc."

This reverts commit f948b2de97884bfb4e5fc11d40a6bea9e0b096ae.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Don't crash is dwarf_decode_macro_bytes's 'body' is NULL, even when '!is_define'
@ 2019-05-29 21:49 sergiodj+buildbot
  2019-05-29 22:30 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 21:49 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 955b06fa576df1a6954263043ea3f3a5b9ad5940 ***

Author: Sergio Durigan Junior <sergiodj@redhat.com>
Branch: master
Commit: 955b06fa576df1a6954263043ea3f3a5b9ad5940

Don't crash is dwarf_decode_macro_bytes's 'body' is NULL, even when '!is_define'

Ref.: https://bugzilla.redhat.com/show_bug.cgi?id=1715008

On commit 7bede82892a06e6c26989803e70f53697392dcf9 ("Don't crash if
dwarf_decode_macro_bytes's 'body' is NULL"), I was too strict when
checking if 'body' is NULL: the check only comprised the case when
'is_define' is true.  However, the corruption of .debug_macro by
rpmbuild's "debugedit" also affects the case when 'is_define' is
false, i.e., when the macro is being undefined.

This commit improves the check and covers both cases now.  This has
been tested on Fedora 30 with a problematic debuginfo, and I don't see
a segfault anymore.

OK to push?

gdb/ChangeLog:
2019-05-29  Sergio Durigan Junior  <sergiodj@redhat.com>

	Ref.: https://bugzilla.redhat.com/show_bug.cgi?id=1708192
	Ref.: https://bugzilla.redhat.com/show_bug.cgi?id=1715008
	* dwarf2read.c (dwarf_decode_macro_bytes): Move check to see if
	'body' is NULL to the outter 'if', protecting the '!is_define'
	situation as well.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix failure in gdb.ada/complete.exp
@ 2019-05-29 17:24 sergiodj+buildbot
  2019-05-29 18:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 17:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f49055a52f04f75b6560f304eb975128dd82ad68 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: f49055a52f04f75b6560f304eb975128dd82ad68

Fix failure in gdb.ada/complete.exp

I noticed a failure in gdb.ada/complete.exp when testing locally:

    FAIL: gdb.ada/complete.exp: complete break ada

This failed due to this output:

    [...]
    break ada/generated/gnatvsn.ads
    break ada/libgnat/s-excmac.ads
    break ada/sdefault.adb
    break ada/snames.adb
    break ada/snames.ads

This patch updates the regexp to allow "/" and "-" to appear.

gdb/testsuite/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* gdb.ada/complete.exp (test_gdb_no_completion): Add "/" and "-"
	to "break complete ada" test case's regexp.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make some DWARF complaints clearer
@ 2019-05-29 16:38 sergiodj+buildbot
  2019-05-29 18:17 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 16:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT fa9c3fa035433debc24503e32c59688650ffcdbb ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: fa9c3fa035433debc24503e32c59688650ffcdbb

Make some DWARF complaints clearer

I noticed that the complaint in partial_die_parent_scope was not using
dwarf_tag_name, so I changed that.  Then I noticed that dwarf_tag_name
does not show the numeric value for an unrecognized tag, so I changed
that function and all the related functions to do so.

gdb/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* dwarf2read.c (partial_die_parent_scope): Call dwarf_tag_name.
	(dwarf_unknown): New function.
	(dwarf_tag_name, dwarf_attr_name, dwarf_form_name)
	(dwarf_type_encoding_name): Use dwarf_unknown.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix crash in cp_print_value_fields
@ 2019-05-29 16:22 sergiodj+buildbot
  2019-05-29 16:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 16:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4330d61dfb05d77fd925efdca45091f12e3a6266 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 4330d61dfb05d77fd925efdca45091f12e3a6266

Fix crash in cp_print_value_fields

PR c++/20020 concerns a crash in cp_print_value_fields.  The immediate
cause is that cp_print_value_fields does not handle the case where
value_static_field fails.  This is fixed in this patch by calling
cp_print_static_field from the "try" block.

Digging a bit deeper, the error occurs because GCC does not emit a
DW_AT_const_value for a static constexpr member appearing in a
template class.  I've filed a GCC bug for this.

Tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	PR c++/20020:
	* cp-valprint.c (cp_print_value_fields): Call
	cp_print_static_field inside "try".

gdb/testsuite/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	PR c++/20020:
	* gdb.cp/constexpr-field.exp: New file.
	* gdb.cp/constexpr-field.cc: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add new GCC 9 warnings to warnings.m4
@ 2019-05-29 16:06 sergiodj+buildbot
  2019-05-29 16:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 16:06 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 33a6bc350f5b4f03d586ba9d32667b6fea1dce4a ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 33a6bc350f5b4f03d586ba9d32667b6fea1dce4a

Add new GCC 9 warnings to warnings.m4

GCC 9 has a few new warnings that aren't enabled in the gdb build by
default: -Wdeprecated-copy, -Wdeprecated-copy-dtor, and
-Wredundant-move.  This patch enables them all.

Tested by rebuilding with a new GCC (git master) on x86-64 Fedora 29.

gdb/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* inflow.c (struct terminal_info): Add default operator=.
	* configure: Rebuild.
	* warning.m4 (AM_GDB_WARNINGS): Add -Wdeprecated-copy,
	-Wdeprecated-copy-dtor, -Wredundant-move.

gdb/gdbserver/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* configure: Rebuild.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add "set print finish"
@ 2019-05-29 15:38 sergiodj+buildbot
  2019-05-29 15:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 15:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 000439d52897541ad00a84026ac471b4f8cb3c97 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 000439d52897541ad00a84026ac471b4f8cb3c97

Add "set print finish"

A user wanted to be able to disable the display of the value when
using "finish" -- but still have the value entered into the value
history in case it was useful later on.  Part of the rationale here is
that sometimes the value might be quite large, or expensive to display
(in their case this was compounded by a rogue pretty-printer).

This patch implements this idea.

gdb/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* NEWS: Add entry.
	* infcmd.c (print_return_value_1): Handle finish_print
	option.
	(show_print_finish): New function.
	(_initialize_infcmd): Add "set/show print finish" commands.
	* valprint.c (user_print_options): Initialize new member.
	* valprint.h (struct value_print_options) <finish_print>: New
	member.

gdb/doc/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* gdb.texinfo (Continuing and Stepping): Document new
	commands.

gdb/testsuite/ChangeLog
2019-05-29  Tom Tromey  <tromey@adacore.com>

	* gdb.base/finish.exp (finish_no_print): New proc.
	(finish_tests): Call it.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Update release tools with libctf support.
@ 2019-05-29 13:07 sergiodj+buildbot
  2019-05-29 14:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 13:07 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e33f2313bf63b77763739732be14b469b4b647b7 ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: e33f2313bf63b77763739732be14b469b4b647b7

Update release tools with libctf support.

top	* src-release.sh (do_proto_toplev): Add libctf to list of
	directories that can be disabled.

binutils* README-how-to-make-a-release: Add libctf to list of directories
	that need updates in their ChangeLogs.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Sync top level files with versions from gcc.
@ 2019-05-29 12:50 sergiodj+buildbot
  2019-05-29 13:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 12:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f948b2de97884bfb4e5fc11d40a6bea9e0b096ae ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: f948b2de97884bfb4e5fc11d40a6bea9e0b096ae

Sync top level files with versions from gcc.

top	* Makefile.def (target_modules): Add libphobos.
	(flags_to_pass): Add GDC, GDCFLAGS, GDC_FOR_TARGET and
	GDCFLAGS_FOR_TARGET.
	(dependencies): Make libphobos depend on libatomic, libbacktrace
	configure, and zlib configure.
	(language): Add language d.
	* Makefile.in: Rebuild.
	* Makefile.tpl (BUILD_EXPORTS): Add GDC and GDCFLAGS.
	(HOST_EXPORTS): Add GDC.
	(POSTSTAGE1_HOST_EXPORTS): Add GDC and GDC_FOR_BUILD.
	(BASE_TARGET_EXPORTS): Add GDC.
	(GDC_FOR_BUILD, GDC, GDCFLAGS): New variables.
	(GDC_FOR_TARGET, GDC_FLAGS_FOR_TARGET): New variables.
	(EXTRA_HOST_FLAGS): Add GDC.
	(STAGE1_FLAGS_TO_PASS): Add GDC.
	(EXTRA_TARGET_FLAGS): Add GDC and GDCFLAGS.
	* config-ml.in: Treat GDC and GDCFLAGS like other compiler/flag
	environment variables.
	* configure: Rebuild.
	* configure.ac: Add target-libphobos to target_libraries.  Set and
	substitute GDC_FOR_BUILD and GDC_FOR_TARGET.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Do not build libctf for targets that do not use the ELF file format.
@ 2019-05-29 11:42 sergiodj+buildbot
  2019-05-29 11:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 11:42 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 90bd54236cb8b1c31c3662977159be971044c20d ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: 90bd54236cb8b1c31c3662977159be971044c20d

Do not build libctf for targets that do not use the ELF file format.

top	* configure.ac (noconfigdirs): Add libctf if the target does not use
	the ELF file format.
	* configure: Regenerate.

binutils* configure.ac (LIBCTF): Export.  Set to empty for non-ELF based
	targets.
	(HAVE_LIBCTF): Define if libctf support is available.
	* Makefile.am (LIBCTF): Set value to @LIBCTF@.
	* objdump.c: Make CTF code conditional upon HAVE_LIBCTF being
	defined.
	* readelf.c: Likewise.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* config.in: Regenerate.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix libctf build on non-ELF targets.
@ 2019-05-29 10:40 sergiodj+buildbot
  2019-05-29 10:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29 10:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9698cf9b1c485edbbeabc9f65bfd0fdef92e3854 ***

Author: Nick Alcock <nick.alcock@oracle.com>
Branch: master
Commit: 9698cf9b1c485edbbeabc9f65bfd0fdef92e3854

Fix libctf build on non-ELF targets.

All machinery works as on ELF, except for automatic loading of ELF
string and symbol tables in the BFD-style open machinery.

        * Makefile.def (dependencies): configure-libctf depends on all-bfd
        and all its deps.
        * Makefile.in: Regenerated.

libctf/
        * configure.in: Check for bfd_section_from_elf_index.
        * configure: Regenerate.
        * config.h.in [HAVE_BFD_ELF]: Likewise.
        * libctf/ctf_open_bfd (ctf_bfdopen_ctfsect): Use it.
        abfd is potentially unused now.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] MIPS/LD: Skip overflow check for %pcrel_hi relocations
@ 2019-05-29  1:13 sergiodj+buildbot
  2019-05-29  7:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29  1:13 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1e129bbefadbf09ace0fc7fcb3cfcda13700e3b8 ***

Author: Faraz Shahbazker <fshahbazker@wavecomp.com>
Branch: master
Commit: 1e129bbefadbf09ace0fc7fcb3cfcda13700e3b8

MIPS/LD: Skip overflow check for %pcrel_hi relocations

Overflow checks were removed for all hi16 relocations except PC-relative
high relocations per PR ld/16720.  Remove overflow checks from %pcrel_hi
relocations so that we can correctly handle negative offsets from PC.

bfd/
	* elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
	Remove overflow check.

ld/
	* testsuite/ld-mips-elf/undefweak-overflow.s: Remove test case
	for pcrel_hi/pcrel_lo.
	* testsuite/ld-mips-elf/undefweak-overflow.d: Update to match.
	* testsuite/ld-mips-elf/reloc-pcrel-r6.s: New test source.
	* testsuite/ld-mips-elf/reloc-pcrel-r6.d: New test linker script.
	* testsuite/ld-mips-elf/reloc-pcrel-r6.ld: New test.
	* testsuite/ld-mips-elf/mips-elf.exp: Run the new test.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Add CheckRegSize to AVX512_BF16 instructions with Disp8ShiftVL
@ 2019-05-29  1:10 sergiodj+buildbot
  2019-05-29  7:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29  1:10 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a2f4b66c9eb5210f8ef6038d7194af1e5f314f97 ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: a2f4b66c9eb5210f8ef6038d7194af1e5f314f97

x86: Add CheckRegSize to AVX512_BF16 instructions with Disp8ShiftVL

For AVX512 instructions with Disp8ShiftVL and Broadcast, we may need to
add CheckRegSize to check if broadcast matches the destination register
size.

gas/

	PR gas/24625
	* testsuite/gas/i386/inval-avx512f.s: Add tests for AVX512_BF16
	instructions with invalid broadcast.
	* testsuite/gas/i386/x86-64-inval-avx512f.s: Likewise.
	* testsuite/gas/i386/inval-avx512f.l: Updated.
	* testsuite/gas/i386/x86-64-inval-avx512f.l: Likewise.

opcodes/

	PR gas/24625
	* i386-opc.tbl: Add CheckRegSize to AVX512_BF16 instructions with
	Disp8ShiftVL.
	* i386-tbl.h: Regenerated.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove find_old_style_renaming_symbol
@ 2019-05-29  1:04 sergiodj+buildbot
  2019-05-29  6:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29  1:04 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c0e70c624fc7d89f5cf281350692de89a063786f ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: c0e70c624fc7d89f5cf281350692de89a063786f

Remove find_old_style_renaming_symbol

We found a case where a "bt" was very slow with Ada code.  Profiling
with callgrind showed this to be primarily due to calls to
find_old_style_renaming_symbol.  Because new-style renaming symbols
were implemented in 2007, it seems safe enough to remove this old
code.

A "-batch -ex bt" test on a large Ada program improves from:

    13.23user 0.57system 0:13.82elapsed 99%CPU (0avgtext+0avgdata 571408maxresident)k

to

    4.25user 0.48system 0:04.74elapsed 99%CPU (0avgtext+0avgdata 559844maxresident)k

with this patch.

Tested on x86-64 Fedora 29.  Joel reviewed this internally; and as it
is Ada-specific, I am checking it in.

gdb/ChangeLog
2019-05-28  Tom Tromey  <tromey@adacore.com>

	* ada-lang.c (ada_remove_Xbn_suffix)
	(find_old_style_renaming_symbol)
	(parse_old_style_renaming): Remove.
	(ada_find_renaming_symbol): Don't call
	find_old_style_renaming_symbol.
	(ada_is_renaming_symbol): Rename from
	ada_find_renaming_symbol.  Remove "block" parameter.  Return
	bool.  Now static.
	(ada_read_var_value): Update and simplify.
	* ada-exp.y (write_var_or_type): Remove old code.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add libctf to top-level MAINTAINERS; add myself as CTF maintainer.
@ 2019-05-29  0:56 sergiodj+buildbot
  2019-05-29  5:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29  0:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 88981b157b08f2e9a404a2f86d4ee131f17ce3d4 ***

Author: Nick Alcock <nick.alcock@oracle.com>
Branch: master
Commit: 88981b157b08f2e9a404a2f86d4ee131f17ce3d4

Add libctf to top-level MAINTAINERS; add myself as CTF maintainer.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] libctf: build system
@ 2019-05-29  0:50 sergiodj+buildbot
  2019-05-29  5:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-29  0:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 0e65dfbaf3a0299e4837216a103c28625d4b4f1d ***

Author: Nick Alcock <nick.alcock@oracle.com>
Branch: master
Commit: 0e65dfbaf3a0299e4837216a103c28625d4b4f1d

libctf: build system

This ties libctf into the build system, and makes binutils depend on it
(used by the next commits).

	* Makefile.def (host_modules): Add libctf.
	* Makefile.def (dependencies): Likewise.
	libctf depends on zlib, libiberty, and bfd.
	* Makefile.in: Regenerated.
	* configure.ac (host_libs): Add libctf.
	* configure: Regenerated.

libctf/
	* Makefile.am: New.
	* Makefile.in: Regenerated.
	* config.h.in: Likewise.
	* aclocal.m4: Likewise.
	* configure: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix style bug when paging
@ 2019-05-08 17:01 sergiodj+buildbot
  2019-05-08 18:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-05-08 17:01 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 99f20f08682ecc7be882774ff78409530802d000 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 99f20f08682ecc7be882774ff78409530802d000

Fix style bug when paging

Philippe pointed out a styling bug that would occur in some conditions
when paging:

    https://sourceware.org/ml/gdb-patches/2019-04/msg00101.html

I was finally able to reproduce this, and this patch fixes the bug.

The problem occurred when text overflowed the line, causing a
pagination prompt, but when no wrap column had been set.  In this
case, the current style was reset to show the prompt, but then not
reset back to the previously applied style before emitting the rest of
the line.

The fix is to record the applied style in this case, and re-apply it
afterward -- but only if the pager prompt was emitted, something that
the existing style.exp pointed out on the first, more naive, version
of the patch.

Tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-05-08  Tom Tromey  <tromey@adacore.com>

	* utils.c (fputs_maybe_filtered): Reset style after paging, even
	when no wrap column is set.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Introduce 'print max-depth' feature
@ 2019-04-29 22:12 sergiodj+buildbot
  2019-04-30  0:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-29 22:12 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2e62ab400ff96334c92e5acf0a462cb9dc0d19a7 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 2e62ab400ff96334c92e5acf0a462cb9dc0d19a7

gdb: Introduce 'print max-depth' feature

Introduce a new print setting max-depth which can be set with 'set
print max-depth DEPTH'.  The default value of DEPTH is 20, but this
can also be set to unlimited.

When GDB is printing a value containing nested structures GDB will
stop descending at depth DEPTH.  Here is a small example:

    typedef struct s1 { int a; } s1;
    typedef struct s2 { s1 b; } s2;
    typedef struct s3 { s2 c; } s3;
    typedef struct s4 { s3 d; } s4;

    s4 var = { { { { 3 } } } };

The following table shows how various depth settings affect printing
of 'var':

    | Depth Setting | Result of 'p var'              |
    |---------------+--------------------------------|
    |     Unlimited | $1 = {d = {c = {b = {a = 3}}}} |
    |             4 | $1 = {d = {c = {b = {a = 3}}}} |
    |             3 | $1 = {d = {c = {b = {...}}}}   |
    |             2 | $1 = {d = {c = {...}}}         |
    |             1 | $1 = {d = {...}}               |
    |             0 | $1 = {...}                     |

Only structures, unions, and arrays are replaced in this way, scalars
and strings are not replaced.

The replacement is counted from the level at which you print, not from
the top level of the structure.  So, consider the above example and
this GDB session:

    (gdb) set print max-depth 2
    (gdb) p var
    $1 = {d = {c = {...}}}
    (gdb) p var.d
    $2 = {c = {b = {...}}}
    (gdb) p var.d.c
    $3 = {b = {a = 3}}

Setting the max-depth to 2 doesn't prevent the user from exploring
deeper into 'var' by asking for specific sub-fields to be printed.

The motivation behind this feature is to try and give the user more
control over how much is printed when examining large, complex data
structures.

The default max-depth of 20 means that there is a change in GDB's
default behaviour.  Someone printing a data structure with 20 levels
of nesting will now see '{...}' instead of their data, they would need
to adjust the max depth, or call print again naming a specific field
in order to dig deeper into their data structure.  If this is
considered a problem then we could increase the default, or even make
the default unlimited.

This commit relies on the previous commit, which added a new field to
the language structure, this new field was a string that contained the
pattern that should be used when a structure/union/array is replaced
in the output, this allows languages to use a syntax that is more
appropriate, mostly this will be selecting the correct types of
bracket '(...)' or '{...}', both of which are currently in use.

This commit should have no impact on MI output, expressions are
printed through the MI using -var-create and then -var-list-children.
As each use of -var-list-children only ever displays a single level of
an expression then the max-depth setting will have no impact.

This commit also adds the max-depth mechanism to the scripting
language pretty printers following basically the same rules as for the
built in value printing.

One quirk is that when printing a value using the display hint 'map',
if the keys of the map are structs then GDB will hide the keys one
depth level after it hides the values, this ensures that GDB produces
output like this:

  $1 = map_object = {[{key1}] = {...}, [{key2}] = {...}}

Instead of this less helpful output:

  $1 = map_object = {[{...}] = {...}, [{...}] = {...}}

This is covered by the new tests in gdb.python/py-nested-maps.exp.

gdb/ChangeLog:

	* cp-valprint.c (cp_print_value_fields): Allow an additional level
	of depth when printing anonymous structs or unions.
	* guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
	Don't print either the top-level value, or the children if the
	max-depth is exceeded.
	(ppscm_print_children): When printing the key of a map, allow one
	extra level of depth.
	* python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Don't
	print either the top-level value, or the children if the max-depth
	is exceeded.
	(print_children): When printing the key of a map, allow one extra
	level of depth.
	* python/py-value.c (valpy_format_string): Add max_depth keyword.
	* valprint.c: (PRINT_MAX_DEPTH_DEFAULT): Define.
	(user_print_options): Initialise max_depth field.
	(val_print_scalar_or_string_type_p): New function.
	(val_print): Check to see if the max depth has been reached.
	(val_print_check_max_depth): Define new function.
	(show_print_max_depth): New function.
	(_initialize_valprint): Add 'print max-depth' option.
	* valprint.h (struct value_print_options) <max_depth>: New field.
	(val_print_check_max_depth): Declare new function.
	* NEWS: Document new feature.

gdb/doc/ChangeLog:

	* gdb.texinfo (Print Settings): Document 'print max-depth'.
	* guile.texi (Guile Pretty Printing API): Document that 'print
	max-depth' can effect the display of a values children.
	* python.texi (Pretty Printing API): Likewise.
	(Values From Inferior): Document max_depth keyword.

gdb/testsuite/ChangeLog:

	* gdb.base/max-depth.c: New file.
	* gdb.base/max-depth.exp: New file.
	* gdb.python/py-nested-maps.c: New file.
	* gdb.python/py-nested-maps.exp: New file.
	* gdb.python/py-nested-maps.py: New file.
	* gdb.python/py-format-string.exp (test_max_depth): New proc.
	(test_all_common): Call test_max_depth.
	* gdb.fortran/max-depth.exp: New file.
	* gdb.fortran/max-depth.f90: New file.
	* gdb.go/max-depth.exp: New file.
	* gdb.go/max-depth.go: New file.
	* gdb.modula2/max-depth.exp: New file.
	* gdb.modula2/max-depth.c: New file.
	* lib/gdb.exp (get_print_expr_at_depths): New proc.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] sim: Use host not target byte order for merging and splitting values
@ 2019-04-13 21:26 sergiodj+buildbot
  2019-04-13 21:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  2019-04-15  1:20 ` sergiodj+buildbot
  0 siblings, 2 replies; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-13 21:26 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 798066abd8e5ec2a411979fd34bfe0cd494c1813 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 798066abd8e5ec2a411979fd34bfe0cd494c1813

sim: Use host not target byte order for merging and splitting values

When using writes to memory through a struct to merge and extract
multi-word value, it is the endianness of the host, not the target
that affects which order the component words need to be written into
the structure.

Of the 5 functions adjusted here 4 of them are unused.  The 5th,
JOINSIDF will soon be used by the or1k target.

For or1k, simulated on x86-64, this change fixes this function so that
the correct bytes are now returned.

sim/common/ChangeLog:

	* cgen-ops.h (SUBWORDXFSI): Compare HOST_BYTE_ORDER not
	CURRENT_TARGET_BYTE_ORDER.
	(SUBWORDTFSI): Likewise.
	(JOINSIDF): Likewise.
	(JOINSIXF): Likewise.
	(JOINSITF): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Fix failure in gdb.base/complex-parts.exp for x86-32
@ 2019-04-13  0:05 sergiodj+buildbot
  2019-04-13  0:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-13  0:05 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 35add35e85c21f02e3e5808273cb77b24069b0aa ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 35add35e85c21f02e3e5808273cb77b24069b0aa

gdb: Fix failure in gdb.base/complex-parts.exp for x86-32

The x86-32 ABI specifies 96-bit long double, this was causing a
failure on the test gdb.base/complex-parts.exp.

The problem is that GDB tries to find a builtin floating point type of
the correct size in order to reuse the name of that type as the name
for the components of the complex type being built.

Previously GDB was only aware of floating point types sized 32, 64, or
128 bits.  This patch teaches GDB how to handle 96 bit floating point
type.

gdb/ChangeLog:

	* dwarf2read.c (dwarf2_init_complex_target_type): Handle complex
	target types of size 96-bits, add some additional comments, and
	check that the builtin type we found was the correct size.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] S12Z: opcodes: Replace "operator" with "optr".
@ 2019-04-12 16:44 sergiodj+buildbot
  2019-04-12 16:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 16:44 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e5a557ac01a775df64ae8149c5fe7d503f46a92f ***

Author: John Darrington <john@darrington.wattle.id.au>
Branch: master
Commit: e5a557ac01a775df64ae8149c5fe7d503f46a92f

S12Z: opcodes: Replace "operator" with "optr".

opcodes/
	* s12z-dis.c, s12z-opc.c, s12z-opc.h: Replace operator with optr.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb/riscv: Remove riscv_type_alignment function
@ 2019-04-12 15:29 sergiodj+buildbot
  2019-04-12 15:29 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 15:29 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a9158a863c18545634cb0f0462b326aeca30634c ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: a9158a863c18545634cb0f0462b326aeca30634c

gdb/riscv: Remove riscv_type_alignment function

Make use of the type_align function and remove riscv_type_alignment as
it is no longer needed.  I tested this against a number of RV32 and
RV64 targets, and I also ran the tests with an assertion in place
checking that the old riscv_type_alignment function gives the same
answer as the common type_align function - it does, and all the tests
still pass.

gdb/ChangeLog:

	* riscv-tdep.c (riscv_type_align): New function.
	(riscv_type_alignment): Delete.
	(riscv_arg_location): Use 'type_align'.
	(riscv_gdbarch_init): Register riscv_type_align gdbarch function.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb/riscv: Handle empty C++ structs during argument passing
@ 2019-04-12 15:27 sergiodj+buildbot
  2019-04-12 15:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 15:27 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9f0272f8548164b024ff9fd151686b2b904a5d59 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 9f0272f8548164b024ff9fd151686b2b904a5d59

gdb/riscv: Handle empty C++ structs during argument passing

This commit resolves a large number of failures in the test script
gdb.base/infcall-nested-structs.exp which were caused by GDB (for
RISC-V) incorrectly handling empty C++ structures when preparing
arguments for a dummy call, or collecting a return value.

The issue is further complicated in that there was a bug in GCC, such
that in some cases GCC would generate incorrect code when passing a
small structure that contained empty sub-structures.  This was fixed
in GCC trunk on 5-March-2019, so in order to see the best results with
this patch you'll need a recent version of GCC.

Anything that used to work should continue to work after this patch,
regardless of GCC version being used.

The fix in this commit is that GDB now pays more attention to the
offset of fields within a structure when preparing arguments as in C++
an empty structure has a non-zero size, this is an example:

  struct s1 { struct s2 { } empty; int f; };

We previously assumed that 'f' was at offset 0 inside type 's1',
however this is not the case in C++ as 's2' has size 1, and with
alignment 'f' is likely at some even bigger offset inside 's1'.

gdb/ChangeLog:

	* riscv-tdep.c (riscv_call_arg_complex_float): Fix offset of first
	component to 0.
	(riscv_struct_info::riscv_struct_info): Initialise m_offsets
	member.
	(riscv_struct_info::analyse): New implementation using new
	analyse_inner member function.
	(riscv_struct_info::field_offset): New member function.
	(riscv_struct_info::m_offsets): New member variable.
	(riscv_struct_info::analyse_inner): New private member function,
	takes the old implementation of riscv_struct_info::analyse but
	extended to track field offsets.
	(riscv_call_arg_struct): Update the struct folding special cases
	to handle cases where empty C++ structs, which are non-zero
	length, are found.
	(riscv_arg_location): Initialise the length of each location, a
	non-zero length now indicates the location is in use.
	(riscv_push_dummy_call): Allow for the first location having a
	non-zero offset when setting up arguments.
	(riscv_return_value): Likewise, but for return values.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Check corrupt VTENTRY entry in bfd_elf_gc_record_vtentry
@ 2019-04-12 15:25 sergiodj+buildbot
  2019-04-12 15:25 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 15:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a0ea3a14dc6a6062c0c1f2bfbb7ad0373ec20843 ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: a0ea3a14dc6a6062c0c1f2bfbb7ad0373ec20843

Check corrupt VTENTRY entry in bfd_elf_gc_record_vtentry

Instead of BFD_ASSERT (h != NULL) with

ld: BFD ... assertion fail .../bfd/elf64-x86-64.c:2562
ld: bad.o: invalid string offset 50331648 >= 371 for section `nterp'

check corrupt VTENTRY entry in bfd_elf_gc_record_vtentry with

ld: bad.o: section 'g': corrupt VTENTRY entry

	* elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
	"h != NULL".  Don't check "h != NULL" before calling.
	bfd_elf_gc_record_vtentry.
	* elf32-arm.c (elf32_arm_check_relocs): Likewise.
	* elf32-bfin.c (bfin_check_relocs): Likewise.
	* elf32-cris.c (cris_elf_check_relocs): Likewise.
	* elf32-csky.c (csky_elf_check_relocs): Likewise.
	* elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
	* elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
	* elf32-fr30.c (fr30_elf_check_relocs): Likewise.
	* elf32-frv.c (elf32_frv_check_relocs): Likewise.
	* elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
	* elf32-i386.c (elf_i386_check_relocs): Likewise.
	* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
	* elf32-m32r.c (m32r_elf_check_relocs): Likewise.
	* elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
	* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
	* elf32-mcore.c (mcore_elf_check_relocs): Likewise.
	* elf32-metag.c (elf_metag_check_relocs): Likewise.
	* elf32-or1k.c (or1k_elf_check_relocs): Likewise.
	* elf32-ppc.c (ppc_elf_check_relocs): Likewise.
	* elf32-s390.c (elf_s390_check_relocs): Likewise.
	* elf32-sh.c (sh_elf_check_relocs): Likewise.
	* elf32-v850.c (v850_elf_check_relocs): Likewise.
	* elf32-vax.c (elf_vax_check_relocs): Likewise.
	* elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
	* elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
	* elf64-mmix.c (mmix_elf_check_relocs): Likewise.
	* elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
	* elf64-s390.c (elf_s390_check_relocs): Likewise.
	* elf64-x86-64.c (elf_s390_check_relocs): Likewise.
	* elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
	* elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
	* elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
	VTENTRY entry.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Add -z cet-report=[none|warning|error]
@ 2019-04-12 15:25 sergiodj+buildbot
  2019-04-12 15:26 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 15:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 233a00833b984319d5e94db3f5d5d9a735edc984 ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: 233a00833b984319d5e94db3f5d5d9a735edc984

x86: Add -z cet-report=[none|warning|error]

Add -z cet-report=[none|warning|error] to report the missing Intel
Indirect Branch Tracking (IBT) and Shadow Stack (SHSTK) properties
in input .note.gnu.property section.  -z cet-report=none, which is
the default, will make the linker not report missing properties in
input files.  -z cet-report=warning will make the linker issue a
warning for missing properties in input files.  -z cet-report=error
will make the linker issue an error for missing properties in input
files.  Note that -z ibt will turn off the missing IBT property report
and -z shstk will turn off the missing SHSTK property report.
Supported for Linux/i386 and Linux/x86_64.

bfd/

	* elf-linker-x86.h (elf_x86_cet_report): New.
	(elf_linker_x86_params): Add cet_report.
	* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
	missing IBT and SHSTK properties if needed.

ld/

	* ld.texi: Document -z cet-report=[none|warning|error].
	* emulparams/cet.sh: Add -z cet-report=[none|warning|error].
	* testsuite/ld-i386/i386.exp: Run -z cet-report=[warning|error]
	tests.
	* testsuite/ld-x86-64/x86-64.exp: Likewise.
	* testsuite/ld-i386/property-x86-cet1.d: New file.
	* testsuite/ld-i386/property-x86-cet2a.d: Likewise.
	* testsuite/ld-i386/property-x86-cet2b.d: Likewise.
	* testsuite/ld-i386/property-x86-cet3a.d: Likewise.
	* testsuite/ld-i386/property-x86-cet3b.d: Likewise.
	* testsuite/ld-i386/property-x86-cet4a.d: Likewise.
	* testsuite/ld-i386/property-x86-cet4b.d: Likewise.
	* testsuite/ld-i386/property-x86-cet5a.d: Likewise.
	* testsuite/ld-i386/property-x86-cet5b.d: Likewise.
	* testsuite/ld-i386/property-x86-cet6.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet.s: Likewise.
	* testsuite/ld-x86-64/property-x86-cet1-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet1.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet2a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet2a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet2b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet2b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet3a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet3a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet3b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet3b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet4a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet4a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet4b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet4b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet5a-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet5a.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet5b-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet5b.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet6-x32.d: Likewise.
	* testsuite/ld-x86-64/property-x86-cet6.d: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Ensure regcache is reset between tests
@ 2019-04-12 15:22 sergiodj+buildbot
  2019-04-12 15:22 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 15:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 68811f8ff84895ef1cad37ac6947f1a340dd2ae2 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 68811f8ff84895ef1cad37ac6947f1a340dd2ae2

AArch64: Ensure regcache is reset between tests

A recent change made the AArch64 self tests resuse the saved regs
cache, rather than creating a new one.  Ensure it is reset to default
values between tests.

Do this by splitting the reset functionality from trad_frame_alloc_saved_regs
into a new function.

Fixes selftest on AArch64.

gdb/ChangeLog:

	* aarch64-tdep.c (aarch64_analyze_prologue_test): Reset saved regs.
	* trad-frame.c (trad_frame_reset_saved_regs): New function.
	(trad_frame_alloc_saved_regs): Call trad_frame_reset_saved_regs.
	* trad-frame.h (trad_frame_reset_saved_regs): New declaration.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Introduce a separate debug objfile iterator
@ 2019-04-12 15:20 sergiodj+buildbot
  2019-04-12 15:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 15:20 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e9ad22ee5f0a40dfa1182ee68e3349dd72a42afe ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: e9ad22ee5f0a40dfa1182ee68e3349dd72a42afe

Introduce a separate debug objfile iterator

This introduces a new iterator and range adapter for iteration over
the separate debug files of a given objfile.  As in the current
approach, the requested objfile is returned first, followed by the
separate debug objfiles.

gdb/ChangeLog
2019-04-10  Tom Tromey  <tom@tromey.com>

	* symtab.c (lookup_global_symbol_from_objfile)
	(lookup_symbol_in_objfile_from_linkage_name): Use the iterator.
	* objfiles.h (class separate_debug_iterator): New.
	(class separate_debug_range): New.
	(struct objfile) <separate_debug_objfiles>: New method.
	(objfile_separate_debug_iterate): Don't declare.
	* objfiles.c (separate_debug_iterator::operator++): Rename from
	objfile_separate_debug_iterate.
	(objfile_relocate, objfile_rebase, objfile_has_symbols): Use the
	iterator.
	* minsyms.c (lookup_minimal_symbol_by_pc_section): Use the
	iterator.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Rename python function thread_from_thread_handle to thread_from_handle
@ 2019-04-12 14:57 sergiodj+buildbot
  2019-04-12 15:14 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 14:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2b0c8b019996b23fb4717687f5e7ac8c5620c089 ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: 2b0c8b019996b23fb4717687f5e7ac8c5620c089

Rename python function thread_from_thread_handle to thread_from_handle

This renaming was done to stay consistent with the naming of the new
gdb.InferiorThread.handle method.  I had initially named it "thread_handle"
but Tom Tromey suggested just "handle".

The old name (thread_from_thread_handle) still works, but is marked as
deprecated in comments in the code as well as in the documentation.

I have some code which uses these functions.  I very much like the
brevity of the new names.

gdb/doc/ChangeLog:

	* python.texi (Inferiors In Python): Rename
	Inferior.thread_from_thread_handle to Inferior.thread_from_handle.
	Add note about the former being deprecated.

gdb/ChangeLog:

	* python/py-inferior.c (infpy_thread_from_thread_handle):
	Adjust comments to reflect renaming of thread_from_thread_handle
	to thread_from_handle.  Adjust keywords.  Fix type error message.
	(inferior_object_methods): Add thread_from_handle.  Retain
	thread_from_thread_handle, but mark it as deprecated.

testsuite/ChangeLog:

	* gdb.python/py-thrhandle.exp: Adjust tests to call
	thread_from_handle instead of thread_from_thread_handle.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Another fix for GDB styling
@ 2019-04-12 12:53 sergiodj+buildbot
  2019-04-12 15:31 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 12:53 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 51196bbc5618a3741bd7bbed01ac76b25a2e6f9c ***

Author: Eli Zaretskii <eliz@gnu.org>
Branch: master
Commit: 51196bbc5618a3741bd7bbed01ac76b25a2e6f9c

Another fix for GDB styling

gdb/ChangeLog:
2019-04-12  Eli Zaretskii  <eliz@gnu.org>

	* utils.c (prompt_for_continue): Don't restore the styling at the
	end, as applied_style has the wrong value.  This fixes styling in
	long lists of file names that are interrupted by the "Continue?"
	prompt.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Support buffer objects as handles in Inferior.thread_from_thread_handle()
@ 2019-04-12 11:22 sergiodj+buildbot
  2019-04-12 15:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 11:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 50a82723c446c556287dcabe22183bc5cedab566 ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: 50a82723c446c556287dcabe22183bc5cedab566

Support buffer objects as handles in Inferior.thread_from_thread_handle()

InferiorThread.handle() returns a python bytes object.  We'd like to
be able to pass the output of this function, a thread handle, to
Inferior.thread_from_thread_handle().  Up to now,
thread_from_thread_handle() expects to receive a gdb.Value input.
This commit adds support to also allow a python buffer object to be
passed as the handle.

infpy_thread_from_thread_handle() calls find_thread_by_handle() which
has the obvious functionality.  It used to pass the thread handle via
a struct value pointer.  I've revised this interface to instead pass a
gdb::array_view<const gdb_byte> object.  (Thanks to Tom Tromey for
suggesting this data structure over an earlier version which passed a
gdb_byte pointer and length.)

gdb/ChangeLog:

	* gdbthread.h (find_thread_by_handle): Revise declaration.
	* thread.c (find_thread_by_handle): Likewise.  Adjust
	implementation too.
	* python/py-inferior.c (infpy_thread_from_thread_handle): Add
	support for buffer objects as handles.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Testsuite: Add gdbserver sysroot test
@ 2019-04-12 10:57 sergiodj+buildbot
  2019-04-12 15:31 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12 10:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e5a1a79a4e0ee33292d45b10a759eb41f7358b7c ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: e5a1a79a4e0ee33292d45b10a759eb41f7358b7c

Testsuite: Add gdbserver sysroot test

The local board file ensures that the sysroot is always set to load
files from the local filesystem.

Add a gdbserver test to explicitly test the sysroot set to both the
remote target and the local filesystem.

gdb/testsuite/ChangeLog:

	* gdb.server/sysroot.c: New test.
	* gdb.server/sysroot.exp: New file.
	* lib/gdbserver-support.exp (gdb_target_cmd): Add additional text
        matching param.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Remove LANG_MAGIC
@ 2019-04-12  8:47 sergiodj+buildbot
  2019-04-12 15:30 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12  8:47 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 62253a61473764b0d084b01eff06a93fb38bb2e3 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 62253a61473764b0d084b01eff06a93fb38bb2e3

gdb: Remove LANG_MAGIC

The language_defn structure has an la_magic field, this used to be
used as a basic check that the language_defn structure had the
expected layout - at least the end of the structure was where we
expected it to be.

This feature only really makes sense if we imagine GDB dynamically
loading language support from dynamic libraries, where a version
mismatch might cause problems.

However, in current GDB language support is statically built into GDB,
and since this commit:

    commit 47e77640be31fc1a4eb3718f594ed5fd0faff065
    Date:   Thu Jul 20 18:28:01 2017 +0100

        Make language_def O(1)

the existing (if pointless) check of the la_magic field was removed.

There now appears to be no use of the la_magic field, and I propose
that we delete it.

There should be no user visible changes after this commit.

gdb/ChangeLog:

	* ada-lang.c (ada_language_defn): Remove use of LANG_MAGIC.
	* c-lang.c (c_language_defn): Likewise.
	(cplus_language_defn): Likewise.
	(asm_language_defn): Likewise.
	(minimal_language_defn): Likewise.
	* d-lang.c (d_language_defn): Likewise.
	* f-lang.c (f_language_defn): Likewise.
	* go-lang.c (go_language_defn): Likewise.
	* language.c (unknown_language_defn): Likewise.
	(auto_language_defn): Likewise.
	* language.h (struct language_defn): Remove la_magic field.
	(LANG_MAGIC): Delete.
	* m2-lang.c (m2_language_defn): Remove use of LANG_MAGIC.
	* objc-lang.c (objc_language_defn): Likewise.
	* opencl-lang.c (opencl_language_defn): Likewise.
	* p-lang.c (pascal_language_defn): Likewise.
	* rust-lang.c (rust_language_defn): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Define GNU_PROPERTY_X86_ISA_1_AVX512_BF16
@ 2019-04-12  6:05 sergiodj+buildbot
  2019-04-12 15:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-12  6:05 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 462cac5884ed4c38e6180b2e2769aaa5225e695b ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: 462cac5884ed4c38e6180b2e2769aaa5225e695b

x86: Define GNU_PROPERTY_X86_ISA_1_AVX512_BF16

Update assembler and readelf to support

 #define GNU_PROPERTY_X86_ISA_1_AVX512_BF16  (1U << 24)

for AVX512_BF16.

binutils/

	* readelf.c (decode_x86_isa): Handle
	GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
	* testsuite/binutils-all/i386/pr21231b.d: Updated.
	* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.

gas/

	* config/tc-i386.c (output_insn): Support
	GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
	* testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
	* testsuite/gas/i386/property-2.d: Updated.
	* testsuite/gas/i386/x86-64-property-2.d: Likewise.

include/

	* elf/common.h (GNU_PROPERTY_X86_ISA_1_AVX512_BF16): New.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Fix alignment computation for structs with only static fields
@ 2019-04-11 23:12 sergiodj+buildbot
  2019-04-12 15:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11 23:12 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 41077b6625d16cc6c0c4b404a177a8850300b8a0 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 41077b6625d16cc6c0c4b404a177a8850300b8a0

gdb: Fix alignment computation for structs with only static fields

The current code in gdbtypes.c:type_align incorrectly returns 0 as the
alignment for a structure containing only static fields.  After this
patch the correct value of 1 is returned.  The gdb.base/align.exp test
is extended to cover this case.

gdb/ChangeLog:

	* gdbtypes.c (type_align): A struct with no non-static fields also
	has alignment of 1.

gdb/testsuite/ChangeLog:

	* gdb.base/align.exp: Extend test to cover structures containing
	only static fields.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make "msg" const in internal_vproblem
@ 2019-04-11 19:21 sergiodj+buildbot
  2019-04-12 15:27 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11 19:21 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 02cf60c7a42710ee0364698c436b6ca5e771374b ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 02cf60c7a42710ee0364698c436b6ca5e771374b

Make "msg" const in internal_vproblem

I noticed that the "msg" variable in internal_vproblem could be
"const".  This seems like an improvement because it can wind up in
rodata.

Tested by rebuilding.

gdb/ChangeLog
2019-04-11  Tom Tromey  <tromey@adacore.com>

	* utils.c (internal_vproblem): Make "msg" const.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Rename gdb exception types
@ 2019-04-11 17:50 sergiodj+buildbot
  2019-04-12 15:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11 17:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 230d2906b9d1d009b22fd526181bf43e1084ed59 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 230d2906b9d1d009b22fd526181bf43e1084ed59

Rename gdb exception types

This renames the gdb exception types.  The old types were only needed
due to the macros in common-exception.h that are now gone.

The intermediate layer of gdb_exception_RETURN_MASK_ALL did not seem
needed, so this patch removes it entirely.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* common/common-exceptions.h (gdb_exception_RETURN_MASK_ALL):
	Remove.
	(gdb_exception_error): Rename from
	gdb_exception_RETURN_MASK_ERROR.
	(gdb_exception_quit): Rename from gdb_exception_RETURN_MASK_QUIT.
	(gdb_quit_bad_alloc): Update.
	* aarch64-tdep.c: Update.
	* ada-lang.c: Update.
	* ada-typeprint.c: Update.
	* ada-valprint.c: Update.
	* amd64-tdep.c: Update.
	* arch-utils.c: Update.
	* break-catch-throw.c: Update.
	* breakpoint.c: Update.
	* btrace.c: Update.
	* c-varobj.c: Update.
	* cli/cli-cmds.c: Update.
	* cli/cli-interp.c: Update.
	* cli/cli-script.c: Update.
	* common/common-exceptions.c: Update.
	* common/new-op.c: Update.
	* common/selftest.c: Update.
	* compile/compile-c-symbols.c: Update.
	* compile/compile-cplus-symbols.c: Update.
	* compile/compile-object-load.c: Update.
	* compile/compile-object-run.c: Update.
	* completer.c: Update.
	* corelow.c: Update.
	* cp-abi.c: Update.
	* cp-support.c: Update.
	* cp-valprint.c: Update.
	* darwin-nat.c: Update.
	* disasm-selftests.c: Update.
	* dtrace-probe.c: Update.
	* dwarf-index-cache.c: Update.
	* dwarf-index-write.c: Update.
	* dwarf2-frame-tailcall.c: Update.
	* dwarf2-frame.c: Update.
	* dwarf2loc.c: Update.
	* dwarf2read.c: Update.
	* eval.c: Update.
	* event-loop.c: Update.
	* event-top.c: Update.
	* exec.c: Update.
	* f-valprint.c: Update.
	* fbsd-tdep.c: Update.
	* frame-unwind.c: Update.
	* frame.c: Update.
	* gdbtypes.c: Update.
	* gnu-v3-abi.c: Update.
	* guile/guile-internal.h: Update.
	* guile/scm-block.c: Update.
	* guile/scm-breakpoint.c: Update.
	* guile/scm-cmd.c: Update.
	* guile/scm-disasm.c: Update.
	* guile/scm-frame.c: Update.
	* guile/scm-lazy-string.c: Update.
	* guile/scm-math.c: Update.
	* guile/scm-param.c: Update.
	* guile/scm-ports.c: Update.
	* guile/scm-pretty-print.c: Update.
	* guile/scm-symbol.c: Update.
	* guile/scm-symtab.c: Update.
	* guile/scm-type.c: Update.
	* guile/scm-value.c: Update.
	* i386-linux-tdep.c: Update.
	* i386-tdep.c: Update.
	* inf-loop.c: Update.
	* infcall.c: Update.
	* infcmd.c: Update.
	* infrun.c: Update.
	* jit.c: Update.
	* language.c: Update.
	* linespec.c: Update.
	* linux-fork.c: Update.
	* linux-nat.c: Update.
	* linux-tdep.c: Update.
	* linux-thread-db.c: Update.
	* main.c: Update.
	* mi/mi-cmd-break.c: Update.
	* mi/mi-cmd-stack.c: Update.
	* mi/mi-interp.c: Update.
	* mi/mi-main.c: Update.
	* objc-lang.c: Update.
	* p-valprint.c: Update.
	* parse.c: Update.
	* ppc-linux-tdep.c: Update.
	* printcmd.c: Update.
	* python/py-arch.c: Update.
	* python/py-breakpoint.c: Update.
	* python/py-cmd.c: Update.
	* python/py-finishbreakpoint.c: Update.
	* python/py-frame.c: Update.
	* python/py-framefilter.c: Update.
	* python/py-gdb-readline.c: Update.
	* python/py-inferior.c: Update.
	* python/py-infthread.c: Update.
	* python/py-lazy-string.c: Update.
	* python/py-linetable.c: Update.
	* python/py-objfile.c: Update.
	* python/py-param.c: Update.
	* python/py-prettyprint.c: Update.
	* python/py-progspace.c: Update.
	* python/py-record-btrace.c: Update.
	* python/py-record.c: Update.
	* python/py-symbol.c: Update.
	* python/py-type.c: Update.
	* python/py-unwind.c: Update.
	* python/py-utils.c: Update.
	* python/py-value.c: Update.
	* python/python.c: Update.
	* record-btrace.c: Update.
	* record-full.c: Update.
	* remote-fileio.c: Update.
	* remote.c: Update.
	* riscv-tdep.c: Update.
	* rs6000-aix-tdep.c: Update.
	* rs6000-tdep.c: Update.
	* rust-exp.y: Update.
	* rust-lang.c: Update.
	* s390-tdep.c: Update.
	* selftest-arch.c: Update.
	* solib-dsbt.c: Update.
	* solib-frv.c: Update.
	* solib-spu.c: Update.
	* solib-svr4.c: Update.
	* solib.c: Update.
	* sparc64-linux-tdep.c: Update.
	* stack.c: Update.
	* symfile-mem.c: Update.
	* symmisc.c: Update.
	* target.c: Update.
	* thread.c: Update.
	* top.c: Update.
	* tracefile-tfile.c: Update.
	* tui/tui.c: Update.
	* typeprint.c: Update.
	* unittests/cli-utils-selftests.c: Update.
	* unittests/parse-connection-spec-selftests.c: Update.
	* valops.c: Update.
	* valprint.c: Update.
	* value.c: Update.
	* varobj.c: Update.
	* windows-nat.c: Update.
	* x86-linux-nat.c: Update.
	* xml-support.c: Update.

gdb/gdbserver/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* gdbreplay.c: Update.
	* linux-low.c: Update.
	* server.c: Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [gdb/testsuite] Add cc-with-dwz.exp and cc-with-dwz-m.exp
@ 2019-04-11 17:34 sergiodj+buildbot
  2019-04-12 15:27 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11 17:34 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c30391f893fd99e768c1a6282763ef553c45f1ff ***

Author: Tom de Vries <tdevries@suse.de>
Branch: master
Commit: c30391f893fd99e768c1a6282763ef553c45f1ff

[gdb/testsuite] Add cc-with-dwz.exp and cc-with-dwz-m.exp

We can use CC_WITH_TWEAKS_FLAGS when cd-ing into the gdb build subdir and
invoking make check:
...
$ cd $objdir/gdb
$ make check \
    RUNTESTFLAGS='--target_board=cc-with-tweaks' \
    CC_WITH_TWEAKS_FLAGS='-z'
...

But when cd-ing into the top-level build dir and invoking make check-gdb
instead:
...
$ cd $objdir
$ make check-gdb \
    RUNTESTFLAGS='--target_board=cc-with-tweaks' \
    CC_WITH_TWEAKS_FLAGS='-z'
...
using CC_WITH_TWEAKS_FLAGS has no effect, because CC_WITH_TWEAKS_FLAGS is not
passed down from the top level Makefile.

Add cc-with-dwz.exp and cc-with-dwz-m.exp, that don't require
CC_WITH_TWEAKS_FLAGS to be set in the make invocation, allowing us to run these
test configurations from the toplevel build dir:
...
$ cd $objdir
$ make check-gdb \
    RUNTESTFLAGS='--target_board=cc-with-dwz'
...

Tested on x86_64-linux.

gdb/testsuite/ChangeLog:

2019-04-11  Tom de Vries  <tdevries@suse.de>

	* boards/cc-with-dwz-m.exp: New file.
	* boards/cc-with-dwz.exp: New file.
	* boards/cc-with-tweaks.exp: Note that check-gdb doesn't work.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24435, buffer overflow reading dynamic entries
@ 2019-04-11 11:45 sergiodj+buildbot
  2019-04-12 15:25 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11 11:45 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9bff840e8cc560f5096a43609ed3e0d980733fd9 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 9bff840e8cc560f5096a43609ed3e0d980733fd9

PR24435, buffer overflow reading dynamic entries

	PR 24435
	* elflink.c (elf_link_add_object_symbols): Don't read partial
	dynamic entries from fuzzed objects.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: When DF_BIND_NOW don't use TLSDESC GOT value.
@ 2019-04-11 10:57 sergiodj+buildbot
  2019-04-12 15:24 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11 10:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ce12121b63145322b4961bbb2b94b939cb916ba7 ***

Author: Tamar Christina <tamar.christina@arm.com>
Branch: master
Commit: ce12121b63145322b4961bbb2b94b939cb916ba7

AArch64: When DF_BIND_NOW don't use TLSDESC GOT value.

When using DF_BIND_NOW on AArch64 we don't reserve the GOT slot for a TLSDESC,
but we still emitted DT_TLSDESC_GOT and DT_TLSDESC_PLT.  This caused random
memory corruption as the "special" value of (bfd_vma)-1 would be set for
dt_tlsdesc_got.

Since we don't have a value of dt_tlsdesc_got I also don't emit DT_TLSDESC_PLT
now becuase it would point to an incomplete PLT. To be able to write the PLT
entry DT_TLSDESC_GOT is needed and since we don't have one we can't write the
PLT entry either.

It is my understanding that GLIBC doesn't need these two entries when not lazy
loading.  Conversely AArch32 does not reserve neither the GOT not the PLT slot
when doing DF_BIND_NOW.

AArch32 does not need these checks because these values are initialized to 0
and so the if (...) checks don't pass, but on AArch64 these are initialized
to (bfd_vma)-1 and thus we need some extra checks.

bfd/ChangeLog:

	PR ld/24302
	* elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
	DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
	(elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.

ld/ChangeLog:

	PR ld/24302
	* testsuite/ld-aarch64/aarch64-elf.exp: Add new test.
	* testsuite/ld-aarch64/tls-relax-gdesc-le-now.d: New test.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [BINUTILS, AArch64, 2/2] Update Store Allocation Tag instructions
@ 2019-04-11  9:56 sergiodj+buildbot
  2019-04-12 15:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11  9:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT bd7ceb8d26e011ff3fd23402ec2587d7c374f090 ***

Author: Sudakshina Das <sudi.das@arm.com>
Branch: master
Commit: bd7ceb8d26e011ff3fd23402ec2587d7c374f090

[BINUTILS, AArch64, 2/2] Update Store Allocation Tag instructions

This patch updates the Store allocation tags instructions in
Armv8.5-A Memory Tagging Extension. This is part of the changes
that have been introduced recently in the 00bet10 release

All of these instructions have an updated register operand (Xt -> <Xt|SP>)

- STG <Xt|SP>, [<Xn|SP>, #<simm>]
- STG <Xt|SP>, [<Xn|SP>, #<simm>]!
- STG <Xt|SP>, [<Xn|SP>], #<simm>
- STZG <Xt|SP>, [<Xn|SP>, #<simm>]
- STZG <Xt|SP>, [<Xn|SP>, #<simm>]!
- STZG <Xt|SP>, [<Xn|SP>], #<simm>
- ST2G <Xt|SP>, [<Xn|SP>, #<simm>]
- ST2G <Xt|SP>, [<Xn|SP>, #<simm>]!
- ST2G <Xt|SP>, [<Xn|SP>], #<simm>
- STZ2G <Xt|SP>, [<Xn|SP>, #<simm>]
- STZ2G <Xt|SP>, [<Xn|SP>, #<simm>]!
- STZ2G <Xt|SP>, [<Xn|SP>], #<simm>

In order to accept <Rt|SP> a new operand type Rt_SP is introduced which has
the same field as FLD_Rt but follows other semantics of Rn_SP.

*** gas/ChangeLog ***

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* config/tc-aarch64.c (process_omitted_operand): Add case for
	AARCH64_OPND_Rt_SP.
	(parse_operands): Likewise.
	* testsuite/gas/aarch64/armv8_5-a-memtag.d: Update tests.
	* testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
	* testsuite/gas/aarch64/illegal-memtag.l: Likewise.
	* testsuite/gas/aarch64/illegal-memtag.s: Likewise.

*** include/ChangeLog ***

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* opcode/aarch64.h (enum aarch64_opnd): Add AARCH64_OPND_Rt_SP.

*** opcodes/ChangeLog ***

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-opc.c (aarch64_print_operand): Add case for
	AARCH64_OPND_Rt_SP.
	(verify_constraints): Likewise.
	* aarch64-tbl.h (QL_LDST_AT): Update to add SP qualifier.
	(struct aarch64_opcode): Update stg, stzg, st2g, stz2g instructions
	to accept Rt|SP as first operand.
	(AARCH64_OPERANDS): Add new Rt_SP.
	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [BINUTILS, AArch64, 1/2] Add new LDGM/STGM instruction
@ 2019-04-11  9:38 sergiodj+buildbot
  2019-04-12 15:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11  9:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e54010f1aeb050cb9d65862a0afe9095a7a85f27 ***

Author: Sudakshina Das <sudi.das@arm.com>
Branch: master
Commit: e54010f1aeb050cb9d65862a0afe9095a7a85f27

[BINUTILS, AArch64, 1/2] Add new LDGM/STGM instruction

This patch adds the new LDGM/STGM instructions of the
Armv8.5-A Memory Tagging Extension. This is part of the changes
that have been introduced recently in the 00bet10 release

The instructions are as follows:
LDGM Xt, [<Xn|SP>]
STGM Xt, [<Xn|SP>]

*** gas/ChangeLog ***

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* testsuite/gas/aarch64/armv8_5-a-memtag.d: New tests for ldgm and stgm.
	* testsuite/gas/aarch64/armv8_5-a-memtag.s: Likewise.
	* testsuite/gas/aarch64/illegal-memtag.l: Likewise.
	* testsuite/gas/aarch64/illegal-memtag.s: Likewise.

*** opcodes/ChangeLog ***

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Likewise.
	* aarch64-opc-2.c: Likewise.
	* aarch64-tbl.h (aarch64_opcode): Add new ldgm and stgm.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] print_insn_powerpc tidy
@ 2019-04-11  9:21 sergiodj+buildbot
  2019-04-12 15:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11  9:21 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e392bad3ec99458369723e14ded8c23b5b13073c ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: e392bad3ec99458369723e14ded8c23b5b13073c

print_insn_powerpc tidy

	* ppc-dis.c (print_insn_powerpc): Use a tiny state machine
	op_separator to control printing of spaces, comma and parens
	rather than need_comma, need_paren and spaces vars.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix amd64->i386 linux syscall restart problem
@ 2019-04-11  0:58 sergiodj+buildbot
  2019-04-12 15:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-11  0:58 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3f52fdbcb599f76b4838020721ca6c9f1cc28f84 ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: 3f52fdbcb599f76b4838020721ca6c9f1cc28f84

Fix amd64->i386 linux syscall restart problem

This commit fixes some failures in gdb.base/interrupt.exp
when debugging a 32-bit i386 linux inferior from an amd64 host.

When running the following test...

  make check RUNTESTFLAGS="--target_board unix/-m32 interrupt.exp"

... without this commit, I see the following output:

FAIL: gdb.base/interrupt.exp: continue (the program exited)
FAIL: gdb.base/interrupt.exp: echo data
FAIL: gdb.base/interrupt.exp: Send Control-C, second time
FAIL: gdb.base/interrupt.exp: signal SIGINT (the program is no longer running)
ERROR: Undefined command "".
ERROR: GDB process no longer exists

		=== gdb Summary ===

When the test is run with this commit in place, we see 12 passes
instead.  This is the desired behavior.

Analysis:

On Linux, when a syscall is interrupted by a signal, the syscall
may return -ERESTARTSYS when a signal occurs.  Doing so indicates that
the syscall is restartable.  Then, depending on settings associated
with the signal handler, and after the signal handler is called, the
kernel can then either return -EINTR or can cause the syscall to be
restarted.  In this discussion, we are concerned with the latter
case.

On i386, the kernel returns this status via the EAX register.

When debugging a 32-bit (i386) process from a 64-bit (amd64)
GDB, the debugger fetches 64-bit registers even though the
process being debugged is 32-bit.  Since we're debugging a 32-bit
target, only 32 bits are being saved in the register cache.
Now, ideally, GDB would save all 64-bits in the regcache and
then would be able to restore those same values when it comes
time to continue the target.  I've looked into doing this, but
it's not easy and I don't see many benefits to doing so.  One
benefit, however, would be that EAX would appear as a negative
value for doing syscall restarts.

At the moment, GDB is setting the high 32 bits of RAX (and other
registers too) to 0.  So, when GDB restores EAX just prior to
a syscall restart, the high 32 bits of RAX are zeroed, thus making
it look like a positive value.  For this particular purpose, we
need to sign extend EAX so that RAX will appear as a negative
value when EAX is set to -ERESTARTSYS.  This in turn will cause
the signal handling code in the kernel to recognize -ERESTARTSYS
which will in turn cause the syscall to be restarted.

This commit is based on work by Jan Kratochvil from 2009:

https://sourceware.org/ml/gdb-patches/2009-11/msg00592.html

Jan's patch had the sign extension code in amd64-nat.c.  Several
other native targets make use of this code, so it seemed better
to move the sign extension code to a linux specific file.  I
also added similar code to gdbserver.

Another approach is to fix the problem in the kernel.  Hui Zhu
tried to get a fix into the kernel back in 2014, but it was not
accepted.  Discussion regarding this approach may be found here:

https://lore.kernel.org/patchwork/patch/457841/

Even if a fix were to be put into the kernel, we'd still need
some kind of fix in GDB in order to support older kernels.

Finally, I'll note that Fedora has been carrying a similar patch for
at least nine years.  Other distributions, including RHEL and CentOS
have picked up this change and have been using it too.

gdb/ChangeLog:

	* amd64-linux-nat.c (amd64_linux_collect_native_gregset): New
	function.
	(fill_gregset): Call amd64_linux_collect_native_gregset instead
	of amd64_collect_native_gregset.
	(amd64_linux_nat_target::store_registers): Likewise.

gdb/gdbserver/ChangeLog:

	* linux-x86-low.c (x86_fill_gregset): Sign extend EAX value
	when using a 64-bit gdbserver.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Support Intel AVX512 BF16
@ 2019-04-10 16:12 sergiodj+buildbot
  2019-04-12 14:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10 16:12 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d6aab7a11b8bd85de43f9fe6b1cea95b504e73ad ***

Author: Xuepeng Guo <xuepeng.guo@intel.com>
Branch: master
Commit: d6aab7a11b8bd85de43f9fe6b1cea95b504e73ad

x86: Support Intel AVX512 BF16

Add assembler and disassembler support Intel AVX512 BF16:

https://software.intel.com/en-us/download/intel-architecture-instruction-set-extensions-programming-reference

gas/

2019-04-05  Xuepeng Guo  <xuepeng.guo@intel.com>

	* config/tc-i386.c (cpu_arch): Add .avx512_bf16.
	(cpu_noarch): Add noavx512_bf16.
	* doc/c-i386.texi: Document avx512_bf16.
	* testsuite/gas/i386/avx512_bf16.d: New file.
	* testsuite/gas/i386/avx512_bf16.s: Likewise.
	* testsuite/gas/i386/avx512_bf16_vl-inval.l: Likewise.
	* testsuite/gas/i386/avx512_bf16_vl-inval.s: Likewise.
	* testsuite/gas/i386/avx512_bf16_vl.d: Likewise.
	* testsuite/gas/i386/avx512_bf16_vl.s: Likewise.
	* testsuite/gas/i386/x86-64-avx512_bf16.d: Likewise.
	* testsuite/gas/i386/x86-64-avx512_bf16.s: Likewise.
	* testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.l: Likesie.
	* testsuite/gas/i386/x86-64-avx512_bf16_vl-inval.s: Likewise.
	* testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Likewise.
	* testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Likewise.
	* testsuite/gas/i386/i386.exp: Add BF16 related tests.

opcodes/

2019-04-05  Xuepeng Guo  <xuepeng.guo@intel.com>

	* i386-dis-evex.h (evex_table): Updated to support BF16
	instructions.
	* i386-dis.c (enum): Add EVEX_W_0F3852_P_1, EVEX_W_0F3872_P_1
	and EVEX_W_0F3872_P_3.
	* i386-gen.c (cpu_flag_init): Add CPU_AVX512_BF16_FLAGS.
	(cpu_flags): Add bitfield for CpuAVX512_BF16.
	* i386-opc.h (enum): Add CpuAVX512_BF16.
	(i386_cpu_flags): Add bitfield for cpuavx512_bf16.
	* i386-opc.tbl: Add AVX512 BF16 instructions.
	* i386-init.h: Regenerated.
	* i386-tbl.h: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Pull in patch for libiberty that fixes a stack exhaustion bug when demangling a pathalogically constructed mangled name.
@ 2019-04-10 15:14 sergiodj+buildbot
  2019-04-12 15:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10 15:14 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c1202057eb9161a86af27d867703235fee7b7555 ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: c1202057eb9161a86af27d867703235fee7b7555

Pull in patch for libiberty that fixes a stack exhaustion bug when demangling a pathalogically constructed mangled name.

	PR 89394
	* cp-demangle.c (cplus_demangle_fill_name): Reject negative
	lengths.
	(d_count_templates_scopes): Replace num_templates and num_scopes
	parameters with a struct d_print_info pointer parameter.  Adjust
	body of the function accordingly.  Add recursion counter and check
	that the recursion limit is not reached.
	(d_print_init): Pass dpi parameter to d_count_templates_scopes.
	Reset recursion counter afterwards, unless the recursion limit was
	reached.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix a couple of comments
@ 2019-04-10 14:42 sergiodj+buildbot
  2019-04-12 15:19 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10 14:42 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ee3711344b6e0cffeb237fa6889aab04853f9004 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: ee3711344b6e0cffeb237fa6889aab04853f9004

Fix a couple of comments

While working on objfiles I noticed a typo in one comment, and another
comment that, as far as I can tell, has been obsolete for a very long
time.

gdb/ChangeLog
2019-04-10  Tom Tromey  <tom@tromey.com>

	* symfile.c (reread_symbols): Remove old comment.
	* objfiles.c (free_all_objfiles): Fix a typo.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove some uses of "object_files"
@ 2019-04-10 14:24 sergiodj+buildbot
  2019-04-12 15:19 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10 14:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT bf227d6105cb3908cde816429c84569da12e829c ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: bf227d6105cb3908cde816429c84569da12e829c

Remove some uses of "object_files"

The "object_files" macro is sometimes used when iterating over
objfiles.  This patch removes a few such uses in favor of the new
range adapter.

gdb/ChangeLog
2019-04-10  Tom Tromey  <tom@tromey.com>

	* ia64-tdep.c (ia64_get_dyn_info_list): Use foreach.
	* minsyms.c (lookup_minimal_symbol): Use foreach.
	(lookup_minimal_symbol_text, lookup_minimal_symbol_by_pc_name)
	(lookup_minimal_symbol_solib_trampoline): Likewise.
	* symfile.c (reread_symbols): Use foreach.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Use upper-case for metasyntactic in gdbserver help
@ 2019-04-10 12:44 sergiodj+buildbot
  2019-04-12 14:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10 12:44 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 227a9e65b91958cb414ade82c614717579d8849e ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 227a9e65b91958cb414ade82c614717579d8849e

Use upper-case for metasyntactic in gdbserver help

I noticed that "gdbserver --help" contains a few metasyntactic
variables that aren't in upper-case.  This patch fixes them to conform
to the GNU standard.

gdb/gdbserver/ChangeLog
2019-04-05  Tom Tromey  <tromey@adacore.com>

	* server.c (gdbserver_usage): Use upper-case for metasyntactic
	variables.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24427, bfd/doc/chew.c reads uninitialized memory and subtracts from function pointer
@ 2019-04-10  9:22 sergiodj+buildbot
  2019-04-12 15:18 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10  9:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b05971a652c35ed72d3c95290e18d8f6e4ef6c46 ***

Author: Michael Forney <mforney@mforney.org>
Branch: master
Commit: b05971a652c35ed72d3c95290e18d8f6e4ef6c46

PR24427, bfd/doc/chew.c reads uninitialized memory and subtracts from function pointer

	PR 24427
	* doc/chew.c (free_words): Correctly free "push_text" strings.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move type stack handling to a new class
@ 2019-04-10  9:17 sergiodj+buildbot
  2019-04-12 14:56 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10  9:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT dac43e327d002107f6bc9481749de039f410df73 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: dac43e327d002107f6bc9481749de039f410df73

Move type stack handling to a new class

This introduces a new "type_stack" class, and moves all the parser
type stack handling to this class.  Parsers that wish to use this
facility must now instantiate this class somehow.  I chose this
approach because a minority of the existing parsers require this.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* type-stack.h: New file.
	* type-stack.c: New file.
	* parser-defs.h (enum type_pieces, union type_stack_elt): Move to
	type-stack.h.
	(insert_into_type_stack, insert_type, push_type, push_type_int)
	(insert_type_address_space, pop_type, pop_type_int)
	(pop_typelist, pop_type_stack, append_type_stack)
	(push_type_stack, get_type_stack, push_typelist)
	(follow_type_instance_flags, follow_types): Don't declare.
	* parse.c (type_stack): Remove global.
	(parse_exp_in_context): Update.
	(insert_into_type_stack, insert_type, push_type, push_type_int)
	(insert_type_address_space, pop_type, pop_type_int)
	(pop_typelist, pop_type_stack, append_type_stack)
	(push_type_stack, get_type_stack, push_typelist)
	(follow_type_instance_flags, follow_types): Remove (moved to
	type-stack.c).
	* f-exp.y (type_stack): New global.
	Update rules.
	(push_kind_type, f_parse): Update.
	* d-exp.y (type_stack): New global.
	Update rules.
	(d_parse): Update.
	* c-exp.y (struct c_parse_state) <type_stack>: New member.
	Update rules.
	* Makefile.in (COMMON_SFILES): Add type-stack.c.
	(HFILES_NO_SRCDIR): Add type-stack.h.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move arglist_len et al to parser_state
@ 2019-04-10  5:50 sergiodj+buildbot
  2019-04-12 14:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-10  5:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 43476f0b1b628352ad8e3064e50128cb3461d3d0 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 43476f0b1b628352ad8e3064e50128cb3461d3d0

Move arglist_len et al to parser_state

This moves arglist_len, start_arglist, and end_arglist to
parser_state.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* parser-defs.h (struct parser_state) <start_arglist,
	end_arglist>: New methods.
	<arglist_len, m_funcall_chain>: New members.
	(arglist_len, start_arglist, end_arglist): Don't declare.
	* parse.c (arglist_len, funcall_chain): Remove global.
	(start_arglist, end_arglist): Remove functions.
	(parse_exp_in_context): Update.
	* p-exp.y: Update rules.
	* m2-exp.y: Update rules.
	* go-exp.y: Update rules.
	* f-exp.y: Update rules.
	* d-exp.y: Update rules.
	* c-exp.y: Update rules.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix Rust lexer buglet
@ 2019-04-09 19:44 sergiodj+buildbot
  2019-04-12 15:18 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 19:44 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 8dc433a0fb04f8fa37530d0788053dd9bea5c37d ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 8dc433a0fb04f8fa37530d0788053dd9bea5c37d

Fix Rust lexer buglet

PR rust/24414 points out that the Rust lexer uses strtoul when lexing
an integer, and that this can give the wrong results in some
situations.

This patch changes it to use strtoulst, like most of the rest of gdb.
It also adds a self test.

Tested on x86-64 Fedora 29 using an i686 build.

gdb/ChangeLog
2019-04-09  Ivan Begert  <ivanbegert@gmail.com>
	    Tom Tromey  <tromey@adacore.com>

	PR rust/24414:
	* rust-exp.y (rust_parser::lex_number): Use strtoulst.
	(rust_lex_int_test): Change "value" to be LONGEST.
	(rust_lex_tests): Add test for long integer literal.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Turn parse_language into a method
@ 2019-04-09 19:44 sergiodj+buildbot
  2019-04-12 14:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 19:44 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 73923d7eedc7ab52144308ef7e9c12cbe4341bca ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 73923d7eedc7ab52144308ef7e9c12cbe4341bca

Turn parse_language into a method

This changes parse_language into a method of parser_state.  This patch
was written by a script.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y: Replace "parse_language" with method call.
	* p-exp.y:
	(yylex): Replace "parse_language" with method call.
	* m2-exp.y:
	(yylex): Replace "parse_language" with method call.
	* go-exp.y (classify_name): Replace "parse_language" with method
	call.
	* f-exp.y (yylex): Replace "parse_language" with method call.
	* d-exp.y (lex_one_token): Replace "parse_language" with method
	call.
	* c-exp.y:
	(lex_one_token, classify_name, yylex): Replace "parse_language"
	with method call.
	* ada-exp.y (find_primitive_type, type_char)
	(type_system_address): Replace "parse_language" with method call.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Use find_thread_in_random in select_event_lwp
@ 2019-04-09 18:36 sergiodj+buildbot
  2019-04-12 15:17 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 18:36 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b0319eaaf9d1f4e730c532058f2fff0b4e5ce682 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: b0319eaaf9d1f4e730c532058f2fff0b4e5ce682

Use find_thread_in_random in select_event_lwp

I noticed that find_thread_in_random duplicates the code in
find_thread_in_random, so this patch changes the latter to use the
former.

There are two other spots in gdb that do this, but to unify all of
them would require switching some code from using the "iterate over"
idiom to using iterators.

Another possible improvement is that find_thread_in_random could be
made single-pass using reservoir sampling.

Tested by the buildbot.

gdb/gdbserver/ChangeLog
2019-04-09  Tom Tromey  <tromey@adacore.com>

	* linux-low.c (select_event_lwp): Use find_thread_in_random.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Consistently use bool for fake_pid_p
@ 2019-04-09 18:18 sergiodj+buildbot
  2019-04-12 15:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 18:18 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9ab8741a48294e19d514721c710c81bba46db7f2 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 9ab8741a48294e19d514721c710c81bba46db7f2

Consistently use bool for fake_pid_p

I noticed a few spots where fake_pid_p is handled as an int, whereas
the field in struct inferior has type bool.  This patch changes the
remaining places to use bool as well.

Tested by the buildbot.

gdb/ChangeLog
2019-04-09  Tom Tromey  <tromey@adacore.com>

	* remote.c (remote_target::remote_add_inferior): Change fake_pid_p
	to bool.
	(extended_remote_target::attach): Update.
	(remote_target::remote_notice_new_inferior): Update.
	(remote_target::add_current_inferior_and_thread): Update.
	* inferior.c (exit_inferior_1): Use "false".
	* corelow.c (add_to_thread_list): Make fake_pid_p bool.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Use -qualified flag when setting temporary breakpoint in start command
@ 2019-04-09 16:54 sergiodj+buildbot
  2019-04-12 15:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 16:54 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e242fd1249ae85a97f08f95d5c61f4cbe3b906e0 ***

Author: Simon Marchi <simon.marchi@efficios.com>
Branch: master
Commit: e242fd1249ae85a97f08f95d5c61f4cbe3b906e0

Use -qualified flag when setting temporary breakpoint in start command

When using the "start" command, GDB puts a temporary breakpoint on the
"main" symbol (we literally invoke the tbreak command).  However, since
it does wild matching by default, it also puts a breakpoint on any C++
method or "main" function in a namespace.  For example, when debugging
GDB, it creates a total of 24 locations:

  (gdb) start
  Temporary breakpoint 1 at 0x198c1e9: main. (24 locations)

as there are a bunch of methods called main in the selftests, such as

  selftests::string_view::capacity_1::main()

If such method was called in the constructor of a global object, or a
function marked with the attribute "constructor", then we would stop at
the wrong place.  Also, this causes a few extra symtabs (those that
contain the "wrong" mains) to be expanded for nothing.

The dummiest, most straightforward solution is to add -qualified when
invoking tbreak.  With this patch, "start" creates a single-location
breakpoint, as expected.

I copied the start.exp test to start-cpp.exp and made it use a C++ test
file, which contains two main functions.  The new test verifies that the
output of "start" is the output we get when we set a single-location
breakpoint.

gdb/ChangeLog:

	* infcmd.c (run_command_1): Pass -qualified to tbreak when usind
	the "start" command.

gdb/testsuite/ChangeLog:

	* gdb.base/start-cpp.exp: New file.
	* gdb.base/start-cpp.cc: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove parser_state "initial_size" parameter
@ 2019-04-09 16:15 sergiodj+buildbot
  2019-04-12 14:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 16:15 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1201a264c8fd227737342345ab54e938295188b6 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 1201a264c8fd227737342345ab54e938295188b6

Remove parser_state "initial_size" parameter

All the real (not test) uses of parser_state pass 10 as the
"initial_size" parameter, and it seems to me that there's no real
reason to require callers to set this.  This patch removes this
parameter.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
	* stap-probe.c (stap_parse_argument): Update.
	* stap-probe.h (struct stap_parse_info) <stap_parse_info>: Remove
	initial_size parameter.
	* rust-exp.y (rust_lex_tests): Update.
	* parse.c (parser_state): Update.
	(parse_exp_in_context): Update.
	* parser-defs.h (struct parser_state) <parser_state>: Remove
	"initial_size" parameter.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [MIPS] Add RDHWR with the SEL field for MIPS R6.
@ 2019-04-09 10:15 sergiodj+buildbot
  2019-04-12 15:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09 10:15 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 7e96e219a4fc703282ea5b0cc8845a96c01ca030 ***

Author: Robert Suchanek <robert.suchanek@mips.com>
Branch: master
Commit: 7e96e219a4fc703282ea5b0cc8845a96c01ca030

[MIPS] Add RDHWR with the SEL field for MIPS R6.

In Release 6 of the MIPS architecture [1], instruction RDHWR supports
a 3rd operand to serve as the 3-bit select field for the hardware
register.

[1] "MIPS Architecture for Programmers Volume II-A: The MIPS32
    Instruction Set Manual", Imagination Technologies Ltd., Document
    Number: MD00086, Revision 6.06, December 15, 2016, Section 3.2
    "Alphabetical List of Instructions", pp. 332-334

opcodes/
	* mips-opc.c (mips_builtin_opcodes): Add RDHWR rt rd sel.

gas/
	* testsuite/gas/mips/mips.exp: Run hwr-names test.
	* testsuite/gas/mips/hwr-names.s: Add test cases for RDHWR with
	the SEL field.
	* testsuite/gas/mips/mipsr6@hwr-names.d: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Tests for gdb.InferiorThread.handle
@ 2019-04-09  4:40 sergiodj+buildbot
  2019-04-12 15:14 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09  4:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 947210e5690c61b395ccd887bc58bcb45ccd357b ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: 947210e5690c61b395ccd887bc58bcb45ccd357b

Tests for gdb.InferiorThread.handle

gdb/testsuite/ChangeLog:

	* gdb.python/py-thrhandle.exp: Add tests for
	gdb.InferiorThread.handle.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add python method InferiorThread.handle
@ 2019-04-09  4:09 sergiodj+buildbot
  2019-04-12 15:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09  4:09 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT cf63b0162b6cbf74bdb056609d1ad777c6d48954 ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: cf63b0162b6cbf74bdb056609d1ad777c6d48954

Add python method InferiorThread.handle

gdb/ChangeLog:

	* python/py-infthread.c (thpy_thread_handle): New function.
	(thread_object_methods): Register thpy_thread_handle.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Introduce target_ops method thread_info_to_thread_handle
@ 2019-04-09  3:51 sergiodj+buildbot
  2019-04-12 15:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-09  3:51 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3d6c62048d8408fbfb6c66830e0c650e36259637 ***

Author: Kevin Buettner <kevinb@redhat.com>
Branch: master
Commit: 3d6c62048d8408fbfb6c66830e0c650e36259637

Introduce target_ops method thread_info_to_thread_handle

This patch adds a thread_info_to_thread_handle method to the target_ops
struct.  It also implements this functionality for remote targets and
linux native threads.

gdb/ChangeLog:

	* gdbthread.h (thread_to_thread_handle): Declare.
	* thread.c (gdbtypes.h): Include.
	(thread_to_thread_handle): New function.

	* target.h (struct target_ops): Add thread_info_to_thread_handle.
	(target_thread_info_to_thread_handle): Declare.
	* target.c (target_thread_info_to_thread_handle): New function.
	* target-debug.h (target_debug_print_gdb_byte_vector): Define.
	* target-delegates.c: Regenerate.

	* linux-thread-db.c (class thread_db_target): Add method
	thread_info_to_thread_handle.
	(thread_db_target::thread_info_to_thread_handle): Define.
	* remote.c (class remote_target): Add new method
	thread_info_to_thread_handle.
	(remote_target::thread_info_to_thread_handle): Define.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Some gdb_exception{,error,quit} tweaks
@ 2019-04-08 19:35 sergiodj+buildbot
  2019-04-12 15:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 19:35 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 56be6ea89cdf94078d5dff3734b8c1970dbf52fa ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 56be6ea89cdf94078d5dff3734b8c1970dbf52fa

Some gdb_exception{,error,quit} tweaks

- Explicitly include <string> for std::string.

- Use std::make_shared to construct gdb_exception::message instead of
  operator new, avoiding one heap allocation (2 instead of 3).  Add
  'const char *fmt, va_list ap' parameters to
  gdb_exception{,error,quit}'s ctors, and do the std::make_shared in
  the gdb_exception ctor.

- gdb_exception_error's constructor does not need to have an 'enum
  return_reason' parameter, since it is always RETURN_ERROR, by
  definition.

- Similarly, gdb_exception_quit's contructor does not need to have
  'enum return_reason'/'enum errors' parameters.

- In the gdb_exception_{quit,_error} ctors that take a gdb_exception
  as argument, assert that they're being passed a gdb_exception object
  of the right 'reason'.

gdb/ChangeLog:
2019-04-08  Pedro Alves  <palves@redhat.com>

	* common/common-exceptions.c (throw_exception): Don't create
	named object to throw; throw directly.
	(throw_it): Likewise.  Don't initialize gdb_exception::message
	here, with new; pass FMT and AP to the ctor instead.
	* common/common-exceptions.h: Include <string>.
	(gdb_exception::gdb_exception(enum return_reason, enum errors,
	const char *, va_list)): New ctor.  Use std::make_shared.
	(gdb_exception_error::gdb_exception_error(enum return_reason, enum
	errors)): Delete.
	(gdb_exception_error::gdb_exception_error(enum errors, const char
	*, va_list)): New.
	(gdb_exception_error::gdb_exception_error(const gdb_exception &)):
	Add assertion.
	(gdb_exception_quit::gdb_exception_quit(enum return_reason, enum
	errors)): Delete.
	(gdb_exception_quit::gdb_exception_quit(const char *, va_list)): New.
	(gdb_exception_quit::gdb_exception_quit(const gdb_exception &)):
	Add assertion.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Remove i386-*-kaos* and i386-*-chaos targets
@ 2019-04-08 19:19 sergiodj+buildbot
  2019-04-12 15:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 19:19 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3ae61bb67d62eb53d110835b8b7c3a289e6bce45 ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: 3ae61bb67d62eb53d110835b8b7c3a289e6bce45

x86: Remove i386-*-kaos* and i386-*-chaos targets

Remove i386-*-kaos* and i386-*-chaos targets since they are no longer
supported by config.sub:

$ .../config.sub i386-kaos
Invalid configuration `i386-kaos': system `kaos' not recognized
$ .../config.sub i386-chaos
Invalid configuration `i386-chaos': system `chaos' not recognized
$

bfd/

	* config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.

gas/

	* configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
	* testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
	check.

ld/

	* Makefile.am (ALL_EMULATION_SOURCES): Remove eelf_i386_chaos.c.
	(eelf_i386_chaos.c): Removed.
	* Makefile.in: Regenerated.
	* configure.tgt: Remove i[3-7]86-*-kaos*.
	* emulparams/elf_i386_chaos.sh: Removed.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Consolidate AVX512 BF16 entries in i386-opc.tbl
@ 2019-04-08 18:38 sergiodj+buildbot
  2019-04-12 15:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 18:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6f2791d5de45a9490ba6844617feac038c8da8bd ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: 6f2791d5de45a9490ba6844617feac038c8da8bd

x86: Consolidate AVX512 BF16 entries in i386-opc.tbl

1. Use single entry for vcvtne2ps2bf16 and vdpbf16ps with Disp8ShiftVL.
2. Use 5 entries, instead of 8, for vcvtneps2bf16.

	* i386-opc.tbl: Consolidate AVX512 BF16 entries.
	* i386-init.h: Regenerated.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Replace throw_exception with throw in some cases
@ 2019-04-08 17:11 sergiodj+buildbot
  2019-04-12 15:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 17:11 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT eedc3f4f0a02c9774277bd1a34aab6ebdc32f797 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: eedc3f4f0a02c9774277bd1a34aab6ebdc32f797

Replace throw_exception with throw in some cases

This replaces throw_exception with "throw;" when possible.  This was
written by script.  The rule that is followed is that uses of the
form:

   catch (... &name)
     {
       ...
       throw_exception (name);
     }

... can be rewritten.  This should always be safe, because exceptions
are caught by const reference, and therefore can't be modified in the
body of the catch.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* valops.c (value_rtti_indirect_type): Replace throw_exception
	with throw.
	* tracefile-tfile.c (tfile_target_open): Replace throw_exception
	with throw.
	* thread.c (thr_try_catch_cmd): Replace throw_exception with
	throw.
	* target.c (target_translate_tls_address): Replace throw_exception
	with throw.
	* stack.c (frame_apply_command_count): Replace throw_exception
	with throw.
	* solib-spu.c (append_ocl_sos): Replace throw_exception with
	throw.
	* s390-tdep.c (s390_frame_unwind_cache): Replace throw_exception
	with throw.
	* rs6000-tdep.c (rs6000_frame_cache)
	(rs6000_epilogue_frame_cache): Replace throw_exception with throw.
	* remote.c: Replace throw_exception with throw.
	* record-full.c (record_full_message, record_full_wait_1)
	(record_full_restore): Replace throw_exception with throw.
	* record-btrace.c:
	(get_thread_current_frame_id, record_btrace_start_replaying)
	(cmd_record_btrace_bts_start, cmd_record_btrace_pt_start)
	(cmd_record_btrace_start): Replace throw_exception with throw.
	* parse.c (parse_exp_in_context_1): Replace throw_exception with
	throw.
	* linux-nat.c (detach_one_lwp, linux_resume_one_lwp)
	(resume_stopped_resumed_lwps): Replace throw_exception with throw.
	* linespec.c:
	(find_linespec_symbols): Replace throw_exception with throw.
	* infrun.c (displaced_step_prepare, resume): Replace
	throw_exception with throw.
	* infcmd.c (post_create_inferior): Replace throw_exception with
	throw.
	* inf-loop.c (inferior_event_handler): Replace throw_exception
	with throw.
	* i386-tdep.c (i386_frame_cache, i386_epilogue_frame_cache)
	(i386_sigtramp_frame_cache): Replace throw_exception with throw.
	* frame.c (frame_unwind_pc, get_prev_frame_if_no_cycle)
	(get_prev_frame_always, get_frame_pc_if_available)
	(get_frame_address_in_block_if_available, get_frame_language):
	Replace throw_exception with throw.
	* frame-unwind.c (frame_unwind_try_unwinder): Replace
	throw_exception with throw.
	* eval.c (fetch_subexp_value, evaluate_var_value)
	(evaluate_funcall, evaluate_subexp_standard): Replace
	throw_exception with throw.
	* dwarf2loc.c (call_site_find_chain)
	(dwarf2_evaluate_loc_desc_full, dwarf2_locexpr_baton_eval):
	Replace throw_exception with throw.
	* dwarf2-frame.c (dwarf2_frame_cache): Replace throw_exception
	with throw.
	* darwin-nat.c (darwin_attach_pid): Replace throw_exception with
	throw.
	* cp-abi.c (baseclass_offset): Replace throw_exception with throw.
	* completer.c (complete_line_internal): Replace throw_exception
	with throw.
	* compile/compile-object-run.c (compile_object_run): Replace
	throw_exception with throw.
	* cli/cli-script.c (process_next_line): Replace throw_exception
	with throw.
	* btrace.c (btrace_compute_ftrace_pt, btrace_compute_ftrace)
	(btrace_enable, btrace_maint_update_pt_packets): Replace
	throw_exception with throw.
	* breakpoint.c (create_breakpoint, save_breakpoints): Replace
	throw_exception with throw.
	* break-catch-throw.c (re_set_exception_catchpoint): Replace
	throw_exception with throw.
	* amd64-tdep.c (amd64_frame_cache, amd64_sigtramp_frame_cache)
	(amd64_epilogue_frame_cache): Replace throw_exception with throw.
	* aarch64-tdep.c (aarch64_make_prologue_cache)
	(aarch64_make_stub_cache): Replace throw_exception with throw.

gdb/gdbserver/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* linux-low.c (linux_detach_one_lwp): Replace throw_exception with
	throw.
	(linux_resume_one_lwp): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make exception throwing a bit more efficient
@ 2019-04-08 16:55 sergiodj+buildbot
  2019-04-12 15:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 16:55 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 26003a205e207db7985c32ec1964a04652b68413 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 26003a205e207db7985c32ec1964a04652b68413

Make exception throwing a bit more efficient

This makes exception throwing a bit more efficient, by removing some
copies.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* common/common-exceptions.c (throw_exception): Rename from
	throw_exception_cxx.  Remove old copy.  Make argument const.
	(throw_it): Create and throw exception objects directly.
	* common/common-exceptions.h (throw_exception): Make argument
	const.
	(struct gdb_exception_error): Add constructor.
	(struct gdb_exception_quit): Add constructor.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove some now-dead exception code
@ 2019-04-08 16:39 sergiodj+buildbot
  2019-04-12 15:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 16:39 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d272eb370a4c086a1d0f86a7a94e89328ec8d97e ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: d272eb370a4c086a1d0f86a7a94e89328ec8d97e

Remove some now-dead exception code

After the rewriting to use try/catch, some of the exception code is
now unused.  This patch removes that code.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* common/common-exceptions.h (exception_rethrow): Don't declare.
	(TRY_SJLJ): Update comment.
	(TRY, CATCH, END_CATCH): Remove.
	* common/common-exceptions.c (exception_rethrow): Remove.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Rewrite TRY/CATCH
@ 2019-04-08 16:39 sergiodj+buildbot
  2019-04-12 15:06 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 16:39 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a70b814420059e1f2de2130d532ddd7b2b2500fc ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: a70b814420059e1f2de2130d532ddd7b2b2500fc

Rewrite TRY/CATCH

This rewrites gdb's TRY/CATCH to plain C++ try/catch.  The patch was
largely written by script, though one change (to a comment in
common-exceptions.h) was reverted by hand.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* xml-support.c: Use C++ exception handling.
	* x86-linux-nat.c: Use C++ exception handling.
	* windows-nat.c: Use C++ exception handling.
	* varobj.c: Use C++ exception handling.
	* value.c: Use C++ exception handling.
	* valprint.c: Use C++ exception handling.
	* valops.c: Use C++ exception handling.
	* unittests/parse-connection-spec-selftests.c: Use C++ exception
	handling.
	* unittests/cli-utils-selftests.c: Use C++ exception handling.
	* typeprint.c: Use C++ exception handling.
	* tui/tui.c: Use C++ exception handling.
	* tracefile-tfile.c: Use C++ exception handling.
	* top.c: Use C++ exception handling.
	* thread.c: Use C++ exception handling.
	* target.c: Use C++ exception handling.
	* symmisc.c: Use C++ exception handling.
	* symfile-mem.c: Use C++ exception handling.
	* stack.c: Use C++ exception handling.
	* sparc64-linux-tdep.c: Use C++ exception handling.
	* solib.c: Use C++ exception handling.
	* solib-svr4.c: Use C++ exception handling.
	* solib-spu.c: Use C++ exception handling.
	* solib-frv.c: Use C++ exception handling.
	* solib-dsbt.c: Use C++ exception handling.
	* selftest-arch.c: Use C++ exception handling.
	* s390-tdep.c: Use C++ exception handling.
	* rust-lang.c: Use C++ exception handling.
	* rust-exp.y: Use C++ exception handling.
	* rs6000-tdep.c: Use C++ exception handling.
	* rs6000-aix-tdep.c: Use C++ exception handling.
	* riscv-tdep.c: Use C++ exception handling.
	* remote.c: Use C++ exception handling.
	* remote-fileio.c: Use C++ exception handling.
	* record-full.c: Use C++ exception handling.
	* record-btrace.c: Use C++ exception handling.
	* python/python.c: Use C++ exception handling.
	* python/py-value.c: Use C++ exception handling.
	* python/py-utils.c: Use C++ exception handling.
	* python/py-unwind.c: Use C++ exception handling.
	* python/py-type.c: Use C++ exception handling.
	* python/py-symbol.c: Use C++ exception handling.
	* python/py-record.c: Use C++ exception handling.
	* python/py-record-btrace.c: Use C++ exception handling.
	* python/py-progspace.c: Use C++ exception handling.
	* python/py-prettyprint.c: Use C++ exception handling.
	* python/py-param.c: Use C++ exception handling.
	* python/py-objfile.c: Use C++ exception handling.
	* python/py-linetable.c: Use C++ exception handling.
	* python/py-lazy-string.c: Use C++ exception handling.
	* python/py-infthread.c: Use C++ exception handling.
	* python/py-inferior.c: Use C++ exception handling.
	* python/py-gdb-readline.c: Use C++ exception handling.
	* python/py-framefilter.c: Use C++ exception handling.
	* python/py-frame.c: Use C++ exception handling.
	* python/py-finishbreakpoint.c: Use C++ exception handling.
	* python/py-cmd.c: Use C++ exception handling.
	* python/py-breakpoint.c: Use C++ exception handling.
	* python/py-arch.c: Use C++ exception handling.
	* printcmd.c: Use C++ exception handling.
	* ppc-linux-tdep.c: Use C++ exception handling.
	* parse.c: Use C++ exception handling.
	* p-valprint.c: Use C++ exception handling.
	* objc-lang.c: Use C++ exception handling.
	* mi/mi-main.c: Use C++ exception handling.
	* mi/mi-interp.c: Use C++ exception handling.
	* mi/mi-cmd-stack.c: Use C++ exception handling.
	* mi/mi-cmd-break.c: Use C++ exception handling.
	* main.c: Use C++ exception handling.
	* linux-thread-db.c: Use C++ exception handling.
	* linux-tdep.c: Use C++ exception handling.
	* linux-nat.c: Use C++ exception handling.
	* linux-fork.c: Use C++ exception handling.
	* linespec.c: Use C++ exception handling.
	* language.c: Use C++ exception handling.
	* jit.c: Use C++ exception handling.
	* infrun.c: Use C++ exception handling.
	* infcmd.c: Use C++ exception handling.
	* infcall.c: Use C++ exception handling.
	* inf-loop.c: Use C++ exception handling.
	* i386-tdep.c: Use C++ exception handling.
	* i386-linux-tdep.c: Use C++ exception handling.
	* guile/scm-value.c: Use C++ exception handling.
	* guile/scm-type.c: Use C++ exception handling.
	* guile/scm-symtab.c: Use C++ exception handling.
	* guile/scm-symbol.c: Use C++ exception handling.
	* guile/scm-pretty-print.c: Use C++ exception handling.
	* guile/scm-ports.c: Use C++ exception handling.
	* guile/scm-param.c: Use C++ exception handling.
	* guile/scm-math.c: Use C++ exception handling.
	* guile/scm-lazy-string.c: Use C++ exception handling.
	* guile/scm-frame.c: Use C++ exception handling.
	* guile/scm-disasm.c: Use C++ exception handling.
	* guile/scm-cmd.c: Use C++ exception handling.
	* guile/scm-breakpoint.c: Use C++ exception handling.
	* guile/scm-block.c: Use C++ exception handling.
	* guile/guile-internal.h: Use C++ exception handling.
	* gnu-v3-abi.c: Use C++ exception handling.
	* gdbtypes.c: Use C++ exception handling.
	* frame.c: Use C++ exception handling.
	* frame-unwind.c: Use C++ exception handling.
	* fbsd-tdep.c: Use C++ exception handling.
	* f-valprint.c: Use C++ exception handling.
	* exec.c: Use C++ exception handling.
	* event-top.c: Use C++ exception handling.
	* event-loop.c: Use C++ exception handling.
	* eval.c: Use C++ exception handling.
	* dwarf2read.c: Use C++ exception handling.
	* dwarf2loc.c: Use C++ exception handling.
	* dwarf2-frame.c: Use C++ exception handling.
	* dwarf2-frame-tailcall.c: Use C++ exception handling.
	* dwarf-index-write.c: Use C++ exception handling.
	* dwarf-index-cache.c: Use C++ exception handling.
	* dtrace-probe.c: Use C++ exception handling.
	* disasm-selftests.c: Use C++ exception handling.
	* darwin-nat.c: Use C++ exception handling.
	* cp-valprint.c: Use C++ exception handling.
	* cp-support.c: Use C++ exception handling.
	* cp-abi.c: Use C++ exception handling.
	* corelow.c: Use C++ exception handling.
	* completer.c: Use C++ exception handling.
	* compile/compile-object-run.c: Use C++ exception handling.
	* compile/compile-object-load.c: Use C++ exception handling.
	* compile/compile-cplus-symbols.c: Use C++ exception handling.
	* compile/compile-c-symbols.c: Use C++ exception handling.
	* common/selftest.c: Use C++ exception handling.
	* common/new-op.c: Use C++ exception handling.
	* cli/cli-script.c: Use C++ exception handling.
	* cli/cli-interp.c: Use C++ exception handling.
	* cli/cli-cmds.c: Use C++ exception handling.
	* c-varobj.c: Use C++ exception handling.
	* btrace.c: Use C++ exception handling.
	* breakpoint.c: Use C++ exception handling.
	* break-catch-throw.c: Use C++ exception handling.
	* arch-utils.c: Use C++ exception handling.
	* amd64-tdep.c: Use C++ exception handling.
	* ada-valprint.c: Use C++ exception handling.
	* ada-typeprint.c: Use C++ exception handling.
	* ada-lang.c: Use C++ exception handling.
	* aarch64-tdep.c: Use C++ exception handling.

gdb/gdbserver/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* server.c: Use C++ exception handling.
	* linux-low.c: Use C++ exception handling.
	* gdbreplay.c: Use C++ exception handling.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make exceptions use std::string and be self-managing
@ 2019-04-08 15:53 sergiodj+buildbot
  2019-04-12 15:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 15:53 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3d6e9d2336c9ffcedb10f89631981a23dd518e8e ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 3d6e9d2336c9ffcedb10f89631981a23dd518e8e

Make exceptions use std::string and be self-managing

This changes the exception's "message" member to be a shared_ptr
wrapping a std::string.  This allows removing the stack of exception
messages, because now exceptions will self-destruct when needed.  This
also adds a noexcept copy constructor and operator= to gdb_exception,
plus a "what" method.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* xml-support.c (gdb_xml_parser::parse): Update.
	* x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
	* value.c (show_convenience): Update.
	* unittests/cli-utils-selftests.c (test_number_or_range_parser)
	(test_parse_flags_qcs): Update.
	* thread.c (thr_try_catch_cmd): Update.
	* target.c (target_translate_tls_address): Update.
	* stack.c (print_frame_arg, read_frame_local, read_frame_arg)
	(info_frame_command_core, frame_apply_command_count): Update.
	* rust-exp.y (rust_lex_exception_test): Update.
	* riscv-tdep.c (riscv_print_one_register_info): Update.
	* remote.c (remote_target::enable_btrace): Update.
	* record-btrace.c (record_btrace_enable_warn): Update.
	* python/py-utils.c (gdbpy_convert_exception): Update.
	* printcmd.c (do_one_display, print_variable_and_value): Update.
	* mi/mi-main.c (mi_print_exception): Update.
	* mi/mi-interp.c (mi_cmd_interpreter_exec): Use SCOPE_EXIT.
	* mi/mi-cmd-stack.c (list_arg_or_local): Update.
	* linux-nat.c (linux_nat_target::attach): Update.
	* linux-fork.c (class scoped_switch_fork_info): Update.
	* infrun.c (displaced_step_prepare): Update.
	* infcall.c (call_function_by_hand_dummy): Update.
	* guile/scm-exception.c (gdbscm_scm_from_gdb_exception): Update.
	* gnu-v3-abi.c (print_one_vtable): Update.
	* frame.c (get_prev_frame_always): Update.
	* f-valprint.c (info_common_command_for_block): Update.
	* exec.c (try_open_exec_file): Update.
	* exceptions.c (print_exception, exception_print)
	(exception_fprintf, exception_print_same): Update.
	* dwarf2-frame.c (dwarf2_build_frame_info): Update.
	* dwarf-index-cache.c (index_cache::store)
	(index_cache::lookup_gdb_index): Update.
	* darwin-nat.c (maybe_cache_shell): Update.
	* cp-valprint.c (cp_print_value_fields): Update.
	* compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol)
	(gcc_cplus_symbol_address): Update.
	* compile/compile-c-symbols.c (gcc_convert_symbol)
	(gcc_symbol_address, generate_c_for_for_one_variable): Update.
	* common/selftest.c: Update.
	* common/common-exceptions.h (struct gdb_exception) <message>: Now
	a std::string.
	(exception_try_scope_entry, exception_try_scope_exit): Don't
	declare.
	(struct exception_try_scope): Remove.
	(TRY): Don't use exception_try_scope.
	(struct gdb_exception): Add constructor, operator=.
	<what>: New method.
	(struct gdb_exception_RETURN_MASK_ALL)
	(struct gdb_exception_RETURN_MASK_ERROR)
	(struct gdb_exception_RETURN_MASK_QUIT): Add constructor.
	(struct gdb_quit_bad_alloc): Update.
	* common/common-exceptions.c (exception_none): Change
	initializer.
	(struct catcher) <state, exception>: Initialize inline.
	<prev>: Remove member.
	(current_catcher): Remove.
	(catchers): New global.
	(exceptions_state_mc_init): Simplify.
	(catcher_pop): Remove.
	(exceptions_state_mc, exceptions_state_mc_catch): Update.
	(try_scope_depth, exception_try_scope_entry)
	(exception_try_scope_exit): Remove.
	(throw_exception_sjlj): Update.
	(exception_messages, exception_messages_size): Remove.
	(throw_it): Simplify.
	(gdb_exception_sliced_copy): Remove.
	(throw_exception_cxx): Update.
	* cli/cli-script.c (script_from_file): Update.
	* breakpoint.c (insert_bp_location, update_breakpoint_locations):
	Update.
	* ada-valprint.c (ada_val_print): Update.
	* ada-lang.c (ada_to_fixed_type_1, ada_exception_name_addr)
	(create_excep_cond_exprs): Update.

gdb/gdbserver/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* server.c (handle_btrace_general_set, handle_qxfer_btrace)
	(handle_qxfer_btrace_conf, detach_or_kill_for_exit_cleanup)
	(captured_main, main): Update.
	* gdbreplay.c (main): Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Simplify exception handling
@ 2019-04-08 15:37 sergiodj+buildbot
  2019-04-12 15:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08 15:37 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c5c10118216867e133c132b4f46e19fb6aa9258a ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: c5c10118216867e133c132b4f46e19fb6aa9258a

Simplify exception handling

Now that cleanups have been removed, TRY/CATCH can't be SJLJ-based any
more.  This patch simplifies the exception handling code, by removing
the non-working variants.

Note that the "pure" C++ exception handling code is removed as well; I
think the route forward must be to change exceptions to be
self-destructing, so that try_scope_depth can simply be removed.

Some longjmp-based code remains, as it is needed to throw an exception
through readline.

gdb/ChangeLog
2019-04-08  Tom Tromey  <tom@tromey.com>

	* common/common-exceptions.h (GDB_XCPT_SJMP, GDB_XCPT_TRY)
	(GDB_XCPT_RAW_TRY, GDB_XCPT): Remove.
	(TRY, CATCH, END_CATCH): Remove some definitions.
	* common/common-exceptions.c: Don't use GDB_XCPT.
	(catcher_list_size): Remove.
	(throw_exception, throw_it): Simplify.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix x86_64-rdos build fail
@ 2019-04-08  4:59 sergiodj+buildbot
  2019-04-12 15:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-08  4:59 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5f2a6b85105b51f2963aaeb1212c724cab678050 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 5f2a6b85105b51f2963aaeb1212c724cab678050

Fix x86_64-rdos build fail

x86_64-rdos is one of the few x86_64 targets that is 64-bit only and
the x86_64 configure entries don't depend on elf-vxworks.lo.  This
results in undefined references from elfxx-x86.o.

	* configure.ac (elfxx_x86): Define and use.
	* configure: Regenerate.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24421, Wrong brackets in opcodes/arm-dis.c
@ 2019-04-07 13:40 sergiodj+buildbot
  2019-04-12 15:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-07 13:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT dffaa15c481cea4081732d616334e24abc557fd1 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: dffaa15c481cea4081732d616334e24abc557fd1

PR24421, Wrong brackets in opcodes/arm-dis.c

	PR 24421
	* arm-dis.c (print_insn_coprocessor): Correct bracket placement.
	(print_insn_neon, print_insn_arm): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Merge libiberty from gcc
@ 2019-04-07 13:25 sergiodj+buildbot
  2019-04-12 15:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-07 13:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 07ffcfecac22d21774a110db0f65f0387c8f1102 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 07ffcfecac22d21774a110db0f65f0387c8f1102

Merge libiberty from gcc


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Revert the header-sorting patch
@ 2019-04-06 20:05 sergiodj+buildbot
  2019-04-12 15:01 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-06 20:05 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4de283e4b5f21207fe12f99913d1f28d4f07843c ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 4de283e4b5f21207fe12f99913d1f28d4f07843c

Revert the header-sorting patch

Andreas Schwab and John Baldwin pointed out some bugs in the header
sorting patch; and I noticed that the output was not correct when
limited to a subset of files (a bug in my script).

So, I'm reverting the patch.  I may try again after fixing the issues
pointed out.

gdb/ChangeLog
2019-04-05  Tom Tromey  <tom@tromey.com>

	Revert the header-sorting patch.
	* ft32-tdep.c: Revert.
	* frv-tdep.c: Revert.
	* frv-linux-tdep.c: Revert.
	* frame.c: Revert.
	* frame-unwind.c: Revert.
	* frame-base.c: Revert.
	* fork-child.c: Revert.
	* findvar.c: Revert.
	* findcmd.c: Revert.
	* filesystem.c: Revert.
	* filename-seen-cache.h: Revert.
	* filename-seen-cache.c: Revert.
	* fbsd-tdep.c: Revert.
	* fbsd-nat.h: Revert.
	* fbsd-nat.c: Revert.
	* f-valprint.c: Revert.
	* f-typeprint.c: Revert.
	* f-lang.c: Revert.
	* extension.h: Revert.
	* extension.c: Revert.
	* extension-priv.h: Revert.
	* expprint.c: Revert.
	* exec.h: Revert.
	* exec.c: Revert.
	* exceptions.c: Revert.
	* event-top.c: Revert.
	* event-loop.c: Revert.
	* eval.c: Revert.
	* elfread.c: Revert.
	* dwarf2read.h: Revert.
	* dwarf2read.c: Revert.
	* dwarf2loc.c: Revert.
	* dwarf2expr.h: Revert.
	* dwarf2expr.c: Revert.
	* dwarf2-frame.c: Revert.
	* dwarf2-frame-tailcall.c: Revert.
	* dwarf-index-write.h: Revert.
	* dwarf-index-write.c: Revert.
	* dwarf-index-common.c: Revert.
	* dwarf-index-cache.h: Revert.
	* dwarf-index-cache.c: Revert.
	* dummy-frame.c: Revert.
	* dtrace-probe.c: Revert.
	* disasm.h: Revert.
	* disasm.c: Revert.
	* disasm-selftests.c: Revert.
	* dictionary.c: Revert.
	* dicos-tdep.c: Revert.
	* demangle.c: Revert.
	* dcache.h: Revert.
	* dcache.c: Revert.
	* darwin-nat.h: Revert.
	* darwin-nat.c: Revert.
	* darwin-nat-info.c: Revert.
	* d-valprint.c: Revert.
	* d-namespace.c: Revert.
	* d-lang.c: Revert.
	* ctf.c: Revert.
	* csky-tdep.c: Revert.
	* csky-linux-tdep.c: Revert.
	* cris-tdep.c: Revert.
	* cris-linux-tdep.c: Revert.
	* cp-valprint.c: Revert.
	* cp-support.c: Revert.
	* cp-namespace.c: Revert.
	* cp-abi.c: Revert.
	* corelow.c: Revert.
	* corefile.c: Revert.
	* continuations.c: Revert.
	* completer.h: Revert.
	* completer.c: Revert.
	* complaints.c: Revert.
	* coffread.c: Revert.
	* coff-pe-read.c: Revert.
	* cli-out.h: Revert.
	* cli-out.c: Revert.
	* charset.c: Revert.
	* c-varobj.c: Revert.
	* c-valprint.c: Revert.
	* c-typeprint.c: Revert.
	* c-lang.c: Revert.
	* buildsym.c: Revert.
	* buildsym-legacy.c: Revert.
	* build-id.h: Revert.
	* build-id.c: Revert.
	* btrace.c: Revert.
	* bsd-uthread.c: Revert.
	* breakpoint.h: Revert.
	* breakpoint.c: Revert.
	* break-catch-throw.c: Revert.
	* break-catch-syscall.c: Revert.
	* break-catch-sig.c: Revert.
	* blockframe.c: Revert.
	* block.c: Revert.
	* bfin-tdep.c: Revert.
	* bfin-linux-tdep.c: Revert.
	* bfd-target.c: Revert.
	* bcache.c: Revert.
	* ax-general.c: Revert.
	* ax-gdb.h: Revert.
	* ax-gdb.c: Revert.
	* avr-tdep.c: Revert.
	* auxv.c: Revert.
	* auto-load.c: Revert.
	* arm-wince-tdep.c: Revert.
	* arm-tdep.c: Revert.
	* arm-symbian-tdep.c: Revert.
	* arm-pikeos-tdep.c: Revert.
	* arm-obsd-tdep.c: Revert.
	* arm-nbsd-tdep.c: Revert.
	* arm-nbsd-nat.c: Revert.
	* arm-linux-tdep.c: Revert.
	* arm-linux-nat.c: Revert.
	* arm-fbsd-tdep.c: Revert.
	* arm-fbsd-nat.c: Revert.
	* arm-bsd-tdep.c: Revert.
	* arch-utils.c: Revert.
	* arc-tdep.c: Revert.
	* arc-newlib-tdep.c: Revert.
	* annotate.h: Revert.
	* annotate.c: Revert.
	* amd64-windows-tdep.c: Revert.
	* amd64-windows-nat.c: Revert.
	* amd64-tdep.c: Revert.
	* amd64-sol2-tdep.c: Revert.
	* amd64-obsd-tdep.c: Revert.
	* amd64-obsd-nat.c: Revert.
	* amd64-nbsd-tdep.c: Revert.
	* amd64-nbsd-nat.c: Revert.
	* amd64-nat.c: Revert.
	* amd64-linux-tdep.c: Revert.
	* amd64-linux-nat.c: Revert.
	* amd64-fbsd-tdep.c: Revert.
	* amd64-fbsd-nat.c: Revert.
	* amd64-dicos-tdep.c: Revert.
	* amd64-darwin-tdep.c: Revert.
	* amd64-bsd-nat.c: Revert.
	* alpha-tdep.c: Revert.
	* alpha-obsd-tdep.c: Revert.
	* alpha-nbsd-tdep.c: Revert.
	* alpha-mdebug-tdep.c: Revert.
	* alpha-linux-tdep.c: Revert.
	* alpha-linux-nat.c: Revert.
	* alpha-bsd-tdep.c: Revert.
	* alpha-bsd-nat.c: Revert.
	* aix-thread.c: Revert.
	* agent.c: Revert.
	* addrmap.c: Revert.
	* ada-varobj.c: Revert.
	* ada-valprint.c: Revert.
	* ada-typeprint.c: Revert.
	* ada-tasks.c: Revert.
	* ada-lang.c: Revert.
	* aarch64-tdep.c: Revert.
	* aarch64-ravenscar-thread.c: Revert.
	* aarch64-newlib-tdep.c: Revert.
	* aarch64-linux-tdep.c: Revert.
	* aarch64-linux-nat.c: Revert.
	* aarch64-fbsd-tdep.c: Revert.
	* aarch64-fbsd-nat.c: Revert.
	* aarch32-linux-nat.c: Revert.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Move x86-specific linker options to elf_linker_x86_params
@ 2019-04-06 14:44 sergiodj+buildbot
  2019-04-12 15:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-06 14:44 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5b9c07b2782fb9368f06c2561b7329c384ec5da0 ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: 5b9c07b2782fb9368f06c2561b7329c384ec5da0

x86: Move x86-specific linker options to elf_linker_x86_params

Remove x86-specific linker options from bfd_link_info and put them in
elf_linker_x86_params.  Add _bfd_elf_linker_x86_set_options to pass
x86-specific linker options from ld to bfd.

bfd/

	* elf-linker-x86.h: New file.
	* elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
	to get x86-specific linker options.
	* elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
	(elf_x86_64_check_relocs): Likewise.
	(elf_x86_64_relocate_section): Likewise.
	(elf_x86_64_link_setup_gnu_properties): Likewise.
	* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
	(_bfd_x86_elf_link_setup_gnu_properties): Likewise.
	(_bfd_elf_linker_x86_set_options): New function.
	* elfxx-x86.h: Include "elf-linker-x86.h".
	(elf_x86_link_hash_table): Add params.

include/

	* bfdlink.h (bfd_link_info): Remove x86-specific linker options.

ld/

	* Makefile.am (ELF_X86_DEPS): Add $(srcdir)/emultempl/elf-x86.em.
	(eelf_i386_sol2.c): Also depend on
	$(srcdir)/emultempl/solaris2-x86.em.
	(eelf_x86_64_sol2.c): Likewise.
	* Makefile.in: Regenerated.
	* emulparams/call_nop.sh: Set x86-specific linker options via
	params.
	* emulparams/cet.sh: Likewise.
	* emulparams/reloc_overflow.sh: Likewise.
	* emulparams/elf32_x86_64.sh (EXTRA_EM_FILE): New.  Set to
	"elf-x86".
	* emulparams/elf_i386.sh: Likewise.
	* emulparams/elf_i386_be.sh: Likewise.
	* emulparams/elf_i386_chaos.sh: Likewise.
	* emulparams/elf_i386_ldso.sh: Likewise.
	* emulparams/elf_i386_vxworks.sh: Likewise.
	* emulparams/elf_iamcu.sh: Likewise.
	* emulparams/elf_k1om.sh: Likewise.
	* emulparams/elf_l1om.sh: Likewise.
	* emulparams/elf_x86_64.sh: Likewise.
	* emulparams/elf_i386_sol2.sh (EXTRA_EM_FILE): Changed to
	"solaris2-x86".
	* emulparams/elf_x86_64_sol2.sh: Likewise.
	* emultempl/elf-x86.em: New file.
	* emultempl/solaris2-x86.em: Likewise.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Don't
	set link_info.call_nop_byte.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Sort includes for files gdb/[a-f]*.[chyl].
@ 2019-04-06  4:55 sergiodj+buildbot
  2019-04-12 14:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-06  4:55 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d55e5aa6b29906346c51ad00e6a9b112590aa294 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: d55e5aa6b29906346c51ad00e6a9b112590aa294

Sort includes for files gdb/[a-f]*.[chyl].

This patch sorts the include files for the files [a-f]*.[chyl].
The patch was written by a script.

Tested by the buildbot.

I will follow up with patches to sort the remaining files, by sorting
a subset, testing them, and then checking them in.

gdb/ChangeLog
2019-04-05  Tom Tromey  <tom@tromey.com>

	* ft32-tdep.c: Sort headers.
	* frv-tdep.c: Sort headers.
	* frv-linux-tdep.c: Sort headers.
	* frame.c: Sort headers.
	* frame-unwind.c: Sort headers.
	* frame-base.c: Sort headers.
	* fork-child.c: Sort headers.
	* findvar.c: Sort headers.
	* findcmd.c: Sort headers.
	* filesystem.c: Sort headers.
	* filename-seen-cache.h: Sort headers.
	* filename-seen-cache.c: Sort headers.
	* fbsd-tdep.c: Sort headers.
	* fbsd-nat.h: Sort headers.
	* fbsd-nat.c: Sort headers.
	* f-valprint.c: Sort headers.
	* f-typeprint.c: Sort headers.
	* f-lang.c: Sort headers.
	* extension.h: Sort headers.
	* extension.c: Sort headers.
	* extension-priv.h: Sort headers.
	* expprint.c: Sort headers.
	* exec.h: Sort headers.
	* exec.c: Sort headers.
	* exceptions.c: Sort headers.
	* event-top.c: Sort headers.
	* event-loop.c: Sort headers.
	* eval.c: Sort headers.
	* elfread.c: Sort headers.
	* dwarf2read.h: Sort headers.
	* dwarf2read.c: Sort headers.
	* dwarf2loc.c: Sort headers.
	* dwarf2expr.h: Sort headers.
	* dwarf2expr.c: Sort headers.
	* dwarf2-frame.c: Sort headers.
	* dwarf2-frame-tailcall.c: Sort headers.
	* dwarf-index-write.h: Sort headers.
	* dwarf-index-write.c: Sort headers.
	* dwarf-index-common.c: Sort headers.
	* dwarf-index-cache.h: Sort headers.
	* dwarf-index-cache.c: Sort headers.
	* dummy-frame.c: Sort headers.
	* dtrace-probe.c: Sort headers.
	* disasm.h: Sort headers.
	* disasm.c: Sort headers.
	* disasm-selftests.c: Sort headers.
	* dictionary.c: Sort headers.
	* dicos-tdep.c: Sort headers.
	* demangle.c: Sort headers.
	* dcache.h: Sort headers.
	* dcache.c: Sort headers.
	* darwin-nat.h: Sort headers.
	* darwin-nat.c: Sort headers.
	* darwin-nat-info.c: Sort headers.
	* d-valprint.c: Sort headers.
	* d-namespace.c: Sort headers.
	* d-lang.c: Sort headers.
	* ctf.c: Sort headers.
	* csky-tdep.c: Sort headers.
	* csky-linux-tdep.c: Sort headers.
	* cris-tdep.c: Sort headers.
	* cris-linux-tdep.c: Sort headers.
	* cp-valprint.c: Sort headers.
	* cp-support.c: Sort headers.
	* cp-namespace.c: Sort headers.
	* cp-abi.c: Sort headers.
	* corelow.c: Sort headers.
	* corefile.c: Sort headers.
	* continuations.c: Sort headers.
	* completer.h: Sort headers.
	* completer.c: Sort headers.
	* complaints.c: Sort headers.
	* coffread.c: Sort headers.
	* coff-pe-read.c: Sort headers.
	* cli-out.h: Sort headers.
	* cli-out.c: Sort headers.
	* charset.c: Sort headers.
	* c-varobj.c: Sort headers.
	* c-valprint.c: Sort headers.
	* c-typeprint.c: Sort headers.
	* c-lang.c: Sort headers.
	* buildsym.c: Sort headers.
	* buildsym-legacy.c: Sort headers.
	* build-id.h: Sort headers.
	* build-id.c: Sort headers.
	* btrace.c: Sort headers.
	* bsd-uthread.c: Sort headers.
	* breakpoint.h: Sort headers.
	* breakpoint.c: Sort headers.
	* break-catch-throw.c: Sort headers.
	* break-catch-syscall.c: Sort headers.
	* break-catch-sig.c: Sort headers.
	* blockframe.c: Sort headers.
	* block.c: Sort headers.
	* bfin-tdep.c: Sort headers.
	* bfin-linux-tdep.c: Sort headers.
	* bfd-target.c: Sort headers.
	* bcache.c: Sort headers.
	* ax-general.c: Sort headers.
	* ax-gdb.h: Sort headers.
	* ax-gdb.c: Sort headers.
	* avr-tdep.c: Sort headers.
	* auxv.c: Sort headers.
	* auto-load.c: Sort headers.
	* arm-wince-tdep.c: Sort headers.
	* arm-tdep.c: Sort headers.
	* arm-symbian-tdep.c: Sort headers.
	* arm-pikeos-tdep.c: Sort headers.
	* arm-obsd-tdep.c: Sort headers.
	* arm-nbsd-tdep.c: Sort headers.
	* arm-nbsd-nat.c: Sort headers.
	* arm-linux-tdep.c: Sort headers.
	* arm-linux-nat.c: Sort headers.
	* arm-fbsd-tdep.c: Sort headers.
	* arm-fbsd-nat.c: Sort headers.
	* arm-bsd-tdep.c: Sort headers.
	* arch-utils.c: Sort headers.
	* arc-tdep.c: Sort headers.
	* arc-newlib-tdep.c: Sort headers.
	* annotate.h: Sort headers.
	* annotate.c: Sort headers.
	* amd64-windows-tdep.c: Sort headers.
	* amd64-windows-nat.c: Sort headers.
	* amd64-tdep.c: Sort headers.
	* amd64-sol2-tdep.c: Sort headers.
	* amd64-obsd-tdep.c: Sort headers.
	* amd64-obsd-nat.c: Sort headers.
	* amd64-nbsd-tdep.c: Sort headers.
	* amd64-nbsd-nat.c: Sort headers.
	* amd64-nat.c: Sort headers.
	* amd64-linux-tdep.c: Sort headers.
	* amd64-linux-nat.c: Sort headers.
	* amd64-fbsd-tdep.c: Sort headers.
	* amd64-fbsd-nat.c: Sort headers.
	* amd64-dicos-tdep.c: Sort headers.
	* amd64-darwin-tdep.c: Sort headers.
	* amd64-bsd-nat.c: Sort headers.
	* alpha-tdep.c: Sort headers.
	* alpha-obsd-tdep.c: Sort headers.
	* alpha-nbsd-tdep.c: Sort headers.
	* alpha-mdebug-tdep.c: Sort headers.
	* alpha-linux-tdep.c: Sort headers.
	* alpha-linux-nat.c: Sort headers.
	* alpha-bsd-tdep.c: Sort headers.
	* alpha-bsd-nat.c: Sort headers.
	* aix-thread.c: Sort headers.
	* agent.c: Sort headers.
	* addrmap.c: Sort headers.
	* ada-varobj.c: Sort headers.
	* ada-valprint.c: Sort headers.
	* ada-typeprint.c: Sort headers.
	* ada-tasks.c: Sort headers.
	* ada-lang.c: Sort headers.
	* aarch64-tdep.c: Sort headers.
	* aarch64-ravenscar-thread.c: Sort headers.
	* aarch64-newlib-tdep.c: Sort headers.
	* aarch64-linux-tdep.c: Sort headers.
	* aarch64-linux-nat.c: Sort headers.
	* aarch64-fbsd-tdep.c: Sort headers.
	* aarch64-fbsd-nat.c: Sort headers.
	* aarch32-linux-nat.c: Sort headers.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Use linux_get_auxv to get AT_PHDR in the PPC stub
@ 2019-04-05 17:49 sergiodj+buildbot
  2019-04-12 14:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05 17:49 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 0570503dd31bc20294e228339fcbdd39b19608cc ***

Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
Branch: master
Commit: 0570503dd31bc20294e228339fcbdd39b19608cc

Use linux_get_auxv to get AT_PHDR in the PPC stub

This patch fixes a build error due to a call to ppc_get_auxv that was
left over after linux_get_hwcap and linux_get_hwcap2 were introduced
in:

974c89e0882ddb03e294eca76a9e3d3bef90eacf gdbserver: Add
linux_get_hwcap

Because the missing call fetched AT_PHDR and not AT_HWCAP,
linux_get_auxv is now visible.

This use also required ppc_get_auxv to return a status variable
indicating that the AT_PHDR entry was not found separately from the
actual value of of the auxv entry.  Therefore, the new linux_get_auxv
function is changed to return a status variable and write the entry
value to a pointer passed as an argument.

Note that linux_get_hwcap and linux_get_hwcap2 still use the return
value as both an indicator of that the entry wasn't found and as the
actual value of the entry.

gdb/gdbserver/ChangeLog:
2019-04-05  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>

	* linux-low.c (linux_get_auxv): Remove static.  Return auxv entry
	value in argument pointer, return 1 if the entry is found and 0
	otherwise.  Move comment.
	(linux_get_hwcap, linux_get_hwcap2): Use modified linux_get_auxv.
	* linux-low.h (linux_get_auxv): Declare.
	* linux-ppc-low.c (is_elfv2_inferior): Use linux_get_auxv.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move innermost_block_tracker global to parse_state
@ 2019-04-05  5:50 sergiodj+buildbot
  2019-04-12 14:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  5:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 699bd4cfa8895d0767d491a3e44ac09d3f4d1801 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 699bd4cfa8895d0767d491a3e44ac09d3f4d1801

Move innermost_block_tracker global to parse_state

This changes the parsing API so that callers that are interested in
tracking the innermost block must instantiate an
innermost_block_tracker and pass it in.  Then, a pointer to this
object is stored in the parser_state.

2019-04-04  Tom Tromey  <tom@tromey.com>

	* varobj.c (varobj_create): Update.
	* rust-exp.y (struct rust_parser) <update_innermost_block,
	lookup_symbol>: New methods.
	(rust_parser::update_innermost_block, rust_parser::lookup_symbol):
	Rename.
	(rust_parser::rust_lookup_type)
	(rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
	* printcmd.c (display_command, do_one_display): Update.
	* parser-defs.h (struct parser_state) <parser_state>: Add
	"tracker" parameter.
	(block_tracker): New member.
	(class innermost_block_tracker) <innermost_block_tracker>: Add
	"types" parameter.
	<reset>: Remove method.
	(innermost_block): Don't declare.
	(null_post_parser): Update.
	* parse.c (innermost_block): Remove global.
	(write_dollar_variable): Update.
	(parse_exp_1, parse_exp_in_context): Add "tracker" parameter.
	Remove "tracker_types" parameter.
	(parse_expression): Add "tracker" parameter.
	(parse_expression_for_completion): Update.
	(null_post_parser): Add "tracker" parameter.
	* p-exp.y: Update rules.
	* m2-exp.y: Update rules.
	* language.h (struct language_defn) <la_post_parser>: Add
	"tracker" parameter.
	* go-exp.y: Update rules.
	* f-exp.y: Update rules.
	* expression.h (parse_expression, parse_exp_1): Add "tracker"
	parameter.
	* d-exp.y: Update rules.
	* c-exp.y: Update rules.
	* breakpoint.c (set_breakpoint_condition): Create an
	innermost_block_tracker.
	(watch_command_1): Likewise.
	* ada-lang.c (resolve): Add "tracker" parameter.
	(resolve_subexp): Likewise.
	* ada-exp.y (write_var_from_sym): Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move completion parsing to parser_state
@ 2019-04-05  5:20 sergiodj+buildbot
  2019-04-12 14:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  5:20 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2a61252965c91540133bece7deb92eb22e3cf929 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 2a61252965c91540133bece7deb92eb22e3cf929

Move completion parsing to parser_state

This moves the globals and functions related to parsing for completion
to parser_state.  A new structure is introduced in order to return
completion results from the parse back to
parse_expression_for_completion.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y (rust_parser::lex_identifier, rustyylex)
	(rust_parser::convert_ast_to_expression, rust_parse)
	(rust_lex_test_completion, rust_lex_tests): Update.
	* parser-defs.h (struct expr_completion_state): New.
	(struct parser_state) <parser_state>: Add completion parameter.
	<mark_struct_expression, mark_completion_tag>: New methods.
	<parse_completion, m_completion_state>: New members.
	(prefixify_expression, null_post_parser): Update.
	(mark_struct_expression, mark_completion_tag): Don't declare.
	* parse.c (parse_completion, expout_last_struct)
	(expout_tag_completion_type, expout_completion_name): Remove
	globals.
	(parser_state::mark_struct_expression)
	(parser_state::mark_completion_tag): Now methods.
	(prefixify_expression): Add last_struct parameter.
	(prefixify_subexp): Likewise.
	(parse_exp_1): Update.
	(parse_exp_in_context): Add cstate parameter.  Update.
	(parse_expression_for_completion): Create an
	expr_completion_state.
	(null_post_parser): Add "completion" parameter.
	* p-exp.y: Update rules.
	(yylex): Update.
	* language.h (struct language_defn) <la_post_parser>: Add
	"completing" parameter.
	* go-exp.y: Update rules.
	(lex_one_token): Update.
	* expression.h (parse_completion): Don't declare.
	* d-exp.y: Update rules.
	(lex_one_token): Update rules.
	* c-exp.y: Update rules.
	(lex_one_token): Update.
	* ada-lang.c (resolve): Add "parse_completion" parameter.
	(resolve_subexp): Likewise.
	(ada_resolve_function): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move lexptr and prev_lexptr to parser_state
@ 2019-04-05  4:48 sergiodj+buildbot
  2019-04-12 14:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  4:48 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5776fca307b8af3d852525b77e9b917a9aa97370 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 5776fca307b8af3d852525b77e9b917a9aa97370

Move lexptr and prev_lexptr to parser_state

This removes the lexptr and prev_lexptr globals, in favor of members
of parser_state.  prev_lexptr could be isolated to each parser, but
since every parser uses it, that did not seem necessary.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y (struct rust_parser) <lex_hex, lex_escape,
	lex_operator, push_back>: New methods.
	Update all rules.
	(rust_parser::lex_hex, lex_escape): Rename and update.
	(rust_parser::lex_string, rust_parser::lex_identifier): Update.
	(rust_parser::lex_operator): Rename and update.
	(rust_parser::lex_number, rustyylex, rustyyerror)
	(rust_lex_test_init, rust_lex_test_sequence)
	(rust_lex_test_push_back, rust_lex_tests): Update.
	* parser-defs.h (struct parser_state) <parser_state>: Add "input"
	parameter.
	<lexptr, prev_lexptr>: New members.
	(lexptr, prev_lexptr): Don't declare.
	* parse.c (lexptr, prev_lexptr): Remove globals.
	(parse_exp_in_context): Update.
	* p-exp.y (yylex, yyerror): Update.
	* m2-exp.y (parse_number, yylex, yyerror): Update.
	* go-exp.y (lex_one_token, yyerror): Update.
	* f-exp.y (match_string_literal, yylex, yyerror): Update.
	* d-exp.y (lex_one_token, yyerror): Update.
	* c-exp.y (scan_macro_expansion, finished_macro_expansion)
	(lex_one_token, yyerror): Update.
	* ada-lex.l (YY_INPUT): Update.
	(rewind_to_char): Update.
	* ada-exp.y (yyerror): Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move comma_terminates global to parser_state
@ 2019-04-05  4:32 sergiodj+buildbot
  2019-04-12 14:53 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  4:32 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 8621b685bfdcb8773b8177fb2b89e45499902868 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 8621b685bfdcb8773b8177fb2b89e45499902868

Move comma_terminates global to parser_state

This moves the comma_terminates global to parser_state.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y (rustyylex, rust_lex_tests): Update.
	* parser-defs.h (struct parser_state) <parser_state>: Add new
	parameter.
	<comma_terminates>: New member.
	(comma_terminates): Don't declare global.
	* parse.c (comma_terminates): Remove global.
	(parse_exp_in_context): Update.
	* p-exp.y (yylex): Update.
	* m2-exp.y (yylex): Update.
	* go-exp.y (lex_one_token): Update.
	* f-exp.y (yylex): Update.
	* d-exp.y (lex_one_token): Update.
	* c-exp.y (lex_one_token): Update.
	* ada-lex.l: Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove paren_depth global
@ 2019-04-05  4:17 sergiodj+buildbot
  2019-04-12 14:52 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  4:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 28aaf3fdf9562c018dcf6ab4d0a4c644fff8d696 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 28aaf3fdf9562c018dcf6ab4d0a4c644fff8d696

Remove paren_depth global

This removes the "paren_depth" global.  In most cases, it is made into
a static global in a given parser.  I consider this a slight
improvement, because it makes it clear that the variable isn't used
for communication between different modules of gdb.  The one exception
is the Rust parser, which already incorporates all local state into a
transient object; in this case the parser depth is now a member.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y (struct rust_parser) <paren_depth>: New member.
	(rustyylex, rust_lex_test_init, rust_lex_test_one)
	(rust_lex_test_sequence, rust_lex_test_push_back): Update.
	* parser-defs.h (paren_depth): Don't declare.
	* parse.c (paren_depth): Remove global.
	(parse_exp_in_context): Update.
	* p-exp.y (paren_depth): New global.
	(pascal_parse): Initialize it.
	* m2-exp.y (paren_depth): New global.
	(m2_parse): Initialize it.
	* go-exp.y (paren_depth): New global.
	(go_parse): Initialize it.
	* f-exp.y (paren_depth): New global.
	(f_parse): Initialize it.
	* d-exp.y (paren_depth): New global.
	(d_parse): Initialize it.
	* c-exp.y (paren_depth): New global.
	(c_parse): Initialize it.
	* ada-lex.l (paren_depth): New global.
	(lexer_init): Initialize it.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move expression_context_* globals to parser_state
@ 2019-04-05  4:17 sergiodj+buildbot
  2019-04-12 14:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  4:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1e58a4a4db997cf09315c22f3da725d1da7f9ee7 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 1e58a4a4db997cf09315c22f3da725d1da7f9ee7

Move expression_context_* globals to parser_state

This moves the expression_context_block and expression_context_pc
globals to be members of parser_state and updates the parsers.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y (rust_parser::crate_name, rust_parser::super_name)
	(rust_parser::convert_ast_to_type)
	(rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
	* parser-defs.h (struct parser_state) <parser_state>: Add
	parameters.  Initialize new members.
	<expression_context_block, expression_context_pc>: New members.
	* parse.c (expression_context_block, expression_context_pc):
	Remove globals.
	(parse_exp_in_context): Update.
	* p-exp.y: Update all rules.
	(yylex): Update.
	* m2-exp.y: Update all rules.
	(yylex): Update.
	* go-exp.y (yylex): Update.
	* f-exp.y (yylex): Update.
	* d-exp.y: Update all rules.
	(yylex): Update.
	* c-exp.y: Update all rules.
	(lex_one_token, classify_name, yylex, c_parse): Update.
	* ada-exp.y (write_var_or_type, write_name_assoc): Update.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Turn parse_gdbarch into a method
@ 2019-04-05  3:47 sergiodj+buildbot
  2019-04-12 14:49 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  3:47 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT fa9f5be6830e9245ee1ad1eab9725cc039d45d07 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: fa9f5be6830e9245ee1ad1eab9725cc039d45d07

Turn parse_gdbarch into a method

This changes parse_gdbarch into a method of parser_state.  This patch
was written by a script.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* rust-exp.y: Replace "parse_gdbarch" with method call.
	* parse.c (write_dollar_variable, insert_type_address_space):
	Replace "parse_gdbarch" with method call.
	* p-exp.y (parse_type, yylex): Replace "parse_gdbarch" with method
	call.
	* objc-lang.c (end_msglist): Replace "parse_gdbarch" with method
	call.
	* m2-exp.y (parse_type, parse_m2_type, yylex): Replace
	"parse_gdbarch" with method call.
	* go-exp.y (parse_type, classify_name): Replace "parse_gdbarch"
	with method call.
	* f-exp.y (parse_type, parse_f_type, yylex): Replace
	"parse_gdbarch" with method call.
	* d-exp.y (parse_type, parse_d_type, lex_one_token): Replace
	"parse_gdbarch" with method call.
	* c-exp.y (parse_type, parse_number, classify_name): Replace
	"parse_gdbarch" with method call.
	* ada-lex.l: Replace "parse_gdbarch" with method call.
	* ada-exp.y (parse_type, find_primitive_type, type_char)
	(type_system_address): Replace "parse_gdbarch" with method call.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make base class for parser_state
@ 2019-04-05  3:47 sergiodj+buildbot
  2019-04-12 14:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  3:47 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 37eedb39824dc26c82a92b5515a352d7de0c9b5b ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 37eedb39824dc26c82a92b5515a352d7de0c9b5b

Make base class for parser_state

This makes a new base class, expr_builder, for parser_state.  This
separates the state needed to construct an expression from the state
needed by the parsers.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* gdbarch.h, gdbarch.c: Rebuild.
	* gdbarch.sh (dtrace_parse_probe_argument): Change type.
	* stap-probe.h:
	(struct stap_parse_info): Replace "parser_state" with
	"expr_builder".
	* parser-defs.h (struct expr_builder): Rename from "parser_state".
	(parser_state): New class.
	* parse.c (expr_builder): Rename.
	(expr_builder::release): Rename.
	(write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
	(write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
	(write_exp_elt_longcst, write_exp_elt_floatcst)
	(write_exp_elt_type, write_exp_elt_intern, write_exp_string)
	(write_exp_string_vector, write_exp_bitstring)
	(write_exp_msymbol, mark_struct_expression)
	(write_dollar_variable)
	(insert_type_address_space, increase_expout_size): Replace
	"parser_state" with "expr_builder".
	* dtrace-probe.c: Replace "parser_state" with "expr_builder".
	* amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Replace
	"parser_state" with "expr_builder".


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Make increase_expout_size static
@ 2019-04-05  2:42 sergiodj+buildbot
  2019-04-12 14:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  2:42 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e3980ce2a9bf19ade17fdd9817765f2d1e17a0d8 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: e3980ce2a9bf19ade17fdd9817765f2d1e17a0d8

Make increase_expout_size static

increase_expout_size is only called from parse.c, and probably only
should be.  This makes it "static".  Tested by rebuilding.

gdb/ChangeLog
2019-04-04  Tom Tromey  <tom@tromey.com>

	* parser-defs.h (increase_expout_size): Don't declare.
	* parse.c (increase_expout_size): Now static.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PowerPC bc extended branch mnemonics and "y" hints
@ 2019-04-05  2:26 sergiodj+buildbot
  2019-04-12 14:47 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  2:26 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 66e85460855837af3a3b0224f7846c436cc7d1e0 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 66e85460855837af3a3b0224f7846c436cc7d1e0

PowerPC bc extended branch mnemonics and "y" hints

This patch fixes a problem with disassembly of branch instructions
for processors complying with PowerPC ISA versions prior to version
2.0, ie. those that use "y" bit branch taken hints.  Many of the
extended bcctr and bclr mnemonics that should have disassembled with a
"-" suffix, ie. not taken, did not display the "-" due to the ordering
in powerpc_opcodes.  I believe it's been that way from the original
85dcf36d72b commit of ppc-opc.c.

I've also added a BH field (optional) to a few opcodes.  This gives
better disassembly in raw mode, showing the branch taken hint in the
mnemonic as is done for bc.  It would be reasonable to add a BH
field to all bcctr, bclr, and bctar extended mnemonics but that runs
into a small difficulty:  Currently we print all or none of the
optional operands.  That means for example that "bgectr cr2" would
display as "bgectr cr2,0" if a BH field is added to bgectr.

	* ppc-opc.c (XLBH_MASK): Subtract off BH field from BB_MASK.
	(powerpc_opcodes): Reorder bcctr and bclr extended mnemonics
	to favour printing of "-" branch hint when using the "y" bit.
	Allow BH field on bc{ctr,lr,tar}{,l}{-,+}.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add extended mnemonics for bctar. Fix setting of 'at' branch hints.
@ 2019-04-05  2:09 sergiodj+buildbot
  2019-04-12 14:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  2:09 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT aae9718e4d4e8d01dcee22684e82b000203d3e52 ***

Author: Peter Bergner <bergner@vnet.ibm.com>
Branch: master
Commit: aae9718e4d4e8d01dcee22684e82b000203d3e52

Add extended mnemonics for bctar. Fix setting of 'at' branch hints.

opcodes/
	PR gas/24349
	* ppc-opc.c (valid_bo_pre_v2): Add comments.
	(valid_bo_post_v2): Add support for 'at' branch hints.
	(insert_bo): Only error on branch on ctr.
	(get_bo_hint_mask): New function.
	(insert_boe): Add new 'branch_taken' formal argument.  Add support
	for inserting 'at' branch hints.
	(extract_boe): Add new 'branch_taken' formal argument.  Add support
	for extracting 'at' branch hints.
	(insert_bom, extract_bom, insert_bop, extract_bop): New functions.
	(BOE): Delete operand.
	(BOM, BOP): New operands.
	(RM): Update value.
	(XLYLK, XLYLK_MASK, XLYBB_MASK): Delete.
	(powerpc_opcodes) <bc-, bcl-, bca-, bcla-, bclr-, bclrl-, bcctr-,
	bcctrl-, bctar-, bctarl->: Replace BOE with BOM.
	(powerpc_opcodes) <bc+, bcl+, bca+, bcla+, bclr+, bclrl+, bcctr+,
	bcctrl+, bctar+, bctarl+>: Replace BOE with BOP.
	<bdnztar, bdnztarl, bdztar, bdztarl, btar, btarl, bdnztar-, bdnztarl-,
	bdnztar+, bdnztarl+, bdztar-, bdztarl-, bdztar+, bdztarl+, bgetar,
	bnltar, bgetarl, bnltarl, bletar, bngtar, bletarl, bngtarl, bnetar,
	bnetarl, bnstar, bnutar, bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-,
	bnltarl-, bletar-, bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-,
	bnstar-, bnutar-, bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+,
	bnltarl+, bletar+, bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+,
	bnstar+, bnutar+, bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl,
	beqtar, beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
	bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
	buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
	bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
	bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
	bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
	bttarl+>: New extended mnemonics.

gas/
	PR gas/24349
	* testsuite/gas/ppc/power8.s: (bdnztar, bdnztarl, bdztar, bdztarl,
	btar, btarl, bdnztar-, bdnztarl-, bdnztar+, bdnztarl+, bdztar-,
	bdztarl-, bdztar+, bdztarl+, bgetar, bnltar, bgetarl, bnltarl,
	bletar, bngtar, bletarl, bngtarl, bnetar, bnetarl, bnstar, bnutar,
	bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-, bnltarl-, bletar-,
	bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-, bnstar-, bnutar-,
	bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+, bnltarl+, bletar+,
	bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+, bnstar+, bnutar+,
	bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl, beqtar,
	beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
	bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
	buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
	bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
	bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
	bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
	bttarl+): Add tests of extended mnemonics.
	* testsuite/gas/ppc/power8.d: Likewise.  Update previous bctar tests
	to expect new extended mnemonics.
	* testsuite/gas/ppc/a2.s: <bc, bc-, bc+, bcl, bcl-, bcl+>: Update test
	to not use illegal BO value.  Use a more convenient BI value.
	* testsuite/gas/ppc/a2.d: Update tests for new expect output.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PowerPC disassembler: Don't emit trailing spaces
@ 2019-04-05  2:09 sergiodj+buildbot
  2019-04-12 14:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-05  2:09 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c2b1c2754526acff8aae2fe8f5a56c2dd11d0b7f ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: c2b1c2754526acff8aae2fe8f5a56c2dd11d0b7f

PowerPC disassembler: Don't emit trailing spaces

When an instruction has operands, the PowerPC disassembler prints
spaces after the opcode so as to line up operands.  If the operands
are all optional and all default value, then no operands are printed,
leaving trailing spaces.  This patch fixes that.

opcodes/
	* ppc-dis.c (print_insn_powerpc): Delay printing spaces after
	opcode until first operand is output.
gas/
	* testsuite/gas/ppc/476.d: Remove trailing spaces.
	* testsuite/gas/ppc/a2.d: Likewise.
	* testsuite/gas/ppc/booke.d: Likewise.
	* testsuite/gas/ppc/booke_xcoff.d: Likewise.
	* testsuite/gas/ppc/e500.d: Likewise.
	* testsuite/gas/ppc/e500mc.d: Likewise.
	* testsuite/gas/ppc/e6500.d: Likewise.
	* testsuite/gas/ppc/htm.d: Likewise.
	* testsuite/gas/ppc/power6.d: Likewise.
	* testsuite/gas/ppc/power8.d: Likewise.
	* testsuite/gas/ppc/power9.d: Likewise.
	* testsuite/gas/ppc/vle.d: Likewise.
ld/
	* testsuite/ld-powerpc/tlsexe32.d: Remove trailing spaces.
	* testsuite/ld-powerpc/tlsopt5.d: Likewise.
	* testsuite/ld-powerpc/tlsopt5_32.d: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [GDB, Hurd] Fix build; 'target_waitstatus_to_string' call
@ 2019-04-04 23:54 sergiodj+buildbot
  2019-04-12 14:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-04 23:54 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e9f8e3f109d57c119eaaa1e56378926f7f20863f ***

Author: Thomas Schwinge <thomas@codesourcery.com>
Branch: master
Commit: e9f8e3f109d57c119eaaa1e56378926f7f20863f

[GDB, Hurd] Fix build; 'target_waitstatus_to_string' call

Recent commit c29705b71a8ec966478c0dc4712194a95291c6de removed an incomplete
local implementation in favor of 'target_waitstatus_to_string' (thanks!), but
introduced a small typing error:

    In file included from [...]/gdb/gnu-nat.c:24:0:
    [...]/gdb/gnu-nat.c: In member function 'virtual ptid_t gnu_nat_target::wait(ptid_t, target_waitstatus*, int)':
    [...]/gdb/gnu-nat.c:1652:43: error: cannot convert 'target_waitstatus**' to 'const target_waitstatus*' for argument '1' to 'std::__cxx11::string target_waitstatus_to_string(const target_waitstatus*)'
           target_waitstatus_to_string (&status).c_str ());
                                               ^
    [...]/gdb/gnu-nat.h:119:32: note: in definition of macro 'debug'
            __FILE__ , __LINE__ , ##args); } while (0)
                                    ^~~~
    [...]/gdb/gnu-nat.c:1650:3: note: in expansion of macro 'inf_debug'
       inf_debug (inf, "returning ptid = %s, %s",
       ^~~~~~~~~

	gdb/
	* gnu-nat.c (gnu_nat_target::wait): Fix
	target_waitstatus_to_string call.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] BFD whitespace fixes
@ 2019-04-03  4:24 sergiodj+buildbot
  2019-04-12 14:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-03  4:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4b24dd1acad5c133d12aab6a575c83269336e47f ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 4b24dd1acad5c133d12aab6a575c83269336e47f

BFD whitespace fixes

	* coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
	* elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
	* elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
	* elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
	* elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
	* pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] RISC-V: Don't check ABI flags if no code section.
@ 2019-04-02 20:51 sergiodj+buildbot
  2019-04-12 14:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-02 20:51 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 87f98bacb76001157d5a26555a41738ac3841a56 ***

Author: Jim Wilson <jimw@sifive.com>
Branch: master
Commit: 87f98bacb76001157d5a26555a41738ac3841a56

RISC-V: Don't check ABI flags if no code section.

This fixes a glib build failure reported in PR 24389.  Using ld -b binary
creates an object file with no elf header flags set which has the wrong ABI
info for riscv64-linux.  But the file also has no code sections, so I added
code borrowed from the arm port that only checks the ELF header ABI flags if
there is a code section.

	bfd/
	PR 24389
	* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
	ELF header flags to after check for ELF object file.  Loop through
	sections looking for code sections, if none, then skip ABI checks.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb/fortran: Handle internal function calls
@ 2019-04-01 21:51 sergiodj+buildbot
  2019-04-12 14:43 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01 21:51 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d7df654955c2423190b05b2507caf624ce3d65bc ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: d7df654955c2423190b05b2507caf624ce3d65bc

gdb/fortran: Handle internal function calls

If an convenience function is defined in python (or guile), then
currently this will not work in Fortran, instead the user is given
this message:

  (gdb) set language fortran
  (gdb) p $myfunc (3)
  Cannot perform substring on this type

Compare this to C:

  (gdb) set language c
  (gdb) p $myfunc (3)
  $1 = 1

After this patch we see the same behaviour in both C and Fortran.
I've extended the test to check that all languages can call the
convenience functions - only Fortran was broken.

When calling convenience functions in Fortran we don't need to perform
the same value preparation (passing by pointer) that we would for
calling a native function - passing the real value is fine.

gdb/ChangeLog:

	* eval.c (evaluate_subexp_standard): Handle internal functions
	during Fortran function call handling.

gdb/testsuite/ChangeLog:

	* gdb.python/py-function.exp: Check calling helper function from
	all languages.
	* lib/gdb.exp (gdb_supported_languages): New proc.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Add $_cimag and $_creal internal functions
@ 2019-04-01 21:35 sergiodj+buildbot
  2019-04-12 14:43 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01 21:35 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 8bdc16587e26100282094c8eaa8e83180ba57afd ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 8bdc16587e26100282094c8eaa8e83180ba57afd

gdb: Add $_cimag and $_creal internal functions

Add two new internal functions $_cimag and $_creal that extract the
imaginary and real parts of a complex value.

These internal functions can take a complex value of any type 'float
complex', 'double complex', or 'long double complex' and return a
suitable floating point value 'float', 'double', or 'long double'.
So we can now do this:

    (gdb) p z1
    $1 = 1.5 + 4.5 * I
    (gdb) p $_cimag (z1)
    $4 = 4.5
    (gdb) p $_creal (z1)
    $4 = 1.5

The components of a complex value are not strictly named types in
DWARF, as the complex type is itself the base type.  However, once we
are able to extract the components it makes sense to be able to ask
what the type of these components is and get a sensible answer back,
rather than the error we would currently get.  Currently GDB says:

    (gdb) ptype z1
    type = complex double
    (gdb) p $_cimag (z1)
    $4 = 4.5
    (gdb) ptype $
    type = <invalid type code 9>

With the changes in dwarf2read.c, GDB now says:

    (gdb) ptype z1
    type = complex double
    (gdb) p $_cimag (z1)
    $4 = 4.5
    (gdb) ptype $
    type = double

Which seems to make more sense.

gdb/ChangeLog:

	* NEWS: Mention new internal functions.
	* dwarf2read.c (dwarf2_init_complex_target_type): New function.
	(read_base_type): Use dwarf2_init_complex_target_type.
	* value.c (creal_internal_fn): New function.
	(cimag_internal_fn): New function.
	(_initialize_values): Register new internal functions.

gdb/doc/ChangeLog:

	* gdb.texinfo (Convenience Funs): Document '$_creal' and
	'$_cimag'.

gdb/testsuite/ChangeLog:

	* gdb.base/complex-parts.c: New file.
	* gdb.base/complex-parts.exp: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix internal error and improve 'set debug infrun 1'/target wait kind trace
@ 2019-04-01 19:53 sergiodj+buildbot
  2019-04-12 14:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01 19:53 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c29705b71a8ec966478c0dc4712194a95291c6de ***

Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Branch: master
Commit: c29705b71a8ec966478c0dc4712194a95291c6de

Fix internal error and improve 'set debug infrun 1'/target wait kind trace

The test  gdb.threads/watchthreads-reorder.exp verifies that the
'set debug infrun 1' debug output does not crash GDB.

Under high load, the test can still cause a GDB internal error (see details
below).

This patch fixes this crash, and improves/factorises some wait kind traces.

Tested on debian/amd64 + run one test with 'set debug infrun 1'.

Changes compared to the first version:
  * Handles the suggestions of Kevin to trace the relevant elements
    of the wait status (this is done by calling target_waitstatus_to_string).
  * Some other changes to factorise wait status tracing.

Note that using target_waitstatus_to_string instead of the 'locally printed'
status kind strings means that debug trace that was using strings such as:
   "EXITED" or "TARGET_WAITKIND_EXITED"
will now use what is printed by target_waitstatus_to_string e.g.
   "exited".

gdb/ChangeLog
2019-04-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>

	* infrun.c (stop_all_threads): If debug_infrun, always
	trace the wait status after wait_one, using
	target_waitstatus_to_string and target_pid_to_str.
	(handle_inferior_event): Replace various trace of
	wait status kind by a single trace.
	* gdb/gnu-nat.c (gnu_nat_target::wait): Replace local
	wait status kind image by target_waitstatus_to_string.
	* target/waitstatus.c (target_waitstatus_to_string): Fix
	obsolete comment.

  (top-gdb) bt
  #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
  #1  0x00007f3d54a0642a in __GI_abort () at abort.c:89
  #2  0x0000555c24c60e66 in dump_core () at ../../fixleaks/gdb/utils.c:201
  #3  0x0000555c24c63d49 in internal_vproblem(internal_problem *, const char *, int, const char *, typedef __va_list_tag __va_list_tag *) (problem=problem@entry=0x555c25338d40 <internal_error_problem>, file=<optimized out>, line=287,
      fmt=<optimized out>, ap=<optimized out>) at ../../fixleaks/gdb/utils.c:411
  #4  0x0000555c24c63eab in internal_verror (file=<optimized out>, line=<optimized out>, fmt=<optimized out>,
      ap=<optimized out>) at ../../fixleaks/gdb/utils.c:436
  #5  0x0000555c249e8c22 in internal_error (file=file@entry=0x555c24e0f2ad "../../fixleaks/gdb/inferior.c",
      line=line@entry=287, fmt=<optimized out>) at ../../fixleaks/gdb/common/errors.c:55
  #6  0x0000555c247d3f5c in find_inferior_pid (pid=<optimized out>) at ../../fixleaks/gdb/inferior.c:287
  #7  0x0000555c24ad2248 in find_inferior_pid (pid=<optimized out>) at ../../fixleaks/gdb/inferior.c:302
  #8  find_inferior_ptid (ptid=...) at ../../fixleaks/gdb/inferior.c:301
  #9  0x0000555c24c35f25 in find_thread_ptid (ptid=...) at ../../fixleaks/gdb/thread.c:522
  #10 0x0000555c24b0ab4d in thread_db_target::pid_to_str[abi:cxx11](ptid_t) (
      this=0x555c2532e3e0 <the_thread_db_target>, ptid=...) at ../../fixleaks/gdb/linux-thread-db.c:1637
  #11 0x0000555c24c2f420 in target_pid_to_str[abi:cxx11](ptid_t) (ptid=...) at ../../fixleaks/gdb/target.c:2083
  #12 0x0000555c24ad9cab in stop_all_threads () at ../../fixleaks/gdb/infrun.c:4373
  #13 0x0000555c24ada00f in stop_waiting (ecs=<optimized out>) at ../../fixleaks/gdb/infrun.c:7464
  #14 0x0000555c24adc401 in process_event_stop_test (ecs=ecs@entry=0x7ffc9402d9d0) at ../../fixleaks/gdb/infrun.c:6181
  ...
  (top-gdb) fr 12
  #12 0x0000555c24ad9cab in stop_all_threads () at ../../fixleaks/gdb/infrun.c:4373
  (top-gdb) p event_ptid
  $5 = {m_pid = 25419, m_lwp = 25427, m_tid = 0}
  (top-gdb) p ptid
  $6 = {m_pid = 0, m_lwp = 0, m_tid = 0}
  (top-gdb) p ws
  $7 = {kind = TARGET_WAITKIND_THREAD_EXITED, value = {integer = 0, sig = GDB_SIGNAL_0, related_pid = {m_pid = 0,
        m_lwp = 0, m_tid = 0}, execd_pathname = 0x0, syscall_number = 0}}
  (top-gdb)

The gdb.log corresponding to the above crash is:
  (gdb) PASS: gdb.threads/watchthreads-reorder.exp: reorder1: set debug infrun 1
  continue
  Continuing.
  infrun: clear_proceed_status_thread (Thread 0x7ffff7fcfb40 (LWP 25419))
  infrun: clear_proceed_status_thread (Thread 0x7ffff7310700 (LWP 25427))
  infrun: clear_proceed_status_thread (Thread 0x7ffff6b0f700 (LWP 25428))
  infrun: proceed (addr=0xffffffffffffffff, signal=GDB_SIGNAL_DEFAULT)
  infrun: proceed: resuming Thread 0x7ffff7fcfb40 (LWP 25419)
  infrun: resume (step=0, signal=GDB_SIGNAL_0), trap_expected=0, current thread [Thread 0x7ffff7fcfb40 (LWP 25419)] at 0x7ffff7344317
  infrun: infrun_async(1)
  infrun: prepare_to_wait
  infrun: proceed: resuming Thread 0x7ffff7310700 (LWP 25427)
  infrun: resume (step=0, signal=GDB_SIGNAL_0), trap_expected=0, current thread [Thread 0x7ffff7310700 (LWP 25427)] at 0x5555555553d7
  infrun: prepare_to_wait
  infrun: proceed: resuming Thread 0x7ffff6b0f700 (LWP 25428)
  infrun: resume (step=0, signal=GDB_SIGNAL_0), trap_expected=0, current thread [Thread 0x7ffff6b0f700 (LWP 25428)] at 0x5555555554c8
  infrun: prepare_to_wait
  infrun: target_wait (-1.0.0, status) =
  infrun:   -1.0.0 [process -1],
  infrun:   status->kind = ignore
  infrun: TARGET_WAITKIND_IGNORE
  infrun: prepare_to_wait
  Joining the threads.
  [Thread 0x7ffff6b0f700 (LWP 25428) exited]
  infrun: target_wait (-1.0.0, status) =
  infrun:   -1.0.0 [process -1],
  infrun:   status->kind = ignore
  infrun: TARGET_WAITKIND_IGNORE
  infrun: prepare_to_wait
  infrun: target_wait (-1.0.0, status) =
  infrun:   25419.25419.0 [Thread 0x7ffff7fcfb40 (LWP 25419)],
  infrun:   status->kind = stopped, signal = GDB_SIGNAL_TRAP
  infrun: TARGET_WAITKIND_STOPPED
  infrun: stop_pc = 0x555555555e50
  infrun: context switch
  infrun: Switching context from Thread 0x7ffff6b0f700 (LWP 25428) to Thread 0x7ffff7fcfb40 (LWP 25419)
  infrun: BPSTAT_WHAT_STOP_NOISY
  infrun: stop_waiting
  infrun: stop_all_threads
  infrun: stop_all_threads, pass=0, iterations=0
  infrun:   Thread 0x7ffff7fcfb40 (LWP 25419) not executing
  infrun:   Thread 0x7ffff7310700 (LWP 25427) executing, need stop
  [Thread 0x7ffff7310700 (LWP 25427) exited]
  infrun: target_wait (-1.0.0, status) =
  infrun:   25419.25427.0 [LWP 25427],
  infrun:   status->kind = thread exited, status = 0
  infrun: infrun_async(0)
  ../../fixleaks/gdb/inferior.c:287: internal-error: inferior* find_inferior_pid(int): Assertion `pid != 0' failed.
  A problem internal to GDB has been detected,
  further debugging may prove unreliable.
  Quit this debugging session? (y or n) FAIL: gdb.threads/watchthreads-reorder.exp: reorder1: continue to breakpoint: break-at-exit (GDB internal error)
  Resyncing due to internal error.
  n
  infrun: infrun_async(1)

  This is a bug, please report it.  For instructions, see:
  <http://www.gnu.org/software/gdb/bugs/>.

  infrun: infrun_async(0)
  ../../fixleaks/gdb/inferior.c:287: internal-error: inferior* find_inferior_pid(int): Assertion `pid != 0' failed.
  A problem internal to GDB has been detected,
  further debugging may prove unreliable.
  Create a core file of GDB? (y or n) y


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Handle DW_AT_ranges when reading partial symtabs
@ 2019-04-01 17:31 sergiodj+buildbot
  2019-04-12 14:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01 17:31 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 05caa1d236440cd8967f8804be8dbcf27fb490b6 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 05caa1d236440cd8967f8804be8dbcf27fb490b6

Handle DW_AT_ranges when reading partial symtabs

add_partial_subprogram does not handle DW_AT_ranges, while the full
symtab reader does.  This can lead to discrepancies where a function
is not put into a partial symtab, and so is not available to "break"
and the like -- but is available if the full symtab has somehow been
read.

This patch fixes the bug by arranging to read DW_AT_ranges when
reading partial DIEs.

This is PR symtab/23331.

The new test case is derived from dw2-ranges-func.exp, which is why I
kept the copyright dates.

gdb/ChangeLog
2019-04-01  Tom Tromey  <tromey@adacore.com>

	PR symtab/23331:
	* dwarf2read.c (partial_die_info::read): Handle DW_AT_ranges.

gdb/testsuite/ChangeLog
2019-04-01  Tom Tromey  <tromey@adacore.com>

	PR symtab/23331:
	* gdb.dwarf2/dw2-ranges-main.c: New file.
	* gdb.dwarf2/dw2-ranges-psym.c: New file.
	* gdb.dwarf2/dw2-ranges-psym.exp: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Destroy allocated values when exiting GDB
@ 2019-04-01 15:18 sergiodj+buildbot
  2019-04-12 14:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01 15:18 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9d1447e09d4aa673826039321163b5a684e8e043 ***

Author: Sergio Durigan Junior <sergiodj@redhat.com>
Branch: master
Commit: 9d1447e09d4aa673826039321163b5a684e8e043

Destroy allocated values when exiting GDB

When the user exits GDB, we might still have some allocated values in
the chain, which, in specific scenarios, can cause problems when GDB
attempts to destroy them in "quit_force".  For example, see the bug
reported at:

  https://bugzilla.redhat.com/show_bug.cgi?id=1690120

And the thread starting at:

  https://sourceware.org/ml/gdb-patches/2019-03/msg00475.html
  Message-ID: <87r2azkhmq.fsf@redhat.com>

In order to avoid that, and to be more aware of our allocated
resources, this commit implements a new function "finalize_values" and
calls it from inside "quit_force".

Tested by the BuildBot.

2019-04-01  Sergio Durigan Junior  <sergiodj@redhat.com>
	    Pedro Alves  <palves@redhat.com>

	* top.c (quit_force): Call 'finalize_values'.
	* value.c (finalize_values): New function.
	* value.h (finalize_values): Declare.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [GAS, Arm] CLI with architecture sensitive extensions
@ 2019-04-01 10:06 sergiodj+buildbot
  2019-04-12 14:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01 10:06 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 34ef62f46541d423b991850b2b7ba34d8749a6ba ***

Author: Andre Vieira <andre.simoesdiasvieira@arm.com>
Branch: master
Commit: 34ef62f46541d423b991850b2b7ba34d8749a6ba

[GAS, Arm] CLI with architecture sensitive extensions

This patch adds a new framework to add architecture sensitive extensions, like
GCC does.  This patch also implements all architecture extensions currently
available in GCC.

This framework works as follows.  To enable architecture sensitive extensions
for a particular architecture, that architecture must contain an ARM_ARCH_OPT2
entry in the 'arm_archs' table.  All fields here are the same as previous, with
the addition of a new extra field at the end to <name> it's extension table.
This <name>, corresponds to a <name>_ext_table of type 'struct arm_ext_table'.
This struct can be filled with three types of entries:

  ARM_ADD (string <ext>, arm_feature_set <enable_bits>), which means +<ext> will
      enable <enable_bits>
  ARM_REMOVE (string <ext>, arm_feature_set <disable_bits>), which means
      +no<ext> will disable <disable_bits>
  ARM_EXT (string <ext>, arm_feature_set <enable_bits>, arm_feature_set
      <disable_bits>), which means +<ext> will enable <enable_bits> and +no<ext>
      will disable <disable_bits> (this is to be used instead of adding an
      ARM_ADD and ARM_REMOVE for the same <ext>)

This patch does not disable the use of the old extensions, even if some of them
are duplicated in the new tables.  This is a "in-between-step" as we may want to
deprecate the old table of extensions in later patches.  For now, GAS will first
look for the +<ext> or +no<ext> in the new table and if no entry is found it
will continue searching in the old table, following old behaviour.  If only an
ARM_ADD or an ARM_REMOVE is defined for <ext> and +no<ext> or +<ext> resp. is
used then it also continues to search the old table for it.

A couple of caveats:
- This patch does not enable the use of these architecture extensions with the
'.arch_extension' directive.  This is future work that I will tend to later.
- This patch does not enable the use of these architecture extensions with the
-mcpu option.  This is future work that I will tend to later.
- This patch does not change the current behaviour when combining an
architecture extension and using -mfpu on the command-line.  The current
behaviour of GAS is to stage the union of feature bits enabled by both -march
and -mfpu.  GCC behaves differently here, so this is something we may want to
revisit on a later date.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add myself to gdb/MAINTAINERS
@ 2019-04-01  8:41 sergiodj+buildbot
  2019-04-12 14:39 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01  8:41 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 8828efdb24ef337e074183a0db3ac6399a3c09ba ***

Author: Marco Barisione <mbarisione@undo.io>
Branch: master
Commit: 8828efdb24ef337e074183a0db3ac6399a3c09ba

Add myself to gdb/MAINTAINERS

gdb/ChangeLog:

2019-04-01  Marco Barisione  <mbarisione@undo.io>

	* MAINTAINERS (Write After Approval): Add Marco Barisione.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add gdb.Value.format_string ()
@ 2019-04-01  8:39 sergiodj+buildbot
  2019-04-12 14:39 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-04-01  8:39 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 52093e1b936fa4f3f8bb3868c5a44d0df25c8db4 ***

Author: Marco Barisione <mbarisione@undo.io>
Branch: master
Commit: 52093e1b936fa4f3f8bb3868c5a44d0df25c8db4

Add gdb.Value.format_string ()

The str () function, called on a gdb.Value instance, produces a string
representation similar to what can be achieved with the print command,
but it doesn't allow to specify additional formatting settings, for
instance disabling pretty printers.

This patch introduces a new format_string () method to gdb.Value which
allows specifying more formatting options, thus giving access to more
features provided by the internal C function common_val_print ().

gdb/ChangeLog:

2019-04-01  Marco Barisione  <mbarisione@undo.io>

	Add gdb.Value.format_string ().
	* python/py-value.c (copy_py_bool_obj):
	(valpy_format_string): Add gdb.Value.format_string ().
	* NEWS: Document the addition of gdb.Value.format_string ().

gdb/doc/ChangeLog:

2019-04-01  Marco Barisione  <mbarisione@undo.io>

	* python.texi (Values From Inferior): Document
	gdb.Value.format_string ().

gdb/testsuite/ChangeLog:

2019-04-01  Marco Barisione  <mbarisione@undo.io>

	Test gdb.Value.format_string ().
	* gdb.python/py-format-string.exp: New test.
	* gdb.python/py-format-string.c: New file.
	* gdb.python/py-format-string.py: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] RISC-V: Relax tail/j to c.j for RV64.
@ 2019-03-30 17:50 sergiodj+buildbot
  2019-04-12 14:38 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-30 17:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ae2b14c73cd42b067e9687219155ed044210f0c1 ***

Author: Jim Wilson <jimw@sifive.com>
Branch: master
Commit: ae2b14c73cd42b067e9687219155ed044210f0c1

RISC-V: Relax tail/j to c.j for RV64.

	2019-03-30  Andrew Waterman  <andrew@sifive.com>
	bfd/
	* elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
	rd == X_RA case.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Introduce new convenience variables $_gdb_major and $_gdb_minor
@ 2019-03-30 10:38 sergiodj+buildbot
  2019-04-12 14:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-30 10:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 7734102d6d8b5a0ccea166f8e944f84dc896b9ae ***

Author: Eli Zaretskii <eliz@gnu.org>
Branch: master
Commit: 7734102d6d8b5a0ccea166f8e944f84dc896b9ae

Introduce new convenience variables $_gdb_major and $_gdb_minor

gdb/ChangeLog:
2019-03-30  Eli Zaretskii  <eliz@gnu.org>

	* NEWS: Announce $_gdb_major and $_gdb_minor.

	* top.c (init_gdb_version_vars): New function.
	(gdb_init): Call init_gdb_version_vars.

gdb/testsuite/ChangeLog:
2019-03-30  Simon Marchi <simark@simark.ca>

	* gdb.base/default.exp: Add values for $_gdb_major and
	$_gdb_minor.

gdb/doc/ChangeLog:
2019-03-30  Eli Zaretskii  <eliz@gnu.org>

	* gdb.texinfo (Convenience Vars): Document $_gdb_major and
	$_gdb_minor.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add usage for commands in printcmd.c
@ 2019-03-29 21:07 sergiodj+buildbot
  2019-04-12 14:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-29 21:07 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 188e1fa9ac09b0a764e19c1afc0fb5fcdb688e65 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 188e1fa9ac09b0a764e19c1afc0fb5fcdb688e65

Add usage for commands in printcmd.c

I noticed that the help for "info addr" did not include a "usage"
line; and when adding it I went through and fixed a few minor issues
in printcmd.c:

* Added usage lines to all commands
* Updated the help text for some commands
* Changed some help to use upper case metasyntactic variables
* Removed some dead code

Regression tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-03-29  Tom Tromey  <tromey@adacore.com>

	* printcmd.c (_initialize_printcmd): Add usage lines.  Update some
	help text.  Remove dead code.

gdb/testsuite/ChangeLog
2019-03-29  Tom Tromey  <tromey@adacore.com>

	* gdb.base/help.exp: Tighten apropos regexp.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Allow really large fortran array bounds: fortran type/value printers
@ 2019-03-29 18:49 sergiodj+buildbot
  2019-04-12 14:35 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-29 18:49 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2880242dd0b8538b68aece7d9e8b1678dcdfd0ab ***

Author: Keith Seitz <keiths@redhat.com>
Branch: master
Commit: 2880242dd0b8538b68aece7d9e8b1678dcdfd0ab

Allow really large fortran array bounds: fortran type/value printers

This is the fortran part of the patch, including tests, which
are essentially unchanged from Siddhesh's original 2012 submission:

  https://sourceware.org/ml/gdb-patches/2012-08/msg00562.html

There is, however, one large departure.  In the above thread,
Jan pointed out problems with GCC debuginfo for -m32 builds
(filed usptream as gcc/54934).  After investigating the issue,
I am dropping the hand-tweaked assembler source file to workaround
this case.

While I would normally do something to accommodate this, in
this case, given the ubiquity of 64-bit systems today (where
the tests pass) and the apparent lack of urgency on the compiler
side (by users), I don't think the additional complexity and
maintenance costs are worth it. It will be very routinely tested
on 64-bit systems. [For example, at Red Hat, we always
test -m64 and -m32 configurations for all GDB releases.]

gdb/ChangeLog:

	From Siddhesh Poyarekar:
	* f-lang.h (f77_get_upperbound): Return LONGEST.
	(f77_get_lowerbound): Likewise.
	* f-typeprint.c (f_type_print_varspec_suffix): Expand
	UPPER_BOUND and LOWER_BOUND to LONGEST.  Use plongest to format
	print them.
	(f_type_print_base): Expand UPPER_BOUND to LONGEST.  Use
	plongest to format print it.
	* f-valprint.c (f77_get_lowerbound): Return LONGEST.
	(f77_get_upperbound): Likewise.
	(f77_get_dynamic_length_of_aggregate): Expand UPPER_BOUND,
	LOWER_BOUND to LONGEST.
	(f77_create_arrayprint_offset_tbl): Likewise.

gdb/testsuite/ChangeLog:

	* gdb.fortran/array-bounds.exp: New file.
	* gdb.fortran/array-bounds.f90: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Allow really large fortran array bounds: TYPE_LENGTH to ULONGEST
@ 2019-03-29 18:45 sergiodj+buildbot
  2019-04-12 14:34 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-29 18:45 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT cc1defb1dcb5f1ca23a82bca233a48ab2657de6c ***

Author: Keith Seitz <keiths@redhat.com>
Branch: master
Commit: cc1defb1dcb5f1ca23a82bca233a48ab2657de6c

Allow really large fortran array bounds: TYPE_LENGTH to ULONGEST

This series is revisit of Siddhesh Poyarekar's patch from back in
2012. The last status on the patch is in the following gdb-patches
thread:

  https://sourceware.org/ml/gdb-patches/2012-08/msg00562.html

It appears that Tom approved the patch, but Jan had some issues
with a compiler error that made the test fail on -m32 test runs.
He wrote up a hand-tweaked .S file to deal with it. Siddesh said
he would update tests. Then nothing.

Siddesh and Jan have both moved on since.

The patch originally required a large precursor patch to work.
I have whittled this down to/rewritten the bare minimum, and this
first patch is the result, changing the type of TYPE_LENGTH
to ULONGEST from unsigned int.

The majority of the changes involve changing printf format
strings to use %s and pulongest instead of %d.

gdb/ChangeLog:

	* ada-lang.c (ada_template_to_fixed_record_type_1): Use
	%s/pulongest for TYPE_LENGTH instead of %d in format
	strings.
	* ada-typerint.c (ada_print_type): Likewise.
	* amd64-windows-tdep.c (amd64_windows_store_arg_in_reg): Likewise.
	* compile/compile-c-support.c (generate_register_struct): Likewise.
	* gdbtypes.c (recursive_dump_type): Likewise.
	* gdbtypes.h (struct type) <length>: Change type to ULONGEST.
	* m2-typeprint.c (m2_array):  Use %s/pulongest for TYPE_LENGTH
	instead of %d in format strings.
	* riscv-tdep.c (riscv_type_alignment): Cast second argument
	to std::min to ULONGEST.
	* symmisc.c (print_symbol): Use %s/pulongest for TYPE_LENGTH
	instead of %d in format strings.
	* tracepoint.c (info_scope_command): Likewise.
	* typeprint.c (print_offset_data::update)
	(print_offset_data::finish): Likewise.
	* xtensa-tdep.c (xtensa_store_return_value)
	(xtensa_push_dummy_call): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] bfd: xtensa: fix shrink_dynamic_reloc_sections for export-dynamic
@ 2019-03-29 17:39 sergiodj+buildbot
  2019-04-12 14:34 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-29 17:39 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2487ef07c28b961c6e2b8c51161f88f93b181d07 ***

Author: Max Filippov <jcmvbkbc@gmail.com>
Branch: master
Commit: 2487ef07c28b961c6e2b8c51161f88f93b181d07

bfd: xtensa: fix shrink_dynamic_reloc_sections for export-dynamic

shrink_dynamic_reloc_sections must remove PLT entry that was created for
an undefined weak symbol in the presence of --export-dynamic option when
relaxation coalesces literals pointing to that symbol. This fixes the
following assertion:

  ld: BFD (GNU Binutils) 2.31.1 internal error, aborting at
  elf32-xtensa.c:3292 in elf_xtensa_finish_dynamic_sections

2019-03-29  Max Filippov  <jcmvbkbc@gmail.com>
bfd/
	* elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
	info->export_dynamic to the conditional.

ld/
	* testsuite/ld-xtensa/relax-undef-weak-pie-export-dynamic.d: New
	test definition.
	* testsuite/ld-xtensa/xtensa.exp
	(relax-undef-weak-pie-export-dynamic): Add new test.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] sim: fix all sim builds
@ 2019-03-28 23:33 sergiodj+buildbot
  2019-04-12 14:33 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 23:33 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d3fe0d7bb8a3101df6f052aa54e4cfedcc2fee94 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: d3fe0d7bb8a3101df6f052aa54e4cfedcc2fee94

sim: fix all sim builds

This commit:

  commit ef9866970ce6683d40465fb7c3168f87a1dcd1b7
  Date:   Thu Mar 28 06:40:30 2019 +0900

      sim/common: convert sim-arange to use sim-inline

broke many simulator targets.  I fixed aarch64 in a previous commit
without realising how many other target were also broken.

This commit adds the missing includes (sim-assert.h and libiberty.h),
which seem to be needed by many simulator targets, in a central
location, this should fix most builds.

sim/common/ChangeLog:

	* sim-base.h: Add 'sim-assert.h' include.
	* sim-basics.h: Add 'libiberty.h' include.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] (re-)fix the regcache leaks when detaching from an executable.
@ 2019-03-28 23:02 sergiodj+buildbot
  2019-04-12 13:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 23:02 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 5783e150b2a9308e23262a5b62f5d51c8c932ece ***

Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Branch: master
Commit: 5783e150b2a9308e23262a5b62f5d51c8c932ece

(re-)fix the regcache leaks when detaching from an executable.

Commit 799efbe8e01ab8292c01f46ac59a6fb2349d4535 was supposed to fix
the below leak.  However, for this fix to work, it is critical to
save the ptid before detach.

This commit (pushed as OBVIOUS, as the change was already reviewed/approved)
saves the ptid before the detach, as in the original reviewed patch
(see https://sourceware.org/ml/gdb-patches/2019-02/msg00263.html).

Re-tested on debian/amd64, natively and under valgrind.

==7426== 1,123 (72 direct, 1,051 indirect) bytes in 1 blocks are definitely lost in loss record 2,872 of 3,020
==7426==    at 0x4C2C4CC: operator new(unsigned long) (vg_replace_malloc.c:344)
==7426==    by 0x5BD1E1: get_thread_arch_aspace_regcache(ptid_t, gdbarch*, address_space*) (regcache.c:330)
==7426==    by 0x5BD39A: get_thread_regcache (regcache.c:366)
==7426==    by 0x5BD39A: get_current_regcache() (regcache.c:372)
==7426==    by 0x4B1EB4: get_current_frame() (frame.c:1588)
...


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] sim: fix aarch64 sim build
@ 2019-03-28 22:28 sergiodj+buildbot
  2019-04-12 14:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 22:28 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT cd5b60741993f9e075d3f2492e2251da5bdf260f ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: cd5b60741993f9e075d3f2492e2251da5bdf260f

sim: fix aarch64 sim build

This commit:

  commit ef9866970ce6683d40465fb7c3168f87a1dcd1b7
  Date:   Thu Mar 28 06:40:30 2019 +0900

      sim/common: convert sim-arange to use sim-inline

Broke the simulator build for aarch64 - some required macros are no
longer included where needed, fixed in this commit.

sim/aarch64/ChangeLog:

	* cpustate.c: Add 'libiberty.h' include.
	* interp.c: Add 'sim-assert.h' include.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix format specification in display_selector() (again)
@ 2019-03-28 21:40 sergiodj+buildbot
  2019-04-12 14:33 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 21:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e432ccf1cb4685b990f9cf10cb84626f52239806 ***

Author: Jon Turney <jon.turney@dronecode.org.uk>
Branch: master
Commit: e432ccf1cb4685b990f9cf10cb84626f52239806

Fix format specification in display_selector() (again)

DWORD type is not a long on 64-bit Cygwin, because that it is LP64.
Explicitly cast DWORD values to unsigned long and use an appropriate
format.

gdb/ChangeLog:

2019-03-28  Jon Turney  <jon.turney@dronecode.org.uk>

	* windows-nat.c (display_selector): Fixed format specifications
	for 64-bit Cygwin.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix gdb.multi/multi-arch-exec.exp blocking under high load/slow gdb
@ 2019-03-28 21:16 sergiodj+buildbot
  2019-04-12 14:32 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 21:16 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 80047cfc27459d4d31fe275ddd02231d812ddb61 ***

Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Branch: master
Commit: 80047cfc27459d4d31fe275ddd02231d812ddb61

Fix gdb.multi/multi-arch-exec.exp blocking under high load/slow gdb

When running multi-arch-exec.exp under valgrind, the test succeeds
when the machine is not loaded, but blocks when the machine is highly
loaded (e.g. when running the testsuite with valgrind with -j X
where X is one more than the nr of available cores).

The problem is that the hello program dies too early due to the alarm (30).

So, increase the alarm timer.
Note that this does not make the test take longer (it takes about
3.5 seconds on my system).  As I understand, the alarm is just there
to avoid hello staying there forever in case of another problem.

2019-03-28  Philippe Waroquiers  <philippe.waroquiers@skynet.be>

	* gdb.multi/hello.c (main): Increase alarm timer.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix GDB being suspended SIGTTOU when running gdb.multi/multi-arch-exec.exp
@ 2019-03-28 20:57 sergiodj+buildbot
  2019-04-12 14:18 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 20:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 65d2b333a830b3f36c8b7ae9d9ed6c77f8be9270 ***

Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Branch: master
Commit: 65d2b333a830b3f36c8b7ae9d9ed6c77f8be9270

Fix GDB being suspended SIGTTOU when running gdb.multi/multi-arch-exec.exp

When running under valgrind, multi-arch-exec.exp blocks forever.
Some (painful) investigation shows this is due to valgrind slowing
down GDB, and GDB has to output some messages at a different time,
when GDB does not have the terminal for output.

To reproduce the problem, you need to slow down GDB.
It can be reproduced by:
cd gdb/testsuite/outputs/gdb.multi/multi-arch-exec/
../../../../gdb -ex 'set debug lin-lwp 1' -ex 'break all_started' -ex 'run' ./2-multi-arch-exec

The above stops at a breakpoint.  Do continue.
GDB is then suspended because of SIGTTOU.
The stacktrace that leads to the hanging GDB is:
(top-gdb) bt
    at ../../binutils-gdb/gdb/exceptions.c:130
....

Alternatively, the same happens when doing
strace -o s.out ../../../../gdb  -ex 'break all_started' -ex 'run' ./2-multi-arch-exec

And of course, valgrind is also sufficiently slowing down GDB to
reproduce this :).

Fix this by calling target_terminal::ours_for_output ();
at the beginning of follow_exec.

Note that all this terminal handling is not very clear to me:
  * Some code takes the terminal, and then takes care to give it back to the inferior
    if the terminal was belonging to the inferior.
    (e.g. annotate_breakpoints_invalid).
  * some code takes the terminal, but does not give it back
    (e.g. update_inserted_breakpoint_locations).
  * some code takes it, and unconditionally gives it back
    (e.g. handle_jit_event)
  * here and there, we also find
    gdb::optional<target_terminal::scoped_restore_terminal_state> term_state;
    before a (sometimes optional) call to ours_for_output.
    And such calls to ours_for_output is sometimes protected by:
       if (target_supports_terminal_ours ())
    (e.g. exceptions.c: print_flush).
    but most of the code calls it without checking if the target supports it.
  * some code is outputting some errors, but only takes the terminal
    after. E.g. infcmd.c: prepare_one_step

gdb/ChangeLog
2019-03-28  Philippe Waroquiers  <philippe.waroquiers@skynet.be>

	* infrun.c (follow_exec): Call target_terminal::ours_for_output.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: View the pseudo V registers as vectors
@ 2019-03-28 17:50 sergiodj+buildbot
  2019-04-12 14:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 17:50 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT bffa1015cd6cb4a2a4bd1276ed749d150684dd5c ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: bffa1015cd6cb4a2a4bd1276ed749d150684dd5c

AArch64: View the pseudo V registers as vectors

When SVE is enabled, the V registers become pseudo registers based
on the Z registers.  They should look the same as they do when
there is no SVE.

The existing code viewed them as single value registers. Switch
this to a vector.

gdb/ChangeLog:

	* aarch64-tdep.c (aarch64_vnv_type): Use vector types.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix stepping past unwritable kernel helper on nios2-linux-gnu.
@ 2019-03-28 17:41 sergiodj+buildbot
  2019-04-12 14:17 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 17:41 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT f489207efde922e436b1b420d4de071927e3b9d5 ***

Author: Sandra Loosemore <sandra@codesourcery.com>
Branch: master
Commit: f489207efde922e436b1b420d4de071927e3b9d5

Fix stepping past unwritable kernel helper on nios2-linux-gnu.

This patch fixes a problem on nios2-linux-gnu with stepping past the
kernel helper __kuser_cmpxchg, which was exposed by the testcase
gdb.threads/watchpoint-fork.exp.  The kernel maps this function into
user space on an unwritable page.  In this testcase, the cmpxchg
helper is invoked indirectly from the setbuf call in the test program.
Since this target lacks hardware breakpoint/watchpoint support, GDB
tries to single-step through the program by setting software
breakpoints, and was just giving an error when it reached the function
on the unwritable page.

The solution here is to always step over the call instead of stepping
into it; cmpxchg is supposed to be an atomic operation so this
behavior seems reasonable.  The hook in nios2_get_next_pc is somewhat
generic, but at present cmpxchg is the only helper provided by the
Linux kernel that is invoked by an ordinary function call.  (Signal
return trampolines also go through the unwritable page but not by a
function call.)

Fixing this issue also revealed that the testcase needs a much larger
timeout factor when software single-stepping is used.  That has also
been fixed in this patch.

gdb/ChangeLog

2019-03-28  Sandra Loosemore  <sandra@codesourcery.com>

        * nios2-tdep.h (struct gdbarch_tdep): Add is_kernel_helper.
        * nios2-tdep.c (nios2_get_next_pc): Skip over kernel helpers.
        * nios2-linux-tdep.c (nios2_linux_is_kernel_helper): New.
        (nios2_linux_init_abi): Install it.

gdb/testsuite/ChangeLog

2019-03-28  Sandra Loosemore  <sandra@codesourcery.com>

        * gdb.threads/watchpoint-fork.exp (test): Use large timeout
        factor when no hardware watchpoint support.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Testsuite: set sysroot when using gdbserver
@ 2019-03-28 16:51 sergiodj+buildbot
  2019-04-12 14:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 16:51 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c92df149c29518f6e1d4a3174b3e29162fcd3ad6 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: c92df149c29518f6e1d4a3174b3e29162fcd3ad6

Testsuite: set sysroot when using gdbserver

When testing using native-gdbserver and native-extended-gdbserver, the sysroot
is not set.  This results in a warning from GDB and files are sent via the
remote protocol, which can be slow.

On Ubuntu 18.04 (unlike most distros) the debug versions of the standard
libraries are included by default in /usr/lib/debug/.

These file reads are causing a complete native-gdbserver run on the AArch64
buildbot slave to timeout after 2.5 hours.  This is also causing the builds
to back up on the slave.

The solution is to ensure the sysroot is set to / for all local boards.

This drastically reduces the time of a test. For example, gdb.base/sigall.exp
drops from 23 seconds to 4 seconds.
A full native-gdbserver run on the AArch64 slave now takes 8 minutes.

gdb/testsuite/ChangeLog:

	* boards/local-board.exp: set sysroot to /.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: 128bit views for SVE registers
@ 2019-03-28 13:40 sergiodj+buildbot
  2019-04-12 14:14 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 13:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT fc96163a3ea7761f5353591c825027090942e330 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: fc96163a3ea7761f5353591c825027090942e330

AArch64: 128bit views for SVE registers

SVE can view Z registers as 128bit values using .q prefix.

Add this view to the SVE feature.

gdb/ChangeLog:

	* features/aarch64-sve.c (create_feature_aarch64_sve): Add q view.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdbserver: Ensure AT_HWCAP2 is defined
@ 2019-03-28 12:45 sergiodj+buildbot
  2019-04-12 14:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28 12:45 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 69f4c9cc037f2226982a21fae63ffbc5e866fcca ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 69f4c9cc037f2226982a21fae63ffbc5e866fcca

gdbserver: Ensure AT_HWCAP2 is defined

When using older compilers, AT_HWCAP2 may not be be defined.
It is defined in elf/common.h, however including this in
gdbserver/linux-low.c causes conflicts.

Manually add the define if it does not exist.

gdb/gdbserver/ChangeLog:

	* linux-low.c (AT_HWCAP2): Add define if not already included.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24392, Clang warning Wtautological-constant-out-of-range-compare
@ 2019-03-28  7:37 sergiodj+buildbot
  2019-04-12 14:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28  7:37 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 242a115951fe55e62036bac555017eb817ca1aa6 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 242a115951fe55e62036bac555017eb817ca1aa6

PR24392, Clang warning Wtautological-constant-out-of-range-compare

	PR 24392
	* configure.ac: Invoke AC_CHECK_SIZEOF(int).
	* configure: Regenerate.
	* coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
	workaround with SIZEOF_LONG vs. SIZEOF_INT check.
	* elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
	* elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
	* mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] PR24390, Don't decode mtfsb field as a cr field
@ 2019-03-28  7:20 sergiodj+buildbot
  2019-04-12 14:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28  7:20 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 96a86c01d119372f4af5aff2501d3104e6c1a8e3 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 96a86c01d119372f4af5aff2501d3104e6c1a8e3

PR24390, Don't decode mtfsb field as a cr field

"mtfsb0 4*cr7+lt" doesn't make all that much sense, but unfortunately
glibc uses just that instead of "mtfsb0 28" to clear the fpscr xe bit.
So for backwards compatibility accept cr field expressions when
assembling mtfsb operands, but disassemble to a plain number.

	PR 24390
include/
	* opcode/ppc.h (PPC_OPERAND_CR_REG): Comment.
opcodes/
	* ppc-opc.c (BTF): Define.
	(powerpc_opcodes): Use for mtfsb*.
	* ppc-dis.c (print_insn_powerpc): Print fields with both
	PPC_OPERAND_CR_REG and PPC_OPERAND_CR_BIT as a plain number.
gas/
	* testsuite/gas/ppc/476.d: Update mtfsb*.
	* testsuite/gas/ppc/a2.d: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] sim/common: Fix warnings: "warning: implicit declaration of function..."
@ 2019-03-28  0:24 sergiodj+buildbot
  2019-04-12 14:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-28  0:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b6061d4d383b08966d16a0b0f72c69f35fc4beb9 ***

Author: Stafford Horne <shorne@gmail.com>
Branch: master
Commit: b6061d4d383b08966d16a0b0f72c69f35fc4beb9

sim/common: Fix warnings: "warning: implicit declaration of function..."

During building of several cgen simulator's I notices the below
warnings.  Adding includes fixes these.

Including config.h allows stdio.h to properly configure itself to expose
asprintf().

The other warnings for abort, free, memset, strlen are trivial.

Warnings:

../../../binutils-gdb/sim/or1k/../common/sim-watch.c: In function sim_watchpoint_install:
../../../binutils-gdb/sim/or1k/../common/sim-watch.c:415:10: warning: implicit declaration of function asprintf; did you mean vasprintf? [-Wimplicit-function-declaration]
      if (asprintf (&name, "watch-%s-%s",
          ^~~~~~~~
          vasprintf

../../../binutils-gdb/sim/lm32/../common/hw-device.c: In function hw_strdup:
../../../binutils-gdb/sim/lm32/../common/hw-device.c:59:34: warning: implicit declaration of function strlen [-Wimplicit-function-declaration]
       char *dup = hw_zalloc (me, strlen (str) + 1);
                                  ^~~~~~

../../../binutils-gdb/sim/lm32/../common/hw-events.c: In function hw_event_queue_schedule:
../../../binutils-gdb/sim/lm32/../common/hw-events.c:92:3: warning: implicit declaration of function memset [-Wimplicit-function-declaration]
   memset (&dummy, 0, sizeof dummy);
   ^~~~~~

../../../binutils-gdb/sim/lm32/../common/hw-handles.c: In function hw_handle_remove_ihandle:
../../../binutils-gdb/sim/lm32/../common/hw-handles.c:211:4: warning: implicit declaration of function free [-Wimplicit-function-declaration]
    free (delete);
    ^~~~

../../../binutils-gdb/sim/lm32/../common/sim-fpu.c: In function pack_fpu:
../../../binutils-gdb/sim/lm32/../common/sim-fpu.c:292:7: warning: implicit declaration of function abort [-Wimplicit-function-declaration]
       abort ();
       ^~~~~

sim/common/ChangeLog:

	* sim-options.c: Include "config.h".
	Include <stdio.h>.
	* sim-watch.c: Include "config.h".
	Include <stdio.h>.
	* hw-device.c: Include <string.h>.
	* hw-events.c: Include <string.h>.
	* hw-handles.c: Include <stdlib.h>.
	* sim-fpu.c: Include <stdlib.h>.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] sim/common: convert sim-arange to use sim-inline
@ 2019-03-27 22:18 sergiodj+buildbot
  2019-04-12 14:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-27 22:18 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ef9866970ce6683d40465fb7c3168f87a1dcd1b7 ***

Author: Stafford Horne <shorne@gmail.com>
Branch: master
Commit: ef9866970ce6683d40465fb7c3168f87a1dcd1b7

sim/common: convert sim-arange to use sim-inline

This fixes a TODO item and also fixes an error which we get when
building with no optimizations (-O0) in at least gcc 8.2.1.

Tested with sims that use cgen code lm32, or1k, cris, m32r and inlining
is working corretly.

Reference Error:

gcc -DHAVE_CONFIG_H -DWITH_DEFAULT_MODEL='"or1200"' -DWITH_ALIGNMENT=STRICT_ALIGNMENT \
 -DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=31 -DWITH_TARGET_ADDRESS_BITSIZE=32 \
 -DWITH_TARGET_BYTE_ORDER=BFD_ENDIAN_BIG   -DDEFAULT_INLINE=0  -DWITH_SCACHE=16384 \
 -I. -I../../../binutils-gdb/sim/or1k -I../common -I../../../binutils-gdb/sim/or1k/../common \
 -I../../include -I../../../binutils-gdb/sim/or1k/../../include -I../../bfd \
 -I../../../binutils-gdb/sim/or1k/../../bfd -I../../opcodes -I../../../binutils-gdb/sim/or1k/../../opcodes \
 -g -o run nrun.o libsim.a ../../bfd/libbfd.a ../../opcodes/libopcodes.a  ../../libiberty/libiberty.a \
 -ldl  -lz -lm

/usr/bin/ld: libsim.a(mloop.o): in function `extract':
/home/shorne/work/openrisc/gdb-musl/sim/or1k/mloop.c:82: undefined reference to `sim_addr_range_hit_p'
/usr/bin/ld: /home/shorne/work/openrisc/gdb-musl/sim/or1k/mloop.c:83: undefined reference to `sim_addr_range_hit_p'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:305: run] Error 1

sim/common/ChangeLog:

	* Make-common.in (sim-arange_h): Remove sim-arange.c
	* sim-arange.c: Remove SIM_ARANGE_C.
	Add ifdef for _SIM_ARANGE_C_.
	Include "sim-arange.h".
	Remove include for unused "sim-assert.h".
	Remove DEFINE_INLINE_P.  Remove DEFINE_NON_INLINE_P.
	(sim_addr_range_add): Declare as INLINE_SIM_ARANGE.
	(sim_addr_range_delete): Declare as INLINE_SIM_ARANGE.
	(sim_addr_range_hit_p): Change from SIM_ARANGE_INLINE to
	INLINE_SIM_ARANGE.
	* sim-arange.h (sim_addr_range_add): Declare as
	INLINE_SIM_ARANGE.
	(sim_addr_range_delete): Declare as INLINE_SIM_ARANGE.
	(sim_addr_range_hit_p) Declare as INLINE_SIM_ARANGE.
	Remove definition of SIM_ARANGE_INLINE.
	Remove [HAVE_INLINE].
	Wrap include "sim-arange.c" in H_REVEALS_MODULE_P.
	* sim-base.h: Include "sim-arange.h"
	* sim-basics.h: Remove include of "sim-arange.h"
	* sim-inline.c: Include "sim-arange.c"
	* sim-inline.h: Define INLINE_SIM_ARANGE.
	Define SIM_ARANGE_INLINE.  Define EXTERN_SIM_ARANGE_P.
	Define STATIC_INLINE_SIM_ARANGE.  Define STATIC_SIM_ARANGE.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix buffer overflow regression due to minsym malloc-ed instead of obstack-ed.
@ 2019-03-27 16:06 sergiodj+buildbot
  2019-04-12 14:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-27 16:06 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 20dc7e9b059edff1d0fab3bd197c460c11cc7a06 ***

Author: Philippe Waroquiers <philippe.waroquiers@skynet.be>
Branch: master
Commit: 20dc7e9b059edff1d0fab3bd197c460c11cc7a06

Fix buffer overflow regression due to minsym malloc-ed instead of obstack-ed.

Valgrind detects the following error in a bunch of tests,
e.g. in gdb.base/foll-fork.exp.

==15155== VALGRIND_GDB_ERROR_BEGIN
==15155== Invalid read of size 8
==15155==    at 0x55BE04: minimal_symbol_upper_bound(bound_minimal_symbol) (minsyms.c:1504)
==15155==    by 0x3B2E9C: find_pc_partial_function(unsigned long, char const**, unsigned long*, unsigned long*, block const**) (blockframe.c:340)
==15155==    by 0x3B3135: find_function_entry_range_from_pc(unsigned long, char const**, unsigned long*, unsigned long*) (blockframe.c:385)
==15155==    by 0x4F5597: fill_in_stop_func(gdbarch*, execution_control_state*) [clone .part.16] (infrun.c:4124)
==15155==    by 0x4FBE01: fill_in_stop_func (infrun.c:7636)
==15155==    by 0x4FBE01: process_event_stop_test(execution_control_state*) (infrun.c:6279)
...
==15155==  Address 0x715bec8 is 0 bytes after a block of size 2,952 alloc'd
==15155==    at 0x4C2E2B3: realloc (vg_replace_malloc.c:836)
==15155==    by 0x405F2C: xrealloc (common-utils.c:62)
==15155==    by 0x55BA4E: xresizevec<minimal_symbol> (poison.h:170)
==15155==    by 0x55BA4E: minimal_symbol_reader::install() (minsyms.c:1399)
==15155==    by 0x4981C7: elf_read_minimal_symbols (elfread.c:1165)
...

This seems to be a regression created by:
    commit 042d75e42c5572f333e0e06dabd3c5c4afab486c
    Author:     Tom Tromey <tom@tromey.com>
    AuthorDate: Sat Mar 2 12:29:48 2019 -0700
    Commit:     Tom Tromey <tom@tromey.com>
    CommitDate: Fri Mar 15 16:02:10 2019 -0600

        Allocate minimal symbols with malloc

Before this commit, the array of 'struct minimal_symbol'
contained a last element that was a "null symbol".  The comment in
minimal_symbol_reader::install was:
      /* We also terminate the minimal symbol table with a "null symbol",
         which is *not* included in the size of the table.  This makes it
         easier to find the end of the table when we are handed a pointer
         to some symbol in the middle of it.  Zero out the fields in the
         "null symbol" allocated at the end of the array.  Note that the
         symbol count does *not* include this null symbol, which is why it
         is indexed by mcount and not mcount-1.  */

      memset (&msymbols[mcount], 0, sizeof (struct minimal_symbol));

However, minimal_symbol_upper_bound was still based on the assumption
that the array of minsym is terminated by a minsym with a null symbol:
it is looping with:
  for (i = 1; MSYMBOL_LINKAGE_NAME (msymbol + i) != NULL; i++)

Replace this NULL comparison by a logic that calculates how
many msymbol are following the msymbols from which we are starting from.

(Re-)tested on debian/amd64, natively and under valgrind.

gdb/ChangeLog
2019-03-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
	    Tom Tromey  <tromey@adacore.com>

	* minsyms.c (minimal_symbol_upper_bound): Fix buffer overflow.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Testsuite: Ensure interrupt-daemon-attach doesn't run forever
@ 2019-03-27 12:22 sergiodj+buildbot
  2019-04-12 14:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-27 12:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 933aebfae6b1a2b83c3eb958ebf6e43fc7fdaed1 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 933aebfae6b1a2b83c3eb958ebf6e43fc7fdaed1

Testsuite: Ensure interrupt-daemon-attach doesn't run forever

Looking at the AArch64 buildbot, I noticed about two dozen old instances of
interrupt-daemon-attach taking up a full 100% cpu each.

If the test fails then the test binary relies on an alarm to ensure it dies
after 60 seconds.

As per the Linux man page for alarm:
  Alarms created by alarm() ... are not inherited by children created via fork.

Update the test to add an alarm in the child and also put a sleep in the
child loop so it does not constantly consume cpu.

Note I haven't managed to re-create why the test failed.  This fix will just
stop it hanging and consuming cpu when it does.

gdb/testsuite/ChangeLog:

	* gdb.base/interrupt-daemon-attach.c (main): Add alarm and sleep
	in child.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb-gdb.py.in: Fix error when printing range type
@ 2019-03-27 10:21 sergiodj+buildbot
  2019-04-12 14:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-27 10:21 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 7f5331a885c2e8b8cb8be5b27dc4bcfa290ad6c0 ***

Author: Joel Brobecker <brobecker@adacore.com>
Branch: master
Commit: 7f5331a885c2e8b8cb8be5b27dc4bcfa290ad6c0

gdb-gdb.py.in: Fix error when printing range type

I noticed that trying to print the contents of a struct main_type
would fail when the type was a TYPE_CODE_RANGE:

    (gdb) p *type.main_type
    $1 = Python Exception <class 'gdb.error'> There is no member named low_undefined.:

And indeed, Python is right, fields "low_undefined" has been removed
from struct range_bounds back in ... 2014! It was done when we introduced
dynamic bounds handling. This patch fixes gdb-gdb.py.in according to
the new structure.

gdb/ChangeLog:

	* gdb-gdb.py.in (StructMainTypePrettyPrinter.bound_img): New method.
	(StructMainTypePrettyPrinter.bounds_img): Use new "bound_img"
	method to compute the bounds of range types. Also print "[evaluated]"
	if the bounds' values come from a dynamic evaluation.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb/testsuite: Make test names unique in gdb.python/py-prettyprint.exp
@ 2019-03-27  3:29 sergiodj+buildbot
  2019-04-12 14:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-27  3:29 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3714a195e08a5cc7713b27def7a3c3b534da53e8 ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 3714a195e08a5cc7713b27def7a3c3b534da53e8

gdb/testsuite: Make test names unique in gdb.python/py-prettyprint.exp

This makes the test names unique in gdb.python/py-prettyprint.exp, it
also switches to use gdb_breakpoint and gdb_continue_to_breakpoint
more so that we avoid test names with the source line number in - this
is bad if the test source ever changes as the test names will then
change.

One final change is to switch from using gdb_py_test_silent_cmd to use
gdb_test_no_output, the former should be used for running python
commands and can catch any thrown exception.  However, in this case
the command being run is not a python command, its just a normal GDB
CLI command that produces no output, so lets use the appropriate
wrapper function.

gdb/testsuite/ChangeLog:

	* gdb.python/py-prettyprint.exp: Use gdb_breakpoint and
	gdb_continue_to_breakpoint more throughout this test.
	(run_lang_tests) Supply unique test names, and use
	gdb_test_no_output.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix Powerpc build
@ 2019-03-26 20:58 sergiodj+buildbot
  2019-04-12 14:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26 20:58 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 53c973f200e39c4122e0db06a94e3a0079e6de80 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 53c973f200e39c4122e0db06a94e3a0079e6de80

Fix Powerpc build

gdb/ChangeLog:

        * ppc-linux-nat.c: Add include.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Make python display_hint None handling defined behaviour
@ 2019-03-26 20:22 sergiodj+buildbot
  2019-04-12 14:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26 20:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9f9aa85206ab31d2c583e7fef568700d31eb577e ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 9f9aa85206ab31d2c583e7fef568700d31eb577e

gdb: Make python display_hint None handling defined behaviour

The documentation say that the display_hint method must return a
string to serve as a display hint, and then goes on to list some
acceptable strings.

However, if we don't supply the display_hint method then we get a
default display style behaviour and there's currently no way (in the
python api) to force this default behaviour.

The guile api allows #f to be used in order to force the default
display style behaviour, and this is documented.

Currently, using None in the python api also forces the default
display behaviour.

This commit extends the documentation to make returning None from the
display_hint method an official mechanism by which the user can get
the default display style.

I've extended one of the existing tests to cover this case.

gdb/doc/ChangeLog:

	* python.texi (Pretty Printing API): Document use of None for the
	display_hint.

gdb/testsuite/ChangeLog:

	* gdb.python/py-prettyprint.c (struct container) <is_map_p>: New
	field.
	(make_container): Initialise new field.
	* gdb.python/py-prettyprint.exp: Add new tests.
	* gdb.python/py-prettyprint.py (class ContainerPrinter)
	<display_hint>: New method.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Avoid trailing whitespace when pretty printing
@ 2019-03-26 20:13 sergiodj+buildbot
  2019-04-12 14:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26 20:13 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 18c77628b1e97e412561029ec20195c1ffa61b2d ***

Author: Andrew Burgess <andrew.burgess@embecosm.com>
Branch: master
Commit: 18c77628b1e97e412561029ec20195c1ffa61b2d

gdb: Avoid trailing whitespace when pretty printing

While writing a new test for 'set print pretty on' I spotted that GDB
will sometimes add a trailing whitespace character when pretty
printing.  This commit removes the trailing whitespace and updates the
expected results in one tests where this was an issue.

I've added an extra test for 'set print pretty on' as it doesn't seem
to have much testing.

gdb/ChangeLog:

	* cp-valprint.c (cp_print_value_fields): Don't print trailing
	whitespace when pretty printing is on.

gdb/testsuite/ChangeLog:

	* gdb.base/finish-pretty.exp: Update expected results.
	* gdb.base/pretty-print.c: New file.
	* gdb.base/pretty-print.exp: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add AArch64 Pointer Authentication to the NEWS file
@ 2019-03-26 17:40 sergiodj+buildbot
  2019-04-12 14:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26 17:40 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d851aa7170c09fb903dd1bdafa6df526f1951863 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: d851aa7170c09fb903dd1bdafa6df526f1951863

Add AArch64 Pointer Authentication to the NEWS file

gdb/ChangeLog:

        * NEWS: Mention AArch64 Pointer Authentication.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdbserver: Add linux_get_hwcap
@ 2019-03-26 17:26 sergiodj+buildbot
  2019-04-12 14:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26 17:26 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 974c89e0882ddb03e294eca76a9e3d3bef90eacf ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 974c89e0882ddb03e294eca76a9e3d3bef90eacf

gdbserver: Add linux_get_hwcap

In gdbserver, Tidy up calls to read HWCAP (and HWCAP2) by adding common
functions, removing the Arm, AArch64, PPC and S390 specific versions.

No functionality differences.

gdb/gdbserver/ChangeLog:

	* linux-aarch64-low.c (aarch64_get_hwcap): Remove function.
	(aarch64_arch_setup): Call linux_get_hwcap.
	* linux-arm-low.c (arm_get_hwcap): Remove function.
	(arm_read_description): Call linux_get_hwcap.
	* linux-low.c (linux_get_auxv): New function.
	(linux_get_hwcap): Likewise.
	(linux_get_hwcap2): Likewise.
	* linux-low.h (linux_get_hwcap): New declaration.
	(linux_get_hwcap2): Likewise.
	* linux-ppc-low.c (ppc_get_auxv): Remove function.
	(ppc_arch_setup): Call linux_get_hwcap.
	* linux-s390-low.c (s390_get_hwcap): Remove function.
	(s390_arch_setup): Call linux_get_hwcap.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix Arm build
@ 2019-03-26 13:23 sergiodj+buildbot
  2019-04-12 14:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26 13:23 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2fe7bab775f6acbfa1255d3504cd9e53a109e132 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 2fe7bab775f6acbfa1255d3504cd9e53a109e132

Fix Arm build

Add missing include.

2019-03-26  Alan Hayward  <alan.hayward@arm.com>

        * arm-linux-nat.c: Add include.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix use-after-free in source_cache::get_source_lines
@ 2019-03-26  1:01 sergiodj+buildbot
  2019-04-12 14:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-26  1:01 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 068ef30e9e053d0f95464290b0b96cea90ce0572 ***

Author: Simon Marchi <simon.marchi@polymtl.ca>
Branch: master
Commit: 068ef30e9e053d0f95464290b0b96cea90ce0572

Fix use-after-free in source_cache::get_source_lines

Commit ab42892fb7d2 ("Fix vertical scrolling of TUI source window")
introduced a use-after-free in source_cache::get_source_lines.

At the beginning of the method, we get the fullname of the symtab:

    const char *fullname = symtab_to_fullname (s);

fullname points to the string owned by the symtab (s.fullname).  When we
later do

    scoped_fd desc = open_source_file (s);

s.fullname gets reallocated (even though the string contents may not
change).  The fullname local variable now points to freed memory.

To avoid it, refresh the value of fullname after calling
open_source_file.

Here is the ASan report:

$ ./gdb -nx --data-directory=data-directory ./a.out
(gdb) start
Temporary breakpoint 1 at 0x1130: file test.cpp, line 12.
Starting program: /home/simark/build/binutils-gdb/gdb/a.out

Temporary breakpoint 1, main () at test.cpp:12
=================================================================
==26068==ERROR: AddressSanitizer: heap-use-after-free on address 0x6210003d4100 at pc 0x7fed89a34681 bp 0x7ffd8d185d80 sp 0x7ffd8d185528
READ of size 2 at 0x6210003d4100 thread T0
    #0 0x7fed89a34680 in __interceptor_strlen /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:301
    #1 0x55b6edf6c2f7 in std::char_traits<char>::length(char const*) /usr/include/c++/8.2.1/bits/char_traits.h:320
    #2 0x55b6edf6c9b2 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) /usr/include/c++/8.2.1/bits/basic_string.h:516
    #3 0x55b6ef09121b in source_cache::get_source_lines(symtab*, int, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) /home/simark/src/binutils-gdb/gdb/source-cache.c:214
    #4 0x55b6ef0a15cb in print_source_lines_base /home/simark/src/binutils-gdb/gdb/source.c:1340
    #5 0x55b6ef0a2045 in print_source_lines(symtab*, int, int, enum_flags<print_source_lines_flag>) /home/simark/src/binutils-gdb/gdb/source.c:1415
    #6 0x55b6ef112c87 in print_frame_info(frame_info*, int, print_what, int, int) /home/simark/src/binutils-gdb/gdb/stack.c:914
    #7 0x55b6ef10e90d in print_stack_frame(frame_info*, int, print_what, int) /home/simark/src/binutils-gdb/gdb/stack.c:180
    #8 0x55b6ee9592f8 in print_stop_location /home/simark/src/binutils-gdb/gdb/infrun.c:7853
    #9 0x55b6ee95948f in print_stop_event(ui_out*) /home/simark/src/binutils-gdb/gdb/infrun.c:7870
    #10 0x55b6ef34b962 in tui_on_normal_stop /home/simark/src/binutils-gdb/gdb/tui/tui-interp.c:98
    #11 0x55b6ee01a14d in std::_Function_handler<void (bpstats*, int), void (*)(bpstats*, int)>::_M_invoke(std::_Any_data const&, bpstats*&&, int&&) /usr/include/c++/8.2.1/bits/std_function.h:297
    #12 0x55b6ee965415 in std::function<void (bpstats*, int)>::operator()(bpstats*, int) const /usr/include/c++/8.2.1/bits/std_function.h:687
    #13 0x55b6ee962f1b in gdb::observers::observable<bpstats*, int>::notify(bpstats*, int) const /home/simark/src/binutils-gdb/gdb/common/observable.h:106
    #14 0x55b6ee95a6e7 in normal_stop() /home/simark/src/binutils-gdb/gdb/infrun.c:8142
    #15 0x55b6ee93f236 in fetch_inferior_event(void*) /home/simark/src/binutils-gdb/gdb/infrun.c:3782
    #16 0x55b6ee8f2641 in inferior_event_handler(inferior_event_type, void*) /home/simark/src/binutils-gdb/gdb/inf-loop.c:43
    #17 0x55b6eea2a1f0 in handle_target_event /home/simark/src/binutils-gdb/gdb/linux-nat.c:4358
    #18 0x55b6ee7045f1 in handle_file_event /home/simark/src/binutils-gdb/gdb/event-loop.c:733
    #19 0x55b6ee704e89 in gdb_wait_for_event /home/simark/src/binutils-gdb/gdb/event-loop.c:859
    #20 0x55b6ee7027b5 in gdb_do_one_event() /home/simark/src/binutils-gdb/gdb/event-loop.c:322
    #21 0x55b6ee702907 in start_event_loop() /home/simark/src/binutils-gdb/gdb/event-loop.c:371
    #22 0x55b6eeadfc16 in captured_command_loop /home/simark/src/binutils-gdb/gdb/main.c:331
    #23 0x55b6eeae2ef9 in captured_main /home/simark/src/binutils-gdb/gdb/main.c:1174
    #24 0x55b6eeae30c2 in gdb_main(captured_main_args*) /home/simark/src/binutils-gdb/gdb/main.c:1190
    #25 0x55b6edf4fa89 in main /home/simark/src/binutils-gdb/gdb/gdb.c:32
    #26 0x7fed88ad8222 in __libc_start_main (/usr/lib/libc.so.6+0x24222)
    #27 0x55b6edf4f86d in _start (/home/simark/build/binutils-gdb/gdb/gdb+0x197186d)

0x6210003d4100 is located 0 bytes inside of 4096-byte region [0x6210003d4100,0x6210003d5100)
freed by thread T0 here:
    #0 0x7fed89a8ac19 in __interceptor_free /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cc:66
    #1 0x55b6edfe12df in xfree<char> /home/simark/src/binutils-gdb/gdb/common/common-utils.h:60
    #2 0x55b6edfea675 in gdb::xfree_deleter<char>::operator()(char*) const /home/simark/src/binutils-gdb/gdb/common/gdb_unique_ptr.h:34
    #3 0x55b6edfe532c in std::unique_ptr<char, gdb::xfree_deleter<char> >::reset(char*) /usr/include/c++/8.2.1/bits/unique_ptr.h:382
    #4 0x55b6edfe7329 in std::unique_ptr<char, gdb::xfree_deleter<char> >::operator=(std::unique_ptr<char, gdb::xfree_deleter<char> >&&) /usr/include/c++/8.2.1/bits/unique_ptr.h:289
    #5 0x55b6ef09ec2b in find_and_open_source(char const*, char const*, std::unique_ptr<char, gdb::xfree_deleter<char> >*) /home/simark/src/binutils-gdb/gdb/source.c:990
    #6 0x55b6ef09f56a in open_source_file(symtab*) /home/simark/src/binutils-gdb/gdb/source.c:1069
    #7 0x55b6ef090f78 in source_cache::get_source_lines(symtab*, int, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) /home/simark/src/binutils-gdb/gdb/source-cache.c:205
    #8 0x55b6ef0a15cb in print_source_lines_base /home/simark/src/binutils-gdb/gdb/source.c:1340
    #9 0x55b6ef0a2045 in print_source_lines(symtab*, int, int, enum_flags<print_source_lines_flag>) /home/simark/src/binutils-gdb/gdb/source.c:1415
    #10 0x55b6ef112c87 in print_frame_info(frame_info*, int, print_what, int, int) /home/simark/src/binutils-gdb/gdb/stack.c:914
    #11 0x55b6ef10e90d in print_stack_frame(frame_info*, int, print_what, int) /home/simark/src/binutils-gdb/gdb/stack.c:180
    #12 0x55b6ee9592f8 in print_stop_location /home/simark/src/binutils-gdb/gdb/infrun.c:7853
    #13 0x55b6ee95948f in print_stop_event(ui_out*) /home/simark/src/binutils-gdb/gdb/infrun.c:7870
    #14 0x55b6ef34b962 in tui_on_normal_stop /home/simark/src/binutils-gdb/gdb/tui/tui-interp.c:98
    #15 0x55b6ee01a14d in std::_Function_handler<void (bpstats*, int), void (*)(bpstats*, int)>::_M_invoke(std::_Any_data const&, bpstats*&&, int&&) /usr/include/c++/8.2.1/bits/std_function.h:297
    #16 0x55b6ee965415 in std::function<void (bpstats*, int)>::operator()(bpstats*, int) const /usr/include/c++/8.2.1/bits/std_function.h:687
    #17 0x55b6ee962f1b in gdb::observers::observable<bpstats*, int>::notify(bpstats*, int) const /home/simark/src/binutils-gdb/gdb/common/observable.h:106
    #18 0x55b6ee95a6e7 in normal_stop() /home/simark/src/binutils-gdb/gdb/infrun.c:8142
    #19 0x55b6ee93f236 in fetch_inferior_event(void*) /home/simark/src/binutils-gdb/gdb/infrun.c:3782
    #20 0x55b6ee8f2641 in inferior_event_handler(inferior_event_type, void*) /home/simark/src/binutils-gdb/gdb/inf-loop.c:43
    #21 0x55b6eea2a1f0 in handle_target_event /home/simark/src/binutils-gdb/gdb/linux-nat.c:4358
    #22 0x55b6ee7045f1 in handle_file_event /home/simark/src/binutils-gdb/gdb/event-loop.c:733
    #23 0x55b6ee704e89 in gdb_wait_for_event /home/simark/src/binutils-gdb/gdb/event-loop.c:859
    #24 0x55b6ee7027b5 in gdb_do_one_event() /home/simark/src/binutils-gdb/gdb/event-loop.c:322
    #25 0x55b6ee702907 in start_event_loop() /home/simark/src/binutils-gdb/gdb/event-loop.c:371
    #26 0x55b6eeadfc16 in captured_command_loop /home/simark/src/binutils-gdb/gdb/main.c:331
    #27 0x55b6eeae2ef9 in captured_main /home/simark/src/binutils-gdb/gdb/main.c:1174
    #28 0x55b6eeae30c2 in gdb_main(captured_main_args*) /home/simark/src/binutils-gdb/gdb/main.c:1190
    #29 0x55b6edf4fa89 in main /home/simark/src/binutils-gdb/gdb/gdb.c:32

previously allocated by thread T0 here:
    #0 0x7fed89a8b019 in __interceptor_malloc /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cc:86
    #1 0x7fed88af983f in realpath@@GLIBC_2.3 (/usr/lib/libc.so.6+0x4583f)
    #2 0x7fed899dbbbc in __interceptor_canonicalize_file_name /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:3297
    #3 0x55b6ee376a03 in gdb_realpath(char const*) /home/simark/src/binutils-gdb/gdb/common/pathstuff.c:72
    #4 0x55b6ef09ec12 in find_and_open_source(char const*, char const*, std::unique_ptr<char, gdb::xfree_deleter<char> >*) /home/simark/src/binutils-gdb/gdb/source.c:990
    #5 0x55b6ef09f56a in open_source_file(symtab*) /home/simark/src/binutils-gdb/gdb/source.c:1069
    #6 0x55b6ef0a0f12 in print_source_lines_base /home/simark/src/binutils-gdb/gdb/source.c:1270
    #7 0x55b6ef0a2045 in print_source_lines(symtab*, int, int, enum_flags<print_source_lines_flag>) /home/simark/src/binutils-gdb/gdb/source.c:1415
    #8 0x55b6ef112c87 in print_frame_info(frame_info*, int, print_what, int, int) /home/simark/src/binutils-gdb/gdb/stack.c:914
    #9 0x55b6ef10e90d in print_stack_frame(frame_info*, int, print_what, int) /home/simark/src/binutils-gdb/gdb/stack.c:180
    #10 0x55b6ee9592f8 in print_stop_location /home/simark/src/binutils-gdb/gdb/infrun.c:7853
    #11 0x55b6ee95948f in print_stop_event(ui_out*) /home/simark/src/binutils-gdb/gdb/infrun.c:7870
    #12 0x55b6ef34b962 in tui_on_normal_stop /home/simark/src/binutils-gdb/gdb/tui/tui-interp.c:98
    #13 0x55b6ee01a14d in std::_Function_handler<void (bpstats*, int), void (*)(bpstats*, int)>::_M_invoke(std::_Any_data const&, bpstats*&&, int&&) /usr/include/c++/8.2.1/bits/std_function.h:297
    #14 0x55b6ee965415 in std::function<void (bpstats*, int)>::operator()(bpstats*, int) const /usr/include/c++/8.2.1/bits/std_function.h:687
    #15 0x55b6ee962f1b in gdb::observers::observable<bpstats*, int>::notify(bpstats*, int) const /home/simark/src/binutils-gdb/gdb/common/observable.h:106
    #16 0x55b6ee95a6e7 in normal_stop() /home/simark/src/binutils-gdb/gdb/infrun.c:8142
    #17 0x55b6ee93f236 in fetch_inferior_event(void*) /home/simark/src/binutils-gdb/gdb/infrun.c:3782
    #18 0x55b6ee8f2641 in inferior_event_handler(inferior_event_type, void*) /home/simark/src/binutils-gdb/gdb/inf-loop.c:43
    #19 0x55b6eea2a1f0 in handle_target_event /home/simark/src/binutils-gdb/gdb/linux-nat.c:4358
    #20 0x55b6ee7045f1 in handle_file_event /home/simark/src/binutils-gdb/gdb/event-loop.c:733
    #21 0x55b6ee704e89 in gdb_wait_for_event /home/simark/src/binutils-gdb/gdb/event-loop.c:859
    #22 0x55b6ee7027b5 in gdb_do_one_event() /home/simark/src/binutils-gdb/gdb/event-loop.c:322
    #23 0x55b6ee702907 in start_event_loop() /home/simark/src/binutils-gdb/gdb/event-loop.c:371
    #24 0x55b6eeadfc16 in captured_command_loop /home/simark/src/binutils-gdb/gdb/main.c:331
    #25 0x55b6eeae2ef9 in captured_main /home/simark/src/binutils-gdb/gdb/main.c:1174
    #26 0x55b6eeae30c2 in gdb_main(captured_main_args*) /home/simark/src/binutils-gdb/gdb/main.c:1190
    #27 0x55b6edf4fa89 in main /home/simark/src/binutils-gdb/gdb/gdb.c:32
    #28 0x7fed88ad8222 in __libc_start_main (/usr/lib/libc.so.6+0x24222)

gdb/ChangeLog:

	* source-cache.c (source_cache::get_source_lines): Re-read
	fullname after calling open_source_file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Arm: Fix Arm disassembler mapping symbol search.
@ 2019-03-25 22:26 sergiodj+buildbot
  2019-04-12 13:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 22:26 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 796d6298bb11deab06814cc38cfe74a1bfc57551 ***

Author: Tamar Christina <tamar.christina@arm.com>
Branch: master
Commit: 796d6298bb11deab06814cc38cfe74a1bfc57551

Arm: Fix Arm disassembler mapping symbol search.

Similar to the AArch64 patches the Arm disassembler has the same issues with
out of order sections but also a few short comings.

For one thing there are multiple code blocks to determine mapping symbols, and
they all work slightly different, and neither fully correct.  The first thing
this patch does is centralise the mapping symbols search into one function
mapping_symbol_for_insn.  This function is then updated to perform a search in
a similar way as AArch64.

Their used to be a value has_mapping_symbols which was used to determine the
default disassembly for objects that have no mapping symbols.  The problem with
the approach was that it was determining this value in the same loop that needed
it, which is why this field could take on the states -1, 0, 1 where -1 means
"don't know".  However this means that until you actually find a mapping symbol
or reach the end of the disassembly glob, you don't know if you did the right
action or not, and if you didn't you can't correct it anymore.

This is why the two jump-reloc-veneers-* testcases end up disassembling some
insn as data when they shouldn't.

Out of order here refers to an object file where sections are not listed in a
monotonic increasing VMA order.

The ELF ABI for Arm [1] specifies the following for mapping symbols:

  1) A text section must always have a corresponding mapping symbol at it's
     start.
  2) Data sections do not require any mapping symbols.
  3) The range of a mapping symbol extends from the address it starts on up to
     the next mapping symbol (exclusive) or section end (inclusive).

However there is no defined order between a symbol and it's corresponding
mapping symbol in the symbol table.  This means that while in general we look
up for a corresponding mapping symbol, we have to make at least one check of
the symbol below the address being disassembled.

When disassembling different PCs within the same section, the search for mapping
symbol can be cached somewhat.  We know that the mapping symbol corresponding to
the current PC is either the previous one used, or one at the same address as
the current PC.

However this optimization and mapping symbol search must stop as soon as we
reach the end or start of the section.  Furthermore if we're only disassembling
a part of a section, the search is a allowed to search further than the current
chunk, but is not allowed to search past it (The mapping symbol if there, must
be at the same address, so in practice we usually stop at PC+4).

lastly, since only data sections don't require a mapping symbol the default
mapping type should be DATA and not INSN as previously defined, however if the
binary has had all its symbols stripped than this isn't very useful.  To fix
this we determine the default based on the section flags.  This will allow the
disassembler to be more useful on stripped binaries.  If there is no section
than we assume you to be disassembling INSN.

[1] https://developer.arm.com/docs/ihi0044/latest/elf-for-the-arm-architecture-abi-2018q4-documentation#aaelf32-table4-7

binutils/ChangeLog:

	* testsuite/binutils-all/arm/in-order-all.d: New test.
	* testsuite/binutils-all/arm/in-order.d: New test.
	* testsuite/binutils-all/arm/objdump.exp: Support .d tests.
	* testsuite/binutils-all/arm/out-of-order-all.d: New test.
	* testsuite/binutils-all/arm/out-of-order.T: New test.
	* testsuite/binutils-all/arm/out-of-order.d: New test.
	* testsuite/binutils-all/arm/out-of-order.s: New test.

ld/ChangeLog:

	* testsuite/ld-arm/jump-reloc-veneers-cond-long.d: Update disassembly.
	* testsuite/ld-arm/jump-reloc-veneers-long.d: Update disassembly.

opcodes/ChangeLog:

	* arm-dis.c (struct arm_private_data): Remove has_mapping_symbols.
	(mapping_symbol_for_insn): Implement new algorithm.
	(print_insn): Remove duplicate code.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Note support for TLS variables on FreeBSD.
@ 2019-03-25 20:39 sergiodj+buildbot
  2019-04-12 13:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 20:39 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 81a24d04dfecdbdd9af143043197317dea1119c7 ***

Author: John Baldwin <jhb@FreeBSD.org>
Branch: master
Commit: 81a24d04dfecdbdd9af143043197317dea1119c7

Note support for TLS variables on FreeBSD.

gdb/ChangeLog:

	* NEWS: Mention TLS support for FreeBSD.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Clean up some comments in minsyms.c
@ 2019-03-25 20:06 sergiodj+buildbot
  2019-04-12 13:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 20:06 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 79e7ae11c71c1682c0d4b707eadc714ec4efc929 ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 79e7ae11c71c1682c0d4b707eadc714ec4efc929

Clean up some comments in minsyms.c

Philippe pointed out that some comments in minsyms.c still referred to
obstack allocation.  This patch fixes these up.

In most cases here, my view is that the comments were more misleading
than helpful.  So, I've generally removed text.

gdb/ChangeLog
2019-03-25  Tom Tromey  <tromey@adacore.com>

	* minsyms.c (BUNCH_SIZE): Update comment.
	(~minimal_symbol_reader): Remove old comment.
	(compact_minimal_symbols): Update comment.
	(minimal_symbol_reader::install): Remove old comment.  Update
	other comments.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix s390 build
@ 2019-03-25 17:24 sergiodj+buildbot
  2019-04-12 13:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 17:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT d45963c2b26369e3b375cf5b3b6f52f50f767ef3 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: d45963c2b26369e3b375cf5b3b6f52f50f767ef3

Fix s390 build

Add missing include.

2019-03-25  Alan Hayward  <alan.hayward@arm.com>

        * s390-linux-nat.c: Add include.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Add linux_get_hwcap
@ 2019-03-25 16:55 sergiodj+buildbot
  2019-04-12 13:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 16:55 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 0f83012ea0fb84d86d2a84a5feb51c0d63f0b7eb ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 0f83012ea0fb84d86d2a84a5feb51c0d63f0b7eb

Add linux_get_hwcap

Tidy up calls to read HWCAP (and HWCAP2) by adding common functions,
removing the PPC and AArch64 specific versions.

The only function difference is in aarch64_linux_core_read_description - if
the hwcap read fails it now return a valid description instead of nullptr.

gdb/ChangeLog:

2019-03-25  Alan Hayward  <alan.hayward@arm.com>

	* aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
	Call linux_get_hwcap.
	* aarch64-linux-tdep.c (aarch64_linux_core_read_description):
	Likewise.
	(aarch64_linux_get_hwcap): Remove function.
	* aarch64-linux-tdep.h (aarch64_linux_get_hwcap): Remove
	declaration.
	* arm-linux-nat.c (arm_linux_nat_target::read_description):Call
	linux_get_hwcap.
	* arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
	* linux-tdep.c (linux_get_hwcap): Add function.
	(linux_get_hwcap2): Likewise.
	* linux-tdep.h (linux_get_hwcap): Add declaration.
	(linux_get_hwcap2): Likewise.
	* ppc-linux-nat.c (ppc_linux_get_hwcap): Remove function.
	(ppc_linux_get_hwcap2): Likewise.
	(ppc_linux_nat_target::region_ok_for_hw_watchpoint): Call
	linux_get_hwcap.
	(ppc_linux_nat_target::insert_watchpoint): Likewise.
	(ppc_linux_nat_target::watchpoint_addr_within_range): Likewise.
	(ppc_linux_nat_target::read_description): Likewise.
	* ppc-linux-tdep.c (ppc_linux_core_read_description): Likewise.
	* s390-linux-nat.c: Likewise.
	* s390-linux-tdep.c (s390_core_read_description): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Fix disassembler bug with out-of-order sections
@ 2019-03-25 15:59 sergiodj+buildbot
  2019-04-12 13:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 15:59 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 53b2f36bf6aa939feab6f82f05d7dad52f82660d ***

Author: Tamar Christina <tamar.christina@arm.com>
Branch: master
Commit: 53b2f36bf6aa939feab6f82f05d7dad52f82660d

AArch64: Fix disassembler bug with out-of-order sections

The AArch64 disassembler has an optimization that it uses to reduce the amount
it has to search for mapping symbols during disassembly.  This optimization
assumes that sections are listed in the section header in monotonic increasing
VMAs.  However this is not a requirement for the ELF specification.

Because of this when such "out of order" sections occur the disassembler would
pick the wrong mapping symbol to disassemble the section with.

This fixes it by explicitly passing along the stop offset for the current
disassembly glob and when this changes compared to the previous one we've seen
the optimization won't be performed.  In effect this restarts the search from
a well defined starting point.  Usually the symbol's address.

The existing stop_vma can't be used for this as it is allowed to be unset and
setting this unconditionally would change the semantics of this field.

binutils/ChangeLog:

	* objdump.c (disassemble_bytes): Pass stop_offset.
	* testsuite/binutils-all/aarch64/out-of-order.T: New test.
	* testsuite/binutils-all/aarch64/out-of-order.d: New test.
	* testsuite/binutils-all/aarch64/out-of-order.s: New test.

include/ChangeLog:

	* dis-asm.h (struct disassemble_info): Add stop_offset.

opcodes/ChangeLog:

	* aarch64-dis.c (last_stop_offset): New.
	(print_insn_aarch64): Use stop_offset.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Have -D override mapping symbol as documented.
@ 2019-03-25 15:52 sergiodj+buildbot
  2019-04-12 13:56 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 15:52 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 60df3720d77c8415158f3eaa166e0b7162f9d3b4 ***

Author: Tamar Christina <tamar.christina@arm.com>
Branch: master
Commit: 60df3720d77c8415158f3eaa166e0b7162f9d3b4

AArch64: Have -D override mapping symbol as documented.

The documentation for -D says that on Arm platforms -D should disassemble
data as instructions.

"If the target is an ARM architecture this switch also has the effect of
forcing the disassembler to decode pieces of data found in code sections
as if they were instructions. "

This makes it do as it says on the tincan so it's more consistent with
aarch32.  The usecase here is for baremetal developers who have created
their instructions using .word directives instead if .insn.

Though for Linux users I do find this behavior somewhat non-optimal.
Perhaps there should be a new flag that just disassembles the values
following the actual mapping symbol?

binutils/ChangeLog:

	* testsuite/binutils-all/aarch64/in-order-all.d: New test.
	* testsuite/binutils-all/aarch64/out-of-order-all.d: New test.
	* testsuite/binutils-all/aarch64/out-of-order.d:

opcodes/ChangeLog:

	* aarch64-dis.c (print_insn_aarch64):
	Implement override.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Fix AArch64 disassembler mapping symbol search
@ 2019-03-25 15:38 sergiodj+buildbot
  2019-04-12 13:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 15:38 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 51457761649bab6868343b3da2258d73a62901f7 ***

Author: Tamar Christina <tamar.christina@arm.com>
Branch: master
Commit: 51457761649bab6868343b3da2258d73a62901f7

AArch64: Fix AArch64 disassembler mapping symbol search

My previous patch for AArch64 was not enough to catch all the cases where
disassembling an out-of-order section could go wrong.  It had missed the case
DATA sections could be incorrectly disassembled as TEXT.

Out of order here refers to an object file where sections are not listed in a
monotonic increasing VMA order.

The ELF ABI for AArch64 [1] specifies the following for mapping symbols:

  1) A text section must always have a corresponding mapping symbol at it's
     start.
  2) Data sections do not require any mapping symbols.
  3) The range of a mapping symbol extends from the address it starts on up to
     the next mapping symbol (exclusive) or section end (inclusive).

However there is no defined order between a symbol and it's corresponding
mapping symbol in the symbol table.  This means that while in general we look
up for a corresponding mapping symbol, we have to make at least one check of
the symbol below the address being disassembled.

When disassembling different PCs within the same section, the search for mapping
symbol can be cached somewhat.  We know that the mapping symbol corresponding to
the current PC is either the previous one used, or one at the same address as
the current PC.

However this optimization and mapping symbol search must stop as soon as we
reach the end or start of the section.  Furthermore if we're only disassembling
a part of a section, the search is a allowed to search further than the current
chunk, but is not allowed to search past it (The mapping symbol if there, must
be at the same address, so in practice we usually stop at PC+4).

lastly, since only data sections don't require a mapping symbol the default
mapping type should be DATA and not INSN as previously defined, however if the
binary has had all its symbols stripped than this isn't very useful.  To fix this
we determine the default based on the section flags.  This will allow the
disassembler to be more useful on stripped binaries.  If there is no section than
we assume you to be disassembling INSN.

[1] https://developer.arm.com/docs/ihi0056/latest/elf-for-the-arm-64-bit-architecture-aarch64-abi-2018q4#aaelf64-section4-5-4

binutils/ChangeLog:

	* testsuite/binutils-all/aarch64/in-order.d: New test.
	* testsuite/binutils-all/aarch64/out-of-order.d: Disassemble data as
	well.

opcodes/ChangeLog:

	* aarch64-dis.c (print_insn_aarch64): Update the mapping symbol search
	order.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix testsuite hangs when gdb_test_multiple body errors out
@ 2019-03-25 14:22 sergiodj+buildbot
  2019-04-12 13:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25 14:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9a93502fa81734d39f213ccb33b497bc40e1423d ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: 9a93502fa81734d39f213ccb33b497bc40e1423d

Fix testsuite hangs when gdb_test_multiple body errors out

This commit fixes a regression in the testsuite itself, triggered by
errors being raised from within gdb_test_multiple, originally reported
by Pedro Franco de Carvalho's at
<https://sourceware.org/ml/gdb-patches/2019-03/msg00160.html>.  Parts
of the commit message are based on his report.

This started happening due to a commit that was introduced recently,
and it can cause the testsuite to hang.

The commit that triggers this is:

 fe1a5cad302b5535030cdf62895e79512713d738
 [gdb/testsuite] Log wait status on process no longer exists error

That commit introduces a new "eof" block in gdb_test_multiple.  That
is not incorrect itself, but dejagnu's remote_expect is picking that
block as the "default" action when an error is raised from within the
commands inside a call to gdb_test_multiple:

  # remote_expect works basically the same as standard expect, but it
  # also takes care of getting the file descriptor from the specified
  # host and also calling the timeout/eof/default section if there is an
  # error on the expect call.
  #
  proc remote_expect { board timeout args } {

I find that "feature" surprising, and I don't really know why it
exists, but this means that the eof section that remote_expect picks
as the error block can be executed even when there was no actual eof
and the GDB process is still running, so the wait introduced in the
commit that tries to get the exit status of GDB hangs forever, while
GDB itself waits for input.

This only happens when there are internal testsuite errors (not
testcase failures).  This can be reproduced easily with a testcase
such as:

  gdb_start
  gdb_test_multiple "show version" "show version" {
    -re ".*" {
       error "forced error"
    }
  }

I think that working around this in GDB is useful so that the
testsuite doesn't hang in these cases.

Adding an empty "default" block at the end of the expect body in
gdb_test_multiple doesn't work, because dejagnu gives preference to
"eof" blocks:

	    if { $x eq "eof" } {
		set save_next 1
	    } elseif { $x eq "default" || $x eq "timeout" } {
		if { $error_sect eq "" } {
		    set save_next 1
		}
	    }

And we do have "eof" blocks.  So we need to make sure that the last
"eof" block is safe to use as the default error block.  It's also
pedantically incorrect to print

 "ERROR: Process no longer exists"

which is what we'd get if the last eof block we have was selected
(more below on this).

So this commit solves this by appending an "eof" with an empty
spawn_id list, so that it won't ever match.

Now, why is the first "eof" block selected today as the error block,
instead of the last one?

The reason is that remote_expect, while parsing the body to select the
default block to execute after an error, is affected by the comments
in the body (since they are also parsed).

If this comment in gdb_test_multiple

 # patterns below apply to any spawn id specified.

is changed to

 # The patterns below apply to any spawn id specified.

then the second eof block is selected and there is no hang.

Any comment at that same place with an even number of tokens also
works.

This is IMO a coincidence caused by how comments work in TCL.
Comments should only appear in places where a command can appear.  And
here, remote_expect is parsing a list of options, not commands, so
it's not unreasonable to not parse comments, similarly to how this:

  set a_list {
     an_element
     # another_element
  }

results in a list with three elements, not one element.

The fact that comments with an even number of tokens work is just a
coincidence of how remote_expect's little state machine is
implemented.

I thought we could solve this by stripping out comment lines in
gdb_expect, but I didn't find an easy way to do that.  Particularly, a
couple naive approaches I tried run into complications.  For example,
we have gdb_test calls with regular expressions that include sequences
like "\r\n#", and by the time we get to gdb_expect, the \r\n have
already been expanded to a real newline, so just splitting the whole
body at newline boundaries, looking for lines that start with #
results in incorrectly stripping out half of the gdb_text regexp.  I
think it's better (at least in this commit), to move the comments out
of the list, because it's much simpler and risk free.

gdb/testsuite/ChangeLog:
2019-03-25  Pedro Alves  <palves@redhat.com>

	* lib/gdb.exp (gdb_test_multiple): Split appends to $code and
	move comments outside list.  Append '-i "" eof' section.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Don't include symtab.h from expression.h
@ 2019-03-25  7:53 sergiodj+buildbot
  2019-04-12 13:52 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25  7:53 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a930ebcdf9594d6b6f91b634dceec1b2425a76a0 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: a930ebcdf9594d6b6f91b634dceec1b2425a76a0

Don't include symtab.h from expression.h

expression.h includes symtab.h, but apparently only for the
declaration of struct block.  This patch changes it to foward-declare
the structure, and remove the include.

gdb/ChangeLog
2019-03-24  Tom Tromey  <tom@tromey.com>

	* expression.h: Don't include symtab.h.
	(struct block): Forward declare.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove null_block_symbol
@ 2019-03-25  6:17 sergiodj+buildbot
  2019-04-12 13:53 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25  6:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6640a367bf5427779856e7c80ae4b4bd88c19d3c ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 6640a367bf5427779856e7c80ae4b4bd88c19d3c

Remove null_block_symbol

This removes null_block_symbol.  It seemed simpler to me to change
initializations and returns to use value initialization rather than
null_block_symbol.  This also fixes up a few spots where
initialization was done piecemeal.

gdb/ChangeLog
2019-03-24  Tom Tromey  <tom@tromey.com>

	* ada-lang.c (standard_lookup): Simplify initialization.
	(ada_lookup_symbol_nonlocal): Simplify return.
	* solib-spu.c (spu_lookup_lib_symbol): Simplify return.
	* solib-darwin.c (darwin_lookup_lib_symbol): Simplify return.
	* solib-svr4.c (elf_lookup_lib_symbol): Simplify return.
	* rust-lang.c (rust_lookup_symbol_nonlocal): Simplify
	initialization.
	* solib.c (solib_global_lookup): Simplify.
	* symtab.c (null_block_symbol): Remove.
	(symbol_cache_lookup): Simplify returns.
	(lookup_language_this): Simplify returns.
	(lookup_symbol_aux): Simplify return.
	(lookup_local_symbol): Simplify returns.
	(lookup_global_symbol_from_objfile): Simplify return.
	(lookup_symbol_in_objfile_symtabs)
	(lookup_symbol_in_objfile_from_linkage_name): Simplify return.
	(lookup_symbol_via_quick_fns, lookup_symbol_in_static_block)
	(lookup_static_symbol, lookup_global_symbol): Simplify return.
	* cp-namespace.c (cp_lookup_bare_symbol)
	(cp_search_static_and_baseclasses, cp_lookup_symbol_via_imports)
	(cp_lookup_symbol_via_all_imports, cp_lookup_nested_symbol_1)
	(cp_lookup_nested_symbol): Don't use null_block_symbol.
	(cp_lookup_symbol_via_imports): Simplify initialization.
	(find_symbol_in_baseclass): Likewise.
	* symtab.h (null_block_symbol): Remove.
	* d-namespace.c (d_lookup_symbol): Don't use null_block_symbol.
	(d_lookup_nested_symbol, d_lookup_symbol_imports)
	(d_lookup_symbol_module): Likewise.
	(find_symbol_in_baseclass): Simplify initialization.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] More block constification
@ 2019-03-25  6:17 sergiodj+buildbot
  2019-04-12 13:52 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-25  6:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 582942f4560f1c8d2a60c2557267f9d3ad8dd6aa ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 582942f4560f1c8d2a60c2557267f9d3ad8dd6aa

More block constification

I noticed that there are still many places referring to non-const
blocks.  This constifies all the remaining ones that I found that
could be constified.

In a few spots, this search found unused variables or fields.  I
removed these.  I've also removed some unnecessary casts to
"struct block *".

gdb/ChangeLog
2019-03-24  Tom Tromey  <tom@tromey.com>

	* c-exp.y (typebase): Remove casts.
	* gdbtypes.c (lookup_unsigned_typename, )
	(lookup_signed_typename): Remove cast.
	* eval.c (parse_to_comma_and_eval): Remove cast.
	* parse.c (write_dollar_variable): Remove cast.
	* block.h (struct block) <superblock>: Now const.
	* symfile-debug.c (debug_qf_map_matching_symbols): Update.
	* psymtab.c (psym_map_matching_symbols): Make "block" const.
	(map_block): Make "block" const.
	* symfile.h (struct quick_symbol_functions)
	<map_matching_symbols>: Constify block argument to "callback".
	* symtab.c (basic_lookup_transparent_type_quick): Make "block"
	const.
	(find_pc_sect_compunit_symtab): Make "b" const.
	(find_symbol_at_address): Likewise.
	(search_symbols): Likewise.
	* dwarf2read.c (dw2_lookup_symbol): Make "block" const.
	(dw2_debug_names_lookup_symbol): Likewise.
	(dw2_map_matching_symbols): Update.
	* p-valprint.c (pascal_val_print): Remove "block".
	* ada-lang.c (ada_add_global_exceptions): Make "b" const.
	(aux_add_nonlocal_symbols): Make "block" const.
	(resolve_subexp): Remove cast.
	* linespec.c (iterate_over_all_matching_symtabs): Make "block"
	const.
	(iterate_over_file_blocks): Likewise.
	* f-exp.y (%union) <bval>: Remove.
	* coffread.c (patch_opaque_types): Make "b" const.
	* spu-tdep.c (spu_catch_start): Make "block" const.
	* c-valprint.c (print_unpacked_pointer): Remove "block".
	* symmisc.c (dump_symtab_1): Make "b" const.
	(block_depth): Make "block" const.
	* d-exp.y (%union) <bval>: Remove.
	* cp-support.h (cp_lookup_rtti_type): Update.
	* cp-support.c (cp_lookup_rtti_type): Make "block" const.
	* psymtab.c (psym_lookup_symbol): Make "block" const.
	(maintenance_check_psymtabs): Make "b" const.
	* python/py-framefilter.c (extract_sym): Make "sym_block" const.
	(enumerate_locals, enumerate_args): Update.
	* python/py-symtab.c (stpy_global_block): Make "block" const.
	(stpy_static_block): Likewise.
	* inline-frame.c (block_starting_point_at): Make "new_block"
	const.
	* block.c (find_block_in_blockvector): Make return type const.
	(blockvector_for_pc_sect): Make "b" const.
	(find_block_in_blockvector): Make "b" const.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Have parser reset the innermost block tracker
@ 2019-03-23 17:30 sergiodj+buildbot
  2019-04-12 13:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-23 17:30 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 7ad417dd217849c164e3c8a250c62a98eb0b8cd4 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 7ad417dd217849c164e3c8a250c62a98eb0b8cd4

Have parser reset the innermost block tracker

I ran across a comment in symfile.c today:

  /* Clear globals which might have pointed into a removed objfile.
     FIXME: It's not clear which of these are supposed to persist
     between expressions and which ought to be reset each time.  */

It seems to me that this can be clarified: the parser entry points
ought to reset the innermost block tracker (and the expression context
block), and these should not be considered valid for code to use at
arbitrary times -- only immediately after an expression has been
parsed.

This patch implements this idea.  This could be further improved by
removing the parser globals and changing the parser functions to
return this information, but I have not done this.

Tested by the buildbot.

gdb/ChangeLog
2019-03-23  Tom Tromey  <tom@tromey.com>

	* varobj.c (varobj_create): Update.
	* symfile.c (clear_symtab_users): Don't reset innermost_block.
	* printcmd.c (display_command, do_one_display): Don't reset
	innermost_block.
	* parser-defs.h (enum innermost_block_tracker_type): Move to
	expression.h.
	(innermost_block): Update comment.
	* parse.c (parse_exp_1): Add tracker_types parameter.
	(parse_exp_in_context): Rename from parse_exp_in_context_1.  Add
	tracker_types parameter.  Reset innermost_block.
	(parse_exp_in_context): Remove.
	(parse_expression_for_completion): Update.
	* objfiles.c (~objfile): Don't reset expression_context_block or
	innermost_block.
	* expression.h (enum innermost_block_tracker_type): Move from
	parser-defs.h.
	(parse_exp_1): Add tracker_types parameter.
	* breakpoint.c (set_breakpoint_condition, watch_command_1): Don't
	reset innermost_block.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Include bcache.h from objfiles.h
@ 2019-03-23 17:15 sergiodj+buildbot
  2019-04-12 13:49 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-23 17:15 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b366c208ee07924cc3cafc1bd4d70548bc91075b ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: b366c208ee07924cc3cafc1bd4d70548bc91075b

Include bcache.h from objfiles.h

objfiles.h needs "struct bcache" to be complete, so it should include
bcache.h.  This patch implements this.

Tested by rebuilding.

gdb/ChangeLog
2019-03-23  Tom Tromey  <tom@tromey.com>

	* objfiles.h: Include bcache.h.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Use scoped_restore_current_language in two places
@ 2019-03-23 16:58 sergiodj+buildbot
  2019-04-12 13:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-23 16:58 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 9bb9b2f9d6d5aa90f579494d8407375a87a9ad0b ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 9bb9b2f9d6d5aa90f579494d8407375a87a9ad0b

Use scoped_restore_current_language in two places

I found a couple of spots that manually saved and restored the current
language.  This patch changes them to use
scoped_restore_current_language.

Tested by the buildbot.

gdb/ChangeLog
2019-03-23  Tom Tromey  <tom@tromey.com>

	* linespec.c (get_current_search_block): Use
	scoped_restore_current_language.
	* symmisc.c (dump_symtab): Use scoped_restore_current_language.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: gdbserver: read pauth registers
@ 2019-03-22 18:18 sergiodj+buildbot
  2019-04-12 13:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 18:18 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1ef53e6b8328acd5b7d54ee2fe288836ce12992e ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 1ef53e6b8328acd5b7d54ee2fe288836ce12992e

AArch64: gdbserver: read pauth registers

Add the pauth registers to the regset lists.

Add a new regset type OPTIONAL_REGS which allows for the regset read to fail.
Once the read fails, it will not be checked again.  This allows targets with
optional features to keep a single static regset_info structure.

gdb/ChangeLog:

	* arch/aarch64.h (AARCH64_PAUTH_REGS_SIZE): New define.

gdb/gdbserver/ChangeLog:

	* linux-aarch64-low.c (aarch64_store_pauthregset): New function.
	* linux-low.c (regsets_store_inferior_registers): Allow optional reads
	to fail.
	* linux-low.h (enum regset_type): Add OPTIONAL_REGS.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Use HWCAP to detect pauth feature
@ 2019-03-22 15:25 sergiodj+buildbot
  2019-04-12 13:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 15:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ee4fbcfa26eb4a2a3666f7c1cc31447c3cffa023 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: ee4fbcfa26eb4a2a3666f7c1cc31447c3cffa023

AArch64: Use HWCAP to detect pauth feature

Add aarch64_get_hwcap functions for reading the HWCAP.
>From this extract the PACA value and use this to enable pauth.

gdb/ChangeLog:

	* aarch64-linux-nat.c
	(aarch64_linux_nat_target::read_description): Read PACA hwcap.
	* aarch64-linux-tdep.c
	(aarch64_linux_core_read_description): Likewise.
	(aarch64_linux_get_hwcap): New function.
	* aarch64-linux-tdep.h (AARCH64_HWCAP_PACA): New define.
	(aarch64_linux_get_hwcap): New declaration.

gdb/gdbserver/ChangeLog:

	* linux-aarch64-low.c (AARCH64_HWCAP_PACA): New define.
	(aarch64_get_hwcap): New function.
	(aarch64_arch_setup): Read APIA hwcap.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Read pauth section from core files
@ 2019-03-22 14:02 sergiodj+buildbot
  2019-04-12 13:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 14:02 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 59c283728fddad638ae301cfb724d629fffc8665 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 59c283728fddad638ae301cfb724d629fffc8665

AArch64: Read pauth section from core files

gdb/ChangeLog:

	* aarch64-linux-tdep.c
	(aarch64_linux_iterate_over_regset_sections): Check for pauth
	section.
	* aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_PAUTH): New define.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Prologue scan unwinder support for signed return addresses
@ 2019-03-22 13:48 sergiodj+buildbot
  2019-04-12 13:47 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 13:48 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 17e116a7d1501a46cf4e45ec181148dc6a1e3e2b ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 17e116a7d1501a46cf4e45ec181148dc6a1e3e2b

AArch64: Prologue scan unwinder support for signed return addresses

Pauth address signing is enabled at binary compile time.  When enabled the
return addresses for functions may be mangled.  This patch adds functionality
to restore the original address for use in the prologue scan unwinder.

In the prologue analyzer, check for PACIASP/PACIBSP (enable address mangling)
and AUTIASP/AUTIBSP (disable address mangling).

When unwinding the PC from the prologue, unmask the register if required.

Add a test case to the prologue tests.

gdb/ChangeLog:

	* aarch64-tdep.c (aarch64_analyze_prologue): Check for pauth
	instructions.
	(aarch64_analyze_prologue_test): Add PACIASP test.
	(aarch64_prologue_prev_register): Unmask PC value.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: DWARF unwinder support for signed return addresses
@ 2019-03-22 13:31 sergiodj+buildbot
  2019-04-12 13:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 13:31 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 11e1b75f0696f6e406fe8ccc759bac2fbc8fc151 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 11e1b75f0696f6e406fe8ccc759bac2fbc8fc151

AArch64: DWARF unwinder support for signed return addresses

Pauth address signing is enabled at binary compile time.  When enabled the
return addresses for functions may be mangled.  This patch adds functionality
to restore the original address for use in the DWARF unwinder.

DW_CFA_AARCH64_negate_ra_state in a binary indicates the toggling of address
signing between enabled and disabled.  Ensure the state is stored in the DWARF
register ra_state.

Ensure the pauth DWARF registers are initialised.

gdb/ChangeLog:

	* aarch64-tdep.c (aarch64_frame_unmask_address): New function.
	(aarch64_dwarf2_prev_register): Unmask PC value.
	(aarch64_dwarf2_frame_init_reg): Init pauth registers.
	(aarch64_execute_dwarf_cfa_vendor_op): Check for
	DW_CFA_AARCH64_negate_ra_state.
	(aarch64_gdbarch_init): Add aarch64_execute_dwarf_cfa_vendor_op.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Add pauth DWARF registers
@ 2019-03-22 13:17 sergiodj+buildbot
  2019-04-12 13:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 13:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 34dcc7cf95f756862bdfebb753ab2de39fec4c9e ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 34dcc7cf95f756862bdfebb753ab2de39fec4c9e

AArch64: Add pauth DWARF registers

Map the pauth registers to DWARF.

Add a new pseudo register ra_state and also map this to DWARF.  This register
is hidden from the user - prevent it from being read or written to.  It will
be used for the unmangling of addresses.

gdb/ChangeLog:

	* aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Check for pauth
	registers.
	(aarch64_pseudo_register_name): Likewise.
	(aarch64_pseudo_register_type): Likewise.
	(aarch64_pseudo_register_reggroup_p): Likewise.
	(aarch64_gdbarch_init): Add pauth registers.
	* aarch64-tdep.h (AARCH64_DWARF_PAUTH_RA_STATE): New define.
	(AARCH64_DWARF_PAUTH_DMASK): Likewise.
	(AARCH64_DWARF_PAUTH_CMASK): Likewise.
	(struct gdbarch_tdep): Add regnum for ra_state.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Read pauth registers
@ 2019-03-22 12:49 sergiodj+buildbot
  2019-04-12 13:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 12:49 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 76bed0fd9493868889929ca9dcd32350c1d864be ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 76bed0fd9493868889929ca9dcd32350c1d864be

AArch64: Read pauth registers

Initialise the pauth registers when creating a target description, and store
the regnum of the first pauth register.

Use ptrace to read the registers in the pauth feature.

Do not allow the registers to be written.

gdb/ChangeLog:

	* aarch64-linux-nat.c (fetch_pauth_masks_from_thread): New
	function.
	(aarch64_linux_nat_target::fetch_registers): Read pauth registers.
	* aarch64-tdep.c (aarch64_cannot_store_register): New function.
	(aarch64_gdbarch_init): Add puth registers.
	* aarch64-tdep.h (struct gdbarch_tdep): Add pauth features.
	* arch/aarch64.h (AARCH64_PAUTH_DMASK_REGNUM): New define.
	(AARCH64_PAUTH_CMASK_REGNUM): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] AArch64: Add pointer authentication feature
@ 2019-03-22 12:22 sergiodj+buildbot
  2019-04-12 13:43 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 12:22 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 6dc0ebde59dfb73eae507ced718bafa54023bf33 ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 6dc0ebde59dfb73eae507ced718bafa54023bf33

AArch64: Add pointer authentication feature

Pointer Authentication is a new feature in AArch64 v8.3-a. When enabled in
the compiler, function return addresses will be mangled by the kernel.

Add register description xml and wire up to aarch64_linux_read_description.
This description includes the two pauth user registers.

Nothing yet uses the feature - that is added in later patches.

gdb/ChangeLog:

	* aarch64-linux-nat.c
	(aarch64_linux_nat_target::read_description): Add pauth param.
	* aarch64-linux-tdep.c
	(aarch64_linux_core_read_description): Likewise.
	* aarch64-tdep.c (struct target_desc): Add in pauth.
	(aarch64_read_description): Add pauth param.
	(aarch64_gdbarch_init): Likewise.
	* aarch64-tdep.h (aarch64_read_description): Likewise.
	* arch/aarch64.c (aarch64_create_target_description): Likewise.
	* arch/aarch64.h (aarch64_create_target_description): Likewise.
	* features/Makefile: Add new files.
	* features/aarch64-pauth.c: New file.
	* features/aarch64-pauth.xml: New file.

gdb/doc/ChangeLog:

	* gdb.texinfo: Describe pauth feature.

gdb/gdbserver/ChangeLog:

	* linux-aarch64-ipa.c (get_ipa_tdesc): Add pauth param.
	(initialize_low_tracepoint): Likewise.
	* linux-aarch64-low.c (aarch64_arch_setup): Likewise.
	* linux-aarch64-tdesc-selftest.c (aarch64_tdesc_test): Likewise.
	* linux-aarch64-tdesc.c (struct target_desc): Likewise.
	(aarch64_linux_read_description): Likewise.
	* linux-aarch64-tdesc.h (aarch64_linux_read_description): Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Testsuite: Ensure pie is disabled on some tests
@ 2019-03-22 10:00 sergiodj+buildbot
  2019-04-12 13:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-22 10:00 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 968aa7ae389d9e6cecb5fda6826bf889ed959fce ***

Author: Alan Hayward <alan.hayward@arm.com>
Branch: master
Commit: 968aa7ae389d9e6cecb5fda6826bf889ed959fce

Testsuite: Ensure pie is disabled on some tests

Recent versions of Ubuntu and Debian default GCC to enable pie.

In dump.exp, pie will causes addresses to be out of range for IHEX.

In break-interp.exp, pie is explicitly set for some tests and assumed
to be disabled for the remainder.

Ensure pie is disabled for these tests when required.

In addition, add a pie option to gdb_compile to match the nopie option
and simplify use.

gdb/testsuite/ChangeLog:

	* README: Add pie options.
	* gdb.base/break-interp.exp: Ensure pie is disabled.
	* gdb.base/dump.exp: Likewise.
	* lib/gdb.exp (gdb_compile): Add pie option.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] RISC-V: Fix linker crash in section symbol check.
@ 2019-03-21 22:32 sergiodj+buildbot
  2019-04-12 13:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-21 22:32 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a9f5a5517fb7df640f0fcd4cb0f9961818b6505b ***

Author: Jim Wilson <jimw@sifive.com>
Branch: master
Commit: a9f5a5517fb7df640f0fcd4cb0f9961818b6505b

RISC-V: Fix linker crash in section symbol check.

sym is only set for local symbols.  h is only set for global symbols.  Gas
won't let me create a global section symbol, but bfd appears to have some
support for that, and I can't rule out that other assemblers might do this.
So we need to support both, and verify sym and h are non-NULL before using.

	bfd/
	PR 24365
	* elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
	verify sym non-NULL before using.  Add identical check using h.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [BFD, AArch64, x86] Improve warning for --force-bti
@ 2019-03-21 17:04 sergiodj+buildbot
  2019-04-12 13:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-21 17:04 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4e5391148d51c58785aad637f1a92d47b91b3ae6 ***

Author: Sudakshina Das <sudi.das@arm.com>
Branch: master
Commit: 4e5391148d51c58785aad637f1a92d47b91b3ae6

[BFD, AArch64, x86] Improve warning for --force-bti

The AArch64 linker option to turn on BTI (--force-bti) warns in case there are
input objects which have a missing GNU NOTE section for BTI. This patch is trying
to improve the warnings that come out.

In order to do so, I propose adding a new argument to elf_merge_gnu_properties
and the backend function merge_gnu_properties. This new argument makes sure
that we now pass both the objects along with the properties to which they
belong to. The x86 backend function has also been updated to match this
change.

*** bfd/ChangeLog ***

2019-03-21  Sudakshina Das  <sudi.das@arm.com>

	* elf-bfd.h (struct elf_backend_data): Add argument to
	merge_gnu_properties.
	* elf-properties.c (elf_merge_gnu_properties): Add argument to
	itself and while calling bed->merge_gnu_properties.
	(elf_merge_gnu_property_list): Update the calls for
	elf_merge_gnu_properties.
	* elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
	of --force-bti warning and add argument.
	* elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
	warning.
	* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
	* elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
	declaration.

*** ld/ChangeLog ***

2019-03-21  Sudakshina Das  <sudi.das@arm.com>

	* testsuite/ld-aarch64/aarch64-elf.exp: Add new test.
	* testsuite/ld-aarch64/bti-plt-1.s: Add .ifdef for PAC note section.
	* testsuite/ld-aarch64/bti-plt-6.d: Update warning.
	* testsuite/ld-aarch64/bti-plt-7.d: Likewise.
	* testsuite/ld-aarch64/bti-warn.d: New test.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Merge handle_inferior_event and handle_inferior_event_1
@ 2019-03-20 18:24 sergiodj+buildbot
  2019-04-12 13:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-20 18:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 595915c1c135a77afa01d30a888a48fcc55a08ec ***

Author: Tom Tromey <tromey@adacore.com>
Branch: master
Commit: 595915c1c135a77afa01d30a888a48fcc55a08ec

Merge handle_inferior_event and handle_inferior_event_1

I noticed that handle_inferior_event is just a small wrapper that
frees the value chain.  This patch replaces it with a
scoped_value_mark, reducing the number of lines of code here.

Regression tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-03-20  Tom Tromey  <tromey@adacore.com>

	* infrun.c (handle_inferior_event): Rename from
	handle_inferior_event_1.  Create a scoped_value_mark.
	(handle_inferior_event): Remove.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] [BFD, AArch64] Define elf_backend_fixup_gnu_properties in AArch64
@ 2019-03-20 18:17 sergiodj+buildbot
  2019-04-12 13:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-03-20 18:17 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT acde6c6b431a8c38ab18a47bb56f65f515448195 ***

Author: Sudakshina Das <sudi.das@arm.com>
Branch: master
Commit: acde6c6b431a8c38ab18a47bb56f65f515448195

[BFD, AArch64] Define elf_backend_fixup_gnu_properties in AArch64

This patch add support for elf_backend_fixup_gnu_properties for GNU
property support for AArch64. The new AArch64 specific definition
_bfd_aarch64_elf_link_fixup_gnu_properties goes through the property
list to find AArch64 type properties and removes the properties that
are marked as "property_remove".

*** bfd/ChangeLog ***

2019-03-20  Sudakshina Das  <sudi.das@arm.com>

	* elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
	* elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
	(elf_backend_fixup_gnu_properties): Define for AArch64.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Sync libiberty sources with master version in gcc repository. Updated stabs demangling and cxxfilt tests to match.
@ 2019-01-07 13:26 sergiodj+buildbot
  2019-01-07 13:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2019-01-07 13:26 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 053af8c9034f92d6e36a1180655ba22a65c56437 ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: 053af8c9034f92d6e36a1180655ba22a65c56437

Sync libiberty sources with master version in gcc repository.  Updated stabs demangling and cxxfilt tests to match.

	PR 24044
	* stabs.c (parse_stab_argtypes): Remove call to
	cplus_mangle_opcode.
	* testsuite/binutils-all/cxxfilt.exp: Replace tests of v2 encoding
	with v3 encoding.  Add escape for known failures.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Fix a crash in jit.c
@ 2018-12-28 23:52 sergiodj+buildbot
  2018-12-29  1:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-12-28 23:52 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 2cd8cc0b66ca297bce4d08e4f712f86d9f1a2fb6 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 2cd8cc0b66ca297bce4d08e4f712f86d9f1a2fb6

Fix a crash in jit.c

A user at Mozilla pointed out a crash in jit.c.  In his situation, an
inferior using the JIT API exec'd an executable that did not use it.
This caused an assertion failure when jit.c:free_objfile_data called
delete_breakpoint with NULL.

This patch fixes the problem in the obvious way.  New test case
included.

gdb/ChangeLog
2018-12-28  Tom Tromey  <tom@tromey.com>

	* jit.c (free_objfile_data): Only delete breakpoint if non-null.

gdb/testsuite/ChangeLog
2018-12-28  Tom Tromey  <tom@tromey.com>
	    Simon Marchi <simark@simark.ca>

	* gdb.base/jit-exec.exp: New file.
	* gdb.base/jit-exec.c: New file.
	* gdb.base/jit-execd.c: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Document the "set style" commands
@ 2018-12-28 23:46 sergiodj+buildbot
  2018-12-29  0:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-12-28 23:46 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 140a4bc099820c909da0eac1df0f56ec468ad3dd ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 140a4bc099820c909da0eac1df0f56ec468ad3dd

Document the "set style" commands

This documents the new "set style" commands.

gdb/ChangeLog
2018-12-28  Tom Tromey  <tom@tromey.com>

	* NEWS: Mention terminal styling.

gdb/doc/ChangeLog
2018-12-28  Tom Tromey  <tom@tromey.com>

	* gdb.texinfo (Output Styling): New node.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Highlight source code using GNU Source Highlight
@ 2018-12-28 23:31 sergiodj+buildbot
  2018-12-29  0:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-12-28 23:31 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 62f29fda90cf1d5a1899f57ef78452471c707fd6 ***

Author: Tom Tromey <tom@tromey.com>
Branch: master
Commit: 62f29fda90cf1d5a1899f57ef78452471c707fd6

Highlight source code using GNU Source Highlight

This changes gdb to highlight source using GNU Source Highlight, if it
is available.

This affects the output of the "list" command and also the TUI source
window.

No new test because I didn't see a way to make it work when Source
Highlight is not found.

gdb/ChangeLog
2018-12-28  Tom Tromey  <tom@tromey.com>

	* utils.h (can_emit_style_escape): Declare.
	* utils.c (can_emit_style_escape): No longer static.
	* cli/cli-style.c (set_style_enabled): New function.
	(_initialize_cli_style): Use it.
	* tui/tui-winsource.c (tui_show_source_line): Use tui_puts.
	(tui_alloc_source_buffer): Change how source lines are allocated.
	* tui/tui-source.c (copy_source_line): New function.
	(tui_set_source_content): Use source cache.
	* tui/tui-io.h (tui_puts): Update.
	* tui/tui-io.c (tui_puts_internal): Add window parameter.
	(tui_puts): Likewise.
	(tui_redisplay_readline): Update.
	* tui/tui-data.c (free_content_elements): Change how source window
	contents are freed.
	* source.c (forget_cached_source_info): Clear the source cache.
	(print_source_lines_base): Use the source cache.
	* source-cache.h: New file.
	* source-cache.c: New file.
	* configure.ac: Check for GNU Source Highlight library.
	* configure: Update.
	* config.in: Update.
	* Makefile.in (SRCHIGH_LIBS, SRCHIGH_CFLAGS): New variables.
	(INTERNAL_CFLAGS_BASE): Add SRCHIGH_CFLAGS.
	(CLIBS): Add SRCHIGH_LIBS.
	(COMMON_SFILES): Add source-cache.c.
	(HFILES_NO_SRCDIR): Add source-cache.h.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Avoid "Invalid parameter passed to C runtime function" warning
@ 2018-11-20 16:57 sergiodj+buildbot
  2018-11-20 17:47 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-11-20 16:57 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 970d89d8fdd84b31decaf3bd84e785aad057ea32 ***

Author: Eli Zaretskii <eliz@gnu.org>
Branch: master
Commit: 970d89d8fdd84b31decaf3bd84e785aad057ea32

Avoid "Invalid parameter passed to C runtime function" warning

This warning was displayed by OutputDebugString on MinGW when
GDB was being debugged natively.

gdb/ChangeLog:

	* common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
	with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
	to MinGW fixed by Gnulib.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86_64-windows GDB crash due to fs_base/gs_base registers
@ 2018-06-29 22:12 sergiodj+buildbot
  2018-06-29 22:24 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-06-29 22:12 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT de52b9607d2623f18b7a7dbee3e1123d8d63f5da ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: de52b9607d2623f18b7a7dbee3e1123d8d63f5da

x86_64-windows GDB crash due to fs_base/gs_base registers

GDB is currently crashing anytime we try to access the fs_base/gs_base
registers, either to read them, or to write them. This can be observed
under various scenarios:
  - Explicit reference to those registers (eg: print $fs_base) --
    probably relatively rare;
  - Calling a function in the inferior, with the crash happening
    because we are trying to read those registers in order to save
    their value ahead of making the function call;
  - Just a plain "info registers";

The crash was introduced by the following commit:

    | commit 48aeef91c248291dd03583798904612426b1f40a
    | Date:   Mon Jun 26 18:14:43 2017 -0700
    | Subject: Include the fs_base and gs_base registers in amd64 target descriptions.

The Windows-nat implementation was unfortunately not prepared to deal
with those new registers. In particular, the way it fetches registers
is done by using a table where the index is the register number, and
the value at that index is the offset in the area in the thread's CONTEXT
data where the corresponding register value is stored.

For instance, in amd64-windows-nat.c, we can find the mappings static
array containing the following 57 elements in it:

    #define context_offset(x) (offsetof (CONTEXT, x))
    static const int mappings[] =
    {
      context_offset (Rax),
      [...]
      context_offset (FloatSave.MxCsr)
    };

That array is then used by windows_fetch_one_register via:

    char *context_offset = ((char *) &th->context) + mappings[r];

The problem is that fs_base's register number is 172, which is
well past the end of the mappings array (57 elements in total).
We end up getting an undefined offset, which happens to be so large
that it then causes the address where we try to read the register
value (a little bit later) to be invalid, thus crashing GDB with
a SEGV.

This patch side-steps the issue entirely by removing support for
those registers in GDB on x86_64-windows, because a look at the
CONTEXT structure indicates no support for getting those registers.

A more comprehensive fix would patch the potential buffer overflow
of the mappings array, but this can be done as a separate commit.

gdb/ChangeLog:

        * gdb/amd64-tdep.h (amd64_create_target_description): Add
        "segments" parameter.
        * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
        (_initialize_amd64_tdep): Update call to
        amd64_create_target_description.
        (amd64_target_description): Add "segments" parameter.  Adjust
        the implementation to use it.
        * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
        call to amd64_create_target_description.
        * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
        * gdb/arch/amd64.h (amd64_create_target_description): Add
        "segments" register.
        * gdb/arch/amd64.c (amd64_create_target_description): Add
        "segments" parameter.  Call create_feature_i386_64bit_segments
        only if SEGMENTS is true.
        * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
        call to amd64_create_target_description.

Tested on x86_64-windows using AdaCore's testsuite (by Joel Brobecker
<brobecker at adacore dot com>).


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] gdb: Remove OpenBSD/m88k support
@ 2018-04-16 12:19 sergiodj+buildbot
  2018-04-16 12:27 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16 12:19 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT a2a79012fe7ad4bcc354c14410679ccb705d5326 ***

Author: Pedro Alves <palves@redhat.com>
Branch: master
Commit: a2a79012fe7ad4bcc354c14410679ccb705d5326

gdb: Remove OpenBSD/m88k support

Support for m88k was fully removed from bfd, which broke gdb
--enable-targets=all builds:

  > gdb/m88k-tdep.c: In function void _initialize_m88k_tdep():
  > gdb/m88k-tdep.c:867:21: error: bfd_arch_m88k was not declared in this scope
  >    gdbarch_register (bfd_arch_m88k, m88k_gdbarch_init, NULL);

There's no point in keeping GDB support for OpenBSD/m88k with no bfd
support, so this commit simply removes the port.

gdb/ChangeLog:
2018-04-16  Pedro Alves  <palves@redhat.com>

	* MAINTAINERS: Remove m88k.
	* Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
	(HFILES_NO_SRCDIR): Remove m88k-tdep.h.
	(ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
	* NEWS: Mention that support for OpenBSD/m88k was removed.
	* configure.host (m88*-*-*): Remove support.
	* configure.nat (m88k-*-*): Remove support.
	* configure.tgt (m88*-*-openbsd*): Remove.
	* m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Prevent an illegal memory access via an out of range fixup pointer.
@ 2018-04-16 12:05 sergiodj+buildbot
  2018-04-16 12:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16 12:05 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT e9af4700bc7435e593dd74d4d2e099b3d7c01eb6 ***

Author: Nick Clifton <nickc@redhat.com>
Branch: master
Commit: e9af4700bc7435e593dd74d4d2e099b3d7c01eb6

Prevent an illegal memory access via an out of range fixup pointer.

	PR 23061
	* coffgen.c (coff_pointerize_aux): Check for an out of range
	fixup.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove arm-epoc-pe support
@ 2018-04-16 11:32 sergiodj+buildbot
  2018-04-16 11:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16 11:32 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ddb000396c9246649e02669e0bd6ad3949973e5a ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: ddb000396c9246649e02669e0bd6ad3949973e5a

Remove arm-epoc-pe support

bfd/
	* Makefile.am: Remove arm-epoc-pe support.
	* coff-arm.c: Likewise.
	* config.bfd: Likewise.
	* configure.ac: Likewise.
	* targets.c: Likewise.
	* epoc-pe-arm.c: Delete.
	* epoc-pei-arm.c: Delete.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.
binutils/
	* configure.ac: Remove arm-epoc-pe support.
	* dlltool.c: Likewise.
	* configure: Regenerate.
gas/
	* Makefile.am: Remove arm-epoc-pe support.
	* config/tc-arm.h: Likewise.
	* configure.tgt: Likewise.
	* testsuite/gas/all/gas.exp: Likewise.
	* testsuite/gas/arm/local_label_coff.d: Likewise.
	* testsuite/gas/arm/undefined.d: Likewise.
	* testsuite/gas/arm/undefined_coff.d: Likewise.
	* config/te-epoc-pe.h: Delete.
	* Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.
ld/
	* Makefile.am: Remove arm-epoc-pe support.
	* configure.tgt: Likewise.
	* emultempl/pe.em: Likewise.
	* pe-dll.c: Likewise.
	* testsuite/ld-scripts/fill.d: Likewise.
	* testsuite/ld-scripts/fill16.d: Likewise.
	* emulparams/arm_epoc_pe.sh: Delete.
	* scripttempl/epocpe.sc: Delete.
	* Makefile.in: Regenerate.
	* po/BLD-POTFILES.in: Regenerate.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove sparc-aout and sparc-coff support
@ 2018-04-16  9:35 sergiodj+buildbot
  2018-04-16  9:35 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16  9:35 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT c9098af41e3246586a30f4f0bdb0ee4367e9a5e7 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: c9098af41e3246586a30f4f0bdb0ee4367e9a5e7

Remove sparc-aout and sparc-coff support

bfd/
	* Makefile.am: Remove sparc-aout and sparc-coff support.
	* config.bfd: Likewise.
	* configure.ac: Likewise.
	* targets.c: Likewise.
	* aout-sparcle.c: Delete.
	* aoutf1.h: Delete.
	* cf-sparclynx.c: Delete.
	* coff-sparc.c: Delete.
	* demo64.c: Delete.
	* sparclinux.c: Delete.
	* sparclynx.c: Delete.
	* sparcnetbsd.c: Delete.
	* sunos.c: Delete.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.
binutils/
	* testsuite/lib/binutils-common.exp: Remove sparc-aout and
	sparc-coff support.
gas/
	* Makefile.am: Remove sparc-aout and sparc-coff support.
	* config/obj-coff.h: Likewise.
	* config/tc-sparc.c: Likewise.
	* config/tc-sparc.h: Likewise.
	* configure.tgt: Likewise.
	* config/te-sparcaout.h: Delete.
	* testsuite/gas/sun4/addend.d: Delete.
	* testsuite/gas/sun4/addend.exp: Delete.
	* testsuite/gas/sun4/addend.s: Delete.
	* Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.
ld/
	* Makefile.am: Remove sparc-aout and sparc-coff support.
	* configure.tgt: Likewise.
	* testsuite/ld-elfvers/vers.exp: Likewise.
	* testsuite/ld-elfvsb/elfvsb.exp: Likewise.
	* testsuite/ld-elfweak/elfweak.exp: Likewise.
	* testsuite/ld-shared/shared.exp: Likewise.
	* emulparams/coff_sparc.sh: Delete.
	* emulparams/sparcaout.sh: Delete.
	* emulparams/sparclinux.sh: Delete.
	* emulparams/sparcnbsd.sh: Delete.
	* emulparams/sun4.sh: Delete.
	* scripttempl/sparccoff.sc: Delete.
	* Makefile.in: Regenerate.
	* po/BLD-POTFILES.in: Regenerate.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove m68k-aout and m68k-coff support
@ 2018-04-16  9:21 sergiodj+buildbot
  2018-04-16  9:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16  9:21 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT dc12032bca08554cf0a72d224e44f755f7789ff3 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: dc12032bca08554cf0a72d224e44f755f7789ff3

Remove m68k-aout and m68k-coff support

include/
	* aout/host.h: Remove m68k-aout and m68k-coff support.
	* aout/hp300hpux.h: Delete.
	* coff/apollo.h: Delete.
	* coff/aux-coff.h: Delete.
	* coff/m68k.h: Delete.
bfd/
	* Makefile.am: Remove m68k-aout and m68k-coff support.
	* aoutf1.h: Likewise.
	* aoutx.h: Likewise.
	* archive.c: Likewise.
	* bfd-in.h: Likewise.
	* bfd.c: Likewise.
	* coffcode.h: Likewise.
	* coffswap.h: Likewise.
	* config.bfd: Likewise.
	* configure.ac: Likewise.
	* configure.host: Likewise.
	* doc/bfd.texinfo: Likewise.
	* doc/bfdint.texi: Likewise.
	* freebsd.h: Likewise.
	* gen-aout.c: Likewise.
	* hpux-core.c: Likewise.
	* libaout.h: Likewise.
	* libbfd-in.h: Likewise.
	* pdp11.c: Likewise.
	* peicode.h: Likewise.
	* riscix.c: Likewise.
	* targets.c: Likewise.
	* aout0.c: Delete.
	* coff-apollo.c: Delete.
	* coff-aux.c: Delete.
	* coff-m68k.c: Delete.
	* coff-svm68k.c: Delete.
	* coff-u68k.c: Delete.
	* hosts/delta68.h: Delete.
	* hosts/hp300bsd.h: Delete.
	* hosts/m68kaux.h: Delete.
	* hosts/news.h: Delete.
	* hp300bsd.c: Delete.
	* hp300hpux.c: Delete.
	* liboasys.h: Delete.
	* m68k4knetbsd.c: Delete.
	* m68klinux.c: Delete.
	* m68knetbsd.c: Delete.
	* oasys.c: Delete.
	* versados.c: Delete.
	* Makefile.in: Regenerate.
	* bfd-in2.h: Regenerate.
	* configure: Regenerate.
	* libbfd.h: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.
binutils/
	* testsuite/binutils-all/copy-2.d: Remove m68k-aout and m68k-coff
	support.
	* testsuite/binutils-all/copy-3.d: Likewise.
	* testsuite/binutils-all/objcopy.exp: Likewise.
	* testsuite/lib/binutils-common.exp: Likewise.
gas/
	* Makefile.am: Remove m68k-aout and m68k-coff support.
	* config/tc-m68k.c: Likewise.
	* config/tc-m68k.h: Likewise.
	* configure.ac: Likewise.
	* configure.tgt: Likewise.
	* testsuite/gas/all/weakref1u.d: Likewise.
	* testsuite/gas/m68k/all.exp: Likewise.
	* testsuite/gas/m68k/br-isaa.d: Likewise.
	* testsuite/gas/m68k/br-isab.d: Likewise.
	* testsuite/gas/m68k/br-isac.d: Likewise.
	* config/te-psos.h: Delete.
	* config/te-sun3.h: Delete.
	* testsuite/gas/m68k-coff/gas.exp: Delete.
	* testsuite/gas/m68k-coff/p2389.s: Delete.
	* testsuite/gas/m68k-coff/p2389a.s: Delete.
	* testsuite/gas/m68k-coff/p2430.s: Delete.
	* testsuite/gas/m68k-coff/p2430a.s: Delete.
	* testsuite/gas/m68k-coff/t1.s: Delete.
	* testsuite/gas/m68k/p3041.d: Delete.
	* testsuite/gas/m68k/p3041.s: Delete.
	* testsuite/gas/m68k/p3041data.d: Delete.
	* testsuite/gas/m68k/p3041data.s: Delete.
	* testsuite/gas/m68k/p3041pcrel.d: Delete.
	* testsuite/gas/m68k/p3041pcrel.s: Delete.
	* testsuite/gas/m68k/t2.d: Delete.
	* Makefile.in: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
	* po/POTFILES.in: Regenerate.
ld/
	* Makefile.am: Remove m68k-aout and m68k-coff support.
	* configure.tgt: Likewise.
	* emultempl/m68kelf.em: Likewise.
	* ld.texinfo: Likewise.
	* mri.c: Likewise.
	* emulparams/delta68.sh: Delete.
	* emulparams/hp300bsd.sh: Delete.
	* emulparams/hp3hpux.sh: Delete.
	* emulparams/m68k4knbsd.sh: Delete.
	* emulparams/m68kaout.sh: Delete.
	* emulparams/m68kaux.sh: Delete.
	* emulparams/m68kcoff.sh: Delete.
	* emulparams/m68klinux.sh: Delete.
	* emulparams/m68knbsd.sh: Delete.
	* emulparams/m68kpsos.sh: Delete.
	* emulparams/sun3.sh: Delete.
	* emultempl/m68kcoff.em: Delete.
	* scripttempl/delta68.sc: Delete.
	* scripttempl/m68kaux.sc: Delete.
	* scripttempl/m68kcoff.sc: Delete.
	* scripttempl/psos.sc: Delete.
	* testsuite/ld-versados/t1-1.ro: Delete.
	* testsuite/ld-versados/t1-2.ro: Delete.
	* testsuite/ld-versados/t1.ld: Delete.
	* testsuite/ld-versados/t1.ook: Delete.
	* testsuite/ld-versados/t2-1.ro: Delete.
	* testsuite/ld-versados/t2-2.ro: Delete.
	* testsuite/ld-versados/t2-3.ro: Delete.
	* testsuite/ld-versados/t2.ld: Delete.
	* testsuite/ld-versados/t2.ook: Delete.
	* testsuite/ld-versados/versados.exp: Delete.
	* Makefile.in: Regenerate.
	* po/BLD-POTFILES.in: Regenerate.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Remove sh5 and sh64 support
@ 2018-04-16  9:11 sergiodj+buildbot
  2018-04-16  9:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-16  9:11 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 211dc24b8744ed14ee5c293e7ac164d02e1fa1fe ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 211dc24b8744ed14ee5c293e7ac164d02e1fa1fe

Remove sh5 and sh64 support

include/
	* dis-asm.h: Remove sh5 and sh64 support.
bfd/
	* Makefile.am: Remove sh5 and sh64 support.
	* archures.c: Likewise.
	* config.bfd: Likewise.
	* configure.ac: Likewise.
	* cpu-sh.c: Likewise.
	* elf32-sh-relocs.h: Likewise.
	* elf32-sh.c: Likewise.
	* targets.c: Likewise.
	* elf32-sh64-com.c: Delete.
	* elf32-sh64.c: Delete.
	* elf32-sh64.h: Delete.
	* elf64-sh64.c: Delete.
	* Makefile.in: Regenerate.
	* bfd-in2.h: Regenerate.
	* configure: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.
opcodes/
	* Makefile.am: Remove sh5 and sh64 support.
	* configure.ac: Likewise.
	* disassemble.c: Likewise.
	* disassemble.h: Likewise.
	* sh-dis.c: Likewise.
	* sh64-dis.c: Delete.
	* sh64-opc.c: Delete.
	* sh64-opc.h: Delete.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* po/POTFILES.in: Regenerate.
bintuils/
	* testsuite/binutils-all/objcopy.exp: Remove sh5 and sh64 support.
gas/
	* Makefile.am: Remove sh5 and sh64 support.
	* config/tc-sh.c: Likewise.
	* configure.tgt: Likewise.
	* doc/Makefile.am: Likewise.
	* doc/as.texinfo: Likewise.
	* testsuite/gas/cfi/cfi.exp: Likewise.
	* testsuite/gas/sh/basic.exp: Likewise.
	* config/tc-sh64.c: Delete.
	* config/tc-sh64.h: Delete.
	* doc/c-sh64.texi: Delete.
	* testsuite/gas/sh/sh64/abi-32.d: Delete.
	* testsuite/gas/sh/sh64/abi-32.s: Delete.
	* testsuite/gas/sh/sh64/abi-64.d: Delete.
	* testsuite/gas/sh/sh64/abi-64.s: Delete.
	* testsuite/gas/sh/sh64/basic-1.d: Delete.
	* testsuite/gas/sh/sh64/basic-1.s: Delete.
	* testsuite/gas/sh/sh64/case-1.d: Delete.
	* testsuite/gas/sh/sh64/case-1.s: Delete.
	* testsuite/gas/sh/sh64/case-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/crange1-1.d: Delete.
	* testsuite/gas/sh/sh64/crange1-2.d: Delete.
	* testsuite/gas/sh/sh64/crange1.s: Delete.
	* testsuite/gas/sh/sh64/crange2-1.d: Delete.
	* testsuite/gas/sh/sh64/crange2-2.d: Delete.
	* testsuite/gas/sh/sh64/crange2-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/crange2.s: Delete.
	* testsuite/gas/sh/sh64/crange3-1.d: Delete.
	* testsuite/gas/sh/sh64/crange3.s: Delete.
	* testsuite/gas/sh/sh64/crange4-1.d: Delete.
	* testsuite/gas/sh/sh64/crange4.s: Delete.
	* testsuite/gas/sh/sh64/crange5-1.d: Delete.
	* testsuite/gas/sh/sh64/crange5.s: Delete.
	* testsuite/gas/sh/sh64/creg-1.d: Delete.
	* testsuite/gas/sh/sh64/creg-1.s: Delete.
	* testsuite/gas/sh/sh64/creg-2.d: Delete.
	* testsuite/gas/sh/sh64/creg-2.s: Delete.
	* testsuite/gas/sh/sh64/datal-1.s: Delete.
	* testsuite/gas/sh/sh64/datal-2.d: Delete.
	* testsuite/gas/sh/sh64/datal-2.s: Delete.
	* testsuite/gas/sh/sh64/datal-3.s: Delete.
	* testsuite/gas/sh/sh64/datal32-1.d: Delete.
	* testsuite/gas/sh/sh64/datal32-3.d: Delete.
	* testsuite/gas/sh/sh64/datal64-1.d: Delete.
	* testsuite/gas/sh/sh64/datal64-3.d: Delete.
	* testsuite/gas/sh/sh64/eh-1.d: Delete.
	* testsuite/gas/sh/sh64/eh-1.s: Delete.
	* testsuite/gas/sh/sh64/endian-1.d: Delete.
	* testsuite/gas/sh/sh64/endian-1.s: Delete.
	* testsuite/gas/sh/sh64/endian-2.d: Delete.
	* testsuite/gas/sh/sh64/endian-2.s: Delete.
	* testsuite/gas/sh/sh64/err-1.s: Delete.
	* testsuite/gas/sh/sh64/err-2.s: Delete.
	* testsuite/gas/sh/sh64/err-3.s: Delete.
	* testsuite/gas/sh/sh64/err-4.s: Delete.
	* testsuite/gas/sh/sh64/err-abi-32.s: Delete.
	* testsuite/gas/sh/sh64/err-abi-64.s: Delete.
	* testsuite/gas/sh/sh64/err-dsp.s: Delete.
	* testsuite/gas/sh/sh64/err-movi-noexp-1.s: Delete.
	* testsuite/gas/sh/sh64/err-noexp-cmd1.s: Delete.
	* testsuite/gas/sh/sh64/err-pt-1.s: Delete.
	* testsuite/gas/sh/sh64/err-pt32-cmd1.s: Delete.
	* testsuite/gas/sh/sh64/err-pt32-cmd2.s: Delete.
	* testsuite/gas/sh/sh64/err-pt32-cmd3.s: Delete.
	* testsuite/gas/sh/sh64/err-ptb-1.s: Delete.
	* testsuite/gas/sh/sh64/err-ptb-2.s: Delete.
	* testsuite/gas/sh/sh64/err.exp: Delete.
	* testsuite/gas/sh/sh64/immexpr1.s: Delete.
	* testsuite/gas/sh/sh64/immexpr2.s: Delete.
	* testsuite/gas/sh/sh64/immexpr32-1.d: Delete.
	* testsuite/gas/sh/sh64/immexpr32-2.d: Delete.
	* testsuite/gas/sh/sh64/immexpr64-1.d: Delete.
	* testsuite/gas/sh/sh64/immexpr64-2.d: Delete.
	* testsuite/gas/sh/sh64/lineno.d: Delete.
	* testsuite/gas/sh/sh64/lineno.s: Delete.
	* testsuite/gas/sh/sh64/localcom-1.d: Delete.
	* testsuite/gas/sh/sh64/localcom-1.s: Delete.
	* testsuite/gas/sh/sh64/mix-1.d: Delete.
	* testsuite/gas/sh/sh64/mix-1.s: Delete.
	* testsuite/gas/sh/sh64/mix-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/movi-1.s: Delete.
	* testsuite/gas/sh/sh64/movi-2.s: Delete.
	* testsuite/gas/sh/sh64/movi-3.d: Delete.
	* testsuite/gas/sh/sh64/movi-3.s: Delete.
	* testsuite/gas/sh/sh64/movi32-1.d: Delete.
	* testsuite/gas/sh/sh64/movi32-2.d: Delete.
	* testsuite/gas/sh/sh64/movi32-noexp-2.d: Delete.
	* testsuite/gas/sh/sh64/movi64-1.d: Delete.
	* testsuite/gas/sh/sh64/movi64-2.d: Delete.
	* testsuite/gas/sh/sh64/movi64-2.s: Delete.
	* testsuite/gas/sh/sh64/movi64-3.d: Delete.
	* testsuite/gas/sh/sh64/movi64-noexp-2.d: Delete.
	* testsuite/gas/sh/sh64/pt-1.d: Delete.
	* testsuite/gas/sh/sh64/pt-1.s: Delete.
	* testsuite/gas/sh/sh64/pt-2.s: Delete.
	* testsuite/gas/sh/sh64/pt-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/pt32-1.d: Delete.
	* testsuite/gas/sh/sh64/pt32-noexp-2.d: Delete.
	* testsuite/gas/sh/sh64/pt64-1.d: Delete.
	* testsuite/gas/sh/sh64/pt64-32-1.d: Delete.
	* testsuite/gas/sh/sh64/pt64-32-2.d: Delete.
	* testsuite/gas/sh/sh64/pt64-noexp-2.d: Delete.
	* testsuite/gas/sh/sh64/ptc-1.s: Delete.
	* testsuite/gas/sh/sh64/ptc32-1.d: Delete.
	* testsuite/gas/sh/sh64/ptc32-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/ptc64-1.d: Delete.
	* testsuite/gas/sh/sh64/ptc64-32-1.d: Delete.
	* testsuite/gas/sh/sh64/ptc64-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/ptext-1.s: Delete.
	* testsuite/gas/sh/sh64/ptext32-1.d: Delete.
	* testsuite/gas/sh/sh64/ptext32-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/ptext64-1.d: Delete.
	* testsuite/gas/sh/sh64/ptext64-32-1.d: Delete.
	* testsuite/gas/sh/sh64/ptext64-noexp-1.d: Delete.
	* testsuite/gas/sh/sh64/rel-1.s: Delete.
	* testsuite/gas/sh/sh64/rel-2.s: Delete.
	* testsuite/gas/sh/sh64/rel-3.s: Delete.
	* testsuite/gas/sh/sh64/rel-4.s: Delete.
	* testsuite/gas/sh/sh64/rel-5.s: Delete.
	* testsuite/gas/sh/sh64/rel32-1.d: Delete.
	* testsuite/gas/sh/sh64/rel32-2.d: Delete.
	* testsuite/gas/sh/sh64/rel32-3.d: Delete.
	* testsuite/gas/sh/sh64/rel32-4.d: Delete.
	* testsuite/gas/sh/sh64/rel32-5.d: Delete.
	* testsuite/gas/sh/sh64/rel64-1.d: Delete.
	* testsuite/gas/sh/sh64/rel64-2.d: Delete.
	* testsuite/gas/sh/sh64/rel64-3.d: Delete.
	* testsuite/gas/sh/sh64/rel64-4.d: Delete.
	* testsuite/gas/sh/sh64/rel64-5.d: Delete.
	* testsuite/gas/sh/sh64/relax-1.d: Delete.
	* testsuite/gas/sh/sh64/relax-1.s: Delete.
	* testsuite/gas/sh/sh64/relax-2.d: Delete.
	* testsuite/gas/sh/sh64/relax-2.s: Delete.
	* testsuite/gas/sh/sh64/relax-3.d: Delete.
	* testsuite/gas/sh/sh64/relax-3.s: Delete.
	* testsuite/gas/sh/sh64/sh64.exp: Delete.
	* testsuite/gas/sh/sh64/shift-1.s: Delete.
	* testsuite/gas/sh/sh64/shift-2.s: Delete.
	* testsuite/gas/sh/sh64/shift-3.s: Delete.
	* testsuite/gas/sh/sh64/shift32-1.d: Delete.
	* testsuite/gas/sh/sh64/shift32-3.d: Delete.
	* testsuite/gas/sh/sh64/shift32-noexp-3.d: Delete.
	* testsuite/gas/sh/sh64/shift64-1.d: Delete.
	* testsuite/gas/sh/sh64/shift64-2.d: Delete.
	* testsuite/gas/sh/sh64/shift64-3.d: Delete.
	* testsuite/gas/sh/sh64/shift64-noexp-3.d: Delete.
	* testsuite/gas/sh/sh64/syntax-1.d: Delete.
	* testsuite/gas/sh/sh64/syntax-1.s: Delete.
	* testsuite/gas/sh/sh64/syntax-2.d: Delete.
	* testsuite/gas/sh/sh64/syntax-2.s: Delete.
	* testsuite/gas/sh/sh64/ua-1.s: Delete.
	* testsuite/gas/sh/sh64/ua32-1.d: Delete.
	* testsuite/gas/sh/sh64/ua64-1.d: Delete.
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* po/POTFILES.in: Regenerate.
ld/
	* Makefile.am: Remove sh5 and sh64 support.
	* configure.tgt: Likewise.
	* ldlang.c: Likewise.
	* testsuite/ld-elfcomm/elfcomm.exp: Likewise.
	* testsuite/ld-gc/gc.exp: Likewise.
	* testsuite/ld-gc/pr13683.d: Likewise.
	* testsuite/ld-scripts/crossref.exp: Likewise.
	* testsuite/ld-selective/selective.exp: Likewise.
	* testsuite/ld-sh/ld-r-1.d: Likewise.
	* testsuite/ld-sh/rd-sh.exp: Likewise.
	* testsuite/ld-sh/sh.exp: Likewise.
	* testsuite/ld-srec/srec.exp: Likewise.
	* testsuite/ld-undefined/undefined.exp: Likewise.
	* emulparams/shelf32.sh: Delete.
	* emulparams/shelf32_linux.sh: Delete.
	* emulparams/shelf32_nbsd.sh: Delete.
	* emulparams/shelf64.sh: Delete.
	* emulparams/shelf64_nbsd.sh: Delete.
	* emulparams/shlelf32.sh: Delete.
	* emulparams/shlelf32_linux.sh: Delete.
	* emulparams/shlelf32_nbsd.sh: Delete.
	* emulparams/shlelf64.sh: Delete.
	* emulparams/shlelf64_nbsd.sh: Delete.
	* emultempl/sh64elf.em: Delete.
	* testsuite/ld-sh/sh64/abi32.sd: Delete.
	* testsuite/ld-sh/sh64/abi32.xd: Delete.
	* testsuite/ld-sh/sh64/abi64.sd: Delete.
	* testsuite/ld-sh/sh64/abi64.xd: Delete.
	* testsuite/ld-sh/sh64/abixx-noexp.sd: Delete.
	* testsuite/ld-sh/sh64/cmpct1.sd: Delete.
	* testsuite/ld-sh/sh64/cmpct1.xd: Delete.
	* testsuite/ld-sh/sh64/crange-1.s: Delete.
	* testsuite/ld-sh/sh64/crange-2a.s: Delete.
	* testsuite/ld-sh/sh64/crange-2b.s: Delete.
	* testsuite/ld-sh/sh64/crange-2c.s: Delete.
	* testsuite/ld-sh/sh64/crange-2d.s: Delete.
	* testsuite/ld-sh/sh64/crange-2e.s: Delete.
	* testsuite/ld-sh/sh64/crange-2f.s: Delete.
	* testsuite/ld-sh/sh64/crange-2g.s: Delete.
	* testsuite/ld-sh/sh64/crange-2h.s: Delete.
	* testsuite/ld-sh/sh64/crange-2i.s: Delete.
	* testsuite/ld-sh/sh64/crange1.rd: Delete.
	* testsuite/ld-sh/sh64/crange2.rd: Delete.
	* testsuite/ld-sh/sh64/crange3-cmpct.rd: Delete.
	* testsuite/ld-sh/sh64/crange3-media.rd: Delete.
	* testsuite/ld-sh/sh64/crange3.dd: Delete.
	* testsuite/ld-sh/sh64/crange3.rd: Delete.
	* testsuite/ld-sh/sh64/crangerel1.rd: Delete.
	* testsuite/ld-sh/sh64/crangerel2.rd: Delete.
	* testsuite/ld-sh/sh64/dlsection-1.s: Delete.
	* testsuite/ld-sh/sh64/dlsection.sd: Delete.
	* testsuite/ld-sh/sh64/endian.dbd: Delete.
	* testsuite/ld-sh/sh64/endian.dld: Delete.
	* testsuite/ld-sh/sh64/endian.ld: Delete.
	* testsuite/ld-sh/sh64/endian.s: Delete.
	* testsuite/ld-sh/sh64/endian.sbd: Delete.
	* testsuite/ld-sh/sh64/endian.sld: Delete.
	* testsuite/ld-sh/sh64/gotplt.d: Delete.
	* testsuite/ld-sh/sh64/gotplt.map: Delete.
	* testsuite/ld-sh/sh64/gotplt.s: Delete.
	* testsuite/ld-sh/sh64/init-cmpct.d: Delete.
	* testsuite/ld-sh/sh64/init-media.d: Delete.
	* testsuite/ld-sh/sh64/init.s: Delete.
	* testsuite/ld-sh/sh64/init64.d: Delete.
	* testsuite/ld-sh/sh64/mix1-noexp.sd: Delete.
	* testsuite/ld-sh/sh64/mix1.sd: Delete.
	* testsuite/ld-sh/sh64/mix1.xd: Delete.
	* testsuite/ld-sh/sh64/mix2-noexp.sd: Delete.
	* testsuite/ld-sh/sh64/mix2.sd: Delete.
	* testsuite/ld-sh/sh64/mix2.xd: Delete.
	* testsuite/ld-sh/sh64/rd-sh64.exp: Delete.
	* testsuite/ld-sh/sh64/rel-1.s: Delete.
	* testsuite/ld-sh/sh64/rel-2.s: Delete.
	* testsuite/ld-sh/sh64/rel32.xd: Delete.
	* testsuite/ld-sh/sh64/rel64.xd: Delete.
	* testsuite/ld-sh/sh64/relax.exp: Delete.
	* testsuite/ld-sh/sh64/relax1.s: Delete.
	* testsuite/ld-sh/sh64/relax2.s: Delete.
	* testsuite/ld-sh/sh64/relax3.s: Delete.
	* testsuite/ld-sh/sh64/relax4.s: Delete.
	* testsuite/ld-sh/sh64/reldl-1.s: Delete.
	* testsuite/ld-sh/sh64/reldl-2.s: Delete.
	* testsuite/ld-sh/sh64/reldl32.rd: Delete.
	* testsuite/ld-sh/sh64/reldl64.rd: Delete.
	* testsuite/ld-sh/sh64/relfail.exp: Delete.
	* testsuite/ld-sh/sh64/relfail.s: Delete.
	* testsuite/ld-sh/sh64/sh64-1.s: Delete.
	* testsuite/ld-sh/sh64/sh64-2.s: Delete.
	* testsuite/ld-sh/sh64/sh64.exp: Delete.
	* testsuite/ld-sh/sh64/shcmp-1.s: Delete.
	* testsuite/ld-sh/sh64/shdl-1.s: Delete.
	* testsuite/ld-sh/sh64/shdl-2.s: Delete.
	* testsuite/ld-sh/sh64/shdl32.xd: Delete.
	* testsuite/ld-sh/sh64/shdl64.sd: Delete.
	* testsuite/ld-sh/sh64/shdl64.xd: Delete.
	* testsuite/ld-sh/sh64/shmix-1.s: Delete.
	* testsuite/ld-sh/sh64/shmix-2.s: Delete.
	* testsuite/ld-sh/sh64/shmix-3.s: Delete.
	* testsuite/ld-sh/sh64/stobin-0-dso.d: Delete.
	* testsuite/ld-sh/sh64/stobin-1.d: Delete.
	* testsuite/ld-sh/sh64/stobin.s: Delete.
	* testsuite/ld-sh/sh64/stolib.s: Delete.
	* Makefile.in: Regenerate.
	* po/BLD-POTFILES.in: Regenerate.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] x86: Allow 32-bit registers for tpause and umwait
@ 2018-04-15 15:56 sergiodj+buildbot
  2018-04-15 15:56 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-15 15:56 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT ae1d38437284b31d5a1c604bcf391d4543be00a5 ***

Author: H.J. Lu <hjl.tools@gmail.com>
Branch: master
Commit: ae1d38437284b31d5a1c604bcf391d4543be00a5

x86: Allow 32-bit registers for tpause and umwait

Since only the first 32 bits of input operand are used for tpause and
umwait, the REX.W bit is skipped.  Both 32-bit registers and 64-bit
registers are allowed.

gas/

	* testsuite/gas/i386/x86-64-waitpkg.s: Add 32-bit registers
	tests for tpause and umwait.
	* testsuite/gas/i386/x86-64-waitpkg-intel.d: Updated.
	* testsuite/gas/i386/x86-64-waitpkg.d: Likewise.

opcodes/

	* i386-dis.c (prefix_table): Replace Em with Edq on tpause and
	umwait.
	* i386-opc.tbl: Allow 32-bit registers for tpause and umwait in
	64-bit mode.
	* i386-tbl.h: Regenerated.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] powerpc common-page-size
@ 2018-04-14  9:25 sergiodj+buildbot
  2018-04-14  9:25 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-14  9:25 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 702d167134149f420ea3bcbc194d63a2653a0c27 ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 702d167134149f420ea3bcbc194d63a2653a0c27

powerpc common-page-size

max-page-size only matters for demand paged executables or shared
libraries, and the ideal size is the largest value used by your
operating system.  Values larger than necessary just waste file space
and memory.  common-page-size also affects file and memory size,
trading a possible small increase in file size for a decrease in
memory size when the operating system is using a common-page-size
page.  With a powerpc max-page-size of 64k and common-page-size of 4k
many executables will use no more memory pages when the system page
size is 4k than an executable linked with -z max-page-size=0x1000,
yet will still run on a system using 64k pages.  However, when running
on a system using 64k pages relro protection will not be completely
effective.

Due to the relro problem, powerpc binutils has been using a default
common-page-size of 64k since 2014-12-18 (git commit 04c6a44c7),
leading to complaints about increased file and memory sizes.  People
not using relro do have a valid reason to complain..

So this patch introduces an extra back-end value to use as the default
for common-page-size when generating relro executables, and enables
the support for powerpc.  Non relro executables will now be generated
with a default common-page-size of 4k.

bfd/
	* elf-bfd.h (struct elf_backend_data): Add relropagesize.
	* elfxx-target.h (ELF_RELROPAGESIZE): Provide default and
	sanity test.
	(elfNN_bed): Init relropagesize.
	* bfd.c (bfd_emul_get_commonpagesize): Add boolean param to
	select relropagesize.
	* elf32-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
	(ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
	(ELF_MINPAGESIZE): Don't define.
	* elf64-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000.
	(ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE.
	* bfd-in2.h: Regenerate.
ld/
	* ldmain.c (main): Move config.maxpagesize and
	config.commonpagesize initialization to..
	* ldemul.c (after_parse_default): ..here.
	* testsuite/ld-powerpc/ppc476-shared.d: Pass -z common-page-size.
	* testsuite/ld-powerpc/ppc476-shared2.d: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] powerpc max-page-size vs __QNXTARGET__
@ 2018-04-14  9:08 sergiodj+buildbot
  2018-04-14  9:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-14  9:08 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 03aa968462e0345b2d846ca240b8c723d713761a ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 03aa968462e0345b2d846ca240b8c723d713761a

powerpc max-page-size vs __QNXTARGET__

The default max-page-size on ppc32 has been 64k since 1995-02-15 (git
commit bcbe2c71).  There was a change committed 2003-07-12 to chose a
4k page if __QNXTARGET__ is defined, but that particular commit was
from an earlier posted patch
https://sourceware.org/ml/binutils/2003-07/msg00211.html that only
made the change effective for arm, rather than the later one
https://sourceware.org/ml/binutils/2003-07/msg00220.html that also
changed powerpc and sh..

Since the __QNXTARGET__ #ifdef in elf32-ppc.c is ineffective unless
the user defines it in his or her CFLAGS, I'm removing that code.

	* elf32-ppc.c (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Don't depend
	on __QNXTARGET__ define.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] powerpc-lynxos and powerpc-windiss fixes
@ 2018-04-14  8:58 sergiodj+buildbot
  2018-04-14  8:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-14  8:58 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 24acfe5e2b7d4e6c0ccb72ffffc349d7fa88838d ***

Author: Alan Modra <amodra@gmail.com>
Branch: master
Commit: 24acfe5e2b7d4e6c0ccb72ffffc349d7fa88838d

powerpc-lynxos and powerpc-windiss fixes

Enabling shared lib tests showed the powerpc-lynxos target is broken,
and has been for a long time.  The breakage happened in a 2005-05-07
patch of mine, git commit 3b36f7e62, I think.  There have been no bug
reports I recall so it seems the target is dead.  powerpc-windiss is
similarly broken.

This patch fixes the breakage, and puts the targets on the obsolete
list.

bfd/
	* config.bfd: Add powerpc-*-lynxos* and powerpc-*-windiss*
	to obsolete list.
ld/
	* emulparams/elf32ppcwindiss.sh: Rewrite to use elf32ppc.sh.
	* emulparams/ppclynx.sh: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Show line numbers in output for "info var/func/type"
@ 2018-04-13 17:44 sergiodj+buildbot
  2018-04-13 17:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-13 17:44 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b744723f571815e6cee43df371c8e733e34e1edf ***

Author: Andreas Arnez <arnez@linux.vnet.ibm.com>
Branch: master
Commit: b744723f571815e6cee43df371c8e733e34e1edf

Show line numbers in output for "info var/func/type"

The GDB commands "info variables", "info functions", and "info types" show
the appropriate list of definitions matching the given pattern.  They also
group them by source files.  But no line numbers within these source files
are shown.

The line number information is particularly useful to the user when a
simple "grep" doesn't readily point to a definition.  This is often the
case when the definition involves a macro, occurs within a namespace, or
when the identifier appears very frequently in the source file.

This patch enriches the printout of these commands by the line numbers and
adjusts affected test cases to the changed output where necessary.  The
new output looks like this:

  (gdb) i variables
  All defined variables:

  File foo.c:
  3:	const char * const foo;
  1:	int x;

The line number is followed by a colon and a tab character, which is then
followed by the symbol definition.  If no line number is available, the
tab is printed out anyhow, so definitions line up.

gdb/ChangeLog:

	* symtab.c (print_symbol_info): Precede the symbol definition by
	the line number when available.
	* NEWS: Advertise this enhancement.

gdb/doc/ChangeLog:

	* gdb.texinfo (Symbols): Mention the fact that "info
	variables/functions/types" show source files and line numbers.

gdb/testsuite/ChangeLog:

	* gdb.ada/info_types.exp: Adjust expected output to the line
	numbers now printed by "info var/func/type".
	* gdb.base/completion.exp: Likewise.
	* gdb.base/included.exp: Likewise.
	* gdb.cp/cp-relocate.exp: Likewise.
	* gdb.cp/cplusfuncs.exp: Likewise.
	* gdb.cp/namespace.exp: Likewise.
	* gdb.dwarf2/dw2-case-insensitive.exp: Likewise.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] btrace: set/show record btrace cpu
@ 2018-04-13 10:21 sergiodj+buildbot
  2018-04-13 10:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-13 10:21 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 4a4495d62d185bdae17ed6aae6ea8249ad07c799 ***

Author: Markus Metzger <markus.t.metzger@intel.com>
Branch: master
Commit: 4a4495d62d185bdae17ed6aae6ea8249ad07c799

btrace: set/show record btrace cpu

Add new set/show commands to set the processor that is used for enabling
errata workarounds when decoding branch trace.

The general format is "<vendor>:<identifier>" but we also allow two
special values "auto" and "none".

The default is "auto", which is the current behaviour of having GDB
determine the processor on which the trace was recorded.

If that cpu is not known to the trace decoder, e.g. when using an old
decoder on a new system, decode may fail with "unknown cpu".  In most
cases it should suffice to 'downgrade' decode to assume an older cpu.
Unfortunately, we can't do this automatically.

The other special value, "none", disables errata workarounds.

gdb/
	* NEWS (New options): announce set/show record btrace cpu.
	* btrace.c: Include record-btrace.h.
	(btrace_compute_ftrace_pt): Skip enabling errata workarounds if
	the vendor is unknown.
	(btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
	Maybe overwrite the btrace configuration's cpu.
	(btrace_compute_ftrace): Add cpu parameter.  Update callers.
	(btrace_fetch): Add cpu parameter.  Update callers.
	(btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
	Maybe overwrite the btrace configuration's cpu.  Skip enabling
	errata workarounds if the vendor is unknown.
	* python/py-record-btrace.c: Include record-btrace.h.
	(recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
	(recpy_bt_function_call_history): Call record_btrace_get_cpu.
	* record-btrace.c (record_btrace_cpu_state_kind): New.
	(record_btrace_cpu): New.
	(set_record_btrace_cpu_cmdlist): New.
	(record_btrace_get_cpu): New.
	(require_btrace_thread, record_btrace_info)
	(record_btrace_resume_thread): Call record_btrace_get_cpu.
	(cmd_set_record_btrace_cpu_none): New.
	(cmd_set_record_btrace_cpu_auto): New.
	(cmd_set_record_btrace_cpu): New.
	(cmd_show_record_btrace_cpu): New.
	(_initialize_record_btrace): Initialize set/show record btrace cpu
	commands.
	* record-btrace.h (record_btrace_get_cpu): New.

testsuite/
	* gdb.btrace/cpu.exp: New.

doc/
	* gdb.texinfo: Document set/show record btrace cpu.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] record: fix typo in "set record" output
@ 2018-04-13 10:09 sergiodj+buildbot
  2018-04-13 10:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-13 10:09 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 69f90c75b369cd2d66988a67bbc2a000dd6b9816 ***

Author: Markus Metzger <markus.t.metzger@intel.com>
Branch: master
Commit: 69f90c75b369cd2d66988a67bbc2a000dd6b9816

record: fix typo in "set record" output

Alan Hayward pointed out a typo in the output of "set record btrace" that
I took from "set record".  Fix the original.

gdb/
	* record.c (set_record_command): Fix typo in message.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] btrace: fix output of "set record btrace"
@ 2018-04-13  9:59 sergiodj+buildbot
  2018-04-13  9:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-13  9:59 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT b85310e1ec0419c4e1ca091cdd48f7597ebbefd3 ***

Author: Markus Metzger <markus.t.metzger@intel.com>
Branch: master
Commit: b85310e1ec0419c4e1ca091cdd48f7597ebbefd3

btrace: fix output of "set record btrace"

Instead of giving a message that "set record btrace" needs a sub-command,
GDB crashed.  Fix it.  A regression test comes with the next patch.

gdb/
	* record-btrace.c (cmd_set_record_btrace): Print sub-commands.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] infrun: step through indirect branch thunks
@ 2018-04-13  8:59 sergiodj+buildbot
  2018-04-13  8:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-04-13  8:59 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1d509aa625f891e20b37b8cee4659771e87b1ba4 ***

Author: Markus Metzger <markus.t.metzger@intel.com>
Branch: master
Commit: 1d509aa625f891e20b37b8cee4659771e87b1ba4

infrun: step through indirect branch thunks

With version 7.3 GCC supports new options

   -mindirect-branch=<choice>
   -mfunction-return=<choice>

The choices are:

    keep                behaves as before
    thunk               jumps through a thunk
    thunk-external      jumps through an external thunk
    thunk-inline        jumps through an inlined thunk

For thunk and thunk-external, GDB would, on a call to the thunk, step into
the thunk and then resume to its caller assuming that this is an
undebuggable function.  On a return thunk, GDB would stop inside the
thunk.

Make GDB step through such thunks instead.

Before:
    Temporary breakpoint 1, main ()
        at gdb.base/step-indirect-call-thunk.c:37
    37        x = apply (inc, 41);
    (gdb) s
    apply (op=0x80483e6 <inc>, x=41)
        at gdb.base/step-indirect-call-thunk.c:29
    29        return op (x);
    (gdb)
    30      }

After:
    Temporary breakpoint 1, main ()
        at gdb.base/step-indirect-call-thunk.c:37
    37        x = apply (inc, 41);
    (gdb) s
    apply (op=0x80483e6 <inc>, x=41)
        at gdb.base/step-indirect-call-thunk.c:29
    29        return op (x);
    (gdb)
    inc (x=41) at gdb.base/step-indirect-call-thunk.c:23
    23        return x + 1;

This is independent of the step-mode.  In order to step into the thunk,
you would need to use stepi.

When stepping over an indirect call thunk, GDB would first step through
the thunk, then recognize that it stepped into a sub-routine and resume to
the caller (of the thunk).  Not sure whether this is worth optimizing.

Thunk detection is implemented via gdbarch.  I implemented the methods for
IA.  Other architectures may run into unexpected fails.

The tests assume a fixed number of instruction steps to reach a thunk.
This depends on the compiler as well as the architecture.  They may need
adjustments when we add support for more architectures.  Or we can simply
drop those tests that cover being able to step into thunks using
instruction stepping.

When using an older GCC, the tests will fail to build and will be reported
as untested:

    Running .../gdb.base/step-indirect-call-thunk.exp ...
    gdb compile failed, \
    gcc: error: unrecognized command line option '-mindirect-branch=thunk'
    gcc: error: unrecognized command line option '-mfunction-return=thunk'

                    === gdb Summary ===

    # of untested testcases         1

gdb/
	* infrun.c (process_event_stop_test): Call
	gdbarch_in_indirect_branch_thunk.
	* gdbarch.sh (in_indirect_branch_thunk): New.
	* gdbarch.c: Regenerated.
	* gdbarch.h: Regenerated.
	* x86-tdep.h: New.
	* x86-tdep.c: New.
	* Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
	(HFILES_NO_SRCDIR): Add x86-tdep.h.
	(ALLDEPFILES): Add x86-tdep.c.
	* arch-utils.h (default_in_indirect_branch_thunk): New.
	* arch-utils.c (default_in_indirect_branch_thunk): New.
	* i386-tdep: Include x86-tdep.h.
	(i386_in_indirect_branch_thunk): New.
	(i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
	function.
	* amd64-tdep: Include x86-tdep.h.
	(amd64_in_indirect_branch_thunk): New.
	(amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.

testsuite/
	* gdb.base/step-indirect-call-thunk.exp: New.
	* gdb.base/step-indirect-call-thunk.c: New.
	* gdb.reverse/step-indirect-call-thunk.exp: New.
	* gdb.reverse/step-indirect-call-thunk.c: New.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] set varsize-limit: New GDB setting for maximum dynamic object size
@ 2018-03-27 14:32 sergiodj+buildbot
  2018-03-27 14:32 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-03-27 14:32 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 3fcded8f30b6b0c1930d4f82914476315027aa2e ***

Author: Joel Brobecker <brobecker@adacore.com>
Branch: master
Commit: 3fcded8f30b6b0c1930d4f82914476315027aa2e

set varsize-limit: New GDB setting for maximum dynamic object size

This is a command we somehow forgot to contribute at the time the Ada
language was first contributed to the FSF. This command allows
the user to change the maximum size we allow when reading memory
from dynamic objects (the default is 65536 bytes).

At the moment, this limit is only used by Ada, and so the implementation
is kept inside ada-lang.c. However, it is conceivable that other language
might want to use it also to handle the same kind of issues; for instance,
this might be useful when handling dynamic types in C. So the name
of the setting was made language-neutral, to allow for this.

Note that an alias for "set var" needs to be introduced as well.
We are not adding a test for that, since this is a feature that is
already exercized by numerous existing tests.

gdb/ChangeLog

        * NEWS: Add entry describing new "set|show varsize-limit" command.
        * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
        command.
        * printcmd.c (_initialize_printcmd): Add "set var" alias of
        "set variable".

gdb/doc/ChangeLog:

        * gdb.texinfo (Ada Settings): New subsubsection.

gdb/testsuite/ChangeLog:

        * gdb.ada/varsize_limit: New testcase.

Tested on x86_64-linux.


^ permalink raw reply	[flat|nested] 246+ messages in thread
* [binutils-gdb] Move DWARF index-related things to a separate file
@ 2018-03-27 14:24 sergiodj+buildbot
  2018-03-27 14:24 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
  0 siblings, 1 reply; 246+ messages in thread
From: sergiodj+buildbot @ 2018-03-27 14:24 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT cd4fb1b2ffc88911e4109444ff729e31920d01ec ***

Author: Simon Marchi <simon.marchi@ericsson.com>
Branch: master
Commit: cd4fb1b2ffc88911e4109444ff729e31920d01ec

Move DWARF index-related things to a separate file

I want to add a DWARF index-related feature (automatically produce index
files when loading objfiles in GDB), but I don't want to add many
hundred lines to the already too big dwarf2read.c.  I thought it would
be a logical split to move everything related to the DWARF index to its
own file.

I first tried to move everything that reads and writes DWARF indices to
a separate file, but found that the "read" part is a little bit
entangled with the rest of dwarf2read.c, so the line is hard to draw
about where to split.  The write part is quite isolated though, so I
moved this part to a new file, dwarf-index-write.c.  Some things are
necessary to both reading and writing indices, so I placed them in
dwarf-index-common.{c,h}.  The idea would be to have a
dwarf-index-read.c eventually that would use it too (for now that code
is still in dwarf2read.c).

This required moving some things to a new dwarf2read.h header, so they
can be read by the code that writes the index.

The patch is big in number of lines, but it's all existing code being
moved around.  The only changes are that some functions are not static
anymore, a declaration is added in a .h file, and therefore the comment
is moved there.

I built-tested it with a little and big endian target.

This patch is also available on the users/simark/split-dwarf2read
branch.

gdb/ChangeLog:

	* Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
	dwarf-index-write.c
	(HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
	* dwarf-index-common.c: New file.
	* dwarf-index-common.h: New file.
	* dwarf-index-write.c: New file.
	* dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
	(struct dwarf2_section_info): Move from here.
	(dwarf2_section_info_def): Likewise.
	(DEF_VEC_O (dwarf2_section_info_def)): Likewise.
	(offset_type): Likewise.
	(DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
	(DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
	(DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
	(byte_swap): Likewise.
	(MAYBE_SWAP): Likewise.
	(dwarf2_per_cu_ptr): Likewise.
	(DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
	(struct tu_stats): Likewise.
	(struct dwarf2_per_objfile): Likewise.
	(struct dwarf2_per_cu_data): Likewise.
	(struct signatured_type): Likewise.
	(sig_type_ptr): Likewise.
	(DEF_VEC_P (sig_type_ptr)): Likewise.
	(INDEX4_SUFFIX): Likewise.
	(INDEX5_SUFFIX): Likewise.
	(DEBUG_STR_SUFFIX): Likewise.
	(dwarf2_read_section): Make non-static.
	(mapped_index_string_hash): Move from here.
	(dwarf5_djb_hash): Likewise.
	(file_write): Likewise.
	(class data_buf): Likewise.
	(struct symtab_index_entry): Likewise.
	(struct mapped_symtab): Likewise.
	(find_slot): Likewise.
	(hash_expand): Likewise.
	(add_index_entry): Likewise.
	(uniquify_cu_indices): Likewise.
	(class c_str_view): Likewise.
	(class c_str_view_hasher): Likewise.
	(class vector_hasher): Likewise.
	(write_hash_table): Likewise.
	(psym_index_map): Likewise.
	(struct addrmap_index_data): Likewise.
	(add_address_entry): Likewise.
	(add_address_entry_worker): Likewise.
	(write_address_map): Likewise.
	(symbol_kind): Likewise.
	(write_psymbols): Likewise.
	(struct signatured_type_index_data): Likewise.
	(write_one_signatured_type): Likewise.
	(recursively_count_psymbols): Likewise.
	(recursively_write_psymbols): Likewise.
	(class debug_names): Likewise.
	(check_dwarf64_offsets): Likewise.
	(psyms_seen_size): Likewise.
	(write_gdbindex): Likewise.
	(write_debug_names): Likewise.
	(assert_file_size): Likewise.
	(write_psymtabs_to_index): Likewise.
	(save_gdb_index_command): Likewise.
	(_initialize_dwarf2_read): Don't register the "save gdb-index"
	command.
	* dwarf2read.h: New file.


^ permalink raw reply	[flat|nested] 246+ messages in thread

end of thread, other threads:[~2019-08-25 22:41 UTC | newest]

Thread overview: 246+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-16 11:29 [binutils-gdb] sparc-coff removal leftover sergiodj+buildbot
2018-04-16 11:29 ` *** COMPILATION FAILED *** Failures on RHEL-s390x-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16 11:29 ` *** COMPILATION FAILED *** Failures on Fedora-s390x-m64, " sergiodj+buildbot
2018-04-16 11:37 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, " sergiodj+buildbot
2018-04-16 13:42 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-m64, " sergiodj+buildbot
2018-04-16 13:43 ` *** COMPILATION FAILED *** Failures on Fedora-i686, " sergiodj+buildbot
2018-04-16 13:43 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-native-gdbserver-m32, " sergiodj+buildbot
2018-04-16 13:44 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-m32, " sergiodj+buildbot
2018-04-16 13:45 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-cc-with-index, " sergiodj+buildbot
2018-04-16 13:45 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-native-extended-gdbserver-m64, " sergiodj+buildbot
2018-04-16 13:45 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-native-extended-gdbserver-m32, " sergiodj+buildbot
2018-04-16 13:45 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-w64-mingw32, " sergiodj+buildbot
2018-04-16 13:46 ` *** COMPILATION FAILED *** Failures on Fedora-x86_64-native-gdbserver-m64, " sergiodj+buildbot
2018-04-16 16:08 ` *** COMPILATION FAILED *** Failures on Debian-s390x-m64, " sergiodj+buildbot
2018-04-16 16:09 ` *** COMPILATION FAILED *** Failures on Debian-s390x-native-extended-gdbserver-m64, " sergiodj+buildbot
2018-04-16 16:11 ` *** COMPILATION FAILED *** Failures on Debian-s390x-native-gdbserver-m64, " sergiodj+buildbot
2018-04-17  2:50 ` *** COMPILATION FAILED *** Failures on Ubuntu-AArch32-native-extended-gdbserver-m32, " sergiodj+buildbot
2018-04-17  2:55 ` *** COMPILATION FAILED *** Failures on Ubuntu-AArch32-native-gdbserver-m32, " sergiodj+buildbot
2018-04-17  3:00 ` *** COMPILATION FAILED *** Failures on Ubuntu-AArch32-m32, " sergiodj+buildbot
  -- strict thread matches above, loose matches on Subject: below --
2019-08-25 23:11 [binutils-gdb] dwarf2read: replace gdb::optional<bool> with enum gdb-buildbot
2019-08-25 23:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-07-18  1:24 [binutils-gdb] Introduce reset_locator function in tui-layout.c gdb-buildbot
2019-07-18  2:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-07-18  1:11 [binutils-gdb] Always create an execution info window for a source window gdb-buildbot
2019-07-18  2:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 18:56 [binutils-gdb] Remove an unnecessary NULL check from the TUI gdb-buildbot
2019-07-09 18:06 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 17:51 [binutils-gdb] Create subclasses for different window types gdb-buildbot
2019-07-09 17:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 16:56 [binutils-gdb] Add destructor to tui_win_info gdb-buildbot
2019-07-09 17:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 16:22 [binutils-gdb] Use new and delete for TUI windows gdb-buildbot
2019-07-09 17:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 15:25 [binutils-gdb] bfd/elf-properties: avoid shadowing a C library symbol gdb-buildbot
2019-07-09 17:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 14:23 [binutils-gdb] x86: correct / adjust debug printing gdb-buildbot
2019-07-09 17:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 12:33 [binutils-gdb] x86: drop dqa_mode gdb-buildbot
2019-07-09 17:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 11:32 [binutils-gdb] x86: simplify OP_I64() gdb-buildbot
2019-07-09 17:06 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 11:07 [binutils-gdb] x86: fix (dis)assembly of certain SSE2 insns in 16-bit mode gdb-buildbot
2019-07-09 17:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25 10:05 [binutils-gdb] x86-64: also optimize ANDQ with immediate fitting in 7 bits gdb-buildbot
2019-07-09 17:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25  8:53 [binutils-gdb] RISC-V: Enable lui relaxation for CODE and MERGE sections gdb-buildbot
2019-07-09 17:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-25  8:03 [binutils-gdb] elf: Remove the property after reporting its removal gdb-buildbot
2019-07-09 17:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-24 21:19 [binutils-gdb] [gdb/testsuite] Fix label reference in implptr-64bit.exp gdb-buildbot
2019-07-09 17:01 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-24 18:57 [binutils-gdb] [gdb/testsuite] Fix DW_AT_decl_file in gdb.trace tests gdb-buildbot
2019-07-09 17:01 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-24 17:14 [binutils-gdb] [gdb/testsuite] Fix inter-cu refs in inlined_subroutine-inheritance.exp gdb-buildbot
2019-07-09 17:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-24 11:49 [binutils-gdb] PR24689 again, string table corruption gdb-buildbot
2019-07-09 16:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-24 11:08 [binutils-gdb] PR24704, Internal error building skiboot for powerpc64-linux-gnu gdb-buildbot
2019-07-09 16:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-23 14:57 [binutils-gdb] Remove tui_first_data_element_no_in_line gdb-buildbot
2019-07-09 16:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-23 14:05 [binutils-gdb] Remove two unused functions from the TUI gdb-buildbot
2019-07-09 16:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** gdb-buildbot
2019-06-19 15:59 [binutils-gdb] Add intro comment to length_cond.exp sergiodj+buildbot
2019-06-19 16:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-19 14:38 [binutils-gdb] Fix crash when setting breakpoint condition sergiodj+buildbot
2019-06-19 15:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-19 12:58 [binutils-gdb] Instantiate a single source highlighter sergiodj+buildbot
2019-06-19 13:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-19 11:38 [binutils-gdb] PR24697, R_PPC_EMB_SDA21 relocation sergiodj+buildbot
2019-06-19 11:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-19  8:47 [binutils-gdb] PowerPC64 notoc calls sergiodj+buildbot
2019-06-19 11:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-19  5:18 [binutils-gdb] gdb: Remove use of deprecated_interactive_hook sergiodj+buildbot
2019-06-19  7:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-18 18:53 [binutils-gdb] [gdb/testsuite] Use -fuse-ld=gold in fission.exp sergiodj+buildbot
2019-06-18 19:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-18 18:43 [binutils-gdb] [gdb] Fix abstract_to_concrete type sergiodj+buildbot
2019-06-18 18:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  4:35 [binutils-gdb] NEWS and manual changes for command options changes sergiodj+buildbot
2019-06-13  7:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  4:29 [binutils-gdb] Delete parse_flags/parse_flags_qcs sergiodj+buildbot
2019-06-13  6:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  4:21 [binutils-gdb] Make "thread apply" use the gdb::option framework sergiodj+buildbot
2019-06-13  6:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  4:08 [binutils-gdb] "thread apply 1 -- -" vs "frame apply level 0 -- -" sergiodj+buildbot
2019-06-13  5:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  3:56 [binutils-gdb] Make "frame apply" support -OPT options sergiodj+buildbot
2019-06-13  5:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  3:45 [binutils-gdb] Introduce complete_nested_command_line sergiodj+buildbot
2019-06-13  5:33 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  3:40 [binutils-gdb] lib/completion-support.exp: Add test_gdb_completion_offers_commands sergiodj+buildbot
2019-06-13  5:22 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  3:19 [binutils-gdb] "backtrace full/no-filters/hide" completer sergiodj+buildbot
2019-06-13  5:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  3:03 [binutils-gdb] Make "backtrace" support -OPT options sergiodj+buildbot
2019-06-13  5:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  3:01 [binutils-gdb] "set print raw frame-arguments" -> "set print raw-frame-arguments" sergiodj+buildbot
2019-06-13  5:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-06-13  2:57 [binutils-gdb] Migrate rest of compile commands to new options framework sergiodj+buildbot
2019-06-13  4:53 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-30 16:46 [binutils-gdb] Two comment fixes in gdbtypes.h sergiodj+buildbot
2019-05-30 20:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-30 14:19 [binutils-gdb] Initialize variable word in complete sergiodj+buildbot
2019-05-30 15:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-30 11:54 [binutils-gdb] Revert "Sync top level files with versions from gcc." sergiodj+buildbot
2019-05-30 12:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 21:49 [binutils-gdb] Don't crash is dwarf_decode_macro_bytes's 'body' is NULL, even when '!is_define' sergiodj+buildbot
2019-05-29 22:30 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 17:24 [binutils-gdb] Fix failure in gdb.ada/complete.exp sergiodj+buildbot
2019-05-29 18:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 16:38 [binutils-gdb] Make some DWARF complaints clearer sergiodj+buildbot
2019-05-29 18:17 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 16:22 [binutils-gdb] Fix crash in cp_print_value_fields sergiodj+buildbot
2019-05-29 16:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 16:06 [binutils-gdb] Add new GCC 9 warnings to warnings.m4 sergiodj+buildbot
2019-05-29 16:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 15:38 [binutils-gdb] Add "set print finish" sergiodj+buildbot
2019-05-29 15:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 13:07 [binutils-gdb] Update release tools with libctf support sergiodj+buildbot
2019-05-29 14:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 12:50 [binutils-gdb] Sync top level files with versions from gcc sergiodj+buildbot
2019-05-29 13:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 11:42 [binutils-gdb] Do not build libctf for targets that do not use the ELF file format sergiodj+buildbot
2019-05-29 11:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29 10:40 [binutils-gdb] Fix libctf build on non-ELF targets sergiodj+buildbot
2019-05-29 10:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29  1:13 [binutils-gdb] MIPS/LD: Skip overflow check for %pcrel_hi relocations sergiodj+buildbot
2019-05-29  7:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29  1:10 [binutils-gdb] x86: Add CheckRegSize to AVX512_BF16 instructions with Disp8ShiftVL sergiodj+buildbot
2019-05-29  7:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29  1:04 [binutils-gdb] Remove find_old_style_renaming_symbol sergiodj+buildbot
2019-05-29  6:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29  0:56 [binutils-gdb] Add libctf to top-level MAINTAINERS; add myself as CTF maintainer sergiodj+buildbot
2019-05-29  5:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-29  0:50 [binutils-gdb] libctf: build system sergiodj+buildbot
2019-05-29  5:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-05-08 17:01 [binutils-gdb] Fix style bug when paging sergiodj+buildbot
2019-05-08 18:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-29 22:12 [binutils-gdb] gdb: Introduce 'print max-depth' feature sergiodj+buildbot
2019-04-30  0:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-13 21:26 [binutils-gdb] sim: Use host not target byte order for merging and splitting values sergiodj+buildbot
2019-04-13 21:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-15  1:20 ` sergiodj+buildbot
2019-04-13  0:05 [binutils-gdb] gdb: Fix failure in gdb.base/complex-parts.exp for x86-32 sergiodj+buildbot
2019-04-13  0:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 16:44 [binutils-gdb] S12Z: opcodes: Replace "operator" with "optr" sergiodj+buildbot
2019-04-12 16:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 15:29 [binutils-gdb] gdb/riscv: Remove riscv_type_alignment function sergiodj+buildbot
2019-04-12 15:29 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 15:27 [binutils-gdb] gdb/riscv: Handle empty C++ structs during argument passing sergiodj+buildbot
2019-04-12 15:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 15:25 [binutils-gdb] Check corrupt VTENTRY entry in bfd_elf_gc_record_vtentry sergiodj+buildbot
2019-04-12 15:25 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 15:25 [binutils-gdb] x86: Add -z cet-report=[none|warning|error] sergiodj+buildbot
2019-04-12 15:26 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 15:22 [binutils-gdb] AArch64: Ensure regcache is reset between tests sergiodj+buildbot
2019-04-12 15:22 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 15:20 [binutils-gdb] Introduce a separate debug objfile iterator sergiodj+buildbot
2019-04-12 15:20 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 14:57 [binutils-gdb] Rename python function thread_from_thread_handle to thread_from_handle sergiodj+buildbot
2019-04-12 15:14 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 12:53 [binutils-gdb] Another fix for GDB styling sergiodj+buildbot
2019-04-12 15:31 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 11:22 [binutils-gdb] Support buffer objects as handles in Inferior.thread_from_thread_handle() sergiodj+buildbot
2019-04-12 15:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12 10:57 [binutils-gdb] Testsuite: Add gdbserver sysroot test sergiodj+buildbot
2019-04-12 15:31 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12  8:47 [binutils-gdb] gdb: Remove LANG_MAGIC sergiodj+buildbot
2019-04-12 15:30 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-12  6:05 [binutils-gdb] x86: Define GNU_PROPERTY_X86_ISA_1_AVX512_BF16 sergiodj+buildbot
2019-04-12 15:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11 23:12 [binutils-gdb] gdb: Fix alignment computation for structs with only static fields sergiodj+buildbot
2019-04-12 15:28 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11 19:21 [binutils-gdb] Make "msg" const in internal_vproblem sergiodj+buildbot
2019-04-12 15:27 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11 17:50 [binutils-gdb] Rename gdb exception types sergiodj+buildbot
2019-04-12 15:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11 17:34 [binutils-gdb] [gdb/testsuite] Add cc-with-dwz.exp and cc-with-dwz-m.exp sergiodj+buildbot
2019-04-12 15:27 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11 11:45 [binutils-gdb] PR24435, buffer overflow reading dynamic entries sergiodj+buildbot
2019-04-12 15:25 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11 10:57 [binutils-gdb] AArch64: When DF_BIND_NOW don't use TLSDESC GOT value sergiodj+buildbot
2019-04-12 15:24 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11  9:56 [binutils-gdb] [BINUTILS, AArch64, 2/2] Update Store Allocation Tag instructions sergiodj+buildbot
2019-04-12 15:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11  9:38 [binutils-gdb] [BINUTILS, AArch64, 1/2] Add new LDGM/STGM instruction sergiodj+buildbot
2019-04-12 15:23 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11  9:21 [binutils-gdb] print_insn_powerpc tidy sergiodj+buildbot
2019-04-12 15:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-11  0:58 [binutils-gdb] Fix amd64->i386 linux syscall restart problem sergiodj+buildbot
2019-04-12 15:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10 16:12 [binutils-gdb] x86: Support Intel AVX512 BF16 sergiodj+buildbot
2019-04-12 14:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10 15:14 [binutils-gdb] Pull in patch for libiberty that fixes a stack exhaustion bug when demangling a pathalogically constructed mangled name sergiodj+buildbot
2019-04-12 15:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10 14:42 [binutils-gdb] Fix a couple of comments sergiodj+buildbot
2019-04-12 15:19 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10 14:24 [binutils-gdb] Remove some uses of "object_files" sergiodj+buildbot
2019-04-12 15:19 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10 12:44 [binutils-gdb] Use upper-case for metasyntactic in gdbserver help sergiodj+buildbot
2019-04-12 14:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10  9:22 [binutils-gdb] PR24427, bfd/doc/chew.c reads uninitialized memory and subtracts from function pointer sergiodj+buildbot
2019-04-12 15:18 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10  9:17 [binutils-gdb] Move type stack handling to a new class sergiodj+buildbot
2019-04-12 14:56 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-10  5:50 [binutils-gdb] Move arglist_len et al to parser_state sergiodj+buildbot
2019-04-12 14:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 19:44 [binutils-gdb] Fix Rust lexer buglet sergiodj+buildbot
2019-04-12 15:18 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 19:44 [binutils-gdb] Turn parse_language into a method sergiodj+buildbot
2019-04-12 14:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 18:36 [binutils-gdb] Use find_thread_in_random in select_event_lwp sergiodj+buildbot
2019-04-12 15:17 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 18:18 [binutils-gdb] Consistently use bool for fake_pid_p sergiodj+buildbot
2019-04-12 15:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 16:54 [binutils-gdb] Use -qualified flag when setting temporary breakpoint in start command sergiodj+buildbot
2019-04-12 15:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 16:15 [binutils-gdb] Remove parser_state "initial_size" parameter sergiodj+buildbot
2019-04-12 14:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09 10:15 [binutils-gdb] [MIPS] Add RDHWR with the SEL field for MIPS R6 sergiodj+buildbot
2019-04-12 15:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09  4:40 [binutils-gdb] Tests for gdb.InferiorThread.handle sergiodj+buildbot
2019-04-12 15:14 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09  4:09 [binutils-gdb] Add python method InferiorThread.handle sergiodj+buildbot
2019-04-12 15:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-09  3:51 [binutils-gdb] Introduce target_ops method thread_info_to_thread_handle sergiodj+buildbot
2019-04-12 15:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 19:35 [binutils-gdb] Some gdb_exception{,error,quit} tweaks sergiodj+buildbot
2019-04-12 15:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 19:19 [binutils-gdb] x86: Remove i386-*-kaos* and i386-*-chaos targets sergiodj+buildbot
2019-04-12 15:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 18:38 [binutils-gdb] x86: Consolidate AVX512 BF16 entries in i386-opc.tbl sergiodj+buildbot
2019-04-12 15:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 17:11 [binutils-gdb] Replace throw_exception with throw in some cases sergiodj+buildbot
2019-04-12 15:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 16:55 [binutils-gdb] Make exception throwing a bit more efficient sergiodj+buildbot
2019-04-12 15:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 16:39 [binutils-gdb] Remove some now-dead exception code sergiodj+buildbot
2019-04-12 15:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 16:39 [binutils-gdb] Rewrite TRY/CATCH sergiodj+buildbot
2019-04-12 15:06 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 15:53 [binutils-gdb] Make exceptions use std::string and be self-managing sergiodj+buildbot
2019-04-12 15:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08 15:37 [binutils-gdb] Simplify exception handling sergiodj+buildbot
2019-04-12 15:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-08  4:59 [binutils-gdb] Fix x86_64-rdos build fail sergiodj+buildbot
2019-04-12 15:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-07 13:40 [binutils-gdb] PR24421, Wrong brackets in opcodes/arm-dis.c sergiodj+buildbot
2019-04-12 15:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-07 13:25 [binutils-gdb] Merge libiberty from gcc sergiodj+buildbot
2019-04-12 15:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-06 20:05 [binutils-gdb] Revert the header-sorting patch sergiodj+buildbot
2019-04-12 15:01 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-06 14:44 [binutils-gdb] x86: Move x86-specific linker options to elf_linker_x86_params sergiodj+buildbot
2019-04-12 15:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-06  4:55 [binutils-gdb] Sort includes for files gdb/[a-f]*.[chyl] sergiodj+buildbot
2019-04-12 14:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05 17:49 [binutils-gdb] Use linux_get_auxv to get AT_PHDR in the PPC stub sergiodj+buildbot
2019-04-12 14:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  5:50 [binutils-gdb] Move innermost_block_tracker global to parse_state sergiodj+buildbot
2019-04-12 14:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  5:20 [binutils-gdb] Move completion parsing to parser_state sergiodj+buildbot
2019-04-12 14:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  4:48 [binutils-gdb] Move lexptr and prev_lexptr to parser_state sergiodj+buildbot
2019-04-12 14:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  4:32 [binutils-gdb] Move comma_terminates global to parser_state sergiodj+buildbot
2019-04-12 14:53 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  4:17 [binutils-gdb] Remove paren_depth global sergiodj+buildbot
2019-04-12 14:52 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  4:17 [binutils-gdb] Move expression_context_* globals to parser_state sergiodj+buildbot
2019-04-12 14:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  3:47 [binutils-gdb] Turn parse_gdbarch into a method sergiodj+buildbot
2019-04-12 14:49 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  3:47 [binutils-gdb] Make base class for parser_state sergiodj+buildbot
2019-04-12 14:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  2:42 [binutils-gdb] Make increase_expout_size static sergiodj+buildbot
2019-04-12 14:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  2:26 [binutils-gdb] PowerPC bc extended branch mnemonics and "y" hints sergiodj+buildbot
2019-04-12 14:47 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  2:09 [binutils-gdb] Add extended mnemonics for bctar. Fix setting of 'at' branch hints sergiodj+buildbot
2019-04-12 14:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-05  2:09 [binutils-gdb] PowerPC disassembler: Don't emit trailing spaces sergiodj+buildbot
2019-04-12 14:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-04 23:54 [binutils-gdb] [GDB, Hurd] Fix build; 'target_waitstatus_to_string' call sergiodj+buildbot
2019-04-12 14:45 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-03  4:24 [binutils-gdb] BFD whitespace fixes sergiodj+buildbot
2019-04-12 14:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-02 20:51 [binutils-gdb] RISC-V: Don't check ABI flags if no code section sergiodj+buildbot
2019-04-12 14:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01 21:51 [binutils-gdb] gdb/fortran: Handle internal function calls sergiodj+buildbot
2019-04-12 14:43 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01 21:35 [binutils-gdb] gdb: Add $_cimag and $_creal internal functions sergiodj+buildbot
2019-04-12 14:43 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01 19:53 [binutils-gdb] Fix internal error and improve 'set debug infrun 1'/target wait kind trace sergiodj+buildbot
2019-04-12 14:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01 17:31 [binutils-gdb] Handle DW_AT_ranges when reading partial symtabs sergiodj+buildbot
2019-04-12 14:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01 15:18 [binutils-gdb] Destroy allocated values when exiting GDB sergiodj+buildbot
2019-04-12 14:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01 10:06 [binutils-gdb] [GAS, Arm] CLI with architecture sensitive extensions sergiodj+buildbot
2019-04-12 14:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01  8:41 [binutils-gdb] Add myself to gdb/MAINTAINERS sergiodj+buildbot
2019-04-12 14:39 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-04-01  8:39 [binutils-gdb] Add gdb.Value.format_string () sergiodj+buildbot
2019-04-12 14:39 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-30 17:50 [binutils-gdb] RISC-V: Relax tail/j to c.j for RV64 sergiodj+buildbot
2019-04-12 14:38 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-30 10:38 [binutils-gdb] Introduce new convenience variables $_gdb_major and $_gdb_minor sergiodj+buildbot
2019-04-12 14:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-29 21:07 [binutils-gdb] Add usage for commands in printcmd.c sergiodj+buildbot
2019-04-12 14:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-29 18:49 [binutils-gdb] Allow really large fortran array bounds: fortran type/value printers sergiodj+buildbot
2019-04-12 14:35 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-29 18:45 [binutils-gdb] Allow really large fortran array bounds: TYPE_LENGTH to ULONGEST sergiodj+buildbot
2019-04-12 14:34 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-29 17:39 [binutils-gdb] bfd: xtensa: fix shrink_dynamic_reloc_sections for export-dynamic sergiodj+buildbot
2019-04-12 14:34 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 23:33 [binutils-gdb] sim: fix all sim builds sergiodj+buildbot
2019-04-12 14:33 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 23:02 [binutils-gdb] (re-)fix the regcache leaks when detaching from an executable sergiodj+buildbot
2019-04-12 13:51 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 22:28 [binutils-gdb] sim: fix aarch64 sim build sergiodj+buildbot
2019-04-12 14:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 21:40 [binutils-gdb] Fix format specification in display_selector() (again) sergiodj+buildbot
2019-04-12 14:33 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 21:16 [binutils-gdb] Fix gdb.multi/multi-arch-exec.exp blocking under high load/slow gdb sergiodj+buildbot
2019-04-12 14:32 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 20:57 [binutils-gdb] Fix GDB being suspended SIGTTOU when running gdb.multi/multi-arch-exec.exp sergiodj+buildbot
2019-04-12 14:18 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 17:50 [binutils-gdb] AArch64: View the pseudo V registers as vectors sergiodj+buildbot
2019-04-12 14:15 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 17:41 [binutils-gdb] Fix stepping past unwritable kernel helper on nios2-linux-gnu sergiodj+buildbot
2019-04-12 14:17 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 16:51 [binutils-gdb] Testsuite: set sysroot when using gdbserver sergiodj+buildbot
2019-04-12 14:16 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 13:40 [binutils-gdb] AArch64: 128bit views for SVE registers sergiodj+buildbot
2019-04-12 14:14 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28 12:45 [binutils-gdb] gdbserver: Ensure AT_HWCAP2 is defined sergiodj+buildbot
2019-04-12 14:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28  7:37 [binutils-gdb] PR24392, Clang warning Wtautological-constant-out-of-range-compare sergiodj+buildbot
2019-04-12 14:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28  7:20 [binutils-gdb] PR24390, Don't decode mtfsb field as a cr field sergiodj+buildbot
2019-04-12 14:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-28  0:24 [binutils-gdb] sim/common: Fix warnings: "warning: implicit declaration of function..." sergiodj+buildbot
2019-04-12 14:12 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-27 22:18 [binutils-gdb] sim/common: convert sim-arange to use sim-inline sergiodj+buildbot
2019-04-12 14:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-27 16:06 [binutils-gdb] Fix buffer overflow regression due to minsym malloc-ed instead of obstack-ed sergiodj+buildbot
2019-04-12 14:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-27 12:22 [binutils-gdb] Testsuite: Ensure interrupt-daemon-attach doesn't run forever sergiodj+buildbot
2019-04-12 14:10 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-27 10:21 [binutils-gdb] gdb-gdb.py.in: Fix error when printing range type sergiodj+buildbot
2019-04-12 14:07 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-27  3:29 [binutils-gdb] gdb/testsuite: Make test names unique in gdb.python/py-prettyprint.exp sergiodj+buildbot
2019-04-12 14:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26 20:58 [binutils-gdb] Fix Powerpc build sergiodj+buildbot
2019-04-12 14:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26 20:22 [binutils-gdb] gdb: Make python display_hint None handling defined behaviour sergiodj+buildbot
2019-04-12 14:05 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26 20:13 [binutils-gdb] gdb: Avoid trailing whitespace when pretty printing sergiodj+buildbot
2019-04-12 14:04 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26 17:40 [binutils-gdb] Add AArch64 Pointer Authentication to the NEWS file sergiodj+buildbot
2019-04-12 14:03 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26 17:26 [binutils-gdb] gdbserver: Add linux_get_hwcap sergiodj+buildbot
2019-04-12 14:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26 13:23 [binutils-gdb] Fix Arm build sergiodj+buildbot
2019-04-12 14:02 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-26  1:01 [binutils-gdb] Fix use-after-free in source_cache::get_source_lines sergiodj+buildbot
2019-04-12 14:00 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 22:26 [binutils-gdb] Arm: Fix Arm disassembler mapping symbol search sergiodj+buildbot
2019-04-12 13:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 20:39 [binutils-gdb] Note support for TLS variables on FreeBSD sergiodj+buildbot
2019-04-12 13:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 20:06 [binutils-gdb] Clean up some comments in minsyms.c sergiodj+buildbot
2019-04-12 13:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 17:24 [binutils-gdb] Fix s390 build sergiodj+buildbot
2019-04-12 13:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 16:55 [binutils-gdb] Add linux_get_hwcap sergiodj+buildbot
2019-04-12 13:57 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 15:59 [binutils-gdb] AArch64: Fix disassembler bug with out-of-order sections sergiodj+buildbot
2019-04-12 13:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 15:52 [binutils-gdb] AArch64: Have -D override mapping symbol as documented sergiodj+buildbot
2019-04-12 13:56 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 15:38 [binutils-gdb] AArch64: Fix AArch64 disassembler mapping symbol search sergiodj+buildbot
2019-04-12 13:55 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25 14:22 [binutils-gdb] Fix testsuite hangs when gdb_test_multiple body errors out sergiodj+buildbot
2019-04-12 13:54 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25  7:53 [binutils-gdb] Don't include symtab.h from expression.h sergiodj+buildbot
2019-04-12 13:52 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25  6:17 [binutils-gdb] Remove null_block_symbol sergiodj+buildbot
2019-04-12 13:53 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-25  6:17 [binutils-gdb] More block constification sergiodj+buildbot
2019-04-12 13:52 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-23 17:30 [binutils-gdb] Have parser reset the innermost block tracker sergiodj+buildbot
2019-04-12 13:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-23 17:15 [binutils-gdb] Include bcache.h from objfiles.h sergiodj+buildbot
2019-04-12 13:49 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-23 16:58 [binutils-gdb] Use scoped_restore_current_language in two places sergiodj+buildbot
2019-04-12 13:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 18:18 [binutils-gdb] AArch64: gdbserver: read pauth registers sergiodj+buildbot
2019-04-12 13:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 15:25 [binutils-gdb] AArch64: Use HWCAP to detect pauth feature sergiodj+buildbot
2019-04-12 13:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 14:02 [binutils-gdb] AArch64: Read pauth section from core files sergiodj+buildbot
2019-04-12 13:48 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 13:48 [binutils-gdb] AArch64: Prologue scan unwinder support for signed return addresses sergiodj+buildbot
2019-04-12 13:47 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 13:31 [binutils-gdb] AArch64: DWARF unwinder support for signed return addresses sergiodj+buildbot
2019-04-12 13:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 13:17 [binutils-gdb] AArch64: Add pauth DWARF registers sergiodj+buildbot
2019-04-12 13:46 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 12:49 [binutils-gdb] AArch64: Read pauth registers sergiodj+buildbot
2019-04-12 13:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 12:22 [binutils-gdb] AArch64: Add pointer authentication feature sergiodj+buildbot
2019-04-12 13:43 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-22 10:00 [binutils-gdb] Testsuite: Ensure pie is disabled on some tests sergiodj+buildbot
2019-04-12 13:42 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-21 22:32 [binutils-gdb] RISC-V: Fix linker crash in section symbol check sergiodj+buildbot
2019-04-12 13:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-21 17:04 [binutils-gdb] [BFD, AArch64, x86] Improve warning for --force-bti sergiodj+buildbot
2019-04-12 13:41 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-20 18:24 [binutils-gdb] Merge handle_inferior_event and handle_inferior_event_1 sergiodj+buildbot
2019-04-12 13:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-03-20 18:17 [binutils-gdb] [BFD, AArch64] Define elf_backend_fixup_gnu_properties in AArch64 sergiodj+buildbot
2019-04-12 13:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2019-01-07 13:26 [binutils-gdb] Sync libiberty sources with master version in gcc repository. Updated stabs demangling and cxxfilt tests to match sergiodj+buildbot
2019-01-07 13:40 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-12-28 23:52 [binutils-gdb] Fix a crash in jit.c sergiodj+buildbot
2018-12-29  1:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-12-28 23:46 [binutils-gdb] Document the "set style" commands sergiodj+buildbot
2018-12-29  0:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-12-28 23:31 [binutils-gdb] Highlight source code using GNU Source Highlight sergiodj+buildbot
2018-12-29  0:36 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-11-20 16:57 [binutils-gdb] Avoid "Invalid parameter passed to C runtime function" warning sergiodj+buildbot
2018-11-20 17:47 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-06-29 22:12 [binutils-gdb] x86_64-windows GDB crash due to fs_base/gs_base registers sergiodj+buildbot
2018-06-29 22:24 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16 12:19 [binutils-gdb] gdb: Remove OpenBSD/m88k support sergiodj+buildbot
2018-04-16 12:27 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16 12:05 [binutils-gdb] Prevent an illegal memory access via an out of range fixup pointer sergiodj+buildbot
2018-04-16 12:13 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16 11:32 [binutils-gdb] Remove arm-epoc-pe support sergiodj+buildbot
2018-04-16 11:50 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16  9:35 [binutils-gdb] Remove sparc-aout and sparc-coff support sergiodj+buildbot
2018-04-16  9:35 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16  9:21 [binutils-gdb] Remove m68k-aout and m68k-coff support sergiodj+buildbot
2018-04-16  9:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-16  9:11 [binutils-gdb] Remove sh5 and sh64 support sergiodj+buildbot
2018-04-16  9:11 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-15 15:56 [binutils-gdb] x86: Allow 32-bit registers for tpause and umwait sergiodj+buildbot
2018-04-15 15:56 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-14  9:25 [binutils-gdb] powerpc common-page-size sergiodj+buildbot
2018-04-14  9:25 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-14  9:08 [binutils-gdb] powerpc max-page-size vs __QNXTARGET__ sergiodj+buildbot
2018-04-14  9:08 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-14  8:58 [binutils-gdb] powerpc-lynxos and powerpc-windiss fixes sergiodj+buildbot
2018-04-14  8:58 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-13 17:44 [binutils-gdb] Show line numbers in output for "info var/func/type" sergiodj+buildbot
2018-04-13 17:44 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-13 10:21 [binutils-gdb] btrace: set/show record btrace cpu sergiodj+buildbot
2018-04-13 10:21 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-13 10:09 [binutils-gdb] record: fix typo in "set record" output sergiodj+buildbot
2018-04-13 10:09 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-13  9:59 [binutils-gdb] btrace: fix output of "set record btrace" sergiodj+buildbot
2018-04-13  9:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-04-13  8:59 [binutils-gdb] infrun: step through indirect branch thunks sergiodj+buildbot
2018-04-13  8:59 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-03-27 14:32 [binutils-gdb] set varsize-limit: New GDB setting for maximum dynamic object size sergiodj+buildbot
2018-03-27 14:32 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot
2018-03-27 14:24 [binutils-gdb] Move DWARF index-related things to a separate file sergiodj+buildbot
2018-03-27 14:24 ` *** COMPILATION FAILED *** Failures on NetBSD-x86_64-m64, branch master *** BREAKAGE *** sergiodj+buildbot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).