This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Blackfin patch: Add new FD-PIC relocs


I've ported the FRV implementation for FD-PIC ELF binaries to the Blackfin. This is the first patch, it adds new relocation types.

Committed.


Bernd
Index: ChangeLog
===================================================================
RCS file: /cvs/src/src/include/ChangeLog,v
retrieving revision 1.354
diff -c -p -r1.354 ChangeLog
*** ChangeLog	17 Feb 2006 14:36:25 -0000	1.354
--- ChangeLog	25 Mar 2006 18:21:16 -0000
***************
*** 1,3 ****
--- 1,13 ----
+ 2006-03-25  Bernd Schmidt  <bernd.schmidt@analog.com>
+ 
+ 	* elf/bfin.h (R_BFIN_GOT17M4, R_BFIN_GOTHI, R_BFIN_GOTLO,
+ 	R_BFIN_FUNCDESC, R_BFIN_FUNCDESC_GOT17M4,  R_BFIN_FUNCDESC_GOTHI,
+ 	R_BFIN_FUNCDESC_GOTLO, R_BFIN_FUNCDESC_VALUE,
+ 	R_BFIN_FUNCDESC_GOTOFF17M4, R_BFIN_FUNCDESC_GOTOFFHI,
+ 	R_BFIN_FUNCDESC_GOTOFFLO, R_BFIN_GOTOFF17M4, R_BFIN_GOTOFFHI,
+ 	R_BFIN_GOTOFFLO): New relocs.
+ 	(EF_BFIN_PIC, EF_BFIN_FDPIC, EF_BFIN_PIC_FLAGS): New macros.
+ 
  2006-02-17  Shrirang Khisti  <shrirangk@kpitcummins.com>
              Anil Paranjape   <anilp1@kpitcummins.com>
              Shilin Shakti    <shilins@kpitcummins.com>
Index: elf/bfin.h
===================================================================
RCS file: /cvs/src/src/include/elf/bfin.h,v
retrieving revision 1.1
diff -c -p -r1.1 bfin.h
*** elf/bfin.h	30 Sep 2005 15:12:52 -0000	1.1
--- elf/bfin.h	25 Mar 2006 18:21:16 -0000
*************** START_RELOC_NUMBERS (elf_bfin_reloc_type
*** 43,48 ****
--- 43,63 ----
    RELOC_NUMBER (R_byte2_data, 0x11)     /* 0x11, 0x00) .byte2 var = symbol */
    RELOC_NUMBER (R_byte4_data, 0x12)     /* 0x12, 0x00) .byte4 var = symbol and .var var=symbol */
    RELOC_NUMBER (R_pcrel11, 0x13)        /* 0x13, 0x00) lsetup part b */
+   RELOC_NUMBER (R_BFIN_GOT17M4, 0x14)
+   RELOC_NUMBER (R_BFIN_GOTHI, 0x15)
+   RELOC_NUMBER (R_BFIN_GOTLO, 0x16)
+   RELOC_NUMBER (R_BFIN_FUNCDESC, 0x17)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_GOT17M4, 0x18)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_GOTHI, 0x19)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_GOTLO, 0x1a)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_VALUE, 0x1b)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_GOTOFF17M4, 0x1c)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_GOTOFFHI, 0x1d)
+   RELOC_NUMBER (R_BFIN_FUNCDESC_GOTOFFLO, 0x1e)
+   RELOC_NUMBER (R_BFIN_GOTOFF17M4, 0x1f)
+   RELOC_NUMBER (R_BFIN_GOTOFFHI, 0x20)
+   RELOC_NUMBER (R_BFIN_GOTOFFLO, 0x21)
+ 
    RELOC_NUMBER (R_push, 0xE0)
    RELOC_NUMBER (R_const, 0xE1)
    RELOC_NUMBER (R_add, 0xE2)
*************** START_RELOC_NUMBERS (elf_bfin_reloc_type
*** 69,72 ****
--- 84,92 ----
    RELOC_NUMBER (R_BFIN_GNU_VTENTRY, 0x43) /* C++, gnu only */
  END_RELOC_NUMBERS (R_max)
  
+ /* Processor specific flags for the ELF header e_flags field.  */
+ #define EF_BFIN_PIC		0x00000001	/* -fpic */
+ #define EF_BFIN_FDPIC		0x00000002      /* -mfdpic */
+ 
+ #define	EF_BFIN_PIC_FLAGS	(EF_BFIN_PIC | EF_BFIN_FDPIC)
  #endif /* _ELF_BFIN_H */

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]