* [musl] [PATCH] LoongArch64: add new reloc types and NT_LOONGARCH_HW_* into elf.h
@ 2025-01-04 8:41 Jingyun Hua
2025-04-03 9:57 ` Yao Zi
0 siblings, 1 reply; 2+ messages in thread
From: Jingyun Hua @ 2025-01-04 8:41 UTC (permalink / raw)
To: musl; +Cc: lixing, wanghongliang, dalias, Jingyun Hua
These new LoongArch reloc types(101 to 126) have been added in LoongArch psABI
v2.30 and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH sync Linux 6.12 elf.h.
Link:
https://github.com/loongson/la-abi-specs/blob/v2.30/laelf.adoc#relocation-types
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/elf.h?h=v6.12#n458
Also refer to glibc:
https://sourceware.org/git/?p=glibc.git;a=blob;f=elf/elf.h
---
include/elf.h | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/include/elf.h b/include/elf.h
index 8b622f63..a3635d03 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -712,6 +712,8 @@ typedef struct {
#define NT_LOONGARCH_LSX 0xa02
#define NT_LOONGARCH_LASX 0xa03
#define NT_LOONGARCH_LBT 0xa04
+#define NT_LOONGARCH_HW_BREAK 0xa05
+#define NT_LOONGARCH_HW_WATCH 0xa06
@@ -3406,6 +3408,32 @@ enum
#define R_LARCH_TLS_GD_HI20 98
#define R_LARCH_32_PCREL 99
#define R_LARCH_RELAX 100
+#define R_LARCH_DELETE 101
+#define R_LARCH_ALIGN 102
+#define R_LARCH_PCREL20_S2 103
+#define R_LARCH_CFA 104
+#define R_LARCH_ADD6 105
+#define R_LARCH_SUB6 106
+#define R_LARCH_ADD_ULEB128 107
+#define R_LARCH_SUB_ULEB128 108
+#define R_LARCH_64_PCREL 109
+#define R_LARCH_CALL36 110
+#define R_LARCH_TLS_DESC_PC_HI20 111
+#define R_LARCH_TLS_DESC_PC_LO12 112
+#define R_LARCH_TLS_DESC64_PC_LO20 113
+#define R_LARCH_TLS_DESC64_PC_HI12 114
+#define R_LARCH_TLS_DESC_HI20 115
+#define R_LARCH_TLS_DESC_LO12 116
+#define R_LARCH_TLS_DESC64_LO20 117
+#define R_LARCH_TLS_DESC64_HI12 118
+#define R_LARCH_TLS_DESC_LD 119
+#define R_LARCH_TLS_DESC_CALL 120
+#define R_LARCH_TLS_LE_HI20_R 121
+#define R_LARCH_TLS_LE_ADD_R 122
+#define R_LARCH_TLS_LE_LO12_R 123
+#define R_LARCH_TLS_LD_PCREL20_S2 124
+#define R_LARCH_TLS_GD_PCREL20_S2 125
+#define R_LARCH_TLS_DESC_PCREL20_S2 126
#ifdef __cplusplus
}
--
2.47.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [musl] [PATCH] LoongArch64: add new reloc types and NT_LOONGARCH_HW_* into elf.h
2025-01-04 8:41 [musl] [PATCH] LoongArch64: add new reloc types and NT_LOONGARCH_HW_* into elf.h Jingyun Hua
@ 2025-04-03 9:57 ` Yao Zi
0 siblings, 0 replies; 2+ messages in thread
From: Yao Zi @ 2025-04-03 9:57 UTC (permalink / raw)
To: musl; +Cc: lixing, wanghongliang, dalias, Jingyun Hua
On Sat, Jan 04, 2025 at 04:41:44PM +0800, Jingyun Hua wrote:
> These new LoongArch reloc types(101 to 126) have been added in LoongArch psABI
> v2.30 and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH sync Linux 6.12 elf.h.
>
> Link:
> https://github.com/loongson/la-abi-specs/blob/v2.30/laelf.adoc#relocation-types
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/elf.h?h=v6.12#n458
>
> Also refer to glibc:
> https://sourceware.org/git/?p=glibc.git;a=blob;f=elf/elf.h
Ping on this patch, This is necessary for LLDB 20.1.2 to be built for
loongarch64. Although there's a workaround introduced later[1], it will
be nice to have these definitions presented in musl's elf.h as soon as
possible :)
Thanks,
Yao Zi
[1]: https://github.com/llvm/llvm-project/commit/50ae1c7bf40ba50aaf3132fa869eda8f06648155
> ---
> include/elf.h | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/include/elf.h b/include/elf.h
> index 8b622f63..a3635d03 100644
> --- a/include/elf.h
> +++ b/include/elf.h
> @@ -712,6 +712,8 @@ typedef struct {
> #define NT_LOONGARCH_LSX 0xa02
> #define NT_LOONGARCH_LASX 0xa03
> #define NT_LOONGARCH_LBT 0xa04
> +#define NT_LOONGARCH_HW_BREAK 0xa05
> +#define NT_LOONGARCH_HW_WATCH 0xa06
>
>
>
> @@ -3406,6 +3408,32 @@ enum
> #define R_LARCH_TLS_GD_HI20 98
> #define R_LARCH_32_PCREL 99
> #define R_LARCH_RELAX 100
> +#define R_LARCH_DELETE 101
> +#define R_LARCH_ALIGN 102
> +#define R_LARCH_PCREL20_S2 103
> +#define R_LARCH_CFA 104
> +#define R_LARCH_ADD6 105
> +#define R_LARCH_SUB6 106
> +#define R_LARCH_ADD_ULEB128 107
> +#define R_LARCH_SUB_ULEB128 108
> +#define R_LARCH_64_PCREL 109
> +#define R_LARCH_CALL36 110
> +#define R_LARCH_TLS_DESC_PC_HI20 111
> +#define R_LARCH_TLS_DESC_PC_LO12 112
> +#define R_LARCH_TLS_DESC64_PC_LO20 113
> +#define R_LARCH_TLS_DESC64_PC_HI12 114
> +#define R_LARCH_TLS_DESC_HI20 115
> +#define R_LARCH_TLS_DESC_LO12 116
> +#define R_LARCH_TLS_DESC64_LO20 117
> +#define R_LARCH_TLS_DESC64_HI12 118
> +#define R_LARCH_TLS_DESC_LD 119
> +#define R_LARCH_TLS_DESC_CALL 120
> +#define R_LARCH_TLS_LE_HI20_R 121
> +#define R_LARCH_TLS_LE_ADD_R 122
> +#define R_LARCH_TLS_LE_LO12_R 123
> +#define R_LARCH_TLS_LD_PCREL20_S2 124
> +#define R_LARCH_TLS_GD_PCREL20_S2 125
> +#define R_LARCH_TLS_DESC_PCREL20_S2 126
>
> #ifdef __cplusplus
> }
> --
> 2.47.1
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-04-03 9:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-04 8:41 [musl] [PATCH] LoongArch64: add new reloc types and NT_LOONGARCH_HW_* into elf.h Jingyun Hua
2025-04-03 9:57 ` Yao Zi
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
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 NNTP newsgroup(s).