2009-05-20 Kai Tietz <kai.tietz@onevision.com>
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 20 May 2009 13:48:16 +0000 (13:48 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 20 May 2009 13:48:16 +0000 (13:48 +0000)
    H.J. Lu  <hongjiu.lu@intel.com>

* config/obj-coff.h: Include "coff/x86_64.h" for x86 pe-coff.
(TARGET_FORMAT): Removed for x86 pe-coff.
(COFF_TARGET_FORMAT): Likewise.

* config/tc-i386.c (md_longopts): Allow --64 for x86 pe-coff.
(md_parse_option): Likewise.
(md_show_usage): Show option --32/--64 for x86 pe-coff.
(i386_target_format): Use also for x86 pe-coff.

* config/tc-i386.h (TARGET_FORMAT): Defined as i386_target_format
for x86 pe-coff.

gas/ChangeLog
gas/config/obj-coff.h
gas/config/tc-i386.c
gas/config/tc-i386.h

index d9af8b4..baba4a9 100644 (file)
@@ -1,3 +1,18 @@
+2009-05-20  Kai Tietz  <kai.tietz@onevision.com>
+           H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/obj-coff.h: Include "coff/x86_64.h" for x86 pe-coff.
+       (TARGET_FORMAT): Removed for x86 pe-coff.
+       (COFF_TARGET_FORMAT): Likewise.
+
+       * config/tc-i386.c (md_longopts): Allow --64 for x86 pe-coff.
+       (md_parse_option): Likewise.
+       (md_show_usage): Show option --32/--64 for x86 pe-coff.
+       (i386_target_format): Use also for x86 pe-coff.
+
+       * config/tc-i386.h (TARGET_FORMAT): Defined as i386_target_format
+       for x86 pe-coff.
+
 2009-05-19  DJ Delorie  <dj@redhat.com>
 
        * config/tc-mep.c (mep_machine): Only check CPU flags, not COP flags.
@@ -13,8 +28,8 @@
 
 2009-05-17  Kai Tietz  <kai.tietz@onevision.com>
 
-        * config/obj-coff.c (obj_coff_section): Add 'y' as
-        specifier for SEC_COFF_NOREAD section flag.
+       * config/obj-coff.c (obj_coff_section): Add 'y' as
+       specifier for SEC_COFF_NOREAD section flag.
        * doc/as.texinfo: Add documentation about .section flag 'y'.
 
 2009-05-13  DJ Delorie  <dj@redhat.com>
        qdsub in Thumb-2 mode.
 
 2009-01-29  Paul Brook  <paul@codesourcery.com>
-            Mark Mitchell  <mark@codesourcery.com>
+           Mark Mitchell  <mark@codesourcery.com>
 
        * config/tc-arm.c (do_t_mul): In Thumb-2 mode, use 16-bit encoding
        of MUL when possible.
index d7e985d..11a1123 100644 (file)
 #endif
 
 #ifdef TC_I386
-#ifndef TE_PEP
+#ifdef 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"
index dd2adcc..997d46e 100644 (file)
@@ -8018,7 +8018,8 @@ const char *md_shortopts = "qn";
 struct option md_longopts[] =
 {
   {"32", no_argument, NULL, OPTION_32},
-#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || defined(TE_PEP)
+#if (defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
+     || defined (TE_PE) || defined (TE_PEP))
   {"64", no_argument, NULL, OPTION_64},
 #endif
   {"divide", no_argument, NULL, OPTION_DIVIDE},
@@ -8071,7 +8072,8 @@ md_parse_option (int c, char *arg)
         .stab instead of .stab.excl.  We always use .stab anyhow.  */
       break;
 #endif
-#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || defined(TE_PEP)
+#if (defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
+     || defined (TE_PE) || defined (TE_PEP))
     case OPTION_64:
       {
        const char **list, **l;
@@ -8258,7 +8260,8 @@ md_show_usage (stream)
   fprintf (stream, _("\
   -s                      ignored\n"));
 #endif
-#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || defined(TE_PEP)
+#if (defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
+     || defined (TE_PE) || defined (TE_PEP))
   fprintf (stream, _("\
   --32/--64               generate 32bit/64bit code\n"));
 #endif
@@ -8305,7 +8308,8 @@ md_show_usage (stream)
 }
 
 #if ((defined (OBJ_MAYBE_COFF) && defined (OBJ_MAYBE_AOUT)) \
-     || defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) || defined (TE_PEP))
+     || defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
+     || defined (TE_PE) || defined (TE_PEP))
 
 /* Pick the target format to use.  */
 
@@ -8362,10 +8366,9 @@ i386_target_format (void)
     as_fatal (_("Unknown architecture"));
   switch (OUTPUT_FLAVOR)
     {
-#ifdef TE_PEP
+#if defined (TE_PE) || defined (TE_PEP)
     case bfd_target_coff_flavour:
-      return flag_code == CODE_64BIT ? COFF_TARGET_FORMAT : "pe-i386";
-      break;
+      return flag_code == CODE_64BIT ? "pe-x86-64" : "pe-i386";
 #endif
 #ifdef OBJ_MAYBE_AOUT
     case bfd_target_aout_flavour:
index dab3c55..bb4821a 100644 (file)
@@ -71,13 +71,11 @@ extern unsigned long i386_mach (void);
 #endif
 
 #if ((defined (OBJ_MAYBE_COFF) && defined (OBJ_MAYBE_AOUT)) \
-     || defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF))
+     || defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
+     || defined (TE_PE) || defined (TE_PEP))
 extern const char *i386_target_format (void);
 #define TARGET_FORMAT i386_target_format ()
 #else
-#ifdef OBJ_ELF
-#define TARGET_FORMAT          ELF_TARGET_FORMAT
-#endif
 #ifdef OBJ_AOUT
 #define TARGET_FORMAT          AOUT_TARGET_FORMAT
 #endif