forked from Imagelibrary/binutils-gdb
bfd
* Makefile.am: Add rules to build pe-arm-wince.lo and pei-arm-wince.lo objects.
* Makefile.in: Regenerate.
* pe-arm-wince.c: New file.
* pei-arm-wince.c: New file.
* pei-arm.c: Remove ARM_WINCE block.
* pe-arm.c: Remove ARM_WINCE block. Rename
bfd_arm_pe_allocate_interworking_sections,
bfd_arm_pe_get_bfd_for_interworking, and
bfd_arm_pe_process_before_allocation to
bfd_armpe_allocate_interworking_sections,
bfd_armpe_get_bfd_for_interworking, and
bfd_armpe_process_before_allocation. Move them before including bfd.h.
* bfd.c: ARM wince bfd format names were renamed. Adjust.
* coff-arm.c [ARM_WINCE]: Adjust so Windows CE doesn't end up with unexpected/conflicting relocs.
* targets.c: The arm-wince-pe target got its own new vector. Adjust.
* config.bfd: Likewise.
* configure.in: Likewise.
* configure: Regenerate.
binutils
* configure.in: Split arm-pe and arm-wince-pe. Build dlltool with -DDLLTOOL_ARM_WINCE for Windows CE case.
* configure: Regenerate.
* dlltool.c: Add support for arm-wince.
gas
* Makefile.am (TARG_ENV_HFILES): Add te-wince-pe.h.
* Makefile.in: Regenerate.
* config/tc-arm.h [TARGET_FORMAT]: ARM wince bfd names were renamed. Adjust.
ld
* Makefile.am: Split arm-wince into its own emulation.
* Makefile.in: Regenerate.
* configure.tgt: Set targ_emul to arm_wince_pe for ARM Windows CE targets.
* pe-dll.c : Define PE_ARCH_arm_wince.
(pe_detail_list): Add PE_ARCH_arm_wince case.
(make_one): Handle PE_ARCH_arm_epoc and PE_ARCH_arm_wince cases.
* emulparams/arm_wince_pe.sh: New file.
* emultempl/pe.em: Handle new TARGET_IS_arm_wince_pe define.
Remap bfd_arm_allocate_interworking_sections, bfd_arm_get_bfd_for_interworking and
bfd_arm_process_before_allocation for arm-pe and arm-wince-pe targets too.
(gld_${EMULATION_NAME}_recognized_file): Handle arm-wince and arm-epoc bfd format names.
This commit is contained in:
@@ -385,8 +385,10 @@ static FILE *output_def;
|
||||
static FILE *base_file;
|
||||
|
||||
#ifdef DLLTOOL_ARM
|
||||
#ifdef DLLTOOL_ARM_EPOC
|
||||
#if defined(DLLTOOL_ARM_EPOC)
|
||||
static const char *mname = "arm-epoc";
|
||||
#elif defined(DLLTOOL_ARM_WINCE)
|
||||
static const char *mname = "arm-wince";
|
||||
#else
|
||||
static const char *mname = "arm";
|
||||
#endif
|
||||
@@ -629,6 +631,15 @@ mtable[] =
|
||||
arm_jtab, sizeof (arm_jtab), 8
|
||||
}
|
||||
,
|
||||
{
|
||||
#define MARM_WINCE 10
|
||||
"arm-wince", ".byte", ".short", ".long", ".asciz", "@",
|
||||
"ldr\tip,[pc]\n\tldr\tpc,[ip]\n\t.long",
|
||||
".global", ".space", ".align\t2",".align\t4", "-mapcs-32",
|
||||
"pe-arm-wince-little", bfd_arch_arm,
|
||||
arm_jtab, sizeof (arm_jtab), 8
|
||||
}
|
||||
,
|
||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
|
||||
};
|
||||
|
||||
@@ -760,6 +771,7 @@ rvaafter (int machine)
|
||||
case MMCORE_ELF:
|
||||
case MMCORE_ELF_LE:
|
||||
case MARM_EPOC:
|
||||
case MARM_WINCE:
|
||||
break;
|
||||
default:
|
||||
/* xgettext:c-format */
|
||||
@@ -784,6 +796,7 @@ rvabefore (int machine)
|
||||
case MMCORE_ELF:
|
||||
case MMCORE_ELF_LE:
|
||||
case MARM_EPOC:
|
||||
case MARM_WINCE:
|
||||
return ".rva\t";
|
||||
default:
|
||||
/* xgettext:c-format */
|
||||
@@ -807,6 +820,7 @@ asm_prefix (int machine, const char *name)
|
||||
case MMCORE_ELF:
|
||||
case MMCORE_ELF_LE:
|
||||
case MARM_EPOC:
|
||||
case MARM_WINCE:
|
||||
break;
|
||||
case M386:
|
||||
/* Symbol names starting with ? do not have a leading underscore. */
|
||||
|
||||
Reference in New Issue
Block a user