[PATCH] cr16-elf: position independent code (PIC) support]
M R Swami Reddy
MR.Swami.Reddy@nsc.com
Thu Nov 27 07:12:00 GMT 2008
PING..
M R Swami Reddy wrote:
> Hello Nick,
>
> Updated patch as per comments. Could you please review the updated patch.
>
> ChangeLog:
> gas/ChangeLog:
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * doc/c-cr16.texi (cr16-operand specifiers): Add got/GOT and
> cgot/cGOT.
> ===
> include/elf/ChangeLog
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * cr16.h (R_CR16_GOT_REGREL20, R_CR16_GOTC_REGREL20 and
> R_CR16_GLOB_DAT): New relocations.
> ====
>
> bfd/ChangeLog:
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
> * elf32-cr16.c: Comment typo and style fix.
> ===
>
> Test results:
>
> > make check-gas
> =====
> === gas Summary ===
>
> # of expected passes 135
> ../as-new 2.19.50.20081124
> ====
>
> > make check-binutils
> ==
> === binutils Summary ===
>
> # of expected passes 54
> # of untested testcases 6
> # of unsupported tests 1
> ====
>
> Thanks
> Swami
>
> -------- Original Message --------
> Subject: [Fwd: [PATCH] cr16-elf: position independent code (PIC) support]
> Date: Tue, 25 Nov 2008 15:23:51 +0530
> From: M R Swami Reddy <MR.Swami.Reddy@nsc.com>
> To: binutils@sources.redhat.com <binutils@sources.redhat.com>
>
> Hello,
>
> After the patch, "gas" and "binutils" test results are:
>
> > make check-gas
> =====
> === gas Summary ===
>
> # of expected passes 135
> ../as-new 2.19.50.20081124
> ====
>
> > make check-binutils
> ==
> === binutils Summary ===
>
> # of expected passes 54
> # of untested testcases 6
> # of unsupported tests 1
> ====
>
> Thanks
> Swami
> -------- Original Message --------
> Subject: [PATCH] cr16-elf: position independent code (PIC) support
> Date: Tue, 25 Nov 2008 13:55:53 +0530
> From: M R Swami Reddy <MR.Swami.Reddy@nsc.com>
> To: binutils@sourceware.org, Nick Clifton <nickc@redhat.com>
>
> Hello,
> Patch to add PIC support in binutils tools for cr16 target.
> Could you please review the patch.
>
> bfd/ChangeLog:
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * Add PIC support for CR16 target.
> * elf32-cr16.c (R_CR16_GOT_REGREL20, R_CR16_GOTC_REGREL20 and
> R_CR16_GLOB_DAT): New macros
> (cr16_elf_howto_table): Add entries for for R_CR16_GOT_REGREL20,
> R_CR16_GOTC_REGREL20 and R_CR16_GLOB_DAT.
> (cr16_reloc_map): Ditto
> (_bfd_cr16_elf_create_got_section): New function to create
> GOT section.
> (_bfd_cr16_elf_create_dynamic_sections): New function to
> create dynamic
> section.
> (_bfd_cr16_elf_adjust_dynamic_symbol): New function to adjust
> symbol
> defined by dynamic object.
> (_bfd_cr16_elf_size_dynamic_sections): New function to find
> the size
> of dynamic section.
> (_bfd_cr16_elf_finish_dynamic_symbol): New function to handle
> dynamic
> symbols.
> (_bfd_cr16_elf_finish_dynamic_symbol): New function to handle
> dynamic
> sections.
> (bfd_cr16_elf32_create_embedded_relocs): New function to create
> embedded relocs in .emreloc section in memory for .data.rel
> section.
> (_bfd_cr16_elf_reloc_type_class): New function for classify
> reloc types.
> (cr16_elf_check_relocs): New function for checking reloc
> types in
> first phase.
> (cr16_elf_final_link_relocate): Update for handling the new
> reloc
> types R_CR16_GOT_REGREL20 and R_CR16_GOTC_REGREL20.
> (elf32_cr16_relax_section): Update relax implementation.
> * reloc.c (bfd_reloc_code_type): Add entries for
> R_CR16_GOT_REGREL20,
> R_CR16_GOTC_REGREL20 and R_CR16_GLOB_DAT.
> * bfd-in.h (bfd_boolean
> bfd_cr16_elf32_create_embedded_relocs): Declared
> * libbfd.h, bfd-in2.h: Regenerate.
> ===
> gas/ChangeLog:
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * config/tc-cr16.h (GLOBAL_OFFSET_TABLE_NAME): Defined
> * config/tc-cr16.c (md_pseudo_table): Add "4byte" directive to
> md_pseudo_table and accept @c prefix, same as long directive.
> (cr16_cons_fix_new): Initialize rtype to BFD_RELOC_UNUSED.
> config/tc-cr16.c (tc_gen_reloc): Declare a variable of type
> bfd_reloc_code_real_type and set it for GOT related relocations.
> (md_undefined_symbol): Defined
> (process_label_constant): Added checks for GOT/got and cGOT/cGOT
> prefixes with constant label and set the appropriate
> relocation type.
> * NEWS: Add cr16 target PIC support.
> ======
> gas/testsuite/ChangeLog:
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * gas/cr16/pic1.s: New.
> * gas/cr16/pic1.d: New.
> * gas/cr16/pic2.s: New.
> * gas/cr16/pic2.d: New.
> * gas/cr16/pic.exp: Run pic tests.
> ====
> include/elf/ChangeLog:
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * cr16.h (R_CR16_GOT_REGREL20, R_CR16_GOTC_REGREL20 and
> R_CR16_GLOB_DAT): New relocations.
> ===
> opcodes/ChangeLog:
>
> * cr16-dis.c (match_opcode): Truncate mcode to 32 bit and
> adjusted the mask for 32-bit branch instruction.
> ===
>
> ld/ChanegeLog:
> ==
> 2008-11-25 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
>
> * emultempl/cr16elf.em (cr16_after_open): New function to handle
> CR16 ELF embedded reloc creation (ld --embedded-relocs).
> (check_sections): New function.
> (LDEMUL_AFTER_OPEN): Define.
> * emulparams/elf32cr16.sh (EMBEDDED): Define.
> * NEWS: Add comment.
> ======
>
> NOTE: The above patch includes a few bug fixes also.
>
> Thanks
> Swami
>
>
>
More information about the Binutils
mailing list