Message ID | 20160714151053.20713-1-raj.khem@gmail.com |
---|---|
State | New |
Headers | show |
On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: > --- > 2016-07-14 Ross Burton <ross.burton@intel.com> > Khem Raj <raj.khem@gmail.com> > > * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, > R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, > R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, > R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, > R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, > R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, > R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, > R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, > R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, > R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, > R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, > R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, > R_METAG_TLS_DTPOFF): New. > elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 47 insertions(+) This looks ok to me. There are a handful of additional relocs defined in binutils but this should suffice to get the build fixed. > diff --git a/elf/elf.h b/elf/elf.h > index b6112d9..04400ec 100644 > --- a/elf/elf.h > +++ b/elf/elf.h > @@ -3682,6 +3682,53 @@ enum > #define R_BPF_NONE 0 /* No reloc */ > #define R_BPF_MAP_FD 1 /* Map fd to pointer */ > > +/* Imagination Meta specific relocations. */ > + > +#define R_METAG_HIADDR16 0 > +#define R_METAG_LOADDR16 1 > +#define R_METAG_ADDR32 2 /* 32bit absolute address */ > +#define R_METAG_NONE 3 /* No reloc */ > +#define R_METAG_RELBRANCH 4 > +#define R_METAG_GETSETOFF 5 > + > +/* Backward compatability */ > +#define R_METAG_REG32OP1 6 > +#define R_METAG_REG32OP2 7 > +#define R_METAG_REG32OP3 8 > +#define R_METAG_REG16OP1 9 > +#define R_METAG_REG16OP2 10 > +#define R_METAG_REG16OP3 11 > +#define R_METAG_REG32OP4 12 > + > +#define R_METAG_HIOG 13 > +#define R_METAG_LOOG 14 > + > +/* GNU */ > +#define R_METAG_GNU_VTINHERIT 30 > +#define R_METAG_GNU_VTENTRY 31 > + > +/* PIC relocations */ > +#define R_METAG_HI16_GOTOFF 32 > +#define R_METAG_LO16_GOTOFF 33 > +#define R_METAG_GETSET_GOTOFF 34 > +#define R_METAG_GETSET_GOT 35 > +#define R_METAG_HI16_GOTPC 36 > +#define R_METAG_LO16_GOTPC 37 > +#define R_METAG_HI16_PLT 38 > +#define R_METAG_LO16_PLT 39 > +#define R_METAG_RELBRANCH_PLT 40 > +#define R_METAG_GOTOFF 41 > +#define R_METAG_PLT 42 > +#define R_METAG_COPY 43 > +#define R_METAG_JMP_SLOT 44 > +#define R_METAG_RELATIVE 45 > +#define R_METAG_GLOB_DAT 46 > + > +/* TLS relocations */ > +#define R_METAG_TLS_TPOFF 56 > +#define R_METAG_TLS_DTPMOD 57 > +#define R_METAG_TLS_DTPOFF 58 > + > __END_DECLS > > #endif /* elf.h */ > -- > 2.9.0 >
On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: > On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >> --- >> 2016-07-14 Ross Burton <ross.burton@intel.com> >> Khem Raj <raj.khem@gmail.com> >> >> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >> R_METAG_TLS_DTPOFF): New. >> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 47 insertions(+) > > This looks ok to me. There are a handful of additional relocs defined > in binutils but this should suffice to get the build fixed. Thanks Will, can you help in installing it ? > >> diff --git a/elf/elf.h b/elf/elf.h >> index b6112d9..04400ec 100644 >> --- a/elf/elf.h >> +++ b/elf/elf.h >> @@ -3682,6 +3682,53 @@ enum >> #define R_BPF_NONE 0 /* No reloc */ >> #define R_BPF_MAP_FD 1 /* Map fd to pointer */ >> >> +/* Imagination Meta specific relocations. */ >> + >> +#define R_METAG_HIADDR16 0 >> +#define R_METAG_LOADDR16 1 >> +#define R_METAG_ADDR32 2 /* 32bit absolute address */ >> +#define R_METAG_NONE 3 /* No reloc */ >> +#define R_METAG_RELBRANCH 4 >> +#define R_METAG_GETSETOFF 5 >> + >> +/* Backward compatability */ >> +#define R_METAG_REG32OP1 6 >> +#define R_METAG_REG32OP2 7 >> +#define R_METAG_REG32OP3 8 >> +#define R_METAG_REG16OP1 9 >> +#define R_METAG_REG16OP2 10 >> +#define R_METAG_REG16OP3 11 >> +#define R_METAG_REG32OP4 12 >> + >> +#define R_METAG_HIOG 13 >> +#define R_METAG_LOOG 14 >> + >> +/* GNU */ >> +#define R_METAG_GNU_VTINHERIT 30 >> +#define R_METAG_GNU_VTENTRY 31 >> + >> +/* PIC relocations */ >> +#define R_METAG_HI16_GOTOFF 32 >> +#define R_METAG_LO16_GOTOFF 33 >> +#define R_METAG_GETSET_GOTOFF 34 >> +#define R_METAG_GETSET_GOT 35 >> +#define R_METAG_HI16_GOTPC 36 >> +#define R_METAG_LO16_GOTPC 37 >> +#define R_METAG_HI16_PLT 38 >> +#define R_METAG_LO16_PLT 39 >> +#define R_METAG_RELBRANCH_PLT 40 >> +#define R_METAG_GOTOFF 41 >> +#define R_METAG_PLT 42 >> +#define R_METAG_COPY 43 >> +#define R_METAG_JMP_SLOT 44 >> +#define R_METAG_RELATIVE 45 >> +#define R_METAG_GLOB_DAT 46 >> + >> +/* TLS relocations */ >> +#define R_METAG_TLS_TPOFF 56 >> +#define R_METAG_TLS_DTPMOD 57 >> +#define R_METAG_TLS_DTPOFF 58 >> + >> __END_DECLS >> >> #endif /* elf.h */ >> -- >> 2.9.0 >>
On Sat, Jul 16, 2016 at 9:00 AM, Khem Raj <raj.khem@gmail.com> wrote: > On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: >> On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >>> --- >>> 2016-07-14 Ross Burton <ross.burton@intel.com> >>> Khem Raj <raj.khem@gmail.com> >>> >>> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >>> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >>> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >>> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >>> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >>> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >>> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >>> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >>> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >>> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >>> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >>> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >>> R_METAG_TLS_DTPOFF): New. >>> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >>> 1 file changed, 47 insertions(+) >> >> This looks ok to me. There are a handful of additional relocs defined >> in binutils but this should suffice to get the build fixed. > > Thanks Will, can you help in installing it ? The tree is in freeze so I will defer this to Adhemerval. The change looks low risk to me. >> >>> diff --git a/elf/elf.h b/elf/elf.h >>> index b6112d9..04400ec 100644 >>> --- a/elf/elf.h >>> +++ b/elf/elf.h >>> @@ -3682,6 +3682,53 @@ enum >>> #define R_BPF_NONE 0 /* No reloc */ >>> #define R_BPF_MAP_FD 1 /* Map fd to pointer */ >>> >>> +/* Imagination Meta specific relocations. */ >>> + >>> +#define R_METAG_HIADDR16 0 >>> +#define R_METAG_LOADDR16 1 >>> +#define R_METAG_ADDR32 2 /* 32bit absolute address */ >>> +#define R_METAG_NONE 3 /* No reloc */ >>> +#define R_METAG_RELBRANCH 4 >>> +#define R_METAG_GETSETOFF 5 >>> + >>> +/* Backward compatability */ >>> +#define R_METAG_REG32OP1 6 >>> +#define R_METAG_REG32OP2 7 >>> +#define R_METAG_REG32OP3 8 >>> +#define R_METAG_REG16OP1 9 >>> +#define R_METAG_REG16OP2 10 >>> +#define R_METAG_REG16OP3 11 >>> +#define R_METAG_REG32OP4 12 >>> + >>> +#define R_METAG_HIOG 13 >>> +#define R_METAG_LOOG 14 >>> + >>> +/* GNU */ >>> +#define R_METAG_GNU_VTINHERIT 30 >>> +#define R_METAG_GNU_VTENTRY 31 >>> + >>> +/* PIC relocations */ >>> +#define R_METAG_HI16_GOTOFF 32 >>> +#define R_METAG_LO16_GOTOFF 33 >>> +#define R_METAG_GETSET_GOTOFF 34 >>> +#define R_METAG_GETSET_GOT 35 >>> +#define R_METAG_HI16_GOTPC 36 >>> +#define R_METAG_LO16_GOTPC 37 >>> +#define R_METAG_HI16_PLT 38 >>> +#define R_METAG_LO16_PLT 39 >>> +#define R_METAG_RELBRANCH_PLT 40 >>> +#define R_METAG_GOTOFF 41 >>> +#define R_METAG_PLT 42 >>> +#define R_METAG_COPY 43 >>> +#define R_METAG_JMP_SLOT 44 >>> +#define R_METAG_RELATIVE 45 >>> +#define R_METAG_GLOB_DAT 46 >>> + >>> +/* TLS relocations */ >>> +#define R_METAG_TLS_TPOFF 56 >>> +#define R_METAG_TLS_DTPMOD 57 >>> +#define R_METAG_TLS_DTPOFF 58 >>> + >>> __END_DECLS >>> >>> #endif /* elf.h */ >>> -- >>> 2.9.0 >>>
On 18/07/2016 09:39, Will Newton wrote: > On Sat, Jul 16, 2016 at 9:00 AM, Khem Raj <raj.khem@gmail.com> wrote: >> On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: >>> On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >>>> --- >>>> 2016-07-14 Ross Burton <ross.burton@intel.com> >>>> Khem Raj <raj.khem@gmail.com> >>>> >>>> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >>>> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >>>> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >>>> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >>>> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >>>> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >>>> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >>>> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >>>> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >>>> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >>>> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >>>> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >>>> R_METAG_TLS_DTPOFF): New. >>>> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >>>> 1 file changed, 47 insertions(+) >>> >>> This looks ok to me. There are a handful of additional relocs defined >>> in binutils but this should suffice to get the build fixed. >> >> Thanks Will, can you help in installing it ? > > The tree is in freeze so I will defer this to Adhemerval. The change > looks low risk to me. Yes, I see this should not interfere with other ports so I think it is ok for 2.24.
On Mon, Jul 18, 2016 at 1:57 PM, Adhemerval Zanella <adhemerval.zanella@linaro.org> wrote: > > > On 18/07/2016 09:39, Will Newton wrote: >> On Sat, Jul 16, 2016 at 9:00 AM, Khem Raj <raj.khem@gmail.com> wrote: >>> On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: >>>> On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >>>>> --- >>>>> 2016-07-14 Ross Burton <ross.burton@intel.com> >>>>> Khem Raj <raj.khem@gmail.com> >>>>> >>>>> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >>>>> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >>>>> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >>>>> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >>>>> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >>>>> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >>>>> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >>>>> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >>>>> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >>>>> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >>>>> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >>>>> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >>>>> R_METAG_TLS_DTPOFF): New. >>>>> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >>>>> 1 file changed, 47 insertions(+) >>>> >>>> This looks ok to me. There are a handful of additional relocs defined >>>> in binutils but this should suffice to get the build fixed. >>> >>> Thanks Will, can you help in installing it ? >> >> The tree is in freeze so I will defer this to Adhemerval. The change >> looks low risk to me. > > Yes, I see this should not interfere with other ports so I think it is > ok for 2.24. Thanks, I applied the patch.
Will Newton <will.newton@gmail.com> writes: > On Mon, Jul 18, 2016 at 1:57 PM, Adhemerval Zanella > <adhemerval.zanella@linaro.org> wrote: >> >> >> On 18/07/2016 09:39, Will Newton wrote: >>> On Sat, Jul 16, 2016 at 9:00 AM, Khem Raj <raj.khem@gmail.com> wrote: >>>> On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: >>>>> On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >>>>>> --- >>>>>> 2016-07-14 Ross Burton <ross.burton@intel.com> >>>>>> Khem Raj <raj.khem@gmail.com> >>>>>> >>>>>> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >>>>>> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >>>>>> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >>>>>> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >>>>>> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >>>>>> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >>>>>> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >>>>>> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >>>>>> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >>>>>> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >>>>>> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >>>>>> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >>>>>> R_METAG_TLS_DTPOFF): New. >>>>>> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >>>>>> 1 file changed, 47 insertions(+) >>>>> >>>>> This looks ok to me. There are a handful of additional relocs defined >>>>> in binutils but this should suffice to get the build fixed. >>>> >>>> Thanks Will, can you help in installing it ? >>> >>> The tree is in freeze so I will defer this to Adhemerval. The change >>> looks low risk to me. >> >> Yes, I see this should not interfere with other ports so I think it is >> ok for 2.24. > > Thanks, I applied the patch. It is missing a lot of definitions: #define R_METAG_REL8 15 #define R_METAG_REL16 16 #define R_METAG_TLS_GD 47 #define R_METAG_TLS_LDM 48 #define R_METAG_TLS_LDO_HI16 49 #define R_METAG_TLS_LDO_LO16 50 #define R_METAG_TLS_LDO 51 #define R_METAG_TLS_IE 52 #define R_METAG_TLS_IENONPIC 53 #define R_METAG_TLS_IENONPIC_HI16 54 #define R_METAG_TLS_IENONPIC_LO16 55 #define R_METAG_TLS_LE 59 #define R_METAG_TLS_LE_HI16 60 #define R_METAG_TLS_LE_LO16 61 Andreas.
On 19/07/2016 04:51, Andreas Schwab wrote: > Will Newton <will.newton@gmail.com> writes: > >> On Mon, Jul 18, 2016 at 1:57 PM, Adhemerval Zanella >> <adhemerval.zanella@linaro.org> wrote: >>> >>> >>> On 18/07/2016 09:39, Will Newton wrote: >>>> On Sat, Jul 16, 2016 at 9:00 AM, Khem Raj <raj.khem@gmail.com> wrote: >>>>> On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: >>>>>> On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >>>>>>> --- >>>>>>> 2016-07-14 Ross Burton <ross.burton@intel.com> >>>>>>> Khem Raj <raj.khem@gmail.com> >>>>>>> >>>>>>> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >>>>>>> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >>>>>>> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >>>>>>> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >>>>>>> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >>>>>>> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >>>>>>> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >>>>>>> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >>>>>>> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >>>>>>> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >>>>>>> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >>>>>>> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >>>>>>> R_METAG_TLS_DTPOFF): New. >>>>>>> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >>>>>>> 1 file changed, 47 insertions(+) >>>>>> >>>>>> This looks ok to me. There are a handful of additional relocs defined >>>>>> in binutils but this should suffice to get the build fixed. >>>>> >>>>> Thanks Will, can you help in installing it ? >>>> >>>> The tree is in freeze so I will defer this to Adhemerval. The change >>>> looks low risk to me. >>> >>> Yes, I see this should not interfere with other ports so I think it is >>> ok for 2.24. >> >> Thanks, I applied the patch. > > It is missing a lot of definitions: > > #define R_METAG_REL8 15 > #define R_METAG_REL16 16 > #define R_METAG_TLS_GD 47 > #define R_METAG_TLS_LDM 48 > #define R_METAG_TLS_LDO_HI16 49 > #define R_METAG_TLS_LDO_LO16 50 > #define R_METAG_TLS_LDO 51 > #define R_METAG_TLS_IE 52 > #define R_METAG_TLS_IENONPIC 53 > #define R_METAG_TLS_IENONPIC_HI16 54 > #define R_METAG_TLS_IENONPIC_LO16 55 > #define R_METAG_TLS_LE 59 > #define R_METAG_TLS_LE_HI16 60 > #define R_METAG_TLS_LE_LO16 61 > > Andreas. > Will, could you add these one for 2.24? Thanks.
On Tue, Jul 19, 2016 at 2:21 PM, Adhemerval Zanella <adhemerval.zanella@linaro.org> wrote: > > > On 19/07/2016 04:51, Andreas Schwab wrote: >> Will Newton <will.newton@gmail.com> writes: >> >>> On Mon, Jul 18, 2016 at 1:57 PM, Adhemerval Zanella >>> <adhemerval.zanella@linaro.org> wrote: >>>> >>>> >>>> On 18/07/2016 09:39, Will Newton wrote: >>>>> On Sat, Jul 16, 2016 at 9:00 AM, Khem Raj <raj.khem@gmail.com> wrote: >>>>>> On Fri, Jul 15, 2016 at 4:50 AM, Will Newton <will.newton@gmail.com> wrote: >>>>>>> On Thu, Jul 14, 2016 at 4:10 PM, Khem Raj <raj.khem@gmail.com> wrote: >>>>>>>> --- >>>>>>>> 2016-07-14 Ross Burton <ross.burton@intel.com> >>>>>>>> Khem Raj <raj.khem@gmail.com> >>>>>>>> >>>>>>>> * elf/elf.h (R_METAG_HIADDR16, R_METAG_LOADDR16, >>>>>>>> R_METAG_ADDR32, R_METAG_NONE, R_METAG_RELBRANCH, >>>>>>>> R_METAG_GETSETOFF, R_METAG_REG32OP1, R_METAG_REG32OP2, >>>>>>>> R_METAG_REG32OP3, R_METAG_REG16OP1, R_METAG_REG16OP2, >>>>>>>> R_METAG_REG16OP3, R_METAG_REG32OP4, R_METAG_HIOG, >>>>>>>> R_METAG_LOOG, R_METAG_GNU_VTINHERIT, R_METAG_GNU_VTENTRY, >>>>>>>> R_METAG_HI16_GOTOFF, R_METAG_LO16_GOTOFF, >>>>>>>> R_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOT, R_METAG_HI16_GOTPC, >>>>>>>> R_METAG_LO16_GOTPC, R_METAG_HI16_PLT, R_METAG_LO16_PLT, >>>>>>>> R_METAG_RELBRANCH_PLT, R_METAG_GOTOFF, R_METAG_PLT, >>>>>>>> R_METAG_COPY, R_METAG_JMP_SLOT, R_METAG_RELATIVE, >>>>>>>> R_METAG_GLOB_DAT, R_METAG_TLS_TPOFF, R_METAG_TLS_DTPMOD, >>>>>>>> R_METAG_TLS_DTPOFF): New. >>>>>>>> elf/elf.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ >>>>>>>> 1 file changed, 47 insertions(+) >>>>>>> >>>>>>> This looks ok to me. There are a handful of additional relocs defined >>>>>>> in binutils but this should suffice to get the build fixed. >>>>>> >>>>>> Thanks Will, can you help in installing it ? >>>>> >>>>> The tree is in freeze so I will defer this to Adhemerval. The change >>>>> looks low risk to me. >>>> >>>> Yes, I see this should not interfere with other ports so I think it is >>>> ok for 2.24. >>> >>> Thanks, I applied the patch. >> >> It is missing a lot of definitions: >> >> #define R_METAG_REL8 15 >> #define R_METAG_REL16 16 >> #define R_METAG_TLS_GD 47 >> #define R_METAG_TLS_LDM 48 >> #define R_METAG_TLS_LDO_HI16 49 >> #define R_METAG_TLS_LDO_LO16 50 >> #define R_METAG_TLS_LDO 51 >> #define R_METAG_TLS_IE 52 >> #define R_METAG_TLS_IENONPIC 53 >> #define R_METAG_TLS_IENONPIC_HI16 54 >> #define R_METAG_TLS_IENONPIC_LO16 55 >> #define R_METAG_TLS_LE 59 >> #define R_METAG_TLS_LE_HI16 60 >> #define R_METAG_TLS_LE_LO16 61 >> >> Andreas. >> > > Will, could you add these one for 2.24? Thanks. Yep, committed.
diff --git a/elf/elf.h b/elf/elf.h index b6112d9..04400ec 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -3682,6 +3682,53 @@ enum #define R_BPF_NONE 0 /* No reloc */ #define R_BPF_MAP_FD 1 /* Map fd to pointer */ +/* Imagination Meta specific relocations. */ + +#define R_METAG_HIADDR16 0 +#define R_METAG_LOADDR16 1 +#define R_METAG_ADDR32 2 /* 32bit absolute address */ +#define R_METAG_NONE 3 /* No reloc */ +#define R_METAG_RELBRANCH 4 +#define R_METAG_GETSETOFF 5 + +/* Backward compatability */ +#define R_METAG_REG32OP1 6 +#define R_METAG_REG32OP2 7 +#define R_METAG_REG32OP3 8 +#define R_METAG_REG16OP1 9 +#define R_METAG_REG16OP2 10 +#define R_METAG_REG16OP3 11 +#define R_METAG_REG32OP4 12 + +#define R_METAG_HIOG 13 +#define R_METAG_LOOG 14 + +/* GNU */ +#define R_METAG_GNU_VTINHERIT 30 +#define R_METAG_GNU_VTENTRY 31 + +/* PIC relocations */ +#define R_METAG_HI16_GOTOFF 32 +#define R_METAG_LO16_GOTOFF 33 +#define R_METAG_GETSET_GOTOFF 34 +#define R_METAG_GETSET_GOT 35 +#define R_METAG_HI16_GOTPC 36 +#define R_METAG_LO16_GOTPC 37 +#define R_METAG_HI16_PLT 38 +#define R_METAG_LO16_PLT 39 +#define R_METAG_RELBRANCH_PLT 40 +#define R_METAG_GOTOFF 41 +#define R_METAG_PLT 42 +#define R_METAG_COPY 43 +#define R_METAG_JMP_SLOT 44 +#define R_METAG_RELATIVE 45 +#define R_METAG_GLOB_DAT 46 + +/* TLS relocations */ +#define R_METAG_TLS_TPOFF 56 +#define R_METAG_TLS_DTPMOD 57 +#define R_METAG_TLS_DTPOFF 58 + __END_DECLS #endif /* elf.h */