Update year range in copyright notice of all files.
[deliverable/binutils-gdb.git] / gas / config / tc-i860.h
CommitLineData
305d537e 1/* tc-i860.h -- Header file for the i860.
2571583a 2 Copyright (C) 1991-2017 Free Software Foundation, Inc.
252b5132 3
305d537e
JE
4 Brought back from the dead and completely reworked
5 by Jason Eckhardt <jle@cygnus.com>.
4a4f25cf 6
252b5132
RH
7 This file is part of GAS, the GNU Assembler.
8
9 GAS is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
ec2655a6 11 the Free Software Foundation; either version 3, or (at your option)
252b5132
RH
12 any later version.
13
14 GAS is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18
19 You should have received a copy of the GNU General Public License along
20 with GAS; see the file COPYING. If not, write to the Free Software
4b4da160 21 Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
252b5132 22
305d537e 23#ifndef TC_I860
252b5132
RH
24#define TC_I860 1
25
4a4f25cf 26enum i860_fix_info
305d537e
JE
27{
28 OP_NONE = 0x00000,
29 OP_IMM_U5 = 0x00001,
30 OP_IMM_S16 = 0x00002,
31 OP_IMM_U16 = 0x00004,
32 OP_IMM_SPLIT16 = 0x00008,
33 OP_IMM_BR26 = 0x00010,
34 OP_IMM_BR16 = 0x00020,
35 OP_ENCODE1 = 0x00040,
36 OP_ENCODE2 = 0x00080,
37 OP_ENCODE3 = 0x00100,
38 OP_SEL_HA = 0x00200,
39 OP_SEL_H = 0x00400,
40 OP_SEL_L = 0x00800,
41 OP_SEL_GOT = 0x01000,
42 OP_SEL_GOTOFF = 0x02000,
43 OP_SEL_PLT = 0x04000,
44 OP_ALIGN2 = 0x08000,
45 OP_ALIGN4 = 0x10000,
46 OP_ALIGN8 = 0x20000,
47 OP_ALIGN16 = 0x40000
48};
49
305d537e
JE
50/* Set the endianness we are using. Default to little endian. */
51#ifndef TARGET_BYTES_BIG_ENDIAN
52#define TARGET_BYTES_BIG_ENDIAN 0
53#endif
54
55/* Whether or not the target is big endian. */
56extern int target_big_endian;
57
58/* BFD target architecture. */
59#define TARGET_ARCH bfd_arch_i860
60
61/* The target BFD format. */
62#ifdef OBJ_ELF
63#define TARGET_FORMAT (target_big_endian ? "elf32-i860" : "elf32-i860-little")
64#else
65#error i860 GAS currently supports only the ELF object format
66#endif
252b5132
RH
67
68#define WORKING_DOT_WORD
305d537e 69#define DIFF_EXPR_OK
252b5132 70
305d537e
JE
71/* Permit temporary numeric labels. */
72#define LOCAL_LABELS_FB 1
73#define LISTING_HEADER "GAS for i860"
252b5132 74
b2f58c0c 75#define md_convert_frag(b,s,f) abort ()
252b5132 76
55cf6793 77/* Values passed to md_apply_fix don't include the symbol value. */
a161fe53
AM
78#define MD_APPLY_SYM_VALUE(FIX) 0
79
80/* No shared lib support, so we don't need to ensure externally
81 visible symbols can be overridden. */
82#define EXTERN_FORCE_RELOC 0
83
14d3f364
JE
84/* Bits for post-processing of a user defined label to check if
85 it has a double colon (Intel syntax only). */
86extern void i860_check_label (symbolS *labelsym);
87#define tc_check_label(ls) i860_check_label (ls)
88
e15f6d30
JE
89/* Bits for filling in rs_align_code fragments with NOPs. */
90extern void i860_handle_align (struct frag *);
91#define HANDLE_ALIGN(fragp) i860_handle_align (fragp)
92
93#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4 + 4)
94
305d537e 95#endif /* TC_I860 */
This page took 0.98685 seconds and 4 git commands to generate.