X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfig%2Ftc-arc.h;h=b61342bc110bd3dfee282aac43dce4d9c4f3f16a;hb=7766fd10024dc0587838fbc4608f3f8e30e17a26;hp=95efd77236332450a1dad862c1e10948fa2b451a;hpb=726c18e1c8a74682270bcd80f7145cda3cc76389;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-arc.h b/gas/config/tc-arc.h index 95efd77236..b61342bc11 100644 --- a/gas/config/tc-arc.h +++ b/gas/config/tc-arc.h @@ -20,6 +20,7 @@ Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ +#include "opcode/arc.h" /* By convention, you should define this macro in the `.h' file. For example, `tc-m68k.h' defines `TC_M68K'. You might have to use this @@ -162,6 +163,8 @@ extern long md_pcrel_from_section (struct fix *, segT); /* The symbol is a ZOL's end loop label. */ #define ARC_FLAG_ZOL (1 << 0) +/* The symbol is an AUX register. */ +#define ARC_FLAG_AUX (1 << 1) /* We use this hook to check the validity of the last to instructions of a ZOL. */ @@ -184,6 +187,10 @@ extern long md_pcrel_from_section (struct fix *, segT); /* Adjust non PC-rel values at relaxation time. */ #define TC_PCREL_ADJUST(F) arc_pcrel_adjust (F) +/* Adjust symbol table. */ +#define obj_adjust_symtab() arc_adjust_symtab () + +extern void arc_adjust_symtab (void); extern int arc_pcrel_adjust (fragS *); extern bfd_boolean arc_parse_name (const char *, struct expressionS *); extern int tc_arc_fix_adjustable (struct fix *); @@ -210,25 +217,17 @@ extern int tc_arc_regname_to_dw2regnum (char *regname); #define NOP_OPCODE_S 0x000078E0 #define NOP_OPCODE_L 0x264A7000 /* mov 0,0. */ -#define MAX_FLAG_NAME_LENGHT 3 +#define MAX_FLAG_NAME_LENGTH 7 struct arc_flags { /* Name of the parsed flag. */ - char name[MAX_FLAG_NAME_LENGHT + 1]; + char name[MAX_FLAG_NAME_LENGTH + 1]; - /* The code of the parsed flag. Valid when is not zero. */ - unsigned char code; + /* Pointer to arc flags. */ + const struct arc_flag_operand *flgp; }; -#ifndef MAX_INSN_ARGS -#define MAX_INSN_ARGS 6 -#endif - -#ifndef MAX_INSN_FLGS -#define MAX_INSN_FLGS 3 -#endif - extern const relax_typeS md_relax_table[]; #define TC_GENERIC_RELAX_TABLE md_relax_table