source: branches/libc-0.6/src/binutils/include/coff/mipspe.h

Last change on this file was 610, checked in by bird, 22 years ago

This commit was generated by cvs2svn to compensate for changes in r609,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 2.2 KB
Line 
1/* coff information for Windows CE with MIPS VR4111
2
3 Copyright 2001 Free Software Foundation, Inc.
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
18
19#define L_LNNO_SIZE 2
20#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
21#include "coff/external.h"
22
23#define MIPS_ARCH_MAGIC_WINCE 0x0166 /* Windows CE - little endian */
24#define MIPS_PE_MAGIC 0x010b
25
26#define MIPSBADMAG(x) ((x).f_magic != MIPS_ARCH_MAGIC_WINCE)
27
28/* define some NT default values */
29/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
30#define NT_SECTION_ALIGNMENT 0x1000
31#define NT_FILE_ALIGNMENT 0x200
32#define NT_DEF_RESERVE 0x100000
33#define NT_DEF_COMMIT 0x1000
34
35/********************** RELOCATION DIRECTIVES **********************/
36
37/* The external reloc has an offset field, because some of the reloc
38 types on the h8 don't have room in the instruction for the entire
39 offset - eg the strange jump and high page addressing modes. */
40
41struct external_reloc
42{
43 char r_vaddr[4];
44 char r_symndx[4];
45 char r_type[2];
46};
47
48#define RELOC struct external_reloc
49#define RELSZ 10
50
51/* MIPS PE relocation types. */
52
53#define MIPS_R_ABSOLUTE 0 /* ignored */
54#define MIPS_R_REFHALF 1
55#define MIPS_R_REFWORD 2
56#define MIPS_R_JMPADDR 3
57#define MIPS_R_REFHI 4 /* PAIR follows */
58#define MIPS_R_REFLO 5
59#define MIPS_R_GPREL 6
60#define MIPS_R_LITERAL 7 /* same as GPREL */
61#define MIPS_R_SECTION 10
62#define MIPS_R_SECREL 11
63#define MIPS_R_SECRELLO 12
64#define MIPS_R_SECRELHI 13 /* PAIR follows */
65#define MIPS_R_RVA 34 /* 0x22 */
66#define MIPS_R_PAIR 37 /* 0x25 - symndx is really a signed 16-bit addend */
Note: See TracBrowser for help on using the repository browser.