Message ID | 20230131133246.711897-1-caiyinyu@loongson.cn |
---|---|
State | New |
Headers | show |
Series | LoongArch: Add new relocation types. | expand |
On Tue, 2023-01-31 at 21:32 +0800, caiyinyu wrote: > --- > elf/elf.h | 40 ++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 40 insertions(+) > > diff --git a/elf/elf.h b/elf/elf.h > index b6a75c13a8..4bc0e4299c 100644 > --- a/elf/elf.h > +++ b/elf/elf.h > @@ -4159,6 +4159,46 @@ enum > #define R_LARCH_GNU_VTINHERIT 57 > #define R_LARCH_GNU_VTENTRY 58 > > +/* reserved 59-63 */ > + > +#define R_LARCH_B16 64 > +#define R_LARCH_B21 65 > +#define R_LARCH_B26 66 > +#define R_LARCH_ABS_HI20 67 > +#define R_LARCH_ABS_LO12 68 > +#define R_LARCH_ABS64_LO20 69 > +#define R_LARCH_ABS64_HI12 70 > +#define R_LARCH_PCALA_HI20 71 > +#define R_LARCH_PCALA_LO12 72 > +#define R_LARCH_PCALA64_LO20 73 > +#define R_LARCH_PCALA64_HI12 74 > +#define R_LARCH_GOT_PC_HI20 75 > +#define R_LARCH_GOT_PC_LO12 76 > +#define R_LARCH_GOT64_PC_LO20 77 > +#define R_LARCH_GOT64_PC_HI12 78 > +#define R_LARCH_GOT_HI20 79 > +#define R_LARCH_GOT_LO12 80 > +#define R_LARCH_GOT64_LO20 81 > +#define R_LARCH_GOT64_HI12 82 > +#define R_LARCH_TLS_LE_HI20 83 > +#define R_LARCH_TLS_LE_LO12 84 > +#define R_LARCH_TLS_LE64_LO20 85 > +#define R_LARCH_TLS_LE64_HI12 86 > +#define R_LARCH_TLS_IE_PC_HI20 87 > +#define R_LARCH_TLS_IE_PC_LO12 88 > +#define R_LARCH_TLS_IE64_PC_LO20 89 > +#define R_LARCH_TLS_IE64_PC_HI12 90 > +#define R_LARCH_TLS_IE_HI20 91 > +#define R_LARCH_TLS_IE_LO12 92 > +#define R_LARCH_TLS_IE64_LO20 93 > +#define R_LARCH_TLS_IE64_HI12 94 > +#define R_LARCH_TLS_LD_PC_HI20 95 > +#define R_LARCH_TLS_LD_HI20 96 > +#define R_LARCH_TLS_GD_PC_HI20 97 > +#define R_LARCH_TLS_GD_HI20 98 > +#define R_LARCH_32_PCREL 99 > +#define R_LARCH_RELAX 100 > + Compared with BFD code with eyesight, LGTM. Pushing the change before Glibc-2.37 release will require release manager approval though. > /* ARC specific declarations. */ > > /* Processor specific flags for the Ehdr e_flags field. */
On 1/31/23 09:23, Xi Ruoyao via Libc-alpha wrote: > On Tue, 2023-01-31 at 21:32 +0800, caiyinyu wrote: >> --- >> elf/elf.h | 40 ++++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 40 insertions(+) >> >> diff --git a/elf/elf.h b/elf/elf.h >> index b6a75c13a8..4bc0e4299c 100644 >> --- a/elf/elf.h >> +++ b/elf/elf.h >> @@ -4159,6 +4159,46 @@ enum >> #define R_LARCH_GNU_VTINHERIT 57 >> #define R_LARCH_GNU_VTENTRY 58 >> >> +/* reserved 59-63 */ >> + >> +#define R_LARCH_B16 64 >> +#define R_LARCH_B21 65 >> +#define R_LARCH_B26 66 >> +#define R_LARCH_ABS_HI20 67 >> +#define R_LARCH_ABS_LO12 68 >> +#define R_LARCH_ABS64_LO20 69 >> +#define R_LARCH_ABS64_HI12 70 >> +#define R_LARCH_PCALA_HI20 71 >> +#define R_LARCH_PCALA_LO12 72 >> +#define R_LARCH_PCALA64_LO20 73 >> +#define R_LARCH_PCALA64_HI12 74 >> +#define R_LARCH_GOT_PC_HI20 75 >> +#define R_LARCH_GOT_PC_LO12 76 >> +#define R_LARCH_GOT64_PC_LO20 77 >> +#define R_LARCH_GOT64_PC_HI12 78 >> +#define R_LARCH_GOT_HI20 79 >> +#define R_LARCH_GOT_LO12 80 >> +#define R_LARCH_GOT64_LO20 81 >> +#define R_LARCH_GOT64_HI12 82 >> +#define R_LARCH_TLS_LE_HI20 83 >> +#define R_LARCH_TLS_LE_LO12 84 >> +#define R_LARCH_TLS_LE64_LO20 85 >> +#define R_LARCH_TLS_LE64_HI12 86 >> +#define R_LARCH_TLS_IE_PC_HI20 87 >> +#define R_LARCH_TLS_IE_PC_LO12 88 >> +#define R_LARCH_TLS_IE64_PC_LO20 89 >> +#define R_LARCH_TLS_IE64_PC_HI12 90 >> +#define R_LARCH_TLS_IE_HI20 91 >> +#define R_LARCH_TLS_IE_LO12 92 >> +#define R_LARCH_TLS_IE64_LO20 93 >> +#define R_LARCH_TLS_IE64_HI12 94 >> +#define R_LARCH_TLS_LD_PC_HI20 95 >> +#define R_LARCH_TLS_LD_HI20 96 >> +#define R_LARCH_TLS_GD_PC_HI20 97 >> +#define R_LARCH_TLS_GD_HI20 98 >> +#define R_LARCH_32_PCREL 99 >> +#define R_LARCH_RELAX 100 >> + > > Compared with BFD code with eyesight, LGTM. > > Pushing the change before Glibc-2.37 release will require release > manager approval though. This will have to wait for glibc 2.38 (next development cycle which starts in ~24hrs :-)) >> /* ARC specific declarations. */ >> >> /* Processor specific flags for the Ehdr e_flags field. */ >
diff --git a/elf/elf.h b/elf/elf.h index b6a75c13a8..4bc0e4299c 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -4159,6 +4159,46 @@ enum #define R_LARCH_GNU_VTINHERIT 57 #define R_LARCH_GNU_VTENTRY 58 +/* reserved 59-63 */ + +#define R_LARCH_B16 64 +#define R_LARCH_B21 65 +#define R_LARCH_B26 66 +#define R_LARCH_ABS_HI20 67 +#define R_LARCH_ABS_LO12 68 +#define R_LARCH_ABS64_LO20 69 +#define R_LARCH_ABS64_HI12 70 +#define R_LARCH_PCALA_HI20 71 +#define R_LARCH_PCALA_LO12 72 +#define R_LARCH_PCALA64_LO20 73 +#define R_LARCH_PCALA64_HI12 74 +#define R_LARCH_GOT_PC_HI20 75 +#define R_LARCH_GOT_PC_LO12 76 +#define R_LARCH_GOT64_PC_LO20 77 +#define R_LARCH_GOT64_PC_HI12 78 +#define R_LARCH_GOT_HI20 79 +#define R_LARCH_GOT_LO12 80 +#define R_LARCH_GOT64_LO20 81 +#define R_LARCH_GOT64_HI12 82 +#define R_LARCH_TLS_LE_HI20 83 +#define R_LARCH_TLS_LE_LO12 84 +#define R_LARCH_TLS_LE64_LO20 85 +#define R_LARCH_TLS_LE64_HI12 86 +#define R_LARCH_TLS_IE_PC_HI20 87 +#define R_LARCH_TLS_IE_PC_LO12 88 +#define R_LARCH_TLS_IE64_PC_LO20 89 +#define R_LARCH_TLS_IE64_PC_HI12 90 +#define R_LARCH_TLS_IE_HI20 91 +#define R_LARCH_TLS_IE_LO12 92 +#define R_LARCH_TLS_IE64_LO20 93 +#define R_LARCH_TLS_IE64_HI12 94 +#define R_LARCH_TLS_LD_PC_HI20 95 +#define R_LARCH_TLS_LD_HI20 96 +#define R_LARCH_TLS_GD_PC_HI20 97 +#define R_LARCH_TLS_GD_HI20 98 +#define R_LARCH_32_PCREL 99 +#define R_LARCH_RELAX 100 + /* ARC specific declarations. */ /* Processor specific flags for the Ehdr e_flags field. */