1b55d4692Sfgsch /* coff information for we32k 2b55d4692Sfgsch 3b55d4692Sfgsch Copyright 2001 Free Software Foundation, Inc. 4b55d4692Sfgsch 5b55d4692Sfgsch This program is free software; you can redistribute it and/or modify 6b55d4692Sfgsch it under the terms of the GNU General Public License as published by 7b55d4692Sfgsch the Free Software Foundation; either version 2 of the License, or 8b55d4692Sfgsch (at your option) any later version. 9b55d4692Sfgsch 10b55d4692Sfgsch This program is distributed in the hope that it will be useful, 11b55d4692Sfgsch but WITHOUT ANY WARRANTY; without even the implied warranty of 12b55d4692Sfgsch MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13b55d4692Sfgsch GNU General Public License for more details. 14b55d4692Sfgsch 15b55d4692Sfgsch You should have received a copy of the GNU General Public License 16b55d4692Sfgsch along with this program; if not, write to the Free Software 17b55d4692Sfgsch Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 18*c074d1c9Sdrahn #define L_LNNO_SIZE 2 19*c074d1c9Sdrahn #include "coff/external.h" 202159047fSniklas 212159047fSniklas /* Bits for f_flags: 22*c074d1c9Sdrahn F_RELFLG relocation info stripped from file 23*c074d1c9Sdrahn F_EXEC file is executable (no unresolved external references) 24*c074d1c9Sdrahn F_LNNO line numbers stripped from file 25*c074d1c9Sdrahn F_LSYMS local symbols stripped from file 26*c074d1c9Sdrahn F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax). */ 272159047fSniklas 282159047fSniklas #define F_RELFLG (0x0001) 292159047fSniklas #define F_EXEC (0x0002) 302159047fSniklas #define F_LNNO (0x0004) 312159047fSniklas #define F_LSYMS (0x0008) 322159047fSniklas #define F_BM32B (0020000) 332159047fSniklas #define F_BM32MAU (0040000) 342159047fSniklas 352159047fSniklas #define WE32KMAGIC 0x170 /* we32k sans transfer vector */ 362159047fSniklas #define FBOMAGIC 0x170 /* we32k sans transfer vector */ 372159047fSniklas #define MTVMAGIC 0x171 /* we32k with transfer vector */ 382159047fSniklas #define RBOMAGIC 0x172 /* reserved */ 392159047fSniklas #define WE32KBADMAG(x) ( ((x).f_magic != WE32KMAGIC) \ 402159047fSniklas && ((x).f_magic != FBOMAGIC) \ 412159047fSniklas && ((x).f_magic != RBOMAGIC) \ 422159047fSniklas && ((x).f_magic != MTVMAGIC)) 432159047fSniklas 44*c074d1c9Sdrahn /* More names of "special" sections. */ 452159047fSniklas #define _TV ".tv" 462159047fSniklas #define _INIT ".init" 472159047fSniklas #define _FINI ".fini" 482159047fSniklas 492159047fSniklas /********************** RELOCATION DIRECTIVES **********************/ 502159047fSniklas 51*c074d1c9Sdrahn struct external_reloc 52*c074d1c9Sdrahn { 532159047fSniklas char r_vaddr[4]; 542159047fSniklas char r_symndx[4]; 552159047fSniklas char r_type[2]; 562159047fSniklas }; 572159047fSniklas 582159047fSniklas #define RELOC struct external_reloc 594361b62eSniklas #define RELSZ 10 602159047fSniklas 61