From d15f4fd0b12ef03a1f401245027d527613a3a7a1 Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Sun, 31 May 1998 22:50:05 +0000 Subject: * mips.h (SHT_DVP_OVERLAY_TABLE,SHT_DVP_OVERLAY): New section types. (SHNAME_DVP_OVERLAY_{TABLE,STRTAB,PREFIX}): Section names. (Elf64_Dvp_Internal_Overlay,Elf64_Dvp_External_Overlay): New types. (bfd_dvp_elf64_swap_overlay_in,bfd_dvp_elf64_swap_overlay_out): Declare. --- include/elf/ChangeLog | 37 +++++++++++++++++++++++-- include/elf/mips.h | 77 +++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 108 insertions(+), 6 deletions(-) (limited to 'include') diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 0b8d969..ca9a507 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,8 +1,39 @@ start-sanitize-sky -Mon Dec 22 13:56:28 1997 Doug Evans +Sun May 31 15:46:56 1998 Doug Evans - * txvu.h: New file. - * common.h (EM_CYGNUS_TXVU): New macro. + * mips.h (SHT_DVP_OVERLAY_TABLE,SHT_DVP_OVERLAY): New section types. + (SHNAME_DVP_OVERLAY_{TABLE,STRTAB,PREFIX}): Section names. + (Elf64_Dvp_Internal_Overlay,Elf64_Dvp_External_Overlay): New types. + (bfd_dvp_elf64_swap_overlay_in,bfd_dvp_elf64_swap_overlay_out): + Declare. + +end-sanitize-sky +Wed May 6 09:45:30 1998 Gavin Koch + + * mips.h (EF_MIPS_MACH,E_MIPS_MACH_*): Added. + +Sat Apr 25 18:35:06 1998 Richard Henderson + + * alpha.h (STO_ALPHA_NOPV, STO_ALPHA_STD_GPLOAD): New. + +Wed Apr 15 15:42:45 1998 Richard Henderson + + * common.h (EM_SPARC64): Move and rename to EM_OLD_SPARCV9. + (EM_SPARCV9): New. This is the official ABI name and number. + +Sat Feb 28 17:04:41 1998 Richard Henderson + + * alpha.h (EF_ALPHA_32BIT, EF_ALPHA_CANRELAX): New. + +start-sanitize-sky +Tue Feb 10 12:08:23 1998 Doug Evans + + * mips.h (STO_DVP_{VIF,GIF): Renamed from STO_DVP_{PKE,GPUIF}. + +Wed Jan 28 09:42:48 1998 Doug Evans + + * mips.h (STO_DVP_{DMA,PKE,GPUIF,VU}): New macros. + (MIPS_STO_DVP_P): New macro. end-sanitize-sky Mon Dec 15 15:07:49 1997 Nick Clifton diff --git a/include/elf/mips.h b/include/elf/mips.h index 2c9faac..a4d1f57 100644 --- a/include/elf/mips.h +++ b/include/elf/mips.h @@ -56,6 +56,35 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* -mips4 code. */ #define E_MIPS_ARCH_4 0x30000000 + +/* Machine variant if we know it. This field was invented at Cygnus, + but it is hoped that other vendors will adopt it. If some standard + is developed, this code should be changed to follow it. */ + +#define EF_MIPS_MACH 0x00FF0000 + +/* Cygnus is choosing values between 80 and 9F; + 00 - 7F should be left for a future standard; + the rest are open. */ + +#define E_MIPS_MACH_3900 0x00810000 + +#define E_MIPS_MACH_4010 0x00820000 +#define E_MIPS_MACH_4100 0x00830000 +/* start-sanitize-vr4320 */ +#define E_MIPS_MACH_4320 0x00840000 +/* end-sanitize-vr4320 */ +#define E_MIPS_MACH_4650 0x00850000 +/* start-sanitize-tx49 */ +#define E_MIPS_MACH_4900 0x00860000 +/* end-sanitize-tx49 */ + +/* start-sanitize-vr5400 */ +#define E_MIPS_MACH_5400 0x00910000 +/* end-sanitize-vr5400 */ +/* start-sanitize-r5900 */ +#define E_MIPS_MACH_5900 0x00920000 +/* end-sanitize-r5900 */ /* Processor specific section indices. These sections do not actually exist. Symbols with a st_shndx field corresponding to one of these @@ -124,6 +153,17 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Events section. */ #define SHT_MIPS_EVENTS 0x70000021 +/* start-sanitize-sky */ +/* The VU overlay table. */ +#define SHT_DVP_OVERLAY_TABLE 0x7ffff420 +#define SHNAME_DVP_OVERLAY_TABLE ".DVP.ovlytab" +#define SHNAME_DVP_OVERLAY_STRTAB ".DVP.ovlystrtab" +/* A VU overlay. */ +#define SHT_DVP_OVERLAY 0x7ffff421 +/* Prefix of VU overlay sections. */ +#define SHNAME_DVP_OVERLAY_PREFIX ".DVP.overlay." +/* end-sanitize-sky */ + /* A section of type SHT_MIPS_LIBLIST contains an array of the following structure. The sh_link field is the section index of the string table. The sh_info field is the number of entries in the @@ -330,10 +370,13 @@ extern void bfd_mips_elf32_swap_reginfo_out /* start-sanitize-sky */ /* These values are used for the dvp. */ #define STO_DVP_DMA 0xe8 -#define STO_DVP_PKE 0xe9 -#define STO_DVP_GPUIF 0xea +#define STO_DVP_VIF 0xe9 +#define STO_DVP_GIF 0xea #define STO_DVP_VU 0xeb -#define MIPS_STO_DVP_P(sto) ((sto) >= STO_DVP_DMA && (sto) <= STO_DVP_VU) +/* Reserve a couple in case we need them. */ +#define STO_DVP_RES1 0xec +#define STO_DVP_RES2 0xed +#define STO_DVP_P(sto) ((sto) >= STO_DVP_DMA && (sto) <= STO_DVP_RES2) /* end-sanitize-sky */ /* This value is used for a mips16 .text symbol. */ @@ -514,5 +557,33 @@ extern void bfd_mips_elf64_swap_reginfo_in PARAMS ((bfd *, const Elf64_External_RegInfo *, Elf64_Internal_RegInfo *)); extern void bfd_mips_elf64_swap_reginfo_out PARAMS ((bfd *, const Elf64_Internal_RegInfo *, Elf64_External_RegInfo *)); + +/* start-sanitize-sky */ +/* The vu overlay table is an array of this. */ + +typedef struct +{ + /* Offset into overlay string table section. */ + char name[8]; + char lma[8]; + char vma[8]; +} Elf64_Dvp_External_Overlay; + +typedef struct +{ + bfd_vma name; + bfd_vma lma; + bfd_vma vma; +} Elf64_Dvp_Internal_Overlay; + +/* overlay swapping routines. */ +extern void bfd_dvp_elf64_swap_overlay_in + PARAMS ((bfd *, const Elf64_Dvp_External_Overlay *, + Elf64_Dvp_Internal_Overlay *)); +extern void bfd_dvp_elf64_swap_overlay_out + PARAMS ((bfd *, const Elf64_Dvp_Internal_Overlay *, + Elf64_Dvp_External_Overlay *)); + +/* end-sanitize-sky */ #endif /* _ELF_MIPS_H */ -- cgit v1.1