Back to index

cell-binutils  2.17cvs20070401
tc-arc.h
Go to the documentation of this file.
00001 /* tc-arc.h - Macros and type defines for the ARC.
00002    Copyright 1994, 1995, 1997, 2000, 2001, 2002, 2005
00003    Free Software Foundation, Inc.
00004    Contributed by Doug Evans (dje@cygnus.com).
00005 
00006    This file is part of GAS, the GNU Assembler.
00007 
00008    GAS is free software; you can redistribute it and/or modify
00009    it under the terms of the GNU General Public License as
00010    published by the Free Software Foundation; either version 2,
00011    or (at your option) any later version.
00012 
00013    GAS is distributed in the hope that it will be useful, but
00014    WITHOUT ANY WARRANTY; without even the implied warranty of
00015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
00016    the GNU General Public License for more details.
00017 
00018    You should have received a copy of the GNU General Public License
00019    along with GAS; see the file COPYING.  If not, write to the Free
00020    Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
00021    02110-1301, USA.  */
00022 
00023 #define TC_ARC 1
00024 
00025 #define TARGET_BYTES_BIG_ENDIAN 0
00026 
00027 #define LOCAL_LABELS_FB 1
00028 
00029 #define TARGET_ARCH bfd_arch_arc
00030 
00031 #define DIFF_EXPR_OK
00032 #define REGISTER_PREFIX '%'
00033 
00034 #ifdef LITTLE_ENDIAN
00035 #undef LITTLE_ENDIAN
00036 #endif
00037 
00038 #ifdef BIG_ENDIAN
00039 #undef BIG_ENDIAN
00040 #endif
00041 
00042 #define LITTLE_ENDIAN   1234
00043 
00044 #define BIG_ENDIAN      4321
00045 
00046 /* The endianness of the target format may change based on command
00047    line arguments.  */
00048 extern const char * arc_target_format;
00049 
00050 #define DEFAULT_TARGET_FORMAT  "elf32-littlearc"
00051 #define TARGET_FORMAT          arc_target_format
00052 #define DEFAULT_BYTE_ORDER     LITTLE_ENDIAN
00053 #define WORKING_DOT_WORD
00054 #define LISTING_HEADER         "ARC GAS "
00055 
00056 /* The ARC needs to parse reloc specifiers in .word.  */
00057 
00058 extern void arc_parse_cons_expression (struct expressionS *, unsigned);
00059 #define TC_PARSE_CONS_EXPRESSION(EXP, NBYTES) \
00060   arc_parse_cons_expression (EXP, NBYTES)
00061 
00062 extern void arc_cons_fix_new (struct frag *, int, int, struct expressionS *);
00063 #define TC_CONS_FIX_NEW(FRAG, WHERE, NBYTES, EXP) \
00064   arc_cons_fix_new (FRAG, WHERE, NBYTES, EXP)
00065 
00066 #define DWARF2_LINE_MIN_INSN_LENGTH 4
00067 
00068 /* Values passed to md_apply_fix don't include the symbol value.  */
00069 #define MD_APPLY_SYM_VALUE(FIX) 0
00070 
00071 /* No shared lib support, so we don't need to ensure externally
00072    visible symbols can be overridden.  */
00073 #define EXTERN_FORCE_RELOC 0