public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: mengqinggang <mengqinggang@loongson.cn>
To: Luis Machado <luis.machado@arm.com>, binutils@sourceware.org
Cc: xuchenghua@loongson.cn, chenglulu@loongson.cn,
	liuzhensong@loongson.cn, xry111@xry111.site, i.swmail@xen0n.name,
	maskray@google.com, changjiachen@stu.xupt.edu.cn
Subject: Re: [PATCH v5 0/6] LoongArch linker relaxation support.
Date: Mon, 5 Jun 2023 18:31:14 +0800	[thread overview]
Message-ID: <1f244684-f2cc-26e2-9ff3-0c4b8d8ee2f1@loongson.cn> (raw)
In-Reply-To: <baef9125-cb8c-8f12-c32e-3b43bba57d3e@arm.com>

Because I don't have a 32-bit machine, I will build a 32-bit virtual
environment to handle this issue.


在 2023/5/31 下午5:13, Luis Machado 写道:
> On 5/26/23 08:38, mengqinggang wrote:
>> This is the v5 version of patches to support loongarch linker relax.
>>
>> This week, the kernek and grub was tested.
>>
>> For kernel, I just did a simple test. It can be compiled correctly and
>> the OS can boot normally.
>>
>> There are some "unsupported relocation" compile errors for grub,
>> because grub currently does not support relax/b16/b21/add/sub
>> relocations.
>>
>> The new LoongArch ABI gitub repo will be released in the next
>> few days.
>>
>> The patch set changelog:
>>
>> v4 -> v5:
>> 1. Change LOONGARCH to LoongArch.
>>
>> mengqinggang (6):
>>    LoongArch: include: Add support for linker relaxation.
>>    LoongArch: bfd: Add support for linker relaxation.
>>    LoongArch: opcodes: Add support for linker relaxation.
>>    LoongArch: binutils: Add support for linker relaxation.
>>    LoongArch: gas: Add support for linker relaxation.
>>    LoongArch: ld: Add support for linker relaxation.
>>
>>   bfd/bfd-in2.h                                 |   8 +
>>   bfd/elfnn-loongarch.c                         | 582 +++++++++++++--
>>   bfd/elfxx-loongarch.c                         | 676 +++++++++++++-----
>>   bfd/elfxx-loongarch.h                         |  10 +-
>>   bfd/libbfd.h                                  |   8 +
>>   bfd/reloc.c                                   |  22 +
>>   binutils/readelf.c                            |  84 ++-
>>   binutils/testsuite/binutils-all/readelf.exp   |  13 +-
>>   gas/config/tc-loongarch.c                     | 427 +++++++++--
>>   gas/config/tc-loongarch.h                     |  48 +-
>>   gas/testsuite/gas/all/align.d                 |   5 +-
>>   gas/testsuite/gas/all/gas.exp                 |  10 +-
>>   gas/testsuite/gas/all/relax.d                 |   4 +
>>   gas/testsuite/gas/elf/dwarf-5-irp.d           |   3 +-
>>   gas/testsuite/gas/elf/dwarf-5-loc0.d          |   3 +-
>>   gas/testsuite/gas/elf/dwarf-5-macro-include.d |   2 +-
>>   gas/testsuite/gas/elf/dwarf-5-macro.d         |   2 +-
>>   gas/testsuite/gas/elf/dwarf2-11.d             |   3 +-
>>   gas/testsuite/gas/elf/dwarf2-15.d             |   3 +-
>>   gas/testsuite/gas/elf/dwarf2-16.d             |   3 +-
>>   gas/testsuite/gas/elf/dwarf2-17.d             |   3 +-
>>   gas/testsuite/gas/elf/dwarf2-18.d             |   3 +-
>>   gas/testsuite/gas/elf/dwarf2-19.d             |   3 +-
>>   gas/testsuite/gas/elf/dwarf2-5.d              |   3 +-
>>   gas/testsuite/gas/elf/ehopt0.d                |   3 +
>>   gas/testsuite/gas/elf/elf.exp                 |   3 +
>>   gas/testsuite/gas/elf/section11.d             |   4 +-
>>   gas/testsuite/gas/lns/lns.exp                 |   1 +
>>   gas/testsuite/gas/loongarch/jmp_op.d          |  65 +-
>>   gas/testsuite/gas/loongarch/li.d              |   8 +-
>>   gas/testsuite/gas/loongarch/macro_op.d        |  68 +-
>>   gas/testsuite/gas/loongarch/macro_op_32.d     |  24 +-
>>   .../gas/loongarch/macro_op_large_abs.d        |  32 +-
>>   .../gas/loongarch/macro_op_large_pc.d         | 134 ++--
>>   gas/testsuite/gas/loongarch/relax_align.d     |  26 +
>>   gas/testsuite/gas/loongarch/relax_align.s     |   5 +
>>   gas/testsuite/gas/loongarch/uleb128.d         |  36 +
>>   gas/testsuite/gas/loongarch/uleb128.s         |  20 +
>>   include/elf/loongarch.h                       |  20 +
>>   include/opcode/loongarch.h                    |   3 +
>>   ld/emultempl/loongarchelf.em                  |   3 +
>>   ld/testsuite/ld-elf/compressed1d.d            |   3 +
>>   ld/testsuite/ld-elf/pr26936.d                 |   4 +-
>>   ld/testsuite/ld-loongarch-elf/disas-jirl-32.d |   2 +
>>   ld/testsuite/ld-loongarch-elf/disas-jirl.d    |   4 +-
>>   ld/testsuite/ld-loongarch-elf/jmp_op.d        |  65 +-
>>   ld/testsuite/ld-loongarch-elf/macro_op.d      |  84 ++-
>>   ld/testsuite/ld-loongarch-elf/macro_op_32.d   |  24 +-
>>   ld/testsuite/ld-loongarch-elf/relax-align.dd  |   7 +
>>   ld/testsuite/ld-loongarch-elf/relax-align.s   |   9 +
>>   ld/testsuite/ld-loongarch-elf/relax.exp       |  73 ++
>>   ld/testsuite/ld-loongarch-elf/relax.s         |  16 +
>>   ld/testsuite/ld-loongarch-elf/uleb128.dd      |  10 +
>>   ld/testsuite/ld-loongarch-elf/uleb128.s       |  21 +
>>   opcodes/loongarch-opc.c                       |   5 +-
>>   55 files changed, 2189 insertions(+), 521 deletions(-)
>>   create mode 100644 gas/testsuite/gas/loongarch/relax_align.d
>>   create mode 100644 gas/testsuite/gas/loongarch/relax_align.s
>>   create mode 100644 gas/testsuite/gas/loongarch/uleb128.d
>>   create mode 100644 gas/testsuite/gas/loongarch/uleb128.s
>>   create mode 100644 ld/testsuite/ld-loongarch-elf/relax-align.dd
>>   create mode 100644 ld/testsuite/ld-loongarch-elf/relax-align.s
>>   create mode 100644 ld/testsuite/ld-loongarch-elf/relax.exp
>>   create mode 100644 ld/testsuite/ld-loongarch-elf/relax.s
>>   create mode 100644 ld/testsuite/ld-loongarch-elf/uleb128.dd
>>   create mode 100644 ld/testsuite/ld-loongarch-elf/uleb128.s
>>
>
> This seems to have caused build issues with --enable-targets=all in 
> 32-bit hosts.
>
> ../../../repos/binutils-gdb/bfd/elfxx-loongarch.c: In function 
> ‘reloc_bits_pcrel20_s2’:
> ../../../repos/binutils-gdb/bfd/elfxx-loongarch.c:1671:32: error: 
> format ‘%lx’ expects argument of type ‘long unsigned int’, but 
> argument 5 has type ‘bfd_signed_vma’ {aka ‘long long int’} 
> [-Werror=format=]
>  1671 |       (*_bfd_error_handler) (_("%pB: relocation %s right shift 
> %d error 0x%lx"),
>
> Could you please take a look at it?
>
> Thanks!


  reply	other threads:[~2023-06-05 10:31 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-26  7:38 mengqinggang
2023-05-26  7:38 ` [PATCH v5 1/6] LoongArch: include: Add support for linker relaxation mengqinggang
2023-05-26  7:38 ` [PATCH v5 2/6] LoongArch: bfd: " mengqinggang
2023-05-26  7:38 ` [PATCH v5 3/6] LoongArch: opcodes: " mengqinggang
2023-05-26  7:38 ` [PATCH v5 4/6] LoongArch: binutils: " mengqinggang
2023-05-26  7:38 ` [PATCH v5 5/6] LoongArch: gas: " mengqinggang
2023-05-26  7:38 ` [PATCH v5 6/6] LoongArch: ld: " mengqinggang
2023-05-31  9:13 ` [PATCH v5 0/6] LoongArch linker relaxation support Luis Machado
2023-06-05 10:31   ` mengqinggang [this message]
2023-06-05 10:33     ` Luis Machado

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1f244684-f2cc-26e2-9ff3-0c4b8d8ee2f1@loongson.cn \
    --to=mengqinggang@loongson.cn \
    --cc=binutils@sourceware.org \
    --cc=changjiachen@stu.xupt.edu.cn \
    --cc=chenglulu@loongson.cn \
    --cc=i.swmail@xen0n.name \
    --cc=liuzhensong@loongson.cn \
    --cc=luis.machado@arm.com \
    --cc=maskray@google.com \
    --cc=xry111@xry111.site \
    --cc=xuchenghua@loongson.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).