On Thu, 3 Aug 2023 12:48:50 GMT, Robbin Ehn <r...@openjdk.org> wrote:

> Hi please consider.
> 
> This works with 2.30, 2.34, 2.38, 2.39, 2.40, 2.41 and current master head. 
> (tested x64 and some RV)
> 
> There are 4 changes in binutils we work around.
> - zstd compressed debug sections
> - libsframe added
> - init_disassemble_info() change
> - libbfd.a is only present in .lib directory in newer binutils builds (older 
> it is in both directories) (I think the issue is that we never do make 
> install, thus have dependency on internal artifact placement)
> 
> Specific to RV, there is a bug in binutils causing the standard extensions 
> not being added to disassembler if we pass in NULL.
> 
> This no way near perfect, but at least we can build hsdis with any 
> contemporary binutils.
> 
> Todo better I think we need to build and install binutils to check the 
> version and then use that version to figure out what options to use when 
> re-building and re-installing binutils for hsdis.
> 
> I asked tool-chain people about our issues, they said, you can't do that. 
> I.e. have source dependencies on many binutils versions.
> 
> As RV is new and have new instructions added to it frequently we really need 
> to be able to build with bleeding-edge binutils. (capstone RV is not actively 
> worked on, llvm have many more dependencies)

This pull request has now been integrated.

Changeset: c2efd774
Author:    Robbin Ehn <r...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/c2efd7741202a5e3c209de62b8b5e6bd8ae7611a
Stats:     87 lines in 2 files changed: 51 ins; 4 del; 32 mod

8295795: hsdis does not build with binutils 2.39+

Reviewed-by: ihse, djelinski

-------------

PR: https://git.openjdk.org/jdk/pull/15138

Reply via email to