Remove trailing white spaces on gas
[deliverable/binutils-gdb.git] / gas / config / tc-m68hc11.h
CommitLineData
60bcf0fa 1/* tc-m68hc11.h -- Header file for tc-m68hc11.c.
ec2655a6 2 Copyright 1999, 2000, 2001, 2002, 2003, 2005, 2007
aef6203b 3 Free Software Foundation, Inc.
60bcf0fa
NC
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)
60bcf0fa
NC
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
4b4da160
NC
19 Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
20 02110-1301, USA. */
60bcf0fa
NC
21
22#define TC_M68HC11
23#define TC_M68HC12
24
986c6f4b 25struct fix;
986c6f4b 26
60bcf0fa
NC
27/* Define TC_M68K so that we can use the MRI mode. */
28#define TC_M68K
29
30#define TARGET_BYTES_BIG_ENDIAN 1
31
32/* Motorola assembler specs does not require '.' before pseudo-ops. */
33#define NO_PSEUDO_DOT 1
34
60bcf0fa
NC
35/* The target BFD architecture. */
36#define TARGET_ARCH (m68hc11_arch ())
ca43c854 37extern enum bfd_architecture m68hc11_arch (void);
60bcf0fa
NC
38
39#define TARGET_MACH (m68hc11_mach ())
ca43c854 40extern int m68hc11_mach (void);
60bcf0fa
NC
41
42#define TARGET_FORMAT (m68hc11_arch_format ())
ca43c854 43extern const char *m68hc11_arch_format (void);
60bcf0fa 44
60bcf0fa
NC
45#define LISTING_WORD_SIZE 1 /* A word is 1 bytes */
46#define LISTING_LHS_WIDTH 4 /* One word on the first line */
47#define LISTING_LHS_WIDTH_SECOND 4 /* One word on the second line */
48#define LISTING_LHS_CONT_LINES 4 /* And 4 lines max */
986c6f4b 49#define LISTING_HEADER m68hc11_listing_header ()
ca43c854 50extern const char *m68hc11_listing_header (void);
60bcf0fa 51
60bcf0fa
NC
52/* Permit temporary numeric labels. */
53#define LOCAL_LABELS_FB 1
54
60bcf0fa 55#define tc_init_after_args m68hc11_init_after_args
ca43c854 56extern void m68hc11_init_after_args (void);
60bcf0fa 57
60bcf0fa 58#define md_parse_long_option m68hc11_parse_long_option
ca43c854 59extern int m68hc11_parse_long_option (char *);
60bcf0fa 60
60bcf0fa
NC
61#define DWARF2_LINE_MIN_INSN_LENGTH 1
62
a7f10e7a
SC
63/* Use 32-bit address to represent a symbol address so that we can
64 represent them with their page number. */
65#define DWARF2_ADDR_SIZE(bfd) 4
66
60bcf0fa
NC
67/* We don't need to handle .word strangely. */
68#define WORKING_DOT_WORD
69
70#define md_number_to_chars number_to_chars_bigendian
71
72/* Relax table to translate short relative branches (-128..127) into
73 absolute branches. */
60bcf0fa 74#define TC_GENERIC_RELAX_TABLE md_relax_table
986c6f4b 75extern struct relax_type md_relax_table[];
60bcf0fa 76
c9e03e8b
SC
77/* GAS only handles relaxations for pc-relative data targeting addresses
78 in the same segment, so we have to handle the rest on our own. */
79#define md_relax_frag(SEG, FRAGP, STRETCH) \
80 ((FRAGP)->fr_symbol != NULL \
81 && S_GET_SEGMENT ((FRAGP)->fr_symbol) == (SEG) \
82 ? relax_frag (SEG, FRAGP, STRETCH) \
83 : m68hc11_relax_frag (SEG, FRAGP, STRETCH))
ca43c854 84extern long m68hc11_relax_frag (segT, fragS*, long);
c9e03e8b 85
a161fe53
AM
86#define TC_HANDLES_FX_DONE
87
88#define DIFF_EXPR_OK /* .-foo gets turned into PC relative relocs */
89
55cf6793 90/* Values passed to md_apply_fix don't include the symbol value. */
a161fe53
AM
91#define MD_APPLY_SYM_VALUE(FIX) 0
92
93/* No shared lib support, so we don't need to ensure externally
94 visible symbols can be overridden. */
95#define EXTERN_FORCE_RELOC 0
96
e371935f 97#define TC_FORCE_RELOCATION(fix) tc_m68hc11_force_relocation (fix)
ca43c854 98extern int tc_m68hc11_force_relocation (struct fix *);
e371935f
SC
99
100#define tc_fix_adjustable(X) tc_m68hc11_fix_adjustable(X)
ca43c854 101extern int tc_m68hc11_fix_adjustable (struct fix *);
e371935f 102
60bcf0fa 103#define md_operand(x)
60bcf0fa 104
eb086b59 105#define elf_tc_final_processing m68hc11_elf_final_processing
ca43c854 106extern void m68hc11_elf_final_processing (void);
eb086b59 107
986c6f4b 108#define tc_print_statistics(FILE) m68hc11_print_statistics (FILE)
ca43c854 109extern void m68hc11_print_statistics (FILE *);
This page took 0.522409 seconds and 4 git commands to generate.