Subversion Repositories Kolibri OS

Rev

Rev 5191 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5191 Rev 6324
1
/* coff information for WDC 65816
1
/* coff information for WDC 65816
2
   
2
   
3
   Copyright 2001, 2010 Free Software Foundation, Inc.
3
   Copyright (C) 2001-2015 Free Software Foundation, Inc.
4
 
4
 
5
   This program is free software; you can redistribute it and/or modify
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
6
   it under the terms of the GNU General Public License as published by
7
   the Free Software Foundation; either version 3 of the License, or
7
   the Free Software Foundation; either version 3 of the License, or
8
   (at your option) any later version.
8
   (at your option) any later version.
9
   
9
   
10
   This program is distributed in the hope that it will be useful,
10
   This program is distributed in the hope that it will be useful,
11
   but WITHOUT ANY WARRANTY; without even the implied warranty of
11
   but WITHOUT ANY WARRANTY; without even the implied warranty of
12
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
   GNU General Public License for more details.
13
   GNU General Public License for more details.
14
   
14
   
15
   You should have received a copy of the GNU General Public License
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
16
   along with this program; if not, write to the Free Software
17
   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
17
   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
18
   MA 02110-1301, USA.  */
18
   MA 02110-1301, USA.  */
19
 
19
 
20
#define L_LNNO_SIZE 4
20
#define L_LNNO_SIZE 4
21
#include "coff/external.h"
21
#include "coff/external.h"
22
 
22
 
23
#define	W65MAGIC	0x6500
23
#define	W65MAGIC	0x6500
24
 
24
 
25
#define W65BADMAG(x) (((x).f_magic != W65MAGIC))
25
#define W65BADMAG(x) (((x).f_magic != W65MAGIC))
26
 
26
 
27
/********************** RELOCATION DIRECTIVES **********************/
27
/********************** RELOCATION DIRECTIVES **********************/
28
 
28
 
29
/* The external reloc has an offset field, because some of the reloc
29
/* The external reloc has an offset field, because some of the reloc
30
   types on the w65 don't have room in the instruction for the entire
30
   types on the w65 don't have room in the instruction for the entire
31
   offset - eg the strange jump and high page addressing modes */
31
   offset - eg the strange jump and high page addressing modes */
32
 
32
 
33
struct external_reloc
33
struct external_reloc
34
{
34
{
35
  char r_vaddr[4];
35
  char r_vaddr[4];
36
  char r_symndx[4];
36
  char r_symndx[4];
37
  char r_offset[4];
37
  char r_offset[4];
38
  char r_type[2];
38
  char r_type[2];
39
  char r_stuff[2];
39
  char r_stuff[2];
40
};
40
};
41
 
41
 
42
#define RELOC struct external_reloc
42
#define RELOC struct external_reloc
43
#define RELSZ 16
43
#define RELSZ 16