/* tc-i860.h -- Header file for the i860.
- Copyright (C) 1991, 1992, 1995, 1998, 2000
+ Copyright 1991, 1992, 1995, 1998, 2000, 2001, 2002
Free Software Foundation, Inc.
Brought back from the dead and completely reworked
by Jason Eckhardt <jle@cygnus.com>.
-
+
This file is part of GAS, the GNU Assembler.
GAS is free software; you can redistribute it and/or modify
#ifndef TC_I860
#define TC_I860 1
-
#ifndef BFD_ASSEMBLER
#error i860 support requires BFD_ASSEMBLER
#endif
-
-enum i860_fix_info
+enum i860_fix_info
{
OP_NONE = 0x00000,
OP_IMM_U5 = 0x00001,
OP_ALIGN16 = 0x40000
};
-
/* Set the endianness we are using. Default to little endian. */
#ifndef TARGET_BYTES_BIG_ENDIAN
#define TARGET_BYTES_BIG_ENDIAN 0
#endif
#define WORKING_DOT_WORD
-#define MD_APPLY_FIX3
-#define TC_HANDLES_FX_DONE
#define DIFF_EXPR_OK
/* Permit temporary numeric labels. */
#define md_convert_frag(b,s,f) as_fatal (_("i860_convert_frag\n"));
-#endif /* TC_I860 */
+/* Values passed to md_apply_fix3 don't include the symbol value. */
+#define MD_APPLY_SYM_VALUE(FIX) 0
+/* No shared lib support, so we don't need to ensure externally
+ visible symbols can be overridden. */
+#define EXTERN_FORCE_RELOC 0
+
+/* Bits for post-processing of a user defined label to check if
+ it has a double colon (Intel syntax only). */
+extern void i860_check_label (symbolS *labelsym);
+#define tc_check_label(ls) i860_check_label (ls)
+
+/* Bits for filling in rs_align_code fragments with NOPs. */
+extern void i860_handle_align (struct frag *);
+#define HANDLE_ALIGN(fragp) i860_handle_align (fragp)
+
+#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4 + 4)
+
+#endif /* TC_I860 */