mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 03:54:41 +08:00
641cf0e2c0
First of all make the declarations globally visible, such that producer and consumer actually share them. For the latter two simply add const (as PPC already had it,), while for the former achieve the effect by converting to an array: There's no need for the extra level of indirection.
88 lines
2.6 KiB
C
88 lines
2.6 KiB
C
/* tc.h - target cpu dependent
|
|
|
|
Copyright (C) 1987-2024 Free Software Foundation, Inc.
|
|
|
|
This file is part of GAS, the GNU Assembler.
|
|
|
|
GAS is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 3, or (at your option)
|
|
any later version.
|
|
|
|
GAS is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with GAS; see the file COPYING. If not, write to
|
|
the Free Software Foundation, 51 Franklin Street - Fifth Floor,
|
|
Boston, MA 02110-1301, USA. */
|
|
|
|
/* In theory (mine, at least!) the machine dependent part of the assembler
|
|
should only have to include one file. This one. -- JF */
|
|
|
|
extern const char md_shortopts[];
|
|
extern const struct option md_longopts[];
|
|
extern const size_t md_longopts_size;
|
|
|
|
extern const pseudo_typeS md_pseudo_table[];
|
|
|
|
const char * md_atof (int, char *, int *);
|
|
int md_parse_option (int, const char *);
|
|
void md_show_usage (FILE *);
|
|
void md_assemble (char *);
|
|
void md_begin (void);
|
|
#ifndef md_number_to_chars
|
|
void md_number_to_chars (char *, valueT, int);
|
|
#endif
|
|
void md_apply_fix (fixS *, valueT *, segT);
|
|
|
|
#ifndef WORKING_DOT_WORD
|
|
extern int md_short_jump_size;
|
|
extern int md_long_jump_size;
|
|
#endif
|
|
|
|
#ifdef TE_PE
|
|
/* The name of an external symbol which is
|
|
used to make weak PE symbol names unique. */
|
|
extern const char * an_external_name;
|
|
#endif
|
|
|
|
#ifndef md_create_long_jump
|
|
void md_create_long_jump (char *, addressT, addressT, fragS *, symbolS *);
|
|
#endif
|
|
#ifndef md_create_short_jump
|
|
void md_create_short_jump (char *, addressT, addressT, fragS *, symbolS *);
|
|
#endif
|
|
#ifndef md_pcrel_from
|
|
long md_pcrel_from (fixS *);
|
|
#endif
|
|
#ifndef md_pcrel_from_section
|
|
long md_pcrel_from_section (fixS *, segT);
|
|
#endif
|
|
#ifndef md_operand
|
|
void md_operand (expressionS *);
|
|
#endif
|
|
#ifndef md_estimate_size_before_relax
|
|
int md_estimate_size_before_relax (fragS * fragP, segT);
|
|
#endif
|
|
#ifndef md_section_align
|
|
valueT md_section_align (segT, valueT);
|
|
#endif
|
|
#ifndef md_undefined_symbol
|
|
symbolS *md_undefined_symbol (char *);
|
|
#endif
|
|
|
|
#ifndef md_convert_frag
|
|
void md_convert_frag (bfd *, segT, fragS *);
|
|
#endif
|
|
#ifndef RELOC_EXPANSION_POSSIBLE
|
|
extern arelent *tc_gen_reloc (asection *, fixS *);
|
|
#else
|
|
extern arelent **tc_gen_reloc (asection *, fixS *);
|
|
#endif
|
|
|
|
extern const char FLT_CHARS[];
|
|
extern const char EXP_CHARS[];
|