Yeah, it makes sense to move our base C environment to match the values
seen in the output of 'readelf' and in the broader programming environment.


Philip

On Mon, Jan 10, 2022 at 3:34 PM Mark Kettenis <mark.kette...@xs4all.nl>
wrote:

> > Date: Sun, 09 Jan 2022 23:54:23 +0100
> > From: Leo Larnack <l...@pseven.xyz>
> >
> > Daniel Dickman <didick...@gmail.com> wrote:
> >
> > > elfexport.cpp:352:56: error: use of undeclared identifier 'R_386_32'
> > >     reloc.r_info = ELFXX_R_INFO(symbolNum, isFuncPtr ?
> > > HOST_DIRECT_FPTR_RELOC : HOST_DIRECT_DATA_RELOC);
> > >                                                        ^
> > > elfexport.cpp:142:33: note: expanded from macro
> 'HOST_DIRECT_FPTR_RELOC'
> > > # define HOST_DIRECT_FPTR_RELOC R_386_32
> >
> > It looks like Poly/ML expects R_386_32 to be either in <elf.h> of
> > <machine/reloc.h> (it's located in <elf.h> on Void Linux, for
> > example).  After a bit of searching, what I understand is that
> > OpenBSD/i386's (and other platforms') <machine/reloc.h> contains
> > the right values, but doesn't follow the same naming convention
> > (RELOC_32), while other platforms do follow that convention.
> >
> > Hoping that I'm not doing something dumb, here is a diff that
> > standardizes the constants' names for these platforms. The new names
> > come from src/gnu/usr.bin/binutils-2.17/include/elf.
>
> Yes, I think this is a diff we want.  But it is probably best to
> review and test this on a per-architecture basis.
>
> Can you feed them to us one-by-one?
>
>
> > Index: libexec/ld.so/hppa/rtld_machine.c
> > ===================================================================
> > RCS file: /cvs/src/libexec/ld.so/hppa/rtld_machine.c,v
> > retrieving revision 1.43
> > diff -u -p -r1.43 rtld_machine.c
> > --- libexec/ld.so/hppa/rtld_machine.c 8 Jan 2022 06:49:41 -0000
>  1.43
> > +++ libexec/ld.so/hppa/rtld_machine.c 9 Jan 2022 22:03:27 -0000
> > @@ -164,7 +164,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >               int type;
> >
> >               type = ELF_R_TYPE(rela->r_info);
> > -             if (type == RELOC_NONE)
> > +             if (type == R_TYPE(NONE))
> >                       continue;
> >
> >               sym = object->dyn.symtab + ELF_R_SYM(rela->r_info);
> > @@ -191,7 +191,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >  #endif
> >
> >               switch (type) {
> > -             case RELOC_DIR32:
> > +             case R_TYPE(DIR32):
> >                       if (ELF_R_SYM(rela->r_info) && sym->st_name) {
> >                               *pt = sr.obj->obj_base + sr.sym->st_value +
> >                                   rela->r_addend;
> > @@ -213,7 +213,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       }
> >                       break;
> >
> > -             case RELOC_PLABEL32:
> > +             case R_TYPE(PLABEL32):
> >                       if (ELF_R_SYM(rela->r_info)) {
> >                               if (ELF_ST_TYPE(sr.sym->st_info) !=
> STT_FUNC) {
> >                                       DL_DEB(("[%x]PLABEL32: bad\n", i));
> > @@ -236,7 +236,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       }
> >                       break;
> >
> > -             case RELOC_IPLT:
> > +             case R_TYPE(IPLT):
> >                       if (ELF_R_SYM(rela->r_info)) {
> >                               pt[0] = sr.obj->obj_base +
> sr.sym->st_value +
> >                                   rela->r_addend;
> > @@ -256,7 +256,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       }
> >                       break;
> >
> > -             case RELOC_COPY:
> > +             case R_TYPE(COPY):
> >               {
> >                       sr = _dl_find_symbol(symn,
> >                           SYM_SEARCH_OTHER|SYM_WARNNOTFOUND|SYM_NOTPLT,
> > @@ -381,7 +381,7 @@ _dl_md_reloc_got(elf_object_t *object, i
> >               for (i = 0; i < numrela; i++, rela++) {
> >                       Elf_Addr *r_addr = (Elf_Addr *)(ooff +
> rela->r_offset);
> >
> > -                     if (ELF_R_TYPE(rela->r_info) != RELOC_IPLT) {
> > +                     if (ELF_R_TYPE(rela->r_info) != R_TYPE(IPLT)) {
> >                               _dl_printf("unexpected reloc 0x%x\n",
> >                                   ELF_R_TYPE(rela->r_info));
> >                               return 1;
> > Index: libexec/ld.so/m88k/rtld_machine.c
> > ===================================================================
> > RCS file: /cvs/src/libexec/ld.so/m88k/rtld_machine.c,v
> > retrieving revision 1.31
> > diff -u -p -r1.31 rtld_machine.c
> > --- libexec/ld.so/m88k/rtld_machine.c 8 Jan 2022 06:49:42 -0000
>  1.31
> > +++ libexec/ld.so/m88k/rtld_machine.c 9 Jan 2022 22:03:27 -0000
> > @@ -99,17 +99,17 @@ _dl_md_reloc(elf_object_t *object, int r
> >
> >               type = ELF_R_TYPE(relas->r_info);
> >
> > -             if (type == RELOC_GOTP_ENT && rel != DT_JMPREL)
> > +             if (type == R_TYPE(GOTP_ENT) && rel != DT_JMPREL)
> >                       continue;
> >
> > -             if (type == RELOC_NONE)
> > +             if (type == R_TYPE(NONE))
> >                       continue;
> >
> >               sym = object->dyn.symtab;
> >               sym += ELF_R_SYM(relas->r_info);
> >               symn = object->dyn.strtab + sym->st_name;
> >
> > -             if (type == RELOC_COPY) {
> > +             if (type == R_TYPE(COPY)) {
> >                       /*
> >                        * we need to find a symbol, that is not in the
> current
> >                        * object, start looking at the beginning of the
> list,
> > @@ -144,7 +144,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >
> >                               sr = _dl_find_symbol(symn,
> >                                   SYM_SEARCH_ALL | SYM_WARNNOTFOUND |
> > -                                 ((type == RELOC_GOTP_ENT) ?
> > +                                 ((type == R_TYPE(GOTP_ENT)) ?
> >                                   SYM_PLT : SYM_NOTPLT), sym, object);
> >
> >                               if (sr.sym == NULL) {
> > @@ -159,7 +159,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       }
> >               }
> >
> > -             if (type == RELOC_GOTP_ENT) {
> > +             if (type == R_TYPE(GOTP_ENT)) {
> >                       _dl_md_reloc_gotp_ent((Elf_Addr)r_addr,
> >                           relas->r_addend + loff,
> >                           prev_ooff + prev_value);
> > @@ -174,17 +174,17 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       addend = prev_value + relas->r_addend;
> >
> >               switch (type) {
> > -             case RELOC_16L:
> > +             case R_TYPE(16L):
> >                       newval = prev_ooff + addend;
> >                       *(unsigned short *)r_addr = newval & 0xffff;
> >                       _dl_cacheflush((unsigned long)r_addr, 2);
> >                       break;
> > -             case RELOC_16H:
> > +             case R_TYPE(16H):
> >                       newval = prev_ooff + addend;
> >                       *(unsigned short *)r_addr = newval >> 16;
> >                       _dl_cacheflush((unsigned long)r_addr, 2);
> >                       break;
> > -             case RELOC_DISP26:
> > +             case R_TYPE(DISP26):
> >                       newval = prev_ooff + addend;
> >                       newval -= (Elf_Addr)r_addr;
> >                       if ((newval >> 28) != 0 && (newval >> 28) != 0x0f)
> > @@ -195,11 +195,11 @@ _dl_md_reloc(elf_object_t *object, int r
> >                           (((int32_t)newval >> 2) & 0x03ffffff);
> >                       _dl_cacheflush((unsigned long)r_addr, 4);
> >                       break;
> > -             case RELOC_32:
> > +             case R_TYPE(32):
> >                       newval = prev_ooff + addend;
> >                       *r_addr = newval;
> >                       break;
> > -             case RELOC_BBASED_32:
> > +             case R_TYPE(BBASED_32):
> >                       newval = loff + addend;
> >                       *r_addr = newval;
> >                       break;
> > Index: libexec/ld.so/powerpc/rtld_machine.c
> > ===================================================================
> > RCS file: /cvs/src/libexec/ld.so/powerpc/rtld_machine.c,v
> > retrieving revision 1.72
> > diff -u -p -r1.72 rtld_machine.c
> > --- libexec/ld.so/powerpc/rtld_machine.c      8 Jan 2022 18:30:18
> -0000       1.72
> > +++ libexec/ld.so/powerpc/rtld_machine.c      9 Jan 2022 22:03:27 -0000
> > @@ -95,7 +95,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >
> >               type = ELF_R_TYPE(relas->r_info);
> >
> > -             if (type == RELOC_JMP_SLOT && rel != DT_JMPREL)
> > +             if (type == R_TYPE(JMP_SLOT) && rel != DT_JMPREL)
> >                       continue;
> >
> >               sym = object->dyn.symtab;
> > @@ -110,7 +110,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >
> >                       sr = _dl_find_symbol(symn,
> >                           SYM_SEARCH_ALL|SYM_WARNNOTFOUND|
> > -                         ((type == RELOC_JMP_SLOT) ?
> > +                         ((type == R_TYPE(JMP_SLOT)) ?
> >                           SYM_PLT:SYM_NOTPLT), sym, object);
> >
> >                       if (sr.sym == NULL) {
> > @@ -124,7 +124,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >               }
> >
> >               switch (type) {
> > -             case RELOC_32:
> > +             case R_TYPE(32):
> >                       if (ELF_ST_BIND(sym->st_info) == STB_LOCAL &&
> >                           (ELF_ST_TYPE(sym->st_info) == STT_SECTION ||
> >                           ELF_ST_TYPE(sym->st_info) == STT_NOTYPE) ) {
> > @@ -134,7 +134,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                                   relas->r_addend;
> >                       }
> >                       break;
> > -             case RELOC_RELATIVE:
> > +             case R_TYPE(RELATIVE):
> >                       if (ELF_ST_BIND(sym->st_info) == STB_LOCAL &&
> >                           (ELF_ST_TYPE(sym->st_info) == STT_SECTION ||
> >                           ELF_ST_TYPE(sym->st_info) == STT_NOTYPE) ) {
> > @@ -145,17 +145,17 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       }
> >                       break;
> >               /*
> > -              * For Secure-PLT, RELOC_JMP_SLOT simply sets PLT
> > -              * slots similarly to how RELOC_GLOB_DAT updates GOT
> > +              * For Secure-PLT, R_TYPE(JMP_SLOT) simply sets PLT
> > +              * slots similarly to how R_TYPE(GLOB_DAT) updates GOT
> >                * slots.
> >                */
> > -             case RELOC_JMP_SLOT:
> > -             case RELOC_GLOB_DAT:
> > +             case R_TYPE(JMP_SLOT):
> > +             case R_TYPE(GLOB_DAT):
> >                       *r_addr = prev_ooff + prev_value + relas->r_addend;
> >                       break;
> >  #if 1
> >               /* should not be supported ??? */
> > -             case RELOC_REL24:
> > +             case R_TYPE(REL24):
> >                   {
> >                       Elf_Addr val = prev_ooff + prev_value +
> >                           relas->r_addend - (Elf_Addr)r_addr;
> > @@ -174,7 +174,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >               break;
> >  #endif
> >  #if 1
> > -             case RELOC_16_LO:
> > +             case R_TYPE(16_LO):
> >                   {
> >                       Elf_Addr val;
> >
> > @@ -186,7 +186,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >               break;
> >  #endif
> >  #if 1
> > -             case RELOC_16_HI:
> > +             case R_TYPE(16_HI):
> >                   {
> >                       Elf_Addr val;
> >
> > @@ -198,7 +198,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >               break;
> >  #endif
> >  #if 1
> > -             case RELOC_16_HA:
> > +             case R_TYPE(16_HA):
> >                   {
> >                       Elf_Addr val;
> >
> > @@ -209,10 +209,10 @@ _dl_md_reloc(elf_object_t *object, int r
> >                   }
> >               break;
> >  #endif
> > -             case RELOC_REL14_TAKEN:
> > +             case R_TYPE(REL14_TAKEN):
> >                       /* val |= 1 << (31-10) XXX? */
> > -             case RELOC_REL14:
> > -             case RELOC_REL14_NTAKEN:
> > +             case R_TYPE(REL14):
> > +             case R_TYPE(REL14_NTAKEN):
> >                   {
> >                       Elf_Addr val = prev_ooff + prev_value +
> >                           relas->r_addend - (Elf_Addr)r_addr;
> > @@ -229,7 +229,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                       _dl_dcbf(r_addr);
> >                   }
> >                       break;
> > -             case RELOC_COPY:
> > +             case R_TYPE(COPY):
> >               {
> >                       struct sym_res sr;
> >                       /*
> > @@ -248,7 +248,7 @@ _dl_md_reloc(elf_object_t *object, int r
> >                               fails++;
> >               }
> >                       break;
> > -             case RELOC_NONE:
> > +             case R_TYPE(NONE):
> >                       break;
> >
> >               default:
> > Index: sys/arch/alpha/include/reloc.h
> > ===================================================================
> > RCS file: /cvs/src/sys/arch/alpha/include/reloc.h,v
> > retrieving revision 1.3
> > diff -u -p -r1.3 reloc.h
> > --- sys/arch/alpha/include/reloc.h    23 Mar 2011 16:54:34 -0000      1.3
> > +++ sys/arch/alpha/include/reloc.h    9 Jan 2022 22:03:28 -0000
> > @@ -3,35 +3,35 @@
> >  #ifndef      _MACHINE_RELOC_H_
> >  #define      _MACHINE_RELOC_H_
> >
> > -#define RELOC_NONE            0       /* No reloc */
> > -#define RELOC_REFLONG         1       /* Direct 32 bit */
> > -#define RELOC_REFQUAD         2       /* Direct 64 bit */
> > -#define RELOC_GPREL32         3       /* GP relative 32 bit */
> > -#define RELOC_LITERAL         4       /* GP relative 16 bit
> w/optimization */
> > -#define RELOC_LITUSE          5       /* Optimization hint for LITERAL
> */
> > -#define RELOC_GPDISP          6       /* Add displacement to GP */
> > -#define RELOC_BRADDR          7       /* PC+4 relative 23 bit shifted */
> > -#define RELOC_HINT            8       /* PC+4 relative 16 bit shifted */
> > -#define RELOC_SREL16          9       /* PC relative 16 bit */
> > -#define RELOC_SREL32          10      /* PC relative 32 bit */
> > -#define RELOC_SREL64          11      /* PC relative 64 bit */
> > -#define RELOC_OP_PUSH         12      /* OP stack push */
> > -#define RELOC_OP_STORE        13      /* OP stack pop and store */
> > -#define RELOC_OP_PSUB         14      /* OP stack subtract */
> > -#define RELOC_OP_PRSHIFT      15      /* OP stack right shift */
> > -#define RELOC_GPVALUE         16
> > -#define RELOC_GPRELHIGH       17
> > -#define RELOC_GPRELLOW        18
> > -#define RELOC_IMMED_GP_16     19
> > -#define RELOC_IMMED_GP_HI32   20
> > -#define RELOC_IMMED_SCN_HI32  21
> > -#define RELOC_IMMED_BRELOC_HI32   22
> > -#define RELOC_IMMED_LO32      23
> > -#define RELOC_COPY            24      /* Copy symbol at runtime */
> > -#define RELOC_GLOB_DAT        25      /* Create GOT entry */
> > -#define RELOC_JMP_SLOT        26      /* Create PLT entry */
> > -#define RELOC_RELATIVE        27      /* Adjust by program base */
> > +#define R_ALPHA_NONE            0       /* No reloc */
> > +#define R_ALPHA_REFLONG         1       /* Direct 32 bit */
> > +#define R_ALPHA_REFQUAD         2       /* Direct 64 bit */
> > +#define R_ALPHA_GPREL32         3       /* GP relative 32 bit */
> > +#define R_ALPHA_LITERAL         4       /* GP relative 16 bit
> w/optimization */
> > +#define R_ALPHA_LITUSE          5       /* Optimization hint for
> LITERAL */
> > +#define R_ALPHA_GPDISP          6       /* Add displacement to GP */
> > +#define R_ALPHA_BRADDR          7       /* PC+4 relative 23 bit shifted
> */
> > +#define R_ALPHA_HINT            8       /* PC+4 relative 16 bit shifted
> */
> > +#define R_ALPHA_SREL16          9       /* PC relative 16 bit */
> > +#define R_ALPHA_SREL32          10      /* PC relative 32 bit */
> > +#define R_ALPHA_SREL64          11      /* PC relative 64 bit */
> > +#define R_ALPHA_OP_PUSH         12      /* OP stack push */
> > +#define R_ALPHA_OP_STORE        13      /* OP stack pop and store */
> > +#define R_ALPHA_OP_PSUB         14      /* OP stack subtract */
> > +#define R_ALPHA_OP_PRSHIFT      15      /* OP stack right shift */
> > +#define R_ALPHA_GPVALUE         16
> > +#define R_ALPHA_GPRELHIGH       17
> > +#define R_ALPHA_GPRELLOW        18
> > +#define R_ALPHA_IMMED_GP_16     19
> > +#define R_ALPHA_IMMED_GP_HI32   20
> > +#define R_ALPHA_IMMED_SCN_HI32  21
> > +#define R_ALPHA_IMMED_ R_ALPHA_HI32   22
> > +#define R_ALPHA_IMMED_LO32      23
> > +#define R_ALPHA_COPY            24      /* Copy symbol at runtime */
> > +#define R_ALPHA_GLOB_DAT        25      /* Create GOT entry */
> > +#define R_ALPHA_JMP_SLOT        26      /* Create PLT entry */
> > +#define R_ALPHA_RELATIVE        27      /* Adjust by program base */
> >
> > -#define R_TYPE(X)    __CONCAT(RELOC_,X)
> > +#define R_TYPE(X)    __CONCAT(R_ALPHA_,X)
> >
> >  #endif       /* _MACHINE_RELOC_H_ */
> > Index: sys/arch/hppa/include/reloc.h
> > ===================================================================
> > RCS file: /cvs/src/sys/arch/hppa/include/reloc.h,v
> > retrieving revision 1.4
> > diff -u -p -r1.4 reloc.h
> > --- sys/arch/hppa/include/reloc.h     10 Nov 2011 22:48:13 -0000      1.4
> > +++ sys/arch/hppa/include/reloc.h     9 Jan 2022 22:03:28 -0000
> > @@ -21,103 +21,105 @@
> >  #define _MACHINE_RELOC_H_
> >
> >  /* pa1 compatibility */
> > -#define      RELOC_DLTREL21L RELOC_GPREL21L
> > -#define      RELOC_DLTREL14R RELOC_GPREL14R
> > -#define      RELOC_DLTIND21L RELOC_LTOFF21L
> > -#define      RELOC_DLTIND14R RELOC_LTOFF14R
> > -#define      RELOC_DLTIND14F RELOC_LTOFF14F
> > -#define      RELOC_DLTREL14WR        RELOC_GPREL14WR
> > -#define      RELOC_DLTREL14DR        RELOC_GPREL14DR
> > -#define      RELOC_DLTIND14WR        RELOC_LTOFF14WR
> > -#define      RELOC_DLTIND14DR        RELOC_LTOFF14DR
> > +#define      R_PARISC_DLTREL21L      R_PARISC_GPREL21L
> > +#define      R_PARISC_DLTREL14R      R_PARISC_GPREL14R
> > +#define      R_PARISC_DLTIND21L      R_PARISC_LTOFF21L
> > +#define      R_PARISC_DLTIND14R      R_PARISC_LTOFF14R
> > +#define      R_PARISC_DLTIND14F      R_PARISC_LTOFF14F
> > +#define      R_PARISC_DLTREL14WR     R_PARISC_GPREL14WR
> > +#define      R_PARISC_DLTREL14DR     R_PARISC_GPREL14DR
> > +#define      R_PARISC_DLTIND14WR     R_PARISC_LTOFF14WR
> > +#define      R_PARISC_DLTIND14DR     R_PARISC_LTOFF14DR
> >
> >
> >  enum reloc_type {
> > -     RELOC_NONE = 0,
> > -     RELOC_DIR32,            /*      symbol + addend*/
> > -     RELOC_DIR21L,           /*      LR(symbol, addend)  */
> > -     RELOC_DIR17R,           /*      RR(symbol, addend) */
> > -     RELOC_DIR17F,           /*      symbol + addend */
> > -     RELOC_DIR14R = 6,       /*      RR(symbol, addend) */
> > -     RELOC_PCREL32 = 9,      /*      pa2: symbol - PC - 8 + addend */
> > -     RELOC_PCREL21L,         /*      L(symbol - PC - 8 + addend */
> > -     RELOC_PCREL17R,         /*      R(symbol - PC - 8 + addend */
> > -     RELOC_PCREL17F,         /*      symbol - PC - 8 + addend */
> > -     RELOC_PCREL17C,         /* pa1: symbol - PC - 8 + addend */
> > -     RELOC_PCREL14R,         /*      R(symbol - PC - 8 + addend */
> > -     RELOC_DPREL21L = 18,    /* pa1: LR(symbol - GP, addend */
> > -     RELOC_DPREL14WR,        /* pa1: RR(symbol - GP, addend */
> > -     RELOC_DPREL14DR,        /* pa1: RR(symbol - GP, addend */
> > -     RELOC_DPREL14R,         /* pa1: RR(symbol - GP, addend */
> > -     RELOC_GPREL21L = 26,    /*      LR(symbol - GP, addend */
> > -     RELOC_GPREL14R = 30,    /*      RR(symbol - GP, addend */
> > -     RELOC_LTOFF21L = 34,    /*      L(ltoff(symbol + addend)) */
> > -     RELOC_LTOFF14R = 38,    /*      R(ltoff(symbol + addend)) */
> > -     RELOC_LTOFF14F,         /* pa1: ltoff(symbol + addend) */
> > -     RELOC_SETBASE,          /*      no relocation; base = symbol */
> > -     RELOC_SECREL32,         /*      symbol - SECT + addend */
> > -     RELOC_BASEREL21L,       /* pa1: LR(symbol - base, addend) */
> > -     RELOC_BASEREL17R,       /* pa1: RR(symbol - base, addend) */
> > -     RELOC_BASEREL14R = 46,  /* pa1: RR(symbol - base, addend) */
> > -     RELOC_SEGBASE = 48,     /*      no relocation; SB = symbol */
> > -     RELOC_SEGREL32,         /*      symbol - SB + addend */
> > -     RELOC_PLTOFF21L,        /*      LR(pltoff(symbol), addend */
> > -     RELOC_PLTOFF14R = 54,   /*      RR(pltoff(symbol), addend */
> > -     RELOC_PLTOFF14F,        /* pa1: pltoff(symbol) + addend */
> > -     RELOC_LTOFF_FPTR32 = 57,/* pa2: ltoff(fptr(symbol + addend)) */
> > -     RELOC_LTOFF_FPTR21L,    /* pa2: L(ltoff(fptr(symbol + addend))) */
> > -     RELOC_LTOFF_FPTR14R= 62,/* pa2: R(ltoff(fptr(symbol + addend))) */
> > -     RELOC_FPTR64 = 64,      /* pa2: fptr(symbol + addend) */
> > -     RELOC_PLABEL32,         /* pa1: fptr(symbol) */
> > -     RELOC_PCREL64 = 72,     /* pa2: symbol - PC - 8 + addend */
> > -     RELOC_PCREL22C,         /* pa1: symbol - PC - 8 + addend */
> > -     RELOC_PCREL22F,         /*      symbol - PC - 8 + addend */
> > -     RELOC_PCREL14WR,        /*      R(symbol - PC - 8 + addend) */
> > -     RELOC_PCREL14DR,        /*      R(symbol - PC - 8 + addend) */
> > -     RELOC_PCREL16F,         /* pa2: symbol - PC - 8 + addend */
> > -     RELOC_PCREL16WF,        /* pa2: symbol - PC - 8 + addend */
> > -     RELOC_PCREL16DF,        /* pa2: symbol - PC - 8 + addend */
> > -     RELOC_DIR64,            /* pa2: symbol + addend */
> > -     RELOC_DIR14WR = 83,     /*      RR(symbol, addend) */
> > -     RELOC_DIR14DR,          /*      RR(symbol, addend) */
> > -     RELOC_DIR16F,           /* pa2: symbol + addend */
> > -     RELOC_DIR16WF,          /* pa2: symbol + addend */
> > -     RELOC_DIR16DF,          /* pa2: symbol + addend */
> > -     RELOC_GPREL64,          /* pa2: symbol - GP + addend */
> > -     RELOC_GPREL14WR = 91,   /*      RR(symbol - GP, addend) */
> > -     RELOC_GPREL14DR,        /*      RR(symbol - GP, addend) */
> > -     RELOC_GPREL16F,         /* pa2: symbol - GP + addend */
> > -     RELOC_GPREL16WF,        /* pa2: symbol - GP + addend */
> > -     RELOC_GPREL16DF,        /* pa2: symbol - GP + addend */
> > -     RELOC_LTOFF64 = 96,     /* pa2: ltoff(symbol + addend) */
> > -     RELOC_LTOFF14WR = 99,   /*      R(ltoff(symbol + addend)) */
> > -     RELOC_LTOFF14DR,        /*      R(ltoff(symbol + addend)) */
> > -     RELOC_LTOFF16F,         /* pa2: ltoff(symbol + addend) */
> > -     RELOC_LTOFF16WF,        /* pa2: ltoff(symbol + addend) */
> > -     RELOC_LTOFF16DF,        /* pa2: ltoff(symbol + addend) */
> > -     RELOC_SECREL64,         /* pa2: symbol - SECT + addend */
> > -     RELOC_BASEREL14WR=107,  /* pa1: RR(symbol - base, addend */
> > -     RELOC_BASEREL14DR,      /* pa1: RR(symbol - base, addend */
> > -     RELOC_SEGREL64 = 112,   /* pa2: symbol - SB + addend */
> > -     RELOC_PLTOFF14WR =115,  /*      RR(pltoff(symbol) + addend) */
> > -     RELOC_PLTOFF14DR,       /*      RR(pltoff(symbol) + addend) */
> > -     RELOC_PLTOFF16F,        /* pa2: pltoff(symbol) + addend */
> > -     RELOC_PLTOFF16WF,       /* pa2: pltoff(symbol) + addend */
> > -     RELOC_PLTOFF16DF,       /* pa2: pltoff(symbol) + addend */
> > -     RELOC_LTOFF_FPTR64,     /* pa2: ltoff(fptr(symbol + addend)) */
> > -     RELOC_LTOFF_FPTR14WR=123,/* pa2: R(ltoff(fptr(symbol + addend) */
> > -     RELOC_LTOFF_FPTR14DR,   /* pa2: R(ltoff(fptr(symbol + addend) */
> > -     RELOC_LTOFF_FPTR16F,    /* pa2: ltoff(fptr(symbol + addend)) */
> > -     RELOC_LTOFF_FPTR16WF,   /* pa2: ltoff(fptr(symbol + addend)) */
> > -     RELOC_LTOFF_FPTR16DF,   /* pa2: ltoff(fptr(symbol + addend)) */
> > -     RELOC_LORESERVE,        /*      reserved for environment-specific
> use */
> > -     RELOC_COPY = 128,
> > -     RELOC_IPLT,
> > -     RELOC_EPLT,
> > -     RELOC_GDATA,
> > -     RELOC_JMPSLOT,
> > -     RELOC_RELATIVE,
> > -     RELOC_HIRESERVE = 255
> > +     R_PARISC_NONE = 0,
> > +     R_PARISC_DIR32,                 /*      symbol + addend*/
> > +     R_PARISC_DIR21L,                /*      LR(symbol, addend)  */
> > +     R_PARISC_DIR17R,                /*      RR(symbol, addend) */
> > +     R_PARISC_DIR17F,                /*      symbol + addend */
> > +     R_PARISC_DIR14R = 6,            /*      RR(symbol, addend) */
> > +     R_PARISC_PCREL32 = 9,           /*      pa2: symbol - PC - 8 +
> addend */
> > +     R_PARISC_PCREL21L,              /*      L(symbol - PC - 8 + addend
> */
> > +     R_PARISC_PCREL17R,              /*      R(symbol - PC - 8 + addend
> */
> > +     R_PARISC_PCREL17F,              /*      symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL17C,              /* pa1: symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL14R,              /*      R(symbol - PC - 8 + addend
> */
> > +     R_PARISC_DPREL21L = 18,         /* pa1: LR(symbol - GP, addend */
> > +     R_PARISC_DPREL14WR,             /* pa1: RR(symbol - GP, addend */
> > +     R_PARISC_DPREL14DR,             /* pa1: RR(symbol - GP, addend */
> > +     R_PARISC_DPREL14R,              /* pa1: RR(symbol - GP, addend */
> > +     R_PARISC_GPREL21L = 26,         /*      LR(symbol - GP, addend */
> > +     R_PARISC_GPREL14R = 30,         /*      RR(symbol - GP, addend */
> > +     R_PARISC_LTOFF21L = 34,         /*      L(ltoff(symbol + addend))
> */
> > +     R_PARISC_LTOFF14R = 38,         /*      R(ltoff(symbol + addend))
> */
> > +     R_PARISC_LTOFF14F,              /* pa1: ltoff(symbol + addend) */
> > +     R_PARISC_SETBASE,               /*      no relocation; base =
> symbol */
> > +     R_PARISC_SECREL32,              /*      symbol - SECT + addend */
> > +     R_PARISC_BASEREL21L,            /* pa1: LR(symbol - base, addend)
> */
> > +     R_PARISC_BASEREL17R,            /* pa1: RR(symbol - base, addend)
> */
> > +     R_PARISC_BASEREL14R = 46,       /* pa1: RR(symbol - base, addend)
> */
> > +     R_PARISC_SEGBASE = 48,          /*      no relocation; SB = symbol
> */
> > +     R_PARISC_SEGREL32,              /*      symbol - SB + addend */
> > +     R_PARISC_PLTOFF21L,             /*      LR(pltoff(symbol), addend
> */
> > +     R_PARISC_PLTOFF14R = 54,        /*      RR(pltoff(symbol), addend
> */
> > +     R_PARISC_PLTOFF14F,             /* pa1: pltoff(symbol) + addend */
> > +     R_PARISC_LTOFF_FPTR32 = 57,     /* pa2: ltoff(fptr(symbol +
> addend)) */
> > +     R_PARISC_LTOFF_FPTR21L,         /* pa2: L(ltoff(fptr(symbol +
> addend))) */
> > +     R_PARISC_LTOFF_FPTR14R= 62,     /* pa2: R(ltoff(fptr(symbol +
> addend))) */
> > +     R_PARISC_FPTR64 = 64,           /* pa2: fptr(symbol + addend) */
> > +     R_PARISC_PLABEL32,              /* pa1: fptr(symbol) */
> > +     R_PARISC_PCREL64 = 72,          /* pa2: symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL22C,              /* pa1: symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL22F,              /*      symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL14WR,             /*      R(symbol - PC - 8 +
> addend) */
> > +     R_PARISC_PCREL14DR,             /*      R(symbol - PC - 8 +
> addend) */
> > +     R_PARISC_PCREL16F,              /* pa2: symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL16WF,             /* pa2: symbol - PC - 8 + addend */
> > +     R_PARISC_PCREL16DF,             /* pa2: symbol - PC - 8 + addend */
> > +     R_PARISC_DIR64,                 /* pa2: symbol + addend */
> > +     R_PARISC_DIR14WR = 83,          /*      RR(symbol, addend) */
> > +     R_PARISC_DIR14DR,               /*      RR(symbol, addend) */
> > +     R_PARISC_DIR16F,                /* pa2: symbol + addend */
> > +     R_PARISC_DIR16WF,               /* pa2: symbol + addend */
> > +     R_PARISC_DIR16DF,               /* pa2: symbol + addend */
> > +     R_PARISC_GPREL64,               /* pa2: symbol - GP + addend */
> > +     R_PARISC_GPREL14WR = 91,        /*      RR(symbol - GP, addend) */
> > +     R_PARISC_GPREL14DR,             /*      RR(symbol - GP, addend) */
> > +     R_PARISC_GPREL16F,              /* pa2: symbol - GP + addend */
> > +     R_PARISC_GPREL16WF,             /* pa2: symbol - GP + addend */
> > +     R_PARISC_GPREL16DF,             /* pa2: symbol - GP + addend */
> > +     R_PARISC_LTOFF64 = 96,          /* pa2: ltoff(symbol + addend) */
> > +     R_PARISC_LTOFF14WR = 99,        /*      R(ltoff(symbol + addend))
> */
> > +     R_PARISC_LTOFF14DR,             /*      R(ltoff(symbol + addend))
> */
> > +     R_PARISC_LTOFF16F,              /* pa2: ltoff(symbol + addend) */
> > +     R_PARISC_LTOFF16WF,             /* pa2: ltoff(symbol + addend) */
> > +     R_PARISC_LTOFF16DF,             /* pa2: ltoff(symbol + addend) */
> > +     R_PARISC_SECREL64,              /* pa2: symbol - SECT + addend */
> > +     R_PARISC_BASEREL14WR=107,       /* pa1: RR(symbol - base, addend */
> > +     R_PARISC_BASEREL14DR,           /* pa1: RR(symbol - base, addend */
> > +     R_PARISC_SEGREL64 = 112,        /* pa2: symbol - SB + addend */
> > +     R_PARISC_PLTOFF14WR =115,       /*      RR(pltoff(symbol) +
> addend) */
> > +     R_PARISC_PLTOFF14DR,            /*      RR(pltoff(symbol) +
> addend) */
> > +     R_PARISC_PLTOFF16F,             /* pa2: pltoff(symbol) + addend */
> > +     R_PARISC_PLTOFF16WF,            /* pa2: pltoff(symbol) + addend */
> > +     R_PARISC_PLTOFF16DF,            /* pa2: pltoff(symbol) + addend */
> > +     R_PARISC_LTOFF_FPTR64,          /* pa2: ltoff(fptr(symbol +
> addend)) */
> > +     R_PARISC_LTOFF_FPTR14WR=123,    /* pa2: R(ltoff(fptr(symbol +
> addend) */
> > +     R_PARISC_LTOFF_FPTR14DR,        /* pa2: R(ltoff(fptr(symbol +
> addend) */
> > +     R_PARISC_LTOFF_FPTR16F,         /* pa2: ltoff(fptr(symbol +
> addend)) */
> > +     R_PARISC_LTOFF_FPTR16WF,        /* pa2: ltoff(fptr(symbol +
> addend)) */
> > +     R_PARISC_LTOFF_FPTR16DF,        /* pa2: ltoff(fptr(symbol +
> addend)) */
> > +     R_PARISC_LORESERVE,             /*      reserved for
> environment-specific use */
> > +     R_PARISC_COPY = 128,
> > +     R_PARISC_IPLT,
> > +     R_PARISC_EPLT,
> > +     R_PARISC_GDATA,
> > +     R_PARISC_JMPSLOT,
> > +     R_PARISC_RELATIVE,
> > +     R_PARISC_HIRESERVE = 255
> >  };
> > +
> > +#define R_TYPE(X)    __CONCAT(R_PARISC_,X)
> >
> >  #endif /* _MACHINE_RELOC_H_ */
> > Index: sys/arch/i386/include/reloc.h
> > ===================================================================
> > RCS file: /cvs/src/sys/arch/i386/include/reloc.h,v
> > retrieving revision 1.3
> > diff -u -p -r1.3 reloc.h
> > --- sys/arch/i386/include/reloc.h     23 Mar 2011 16:54:35 -0000      1.3
> > +++ sys/arch/i386/include/reloc.h     9 Jan 2022 22:03:28 -0000
> > @@ -26,27 +26,27 @@
> >   */
> >  #ifndef  _MACHINE_RELOC_H_
> >  #define  _MACHINE_RELOC_H_
> > -#define R_TYPE(X)       __CONCAT(RELOC_,X)
> > +#define R_TYPE(X)       __CONCAT(R_386_,X)
> >
> >
> > -#define RELOC_NONE           0   /* No reloc */
> > -#define RELOC_32             1   /* Direct 32 bit  */
> > -#define RELOC_PC32           2   /* PC relative 32 bit */
> > -#define RELOC_GOT32          3   /* 32 bit GOT entry */
> > -#define RELOC_PLT32          4   /* 32 bit PLT address */
> > -#define RELOC_COPY           5   /* Copy symbol at runtime */
> > -#define RELOC_GLOB_DAT       6   /* Create GOT entry */
> > -#define RELOC_JUMP_SLOT      7   /* Create PLT entry */
> > -#define RELOC_RELATIVE       8   /* Adjust by program base */
> > -#define RELOC_GOTOFF         9   /* 32 bit offset to GOT */
> > -#define RELOC_GOTPC          10  /* 32 bit PC relative offset to GOT */
> > -#define RELOC_TLS_TPOFF              14  /* negative offset in static
> TLS block */
> > -#define RELOC_16             20
> > -#define RELOC_PC16           21
> > -#define RELOC_8              22
> > -#define RELOC_PC8            23
> > -#define RELOC_TLS_DTPMOD32   35 /* ID of module containing symbol */
> > -#define RELOC_TLS_DTPOFF32   36 /* Offset in TLS block */
> > -#define RELOC_TLS_TPOFF32    37 /* Offset in static TLS block */
> > +#define R_386_NONE           0   /* No reloc */
> > +#define R_386_32             1   /* Direct 32 bit  */
> > +#define R_386_PC32           2   /* PC relative 32 bit */
> > +#define R_386_GOT32          3   /* 32 bit GOT entry */
> > +#define R_386_PLT32          4   /* 32 bit PLT address */
> > +#define R_386_COPY           5   /* Copy symbol at runtime */
> > +#define R_386_GLOB_DAT       6   /* Create GOT entry */
> > +#define R_386_JUMP_SLOT      7   /* Create PLT entry */
> > +#define R_386_RELATIVE       8   /* Adjust by program base */
> > +#define R_386_GOTOFF         9   /* 32 bit offset to GOT */
> > +#define R_386_GOTPC          10  /* 32 bit PC relative offset to GOT */
> > +#define R_386_TLS_TPOFF              14  /* negative offset in static
> TLS block */
> > +#define R_386_16             20
> > +#define R_386_PC16           21
> > +#define R_386_8              22
> > +#define R_386_PC8            23
> > +#define R_386_TLS_DTPMOD32   35 /* ID of module containing symbol */
> > +#define R_386_TLS_DTPOFF32   36 /* Offset in TLS block */
> > +#define R_386_TLS_TPOFF32    37 /* Offset in static TLS block */
> >
> >  #endif /* _MACHINE_RELOC_H_ */
> > Index: sys/arch/m88k/include/reloc.h
> > ===================================================================
> > RCS file: /cvs/src/sys/arch/m88k/include/reloc.h,v
> > retrieving revision 1.1
> > diff -u -p -r1.1 reloc.h
> > --- sys/arch/m88k/include/reloc.h     5 Jan 2013 11:20:56 -0000       1.1
> > +++ sys/arch/m88k/include/reloc.h     9 Jan 2022 22:03:28 -0000
> > @@ -5,67 +5,69 @@
> >  #ifndef      _M88K_RELOC_H_
> >  #define      _M88K_RELOC_H_
> >
> > -#define      RELOC_NONE              0
> > -#define      RELOC_COPY              1
> > -#define      RELOC_GOTP_ENT          2
> > -#define      RELOC_8                 4
> > -#define      RELOC_8S                5
> > -#define      RELOC_16S               7
> > -#define      RELOC_DISP16            8
> > -#define      RELOC_DISP26            10
> > -#define      RELOC_PLT_DISP26        14
> > -#define      RELOC_BBASED_32         16
> > -#define      RELOC_BBASED_32UA       17
> > -#define      RELOC_BBASED_16H        18
> > -#define      RELOC_BBASED_16L        19
> > -#define      RELOC_ABDIFF_32         24
> > -#define      RELOC_ABDIFF_32UA       25
> > -#define      RELOC_ABDIFF_16H        26
> > -#define      RELOC_ABDIFF_16L        27
> > -#define      RELOC_ABDIFF_16         28
> > -#define      RELOC_32                32
> > -#define      RELOC_32UA              33
> > -#define      RELOC_16H               34
> > -#define      RELOC_16L               35
> > -#define      RELOC_16                36
> > -#define      RELOC_GOT_32            40
> > -#define      RELOC_GOT_32UA          41
> > -#define      RELOC_GOT_16H           42
> > -#define      RELOC_GOT_16L           43
> > -#define      RELOC_GOT_16            44
> > -#define      RELOC_GOTP_32           48
> > -#define      RELOC_GOTP_32UA         49
> > -#define      RELOC_GOTP_16H          50
> > -#define      RELOC_GOTP_16L          51
> > -#define      RELOC_GOTP_16           52
> > -#define      RELOC_PLT_32            56
> > -#define      RELOC_PLT_32UA          57
> > -#define      RELOC_PLT_16H           58
> > -#define      RELOC_PLT_16L           59
> > -#define      RELOC_PLT_16            60
> > -#define      RELOC_ABREL_32          64
> > -#define      RELOC_ABREL_32UA        65
> > -#define      RELOC_ABREL_16H         66
> > -#define      RELOC_ABREL_16L         67
> > -#define      RELOC_ABREL_16          68
> > -#define      RELOC_GOT_ABREL_32      72
> > -#define      RELOC_GOT_ABREL_32UA    73
> > -#define      RELOC_GOT_ABREL_16H     74
> > -#define      RELOC_GOT_ABREL_16L     75
> > -#define      RELOC_GOT_ABREL_16      76
> > -#define      RELOC_GOTP_ABREL_32     80
> > -#define      RELOC_GOTP_ABREL_32UA   81
> > -#define      RELOC_GOTP_ABREL_16H    82
> > -#define      RELOC_GOTP_ABREL_16L    83
> > -#define      RELOC_GOTP_ABREL_16     84
> > -#define      RELOC_PLT_ABREL_32      88
> > -#define      RELOC_PLT_ABREL_32UA    89
> > -#define      RELOC_PLT_ABREL_16H     90
> > -#define      RELOC_PLT_ABREL_16L     91
> > -#define      RELOC_PLT_ABREL_16      92
> > -#define      RELOC_SREL_32           96
> > -#define      RELOC_SREL_32UA         97
> > -#define      RELOC_SREL_16H          98
> > -#define      RELOC_SREL_16L          99
> > +#define R_88K_NONE           0
> > +#define R_88K_COPY           1
> > +#define R_88K_GOTP_ENT               2
> > +#define R_88K_8                      4
> > +#define R_88K_8S             5
> > +#define R_88K_16S            7
> > +#define R_88K_DISP16         8
> > +#define R_88K_DISP26         10
> > +#define R_88K_PLT_DISP26     14
> > +#define R_88K_BBASED_32              16
> > +#define R_88K_BBASED_32UA    17
> > +#define R_88K_BBASED_16H     18
> > +#define R_88K_BBASED_16L     19
> > +#define R_88K_ABDIFF_32              24
> > +#define R_88K_ABDIFF_32UA    25
> > +#define R_88K_ABDIFF_16H     26
> > +#define R_88K_ABDIFF_16L     27
> > +#define R_88K_ABDIFF_16              28
> > +#define R_88K_32             32
> > +#define R_88K_32UA           33
> > +#define R_88K_16H            34
> > +#define R_88K_16L            35
> > +#define R_88K_16             36
> > +#define R_88K_GOT_32         40
> > +#define R_88K_GOT_32UA               41
> > +#define R_88K_GOT_16H                42
> > +#define R_88K_GOT_16L                43
> > +#define R_88K_GOT_16         44
> > +#define R_88K_GOTP_32                48
> > +#define R_88K_GOTP_32UA              49
> > +#define R_88K_GOTP_16H               50
> > +#define R_88K_GOTP_16L               51
> > +#define R_88K_GOTP_16                52
> > +#define R_88K_PLT_32         56
> > +#define R_88K_PLT_32UA               57
> > +#define R_88K_PLT_16H                58
> > +#define R_88K_PLT_16L                59
> > +#define R_88K_PLT_16         60
> > +#define R_88K_ABREL_32               64
> > +#define R_88K_ABREL_32UA     65
> > +#define R_88K_ABREL_16H              66
> > +#define R_88K_ABREL_16L              67
> > +#define R_88K_ABREL_16               68
> > +#define R_88K_GOT_ABREL_32   72
> > +#define R_88K_GOT_ABREL_32UA 73
> > +#define R_88K_GOT_ABREL_16H  74
> > +#define R_88K_GOT_ABREL_16L  75
> > +#define R_88K_GOT_ABREL_16   76
> > +#define R_88K_GOTP_ABREL_32  80
> > +#define R_88K_GOTP_ABREL_32UA        81
> > +#define R_88K_GOTP_ABREL_16H 82
> > +#define R_88K_GOTP_ABREL_16L 83
> > +#define R_88K_GOTP_ABREL_16  84
> > +#define R_88K_PLT_ABREL_32   88
> > +#define R_88K_PLT_ABREL_32UA 89
> > +#define R_88K_PLT_ABREL_16H  90
> > +#define R_88K_PLT_ABREL_16L  91
> > +#define R_88K_PLT_ABREL_16   92
> > +#define R_88K_SREL_32                96
> > +#define R_88K_SREL_32UA              97
> > +#define R_88K_SREL_16H               98
> > +#define R_88K_SREL_16L               99
> > +
> > +#define R_TYPE(X)    __CONCAT(R_88K_,X)
> >
> >  #endif       /* _M88K_RELOC_H_ */
> > Index: sys/arch/powerpc/include/reloc.h
> > ===================================================================
> > RCS file: /cvs/src/sys/arch/powerpc/include/reloc.h,v
> > retrieving revision 1.4
> > diff -u -p -r1.4 reloc.h
> > --- sys/arch/powerpc/include/reloc.h  23 Mar 2011 16:54:36 -0000      1.4
> > +++ sys/arch/powerpc/include/reloc.h  9 Jan 2022 22:03:28 -0000
> > @@ -38,54 +38,56 @@
> >   * Quite a number of relocation types
> >   */
> >  enum reloc_type {
> > -     RELOC_NONE,
> > -     RELOC_32,
> > -     RELOC_24,
> > -     RELOC_16,
> > -     RELOC_16_LO,
> > -     RELOC_16_HI,    /* RELOC_ADDIS = 5 */
> > -     RELOC_16_HA,
> > -     RELOC_14,
> > -     RELOC_14_TAKEN,
> > -     RELOC_14_NTAKEN,
> > -     RELOC_REL24,    /* RELOC_BRANCH = 10 */
> > -     RELOC_REL14,
> > -     RELOC_REL14_TAKEN,
> > -     RELOC_REL14_NTAKEN,
> > -     RELOC_GOT16,
> > -     RELOC_GOT16_LO,
> > -     RELOC_GOT16_HI,
> > -     RELOC_GOT16_HA,
> > -     RELOC_PLT24,
> > -     RELOC_COPY,
> > -     RELOC_GLOB_DAT,
> > -     RELOC_JMP_SLOT,
> > -     RELOC_RELATIVE,
> > -     RELOC_LOCAL24PC,
> > -     RELOC_U32,
> > -     RELOC_U16,
> > -     RELOC_REL32,
> > -     RELOC_PLT32,
> > -     RELOC_PLTREL32,
> > -     RELOC_PLT16_LO,
> > -     RELOC_PLT16_HI,
> > -     RELOC_PLT16_HA,
> > +     R_PPC_NONE,
> > +     R_PPC_32,
> > +     R_PPC_24,
> > +     R_PPC_16,
> > +     R_PPC_16_LO,
> > +     R_PPC_16_HI,    /* R_PPC_ADDIS = 5 */
> > +     R_PPC_16_HA,
> > +     R_PPC_14,
> > +     R_PPC_14_TAKEN,
> > +     R_PPC_14_NTAKEN,
> > +     R_PPC_REL24,    /* R_PPC_BRANCH = 10 */
> > +     R_PPC_REL14,
> > +     R_PPC_REL14_TAKEN,
> > +     R_PPC_REL14_NTAKEN,
> > +     R_PPC_GOT16,
> > +     R_PPC_GOT16_LO,
> > +     R_PPC_GOT16_HI,
> > +     R_PPC_GOT16_HA,
> > +     R_PPC_PLT24,
> > +     R_PPC_COPY,
> > +     R_PPC_GLOB_DAT,
> > +     R_PPC_JMP_SLOT,
> > +     R_PPC_RELATIVE,
> > +     R_PPC_LOCAL24PC,
> > +     R_PPC_U32,
> > +     R_PPC_U16,
> > +     R_PPC_REL32,
> > +     R_PPC_PLT32,
> > +     R_PPC_PLTREL32,
> > +     R_PPC_PLT16_LO,
> > +     R_PPC_PLT16_HI,
> > +     R_PPC_PLT16_HA,
> >      /* ABI defines this as 32nd entry, but we ignore this, at least for
> now */
> > -     RELOC_SDAREL,
> > +     R_PPC_SDAREL,
> >
> > -     RELOC_TLSC = 67,
> > -     RELOC_DTPMOD32,
> > -     RELOC_TPREL16,
> > -     RELOC_TPREL16_LO,
> > -     RELOC_TPREL16_HI,
> > -     RELOC_TPREL16_HA,
> > -     RELOC_TPREL32,
> > -     RELOC_DTPREL16,
> > -     RELOC_DTPREL16_LO,
> > -     RELOC_DTPREL16_HI,
> > -     RELOC_DTPREL16_HA,
> > -     RELOC_DTPREL32,
> > -     RELOC_MAX
> > +     R_PPC_TLSC = 67,
> > +     R_PPC_DTPMOD32,
> > +     R_PPC_TPREL16,
> > +     R_PPC_TPREL16_LO,
> > +     R_PPC_TPREL16_HI,
> > +     R_PPC_TPREL16_HA,
> > +     R_PPC_TPREL32,
> > +     R_PPC_DTPREL16,
> > +     R_PPC_DTPREL16_LO,
> > +     R_PPC_DTPREL16_HI,
> > +     R_PPC_DTPREL16_HA,
> > +     R_PPC_DTPREL32,
> > +     R_PPC_MAX
> >  };
> > +
> > +#define R_TYPE(X)    __CONCAT(R_PPC_,X)
> >
> >  #endif       /* _POWERPC_RELOC_H_ */
> > Index: sys/arch/sparc64/include/reloc.h
> > ===================================================================
> > RCS file: /cvs/src/sys/arch/sparc64/include/reloc.h,v
> > retrieving revision 1.5
> > diff -u -p -r1.5 reloc.h
> > --- sys/arch/sparc64/include/reloc.h  23 Mar 2011 16:54:37 -0000      1.5
> > +++ sys/arch/sparc64/include/reloc.h  9 Jan 2022 22:03:28 -0000
> > @@ -18,19 +18,21 @@
> >  #ifndef      _MACHINE_RELOC_H_
> >  #define      _MACHINE_RELOC_H_
> >
> > -#define RELOC_NONE           0
> > +#define R_SPARC_NONE         0
> >
> > -#define RELOC_COPY           19
> > -#define RELOC_GLOB_DAT               20
> > -#define RELOC_JMP_SLOT               21
> > -#define RELOC_RELATIVE               22
> > -#define RELOC_64             32
> > -#define RELOC_UA64           54
> > -#define RELOC_TLS_DTPMOD32   74
> > -#define RELOC_TLS_DTPMOD64   75
> > -#define RELOC_TLS_DTPOFF32   76
> > -#define RELOC_TLS_DTPOFF64   77
> > -#define RELOC_TLS_TPOFF32    78
> > -#define RELOC_TLS_TPOFF64    79
> > +#define R_SPARC_COPY         19
> > +#define R_SPARC_GLOB_DAT     20
> > +#define R_SPARC_JMP_SLOT     21
> > +#define R_SPARC_RELATIVE     22
> > +#define R_SPARC_64           32
> > +#define R_SPARC_UA64         54
> > +#define R_SPARC_TLS_DTPMOD32 74
> > +#define R_SPARC_TLS_DTPMOD64 75
> > +#define R_SPARC_TLS_DTPOFF32 76
> > +#define R_SPARC_TLS_DTPOFF64 77
> > +#define R_SPARC_TLS_TPOFF32  78
> > +#define R_SPARC_TLS_TPOFF64  79
> > +
> > +#define R_TYPE(X)    __CONCAT(R_SPARC_,X)
> >
> >  #endif       /* _MACHINE_RELOC_H_ */
> >
> >
>
>

Reply via email to