<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/binutils-gdb.git, branch master</title>
<subtitle>sourceware.org: git/binutils-gdb.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/'/>
<entry>
<title>Re: Add section caches to coff_data_type</title>
<updated>2023-05-18T02:51:40+00:00</updated>
<author>
<name>Alan Modra</name>
<email>amodra@gmail.com</email>
</author>
<published>2023-05-18T01:40:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=0cc8cc5e6f82b8d3d8e3803c6f7f5e63f0c866ad'/>
<id>0cc8cc5e6f82b8d3d8e3803c6f7f5e63f0c866ad</id>
<content type='text'>
Commit 0e759f232b6d regressed these tests:
rs6000-aix7.2  +FAIL: Garbage collection test 1 (32-bit)
rs6000-aix7.2  +FAIL: Garbage collection test 1 (64-bit)
rs6000-aix7.2  +FAIL: Glink test 1 (32-bit)
rs6000-aix7.2  +FAIL: Glink test 1 (64-bit)

Investigation showed segfaults in coff_section_from_bfd_index called
by xcoff_write_global_symbol due to the hash table pointer being
NULL.  Well, yes, the hash table isn't initialised for the output bfd.
mkobject_hook is the wrong place to do that.

	* coffcode.h: Revert 0e759f232b6d changes.
	* peicode.h: Likewise.
	* coff-x86_64.c (htab_hash_section_index, htab_eq_section_index):
	Moved here from coffcode.h.
	(coff_amd64_rtype_to_howto): Create section_by_index htab.
	* coffgen.c (htab_hash_section_target_index),
	(htab_eq_section_target_index): Moved here from coffcode.h.
	(coff_section_from_bfd_index): Create section_by_target_index
	htab.  Stash newly created sections in htab.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit 0e759f232b6d regressed these tests:
rs6000-aix7.2  +FAIL: Garbage collection test 1 (32-bit)
rs6000-aix7.2  +FAIL: Garbage collection test 1 (64-bit)
rs6000-aix7.2  +FAIL: Glink test 1 (32-bit)
rs6000-aix7.2  +FAIL: Glink test 1 (64-bit)

Investigation showed segfaults in coff_section_from_bfd_index called
by xcoff_write_global_symbol due to the hash table pointer being
NULL.  Well, yes, the hash table isn't initialised for the output bfd.
mkobject_hook is the wrong place to do that.

	* coffcode.h: Revert 0e759f232b6d changes.
	* peicode.h: Likewise.
	* coff-x86_64.c (htab_hash_section_index, htab_eq_section_index):
	Moved here from coffcode.h.
	(coff_amd64_rtype_to_howto): Create section_by_index htab.
	* coffgen.c (htab_hash_section_target_index),
	(htab_eq_section_target_index): Moved here from coffcode.h.
	(coff_section_from_bfd_index): Create section_by_target_index
	htab.  Stash newly created sections in htab.
</pre>
</div>
</content>
</entry>
<entry>
<title>PR11601, Solaris assembler compatibility doesn't work</title>
<updated>2023-05-18T00:03:14+00:00</updated>
<author>
<name>Alan Modra</name>
<email>amodra@gmail.com</email>
</author>
<published>2023-05-17T23:56:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=4cb88cfae84363cef6ed59d9d458a20ff2e1e893'/>
<id>4cb88cfae84363cef6ed59d9d458a20ff2e1e893</id>
<content type='text'>
Well, it doesn't work on x86 or ppc, which both have # starting
comments anywhere on a line.  I think it is therefore only useful on
sparc.

	PR 11601
	* config/obj-elf.c (obj_elf_section_word): Only compile for sparc.
	(obj_elf_section): Only support solaris .section directive on
	sparc.
	* doc/as.texi (Section): Mention that solaris .section
	directive is only supported for sparc.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Well, it doesn't work on x86 or ppc, which both have # starting
comments anywhere on a line.  I think it is therefore only useful on
sparc.

	PR 11601
	* config/obj-elf.c (obj_elf_section_word): Only compile for sparc.
	(obj_elf_section): Only support solaris .section directive on
	sparc.
	* doc/as.texi (Section): Mention that solaris .section
	directive is only supported for sparc.
</pre>
</div>
</content>
</entry>
<entry>
<title>Automatic date update in version.in</title>
<updated>2023-05-18T00:00:41+00:00</updated>
<author>
<name>GDB Administrator</name>
<email>gdbadmin@sourceware.org</email>
</author>
<published>2023-05-18T00:00:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=5f5272a025419b2b3d46f42bf96bccc0aea0f789'/>
<id>5f5272a025419b2b3d46f42bf96bccc0aea0f789</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Special case "&amp;str" in Rust parser</title>
<updated>2023-05-17T17:47:16+00:00</updated>
<author>
<name>Tom Tromey</name>
<email>tom@tromey.com</email>
</author>
<published>2023-05-17T15:07:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=cd61a1453e685a763bd91b3795a58edd3d9b4f40'/>
<id>cd61a1453e685a763bd91b3795a58edd3d9b4f40</id>
<content type='text'>
"&amp;str" is an important type in Rust -- it's the type of string
literals.  However, the compiler puts it in the DWARF in a funny way.
The slice itself is present and named "&amp;str".  However, the Rust
parser doesn't look for types with names like this, but instead tries
to construct them from components.  In this case it tries to make a
pointer-to-"str" -- but "str" isn't always available, and in any case
that wouldn't yield the best result.

