From ceaf50a2f96d755dc9287e347548d8228cb29619 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 22 Jun 2009 00:52:20 +0000 Subject: [PATCH] include/elf/ * ppc.h (R_PPC_RELAX*): Define as enum. bfd/ * elf32-ppc.c (ppc_elf_check_relocs): Handle R_PPC_RELAX* in switch. * elf32-v850.c (v850_elf_relocate_section): Warning fix. --- bfd/ChangeLog | 5 +++++ bfd/elf32-ppc.c | 4 ++++ bfd/elf32-v850.c | 2 +- include/elf/ChangeLog | 4 ++++ include/elf/ppc.h | 10 ++++++---- 5 files changed, 20 insertions(+), 5 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 52f3ca57a23..11bfbfcc1d2 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2009-06-22 Alan Modra + + * elf32-ppc.c (ppc_elf_check_relocs): Handle R_PPC_RELAX* in switch. + * elf32-v850.c (v850_elf_relocate_section): Warning fix. + 2009-06-22 Alan Modra * elf64-ppc.c (ppc64_elf_edit_opd): Avoid gcc warning. diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c index 7aafbebf843..0a27ffd32e4 100644 --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -3643,6 +3643,10 @@ ppc_elf_check_relocs (bfd *abfd, case R_PPC_EMB_MRKREF: case R_PPC_NONE: case R_PPC_max: + case R_PPC_RELAX32: + case R_PPC_RELAX32PC: + case R_PPC_RELAX32_PLT: + case R_PPC_RELAX32PC_PLT: break; /* These should only appear in dynamic objects. */ diff --git a/bfd/elf32-v850.c b/bfd/elf32-v850.c index 5ecfa693f07..fa9dedf4456 100644 --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1680,7 +1680,7 @@ v850_elf_relocate_section (bfd *output_bfd, name = bfd_section_name (input_bfd, sec); } - switch (r) + switch ((int) r) { case bfd_reloc_overflow: if (! ((*info->callbacks->reloc_overflow) diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index a8821a2e19b..99805f1c723 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,7 @@ +2009-06-22 Alan Modra + + * ppc.h (R_PPC_RELAX*): Define as enum. + 2009-06-11 Anthony Green * moxie.h (R_MOXIE_PCREL10): New. diff --git a/include/elf/ppc.h b/include/elf/ppc.h index 06df6303e44..8f4ed9e18bc 100644 --- a/include/elf/ppc.h +++ b/include/elf/ppc.h @@ -122,11 +122,13 @@ START_RELOC_NUMBERS (elf_ppc_reloc_type) RELOC_NUMBER (R_PPC_EMB_BIT_FLD, 115) RELOC_NUMBER (R_PPC_EMB_RELSDA, 116) +#ifndef RELOC_MACROS_GEN_FUNC /* Fake relocations for branch stubs, only used internally by ld. */ -#define R_PPC_RELAX32 245 -#define R_PPC_RELAX32PC 246 -#define R_PPC_RELAX32_PLT 247 -#define R_PPC_RELAX32PC_PLT 248 + RELOC_NUMBER (R_PPC_RELAX32, 245) + RELOC_NUMBER (R_PPC_RELAX32PC, 246) + RELOC_NUMBER (R_PPC_RELAX32_PLT, 247) + RELOC_NUMBER (R_PPC_RELAX32PC_PLT, 248) +#endif /* These are GNU extensions used in PIC code sequences. */ RELOC_NUMBER (R_PPC_REL16, 249) -- 2.30.2