source: trunk/binutils/gas/config/tc-i860.h@ 2562

Last change on this file since 2562 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.5 KB
Line 
1/* tc-i860.h -- Header file for the i860.
2 Copyright 1991, 1992, 1995, 1998, 2000, 2001, 2002
3 Free Software Foundation, Inc.
4
5 Brought back from the dead and completely reworked
6 by Jason Eckhardt <jle@cygnus.com>.
7
8 This file is part of GAS, the GNU Assembler.
9
10 GAS is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
12 the Free Software Foundation; either version 2, or (at your option)
13 any later version.
14
15 GAS is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
19
20 You should have received a copy of the GNU General Public License along
21 with GAS; see the file COPYING. If not, write to the Free Software
22 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
23
24#ifndef TC_I860
25#define TC_I860 1
26
27#ifndef BFD_ASSEMBLER
28#error i860 support requires BFD_ASSEMBLER
29#endif
30
31enum i860_fix_info
32{
33 OP_NONE = 0x00000,
34 OP_IMM_U5 = 0x00001,
35 OP_IMM_S16 = 0x00002,
36 OP_IMM_U16 = 0x00004,
37 OP_IMM_SPLIT16 = 0x00008,
38 OP_IMM_BR26 = 0x00010,
39 OP_IMM_BR16 = 0x00020,
40 OP_ENCODE1 = 0x00040,
41 OP_ENCODE2 = 0x00080,
42 OP_ENCODE3 = 0x00100,
43 OP_SEL_HA = 0x00200,
44 OP_SEL_H = 0x00400,
45 OP_SEL_L = 0x00800,
46 OP_SEL_GOT = 0x01000,
47 OP_SEL_GOTOFF = 0x02000,
48 OP_SEL_PLT = 0x04000,
49 OP_ALIGN2 = 0x08000,
50 OP_ALIGN4 = 0x10000,
51 OP_ALIGN8 = 0x20000,
52 OP_ALIGN16 = 0x40000
53};
54
55/* Set the endianness we are using. Default to little endian. */
56#ifndef TARGET_BYTES_BIG_ENDIAN
57#define TARGET_BYTES_BIG_ENDIAN 0
58#endif
59
60/* Whether or not the target is big endian. */
61extern int target_big_endian;
62
63/* BFD target architecture. */
64#define TARGET_ARCH bfd_arch_i860
65
66/* The target BFD format. */
67#ifdef OBJ_ELF
68#define TARGET_FORMAT (target_big_endian ? "elf32-i860" : "elf32-i860-little")
69#else
70#error i860 GAS currently supports only the ELF object format
71#endif
72
73#define WORKING_DOT_WORD
74#define DIFF_EXPR_OK
75
76/* Permit temporary numeric labels. */
77#define LOCAL_LABELS_FB 1
78#define LISTING_HEADER "GAS for i860"
79
80#define md_convert_frag(b,s,f) as_fatal (_("i860_convert_frag\n"));
81
82/* Values passed to md_apply_fix3 don't include the symbol value. */
83#define MD_APPLY_SYM_VALUE(FIX) 0
84
85/* No shared lib support, so we don't need to ensure externally
86 visible symbols can be overridden. */
87#define EXTERN_FORCE_RELOC 0
88
89#endif /* TC_I860 */
Note: See TracBrowser for help on using the repository browser.