gas/:
[binutils-gdb.git] / gas / config / obj-coff.h
index 81577c8d84259af3a28ce4153ad1588fe8a4dc77..d7e985dd97b591e689293f89ff49cb622a094724 100644 (file)
@@ -1,13 +1,13 @@
 /* coff object file format
    Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003, 2004, 2005
+   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
    Free Software Foundation, Inc.
 
    This file is part of GAS.
 
    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 2, or (at your option)
+   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,
@@ -27,8 +27,6 @@
 
 #include "targ-cpu.h"
 
-#include "bfd.h"
-
 /* This internal_lineno crap is to stop namespace pollution from the
    bfd internal coff headerfile.  */
 #define internal_lineno bfd_internal_lineno
 #endif
 
 #ifdef TC_I386
+#ifndef TE_PEP
+#include "coff/x86_64.h"
+#else
 #include "coff/i386.h"
+#endif
 
 #ifdef TE_PE
+#ifdef TE_PEP
+extern const char *i386_target_format (void);
+#define TARGET_FORMAT i386_target_format ()
+#define COFF_TARGET_FORMAT "pe-x86-64"
+#else
 #define TARGET_FORMAT "pe-i386"
 #endif
+#endif
 
 #ifndef TARGET_FORMAT
+#ifdef TE_PEP
+#define TARGET_FORMAT "coff-x86-64"
+#else
 #define TARGET_FORMAT "coff-i386"
 #endif
 #endif
+#endif
 
 #ifdef TC_M68K
 #include "coff/m68k.h"
 #define TARGET_FORMAT "coff-Intel-little"
 #endif
 
+#ifdef TC_Z80
+#include "coff/z80.h"
+#define TARGET_FORMAT "coff-z80"
+#endif
+
 #ifdef TC_Z8K
 #include "coff/z8k.h"
 #define TARGET_FORMAT "coff-z8k"
 #endif
 
 #define obj_symbol_new_hook coff_obj_symbol_new_hook
+#define obj_symbol_clone_hook coff_obj_symbol_clone_hook
 #define obj_read_begin_hook coff_obj_read_begin_hook
 
 #include "bfd/libcoff.h"
@@ -386,6 +404,7 @@ extern void coff_frob_section            (segT);
 extern void coff_adjust_section_syms     (bfd *, asection *, void *);
 extern void coff_frob_file_after_relocs  (void);
 extern void coff_obj_symbol_new_hook     (symbolS *);
+extern void coff_obj_symbol_clone_hook   (symbolS *, symbolS *);
 extern void coff_obj_read_begin_hook     (void);
 #ifdef TE_PE
 extern void pecoff_obj_set_weak_hook     (symbolS *);