This commit was generated by cvs2svn to track changes on a CVS vendor
[binutils-gdb.git] / gas / config / tc-d10v.h
index 3f50eef79aaf6dde0f0a7aa89d497742da659588..2f244a3b29abd3a9e86a82a56decf8300e8fd9c5 100644 (file)
@@ -1,5 +1,5 @@
 /* tc-d10v.h -- Header file for tc-d10v.c.
-   Copyright (C) 1996 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997 Free Software Foundation, Inc.
    Written by Martin Hunt, Cygnus Support.
 
    This file is part of GAS, the GNU Assembler.
    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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+   along with GAS; see the file COPYING.  If not, write to the Free
+   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+   02111-1307, USA. */
+
+#include "write.h" /* For the definition of fixS.  */
 
 #define TC_D10V
 
+#define TARGET_BYTES_BIG_ENDIAN 0
+
 #ifndef BFD_ASSEMBLER
  #error D10V support requires BFD_ASSEMBLER
 #endif
 #define TARGET_FORMAT "elf32-d10v"
 
 #define MD_APPLY_FIX3
-#define md_operand(x)
 
 /* call md_pcrel_from_section, not md_pcrel_from */
 #define MD_PCREL_FROM_SECTION(FIXP, SEC) md_pcrel_from_section(FIXP, SEC)   
+long md_pcrel_from_section PARAMS ((fixS *, segT));
 
 /* Permit temporary numeric labels.  */
 #define LOCAL_LABELS_FB 1
 
-#define LOCAL_LABEL(name) (name[0] == '.' \
-                          && (name[1] == 'L' || name[1] == '.'))
-#define FAKE_LABEL_NAME ".L0\001"
 #define DIFF_EXPR_OK           /* .-foo gets turned into PC relative relocs */
 
 /* We don't need to handle .word strangely.  */
 
 int d10v_cleanup PARAMS ((void));
 #define md_after_pass_hook()        d10v_cleanup()
-#define TC_START_LABEL(ch, ptr)  (ch == ':' && d10v_cleanup())
-
-
+#define md_cleanup()                d10v_cleanup()
+#define md_do_align(a,b,c,d,e)      d10v_cleanup()
+#define tc_frob_label(sym) do {\
+  d10v_cleanup(); \
+  S_SET_VALUE (sym, (valueT) frag_now_fix ()); \
+} while (0)
+
+#define obj_fix_adjustable(fixP) d10v_fix_adjustable(fixP)
+boolean d10v_fix_adjustable PARAMS ((fixS *));
+#define TC_FORCE_RELOCATION(fixp) d10v_force_relocation(fixp)
+extern int d10v_force_relocation PARAMS ((fixS *));
+
+#define md_flush_pending_output  d10v_cleanup