public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v4 0/5] Add support for TLS Descriptors (TLSDESC)
@ 2023-12-15 10:11 Lulu Cai
  2023-12-15 10:11 ` [PATCH v4 1/5] LoongArch: Add new relocs and macro for TLSDESC Lulu Cai
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Lulu Cai @ 2023-12-15 10:11 UTC (permalink / raw)
  To: binutils
  Cc: xuchenghua, chenglulu, liuzhensong, mengqinggang, xry111,
	i.swmail, maskray, luweining, wanglei, hejinyang, Lulu Cai

v4 mainly adjusted the relaxation conditions of GD/LD/DESC:
1. It is possible to relax for undefined symbols.
2. Modified the pcaddi calculation method to calculate the
   got address of the symbol instead of the actual address of the symbol.

Lulu Cai (4):
  LoongArch: Add new relocs and macro for TLSDESC.
  LoongArch: Add support for TLSDESC in ld.
  LoongArch: Add tls transition support. Transitions between DESC->IE/LE
    and IE->LE are supported now.
  LoongArch: Add testsuit for DESC and tls transition and tls
    relaxation.

mengqinggang (1):
  LoongArch: TLS LD/GD/DESC relaxation

 bfd/bfd-in2.h                                 |  15 +
 bfd/elfnn-loongarch.c                         | 555 ++++++++++++++++--
 bfd/elfxx-loongarch.c                         | 265 ++++++++-
 bfd/libbfd.h                                  |  15 +
 bfd/reloc.c                                   |  36 ++
 gas/config/tc-loongarch.c                     |  20 +-
 gas/testsuite/gas/loongarch/macro_op.d        | 128 ++--
 gas/testsuite/gas/loongarch/macro_op_32.d     | 120 ++--
 .../gas/loongarch/macro_op_large_abs.d        | 160 ++---
 .../gas/loongarch/macro_op_large_pc.d         | 160 ++---
 gas/testsuite/gas/loongarch/tlsdesc_32.d      |  28 +
 gas/testsuite/gas/loongarch/tlsdesc_32.s      |  12 +
 gas/testsuite/gas/loongarch/tlsdesc_64.d      |  28 +
 gas/testsuite/gas/loongarch/tlsdesc_64.s      |  12 +
 .../gas/loongarch/tlsdesc_large_abs.d         |  21 +
 .../gas/loongarch/tlsdesc_large_abs.s         |   9 +
 .../gas/loongarch/tlsdesc_large_pc.d          |  22 +
 .../gas/loongarch/tlsdesc_large_pc.s          |  13 +
 include/elf/loongarch.h                       |  26 +-
 include/opcode/loongarch.h                    |   6 +
 ld/testsuite/ld-loongarch-elf/desc-ie.d       |  16 +
 ld/testsuite/ld-loongarch-elf/desc-ie.s       |  18 +
 ld/testsuite/ld-loongarch-elf/desc-le.d       |  15 +
 ld/testsuite/ld-loongarch-elf/desc-le.s       |  14 +
 ld/testsuite/ld-loongarch-elf/desc-norelax.d  |  16 +
 ld/testsuite/ld-loongarch-elf/desc-norelax.s  |   5 +
 ld/testsuite/ld-loongarch-elf/desc-relax.d    |  15 +
 ld/testsuite/ld-loongarch-elf/desc-relax.s    |   5 +
 ld/testsuite/ld-loongarch-elf/ie-le.d         |  13 +
 ld/testsuite/ld-loongarch-elf/ie-le.s         |  11 +
 .../ld-loongarch-elf/ld-loongarch-elf.exp     |   9 +
 ld/testsuite/ld-loongarch-elf/macro_op.d      | 391 ++++++------
 ld/testsuite/ld-loongarch-elf/macro_op_32.d   | 120 ++--
 ld/testsuite/ld-loongarch-elf/tlsdesc-dso.d   |  56 ++
 ld/testsuite/ld-loongarch-elf/tlsdesc-dso.s   |  66 +++
 opcodes/loongarch-opc.c                       |  54 ++
 36 files changed, 1907 insertions(+), 568 deletions(-)
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_32.d
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_32.s
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_64.d
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_64.s
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_large_abs.d
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_large_abs.s
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_large_pc.d
 create mode 100644 gas/testsuite/gas/loongarch/tlsdesc_large_pc.s
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-ie.d
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-ie.s
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-le.d
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-le.s
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-norelax.d
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-norelax.s
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-relax.d
 create mode 100644 ld/testsuite/ld-loongarch-elf/desc-relax.s
 create mode 100644 ld/testsuite/ld-loongarch-elf/ie-le.d
 create mode 100644 ld/testsuite/ld-loongarch-elf/ie-le.s
 create mode 100644 ld/testsuite/ld-loongarch-elf/tlsdesc-dso.d
 create mode 100644 ld/testsuite/ld-loongarch-elf/tlsdesc-dso.s

-- 
2.36.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-12-15 10:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-15 10:11 [PATCH v4 0/5] Add support for TLS Descriptors (TLSDESC) Lulu Cai
2023-12-15 10:11 ` [PATCH v4 1/5] LoongArch: Add new relocs and macro for TLSDESC Lulu Cai
2023-12-15 10:11 ` [PATCH v4 2/5] LoongArch: Add support for TLSDESC in ld Lulu Cai
2023-12-15 10:11 ` [PATCH v4 3/5] LoongArch: Add tls transition support. Transitions between DESC->IE/LE and IE->LE are supported now Lulu Cai
2023-12-15 10:11 ` [PATCH v4 4/5] LoongArch: TLS LD/GD/DESC relaxation Lulu Cai

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).