* Makefile.in (@COMMON_MAKEFILE_FRAG@): Use
[deliverable/binutils-gdb.git] / gas / config / tc-sparc.h
CommitLineData
fecd2382 1/* tc-sparc.h - Macros and type defines for the sparc.
2d97273c 2 Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
355afbcd 3
a39116f1 4 This file is part of GAS, the GNU Assembler.
355afbcd 5
a39116f1
RP
6 GAS is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as
8 published by the Free Software Foundation; either version 2,
9 or (at your option) any later version.
355afbcd 10
a39116f1
RP
11 GAS is distributed in the hope that it will be useful, but
12 WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
14 the GNU General Public License for more details.
355afbcd 15
a39116f1
RP
16 You should have received a copy of the GNU General Public
17 License along with GAS; see the file COPYING. If not, write
a2a5a4fa 18 to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
fecd2382 19
fecd2382
RP
20#define TC_SPARC 1
21
a2a5a4fa 22#define LOCAL_LABELS_FB 1
a39116f1 23
25c09bbf
KR
24#define TARGET_ARCH bfd_arch_sparc
25#ifdef OBJ_AOUT
a2a5a4fa
KR
26#ifdef TE_NetBSD
27#define TARGET_FORMAT "a.out-sparc-netbsd"
28#else
25c09bbf
KR
29#define TARGET_FORMAT "a.out-sunos-big"
30#endif
a2a5a4fa 31#endif
25c09bbf
KR
32#ifdef OBJ_BOUT
33#define TARGET_FORMAT "b.out.big"
34#endif
35#ifdef OBJ_ELF
36#ifndef sparcv9
37#define TARGET_FORMAT "elf32-sparc"
38#else /* sparcv9 */
39#define TARGET_FORMAT "elf64-sparc" /* v9 */
40#define ENV64 /* v9 */
41#endif /* sparcv9 */
a2a5a4fa 42#define LOCAL_LABEL(name) (((name)[0] == '.' && (name)[1] == 'L') || !strncmp ((name), "_.L_", 4))
25c09bbf 43#endif
6868afe6 44#define WORKING_DOT_WORD
25c09bbf 45
25c09bbf 46#define md_convert_frag(b,s,f) {as_fatal ("sparc convert_frag\n");}
6868afe6
KR
47#define md_create_long_jump(p,f,t,fr,s) as_fatal("sparc_create_long_jump")
48#define md_create_short_jump(p,f,t,fr,s) as_fatal("sparc_create_short_jump")
49#define md_estimate_size_before_relax(f,s) \
50 (as_fatal("estimate_size_before_relax called"),1)
355afbcd 51void tc_aout_pre_write_hook ();
2d97273c 52
a39116f1 53#define LISTING_HEADER "SPARC GAS "
8b228fe9 54
a2a5a4fa
KR
55/* I know that "call 0" fails in sparc-coff if this doesn't return 1. I
56 don't know about other relocation types, or other formats, yet. */
57#ifdef OBJ_COFF
58#define TC_FORCE_RELOCATION(FIXP) \
59 ((FIXP)->fx_r_type == BFD_RELOC_32_PCREL_S2 \
60 && ((FIXP)->fx_addsy == 0 \
61 || S_GET_SEGMENT ((FIXP)->fx_addsy) == absolute_section))
62#define RELOC_REQUIRES_SYMBOL
63#endif
64
65#define TC_HANDLES_FX_DONE
66
67#ifdef OBJ_ELF
68/* Keep relocations against global symbols. Don't turn them into
69 relocations against sections. This is required for the dynamic
70 linker to operate properly. */
71#define tc_fix_adjustable(FIX) (! S_IS_EXTERN ((FIX)->fx_addsy))
72#endif
73
74#define md_operand(x)
75
8b228fe9 76/* end of tc-sparc.h */
This page took 0.200515 seconds and 4 git commands to generate.