Add initial Intel K1OM support.
[deliverable/binutils-gdb.git] / gas / config / tc-i386.h
index b51a9f480e8092c922506fc4375ba77444aa9ecd..deb2e9f7207e3fd3fdcac141fb96292b5b110202 100644 (file)
@@ -1,6 +1,6 @@
 /* tc-i386.h -- Header file for tc-i386.c
    Copyright 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-   2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+   2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
    Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
@@ -63,6 +63,11 @@ extern unsigned long i386_mach (void);
 #define ELF_TARGET_FORMAT      "elf32-i386-vxworks"
 #endif
 
+#ifdef TE_SOLARIS
+#define ELF_TARGET_FORMAT      "elf32-i386-sol2"
+#define ELF_TARGET_FORMAT64    "elf64-x86-64-sol2"
+#endif
+
 #ifndef ELF_TARGET_FORMAT
 #define ELF_TARGET_FORMAT      "elf32-i386"
 #endif
@@ -71,16 +76,27 @@ extern unsigned long i386_mach (void);
 #define ELF_TARGET_FORMAT64    "elf64-x86-64"
 #endif
 
+#ifndef ELF_TARGET_FORMAT32
+#define ELF_TARGET_FORMAT32    "elf32-x86-64"
+#endif
+
 #ifndef ELF_TARGET_L1OM_FORMAT
 #define ELF_TARGET_L1OM_FORMAT "elf64-l1om"
 #endif
 
+#ifndef ELF_TARGET_K1OM_FORMAT
+#define ELF_TARGET_K1OM_FORMAT "elf64-k1om"
+#endif
+
 #if ((defined (OBJ_MAYBE_COFF) && defined (OBJ_MAYBE_AOUT)) \
      || defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
      || defined (TE_PE) || defined (TE_PEP) || defined (OBJ_MACH_O))
 extern const char *i386_target_format (void);
 #define TARGET_FORMAT i386_target_format ()
 #else
+#ifdef TE_GO32
+#define TARGET_FORMAT          "coff-go32"
+#endif
 #ifdef OBJ_AOUT
 #define TARGET_FORMAT          AOUT_TARGET_FORMAT
 #endif
@@ -113,8 +129,8 @@ extern const char *i386_comment_chars;
 
 #if (defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)) && !defined (LEX_AT)
 #define TC_PARSE_CONS_EXPRESSION(EXP, NBYTES) x86_cons (EXP, NBYTES)
-extern void x86_cons (expressionS *, int);
 #endif
+extern void x86_cons (expressionS *, int);
 
 #define TC_CONS_FIX_NEW(FRAG,OFF,LEN,EXP) x86_cons_fix_new(FRAG, OFF, LEN, EXP)
 extern void x86_cons_fix_new
@@ -146,15 +162,14 @@ extern int tc_i386_fix_adjustable (struct fix *);
 /* This expression evaluates to true if the relocation is for a local
    object for which we still want to do the relocation at runtime.
    False if we are willing to perform this relocation while building
-   the .o file.  GOTOFF does not need to be checked here because it is
-   not pcrel.  I am not sure if some of the others are ever used with
-   pcrel, but it is easier to be safe than sorry.  */
+   the .o file.  GOTOFF and GOT32 do not need to be checked here because 
+   they are not pcrel.  .*/
 
 #define TC_FORCE_RELOCATION_LOCAL(FIX)                 \
   (!(FIX)->fx_pcrel                                    \
    || (FIX)->fx_r_type == BFD_RELOC_386_PLT32          \
-   || (FIX)->fx_r_type == BFD_RELOC_386_GOT32          \
    || (FIX)->fx_r_type == BFD_RELOC_386_GOTPC          \
+   || (FIX)->fx_r_type == BFD_RELOC_X86_64_GOTPCREL    \
    || TC_FORCE_RELOCATION (FIX))
 
 extern int i386_parse_name (char *, expressionS *, char *);
@@ -212,12 +227,15 @@ enum processor_type
   PROCESSOR_CORE,
   PROCESSOR_CORE2,
   PROCESSOR_COREI7,
+  PROCESSOR_L1OM,
+  PROCESSOR_K1OM,
   PROCESSOR_K6,
   PROCESSOR_ATHLON,
   PROCESSOR_K8,
   PROCESSOR_GENERIC32,
   PROCESSOR_GENERIC64,
-  PROCESSOR_AMDFAM10
+  PROCESSOR_AMDFAM10,
+  PROCESSOR_BD
 };
 
 extern enum processor_type cpu_arch_tune;
This page took 0.024294 seconds and 4 git commands to generate.