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.
This commit is contained in:
parent
eca41774ed
commit
321098a5ad
4 changed files with 31 additions and 25 deletions
|
@ -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>
|
||||
|
@ -685,7 +700,7 @@
|
|||
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.
|
||||
|
|
|
@ -55,22 +55,12 @@
|
|||
#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"
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue