RISC-V: Don't check ABI flags if no code section.
authorJim Wilson <jimw@sifive.com>
Tue, 2 Apr 2019 20:30:07 +0000 (13:30 -0700)
committerJim Wilson <jimw@sifive.com>
Tue, 2 Apr 2019 20:30:07 +0000 (13:30 -0700)
commit87f98bacb76001157d5a26555a41738ac3841a56
tree3529ddd9b4ec1826ab636c55ee0b2552e10330f2
parent4c7c79dd9858438a25fcc37ba419baa00d31978d
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.
bfd/ChangeLog
bfd/elfnn-riscv.c