1/* tc-vax.h -- Header file for tc-vax.c.
2   Copyright 1987, 1991, 1992, 1993, 1995, 1996, 1997, 2000, 2002, 2005, 2006
3   Free Software Foundation, Inc.
4
5   This file is part of GAS, the GNU Assembler.
6
7   GAS is free software; you can redistribute it and/or modify
8   it under the terms of the GNU General Public License as published by
9   the Free Software Foundation; either version 2, or (at your option)
10   any later version.
11
12   GAS is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU General Public License for more details.
16
17   You should have received a copy of the GNU General Public License
18   along with GAS; see the file COPYING.  If not, write to the Free
19   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
20   02110-1301, USA.  */
21
22#define TC_VAX 1
23
24#define TARGET_BYTES_BIG_ENDIAN 0
25
26#ifdef OBJ_AOUT
27#if defined(TE_NetBSD) || defined(TE_OpenBSD)
28#define TARGET_FORMAT "a.out-vax-netbsd"
29#endif
30#ifndef TARGET_FORMAT
31#define TARGET_FORMAT "a.out-vax-bsd"
32#endif
33#endif
34
35#ifdef OBJ_VMS
36#define TARGET_FORMAT "vms-vax"
37#endif
38
39#ifdef OBJ_ELF
40#define TARGET_FORMAT "elf32-vax"
41#endif
42
43#define TARGET_ARCH	bfd_arch_vax
44
45#define NO_RELOC	BFD_RELOC_NONE
46#define NOP_OPCODE	0x01
47
48#define md_operand(x)
49
50extern const struct relax_type md_relax_table[];
51#define TC_GENERIC_RELAX_TABLE md_relax_table
52
53/* Values passed to md_apply_fix don't include symbol values.  */
54#define MD_APPLY_SYM_VALUE(FIX) 0
55
56#define tc_fix_adjustable(FIX)					\
57	((FIX)->fx_r_type != BFD_RELOC_VTABLE_INHERIT		\
58	 && (FIX)->fx_r_type != BFD_RELOC_32_PLT_PCREL		\
59	 && (FIX)->fx_r_type != BFD_RELOC_32_GOT_PCREL		\
60	 && (FIX)->fx_r_type != BFD_RELOC_VTABLE_ENTRY		\
61	 && ((FIX)->fx_pcrel					\
62	     || ((FIX)->fx_subsy != NULL			\
63		 && (S_GET_SEGMENT ((FIX)->fx_subsy)		\
64		     == S_GET_SEGMENT ((FIX)->fx_addsy)))	\
65	     || S_IS_LOCAL ((FIX)->fx_addsy)))
66
67/*
68 * Local Variables:
69 * comment-column: 0
70 * fill-column: 131
71 * End:
72 */
73