This patch adds a special case for &amp;str.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=22251
Reviewed-By: Andrew Burgess &lt;aburgess@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
"&amp;str" is an important type in Rust -- it's the type of string
literals.  However, the compiler puts it in the DWARF in a funny way.
The slice itself is present and named "&amp;str".  However, the Rust
parser doesn't look for types with names like this, but instead tries
to construct them from components.  In this case it tries to make a
pointer-to-"str" -- but "str" isn't always available, and in any case
that wouldn't yield the best result.

This patch adds a special case for &amp;str.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=22251
Reviewed-By: Andrew Burgess &lt;aburgess@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Decorated symbols in import libs (BUG 30421)</title>
<updated>2023-05-17T12:38:14+00:00</updated>
<author>
<name>Luca Bacci</name>
<email>luca.bacci@outlook.com</email>
</author>
<published>2023-05-17T12:38:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=80d4e113d7b9af8a5a36e5ea4399bca86050784f'/>
<id>80d4e113d7b9af8a5a36e5ea4399bca86050784f</id>
<content type='text'>
  PR 30421
  * cofflink.c (_decoration_hash_newfunc): New function. (_bfd_coff_link_hash_table_init): Call it.
  * libcoff-in.h (struct coff_link_hash_table): Add decoration_hash field. (struct decoration_hash_entry): Declare. (_decoration_hash_newfunc): Prototype.
  * libcoff.h: Regenerate.

  * emultempl/pe.em (set_decoration): New function. (pe_fixup_stdcalls): Call the new function.
  * emultempl/pep.em (set_decoration): New function. (pep_fixup_stdcalls): Call the new function.
  * pe-dll.c (make_one): Check for decoated symbols.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  PR 30421
  * cofflink.c (_decoration_hash_newfunc): New function. (_bfd_coff_link_hash_table_init): Call it.
  * libcoff-in.h (struct coff_link_hash_table): Add decoration_hash field. (struct decoration_hash_entry): Declare. (_decoration_hash_newfunc): Prototype.
  * libcoff.h: Regenerate.

  * emultempl/pe.em (set_decoration): New function. (pe_fixup_stdcalls): Call the new function.
  * emultempl/pep.em (set_decoration): New function. (pep_fixup_stdcalls): Call the new function.
  * pe-dll.c (make_one): Check for decoated symbols.
</pre>
</div>
</content>
</entry>
<entry>
<title>PR29961, plugin-api.h: "Could not detect architecture endianess"</title>
<updated>2023-05-17T01:51:43+00:00</updated>
<author>
<name>Alan Modra</name>
<email>amodra@gmail.com</email>
</author>
<published>2023-05-15T13:02:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=80b6c32f233ed28607643c4e4e4e2ee3399fdfd7'/>
<id>80b6c32f233ed28607643c4e4e4e2ee3399fdfd7</id>
<content type='text'>
Found when attempting to build binutils on sparc sunos-5.8 where
sys/byteorder.h defines _BIG_ENDIAN but not any of the BYTE_ORDER
variants.  This patch adds the extra tests to cope with the old
machine, and tidies the header a little.

	PR 29961
	plugin-api.h: When handling non-gcc or gcc &lt; 4.6.0 include
	necessary header files before testing macros.  Make more use
	of #elif.  Test _LITTLE_ENDIAN and _BIG_ENDIAN in final tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Found when attempting to build binutils on sparc sunos-5.8 where
sys/byteorder.h defines _BIG_ENDIAN but not any of the BYTE_ORDER
variants.  This patch adds the extra tests to cope with the old
machine, and tidies the header a little.

	PR 29961
	plugin-api.h: When handling non-gcc or gcc &lt; 4.6.0 include
	necessary header files before testing macros.  Make more use
	of #elif.  Test _LITTLE_ENDIAN and _BIG_ENDIAN in final tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>gcc-4.5 build fixes</title>
<updated>2023-05-17T01:51:43+00:00</updated>
<author>
<name>Alan Modra</name>
<email>amodra@gmail.com</email>
</author>
<published>2023-05-15T13:23:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=3318d80021140659fab083bc03cf6b0cc54a139d'/>
<id>3318d80021140659fab083bc03cf6b0cc54a139d</id>
<content type='text'>
Trying to build binutils with an older gcc currently fails.  Working
around these gcc bugs is not onerous so let's fix them.

bfd/
	* elf32-csky.c (csky_elf_size_dynamic_sections): Don't type-pun
	pointer.
	* elf32-rl78.c (rl78_compute_complex_reloc): Rename "stat"
	variable to "status".
gas/
	* compress-debug.c (compress_finish): Supply all fields in
	ZSTD_inBuffer initialisation.
