* config/tc-ppc.c (ppc_setup_opcodes): Tidy. Add code to test
[deliverable/binutils-gdb.git] / gas / config / tc-bfin.h
CommitLineData
07c1b327 1/* tc-bfin.h - header file for tc-bfin.c
ec2655a6 2 Copyright 2005, 2007
07c1b327
CM
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
ec2655a6 9 the Free Software Foundation; either version 3, or (at your option)
07c1b327
CM
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_BFIN 1
23#define TC_ADI_BFIN 1
24
25#define TARGET_BYTES_BIG_ENDIAN 0
26
27#define TARGET_ARCH bfd_arch_bfin
28
29/*
30 * Define the target format macro here. The value for this should be
31 * "elf32-bfin", not "elf32-little-bfin". Since the BFD source file
32 * elf32-bfin.c defines TARGET_LITTLE_NAME to be "elf32-little-bfin",
33 * we must use this value, until this is corrected and BFD is rebuilt. */
34#ifdef OBJ_ELF
35#define TARGET_FORMAT "elf32-bfin"
36#endif
37
38#define LISTING_HEADER "BFIN GAS "
39
40#define WORKING_DOT_WORD
41
42extern void bfin_start_line_hook PARAMS ((void));
43extern bfd_boolean bfin_start_label PARAMS ((char *));
44
45#define md_start_line_hook() bfin_start_line_hook()
46#define md_number_to_chars number_to_chars_littleendian
47#define md_convert_frag(b,s,f) as_fatal ("bfin convert_frag\n");
48
49/* Allow for [, ], etc. */
50#define LEX_BR 6
51
52#define TC_EOL_IN_INSN(PTR) (bfin_eol_in_insn(PTR) ? 1 : 0)
53extern bfd_boolean bfin_eol_in_insn PARAMS ((char *));
54
aaceb81c
JZ
55/* Almost all instructions of Blackfin contain an = character. */
56#define TC_EQUAL_IN_INSN(C, NAME) 1
57
07c1b327
CM
58#define NOP_OPCODE 0x0000
59
60#define LOCAL_LABELS_FB 1
61
62#define DOUBLESLASH_LINE_COMMENTS
63
64#define TC_START_LABEL(ch ,ptr) (ch == ':' && bfin_start_label (ptr))
65#define tc_fix_adjustable(FIX) bfin_fix_adjustable (FIX)
66extern bfd_boolean bfin_fix_adjustable PARAMS ((struct fix *));
67
68#define TC_FORCE_RELOCATION(FIX) bfin_force_relocation (FIX)
69extern int bfin_force_relocation PARAMS ((struct fix *));
70
71/* Call md_pcrel_from_section(), not md_pcrel_from(). */
72#define MD_PCREL_FROM_SECTION(FIX, SEC) md_pcrel_from_section (FIX, SEC)
73extern long md_pcrel_from_section PARAMS ((struct fix *, segT));
74
beb6bfe8
BS
75/* Values passed to md_apply_fix3 don't include symbol values. */
76#define MD_APPLY_SYM_VALUE(FIX) 0
77
d31f0f6d
AM
78/* This target is buggy, and sets fix size too large. */
79#define TC_FX_SIZE_SLACK(FIX) 2
80
07c1b327 81/* end of tc-bfin.h */
This page took 0.103097 seconds and 4 git commands to generate.