spu.h revision 214571
1204490Sraj/* SPU ELF support for BFD.
2204490Sraj
3204490Sraj   Copyright 2006, 2007 Free Software Foundation, Inc.
4204490Sraj
5204490Sraj   This file is part of BFD, the Binary File Descriptor library.
6204490Sraj
7204765Sraj   This program is free software; you can redistribute it and/or modify
8204490Sraj   it under the terms of the GNU General Public License as published by
9204490Sraj   the Free Software Foundation; either version 2 of the License, or
10204490Sraj   (at your option) any later version.
11204490Sraj
12204490Sraj   This program is distributed in the hope that it will be useful,
13204490Sraj   but WITHOUT ANY WARRANTY; without even the implied warranty of
14208536Sraj   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15204490Sraj   GNU General Public License for more details.
16210101Smarcel
17204490Sraj   You should have received a copy of the GNU General Public License
18204490Sraj   along with this program; if not, write to the Free Software Foundation,
19208536Sraj   Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
20208536Sraj
21208536Sraj#ifndef _ELF_SPU_H
22208536Sraj#define _ELF_SPU_H
23204490Sraj
24204490Sraj#include "elf/reloc-macros.h"
25208536Sraj
26204490Sraj/* elf32-spu.c depends on these being consecutive. */
27204490SrajSTART_RELOC_NUMBERS (elf_spu_reloc_type)
28204490Sraj     RELOC_NUMBER (R_SPU_NONE,		 0)
29204490Sraj     RELOC_NUMBER (R_SPU_ADDR10,	 1)
30204490Sraj     RELOC_NUMBER (R_SPU_ADDR16,	 2)
31204490Sraj     RELOC_NUMBER (R_SPU_ADDR16_HI,	 3)
32204490Sraj     RELOC_NUMBER (R_SPU_ADDR16_LO,	 4)
33204490Sraj     RELOC_NUMBER (R_SPU_ADDR18,	 5)
34204490Sraj     RELOC_NUMBER (R_SPU_ADDR32,	 6)
35204490Sraj     RELOC_NUMBER (R_SPU_REL16,		 7)
36204490Sraj     RELOC_NUMBER (R_SPU_ADDR7,		 8)
37208536Sraj     RELOC_NUMBER (R_SPU_REL9,		 9)
38204490Sraj     RELOC_NUMBER (R_SPU_REL9I,		10)
39204490Sraj     RELOC_NUMBER (R_SPU_ADDR10I,	11)
40204490Sraj     RELOC_NUMBER (R_SPU_ADDR16I,	12)
41204490Sraj     RELOC_NUMBER (R_SPU_REL32,		13)
42204490Sraj     RELOC_NUMBER (R_SPU_ADDR16X,	14)
43204490Sraj     RELOC_NUMBER (R_SPU_PPU32,		15)
44208536Sraj     RELOC_NUMBER (R_SPU_PPU64,		16)
45204490SrajEND_RELOC_NUMBERS (R_SPU_max)
46204490Sraj
47204490Sraj/* Program header extensions */
48204490Sraj
49208536Sraj/* Mark a PT_LOAD segment as containing an overlay which should not
50204490Sraj   initially be loaded.  */
51204490Sraj#define PF_OVERLAY		(1 << 27)
52
53/* SPU Dynamic Object Information.  */
54#define PT_SPU_INFO             0x70000000
55
56/* SPU plugin information */
57#define SPU_PLUGIN_NAME         "SPUNAME"
58#define SPU_PTNOTE_SPUNAME	".note.spu_name"
59
60#endif /* _ELF_SPU_H */
61