include/
	* xtensa-dynconfig.h (xtensa_isa_internal): Delete unnecessary
	forward declaration.
opcodes/
	* loongarch-opc.c: Supply all fields of zero struct initialisation
	in various opcode tables.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Trying to build binutils with an older gcc currently fails.  Working
around these gcc bugs is not onerous so let's fix them.

bfd/
	* elf32-csky.c (csky_elf_size_dynamic_sections): Don't type-pun
	pointer.
	* elf32-rl78.c (rl78_compute_complex_reloc): Rename "stat"
	variable to "status".
gas/
	* compress-debug.c (compress_finish): Supply all fields in
	ZSTD_inBuffer initialisation.
include/
	* xtensa-dynconfig.h (xtensa_isa_internal): Delete unnecessary
	forward declaration.
opcodes/
	* loongarch-opc.c: Supply all fields of zero struct initialisation
	in various opcode tables.
</pre>
</div>
</content>
</entry>
<entry>
<title>Automatic date update in version.in</title>
<updated>2023-05-17T00:00:48+00:00</updated>
<author>
<name>GDB Administrator</name>
<email>gdbadmin@sourceware.org</email>
</author>
<published>2023-05-17T00:00:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=f5b7a67f8d0ffcb76a6185a531d87a2f010b1bbc'/>
<id>f5b7a67f8d0ffcb76a6185a531d87a2f010b1bbc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>gprofng: include a new function in the right place</title>
<updated>2023-05-16T19:04:51+00:00</updated>
<author>
<name>Vladimir Mezentsev</name>
<email>vladimir.mezentsev@oracle.com</email>
</author>
<published>2023-05-12T00:30:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=b5fbb4c2b468bc776ba71e2c4ef692f095e034bd'/>
<id>b5fbb4c2b468bc776ba71e2c4ef692f095e034bd</id>
<content type='text'>
Static function name is not available in stripped libraries.
In this case, gprofng maps PC to a fake function like &lt;static&gt;@0xPC (&lt;libname&gt;).
Sometimes gprofng creates two functions instead of one.
Also FUNC_FLAG_SIMULATED is needed for these fake functions.

gprofng/ChangeLog
2023-05-11  Vladimir Mezentsev  &lt;vladimir.mezentsev@oracle.com&gt;

	* src/LoadObject.cc (LoadObject::find_function): Set FUNC_FLAG_SIMULATED.
	Include a new function in the right place.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Static function name is not available in stripped libraries.
In this case, gprofng maps PC to a fake function like &lt;static&gt;@0xPC (&lt;libname&gt;).
Sometimes gprofng creates two functions instead of one.
Also FUNC_FLAG_SIMULATED is needed for these fake functions.

gprofng/ChangeLog
2023-05-11  Vladimir Mezentsev  &lt;vladimir.mezentsev@oracle.com&gt;

	* src/LoadObject.cc (LoadObject::find_function): Set FUNC_FLAG_SIMULATED.
	Include a new function in the right place.
</pre>
</div>
</content>
</entry>
<entry>
<title>[gdb/tui] Don't show line number for lines not in source file</title>
<updated>2023-05-16T15:40:32+00:00</updated>
<author>
<name>Tom de Vries</name>
<email>tdevries@suse.de</email>
</author>
<published>2023-05-16T15:40:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/binutils-gdb.git/commit/?id=68b25a74aa492fa84bc530b471036d762cf772bf'/>
<id>68b25a74aa492fa84bc530b471036d762cf772bf</id>
<content type='text'>
Currently, for a source file containing only 5 lines, we also show line
numbers 6 and 7 if they're in scope of the source window:
...
    0 +-compact-source.c----------------+
    1 |___3_{                           |
    2 |___4_  return 0;                 |
    3 |___5_}                           |
    4 |___6_                            |
    5 |___7_                            |
    6 +---------------------------------+
...

Fix this by not showing line numbers not in a source file, such that we have instead:
...
    0 +-compact-source.c----------------+
    1 |___3_{                           |
    2 |___4_  return 0;                 |
    3 |___5_}                           |
    4 |                                 |
    5 |                                 |
    6 +---------------------------------+
...

Tested on x86_64-linux.

Suggested-By: Simon Marchi &lt;simon.marchi@efficios.com&gt;
Approved-By: Tom Tromey &lt;tom@tromey.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently, for a source file containing only 5 lines, we also show line
numbers 6 and 7 if they're in scope of the source window:
...
    0 +-compact-source.c----------------+
    1 |___3_{                           |
    2 |___4_  return 0;                 |
    3 |___5_}                           |
    4 |___6_                            |
    5 |___7_                            |
    6 +---------------------------------+
...

Fix this by not showing line numbers not in a source file, such that we have instead:
...
    0 +-compact-source.c----------------+
    1 |___3_{                           |
    2 |___4_  return 0;                 |
    3 |___5_}                           |
    4 |                                 |
    5 |                                 |
    6 +---------------------------------+
...

Tested on x86_64-linux.

Suggested-By: Simon Marchi &lt;simon.marchi@efficios.com&gt;
Approved-By: Tom Tromey &lt;tom@tromey.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
