Back to index

cell-binutils  2.17cvs20070401
pe-arm.c
Go to the documentation of this file.
00001 /* BFD back-end for ARM PECOFF files.
00002    Copyright 1995, 1996, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
00003 
00004 This file is part of BFD, the Binary File Descriptor library.
00005 
00006 This program is free software; you can redistribute it and/or modify
00007 it under the terms of the GNU General Public License as published by
00008 the Free Software Foundation; either version 2 of the License, or
00009 (at your option) any later version.
00010 
00011 This program is distributed in the hope that it will be useful,
00012 but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 GNU General Public License for more details.
00015 
00016 You should have received a copy of the GNU General Public License
00017 along with this program; if not, write to the Free Software
00018 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
00019 
00020 /* Do this before including bfd.h, so we prototype the right functions.  */
00021 
00022 #ifndef bfd_arm_allocate_interworking_sections
00023 #define bfd_arm_allocate_interworking_sections \
00024   bfd_armpe_allocate_interworking_sections
00025 #define bfd_arm_get_bfd_for_interworking \
00026   bfd_armpe_get_bfd_for_interworking
00027 #define bfd_arm_process_before_allocation \
00028   bfd_armpe_process_before_allocation
00029 #endif
00030 
00031 #include "bfd.h"
00032 #include "sysdep.h"
00033 
00034 #ifndef TARGET_LITTLE_SYM
00035 #define TARGET_LITTLE_SYM    armpe_little_vec
00036 #define TARGET_LITTLE_NAME   "pe-arm-little"
00037 #define TARGET_BIG_SYM       armpe_big_vec
00038 #define TARGET_BIG_NAME      "pe-arm-big"
00039 #endif
00040 
00041 #define COFF_WITH_PE
00042 #define PCRELOFFSET          TRUE
00043 #define COFF_LONG_SECTION_NAMES
00044 
00045 #define COFF_SECTION_ALIGNMENT_ENTRIES \
00046 { COFF_SECTION_NAME_EXACT_MATCH (".bss"), \
00047   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \
00048 { COFF_SECTION_NAME_EXACT_MATCH (".data"), \
00049   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \
00050 { COFF_SECTION_NAME_EXACT_MATCH (".rdata"), \
00051   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \
00052 { COFF_SECTION_NAME_EXACT_MATCH (".text"), \
00053   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \
00054 { COFF_SECTION_NAME_PARTIAL_MATCH (".idata"), \
00055   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \
00056 { COFF_SECTION_NAME_EXACT_MATCH (".pdata"), \
00057   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \
00058 { COFF_SECTION_NAME_PARTIAL_MATCH (".debug"), \
00059   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 }, \
00060 { COFF_SECTION_NAME_PARTIAL_MATCH (".gnu.linkonce.wi."), \
00061   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 }
00062 
00063 #include "coff-arm.c"