Hi all,
It is taking some time to get these patches into binutils:
http://sourceware.org/ml/binutils/2006-10/msg00239.html
http://sourceware.org/ml/binutils/2006-10/msg00220.html
So I am applying them to trunk/.
I'll update our copy of binutils when they get committed upstream.
Cheers,
Pedro Alves
---
bfd/ChangeLog
2006-10-21 Pedro Alves <[EMAIL PROTECTED]>
* pe-arm-wince.c (LOCAL_LABEL_PREFIX): Define as ".".
* pei-arm-wince.c (LOCAL_LABEL_PREFIX): Likewise.
* coff-arm.c (LOCAL_LABEL_PREFIX): Only define if not defined before.
gas/ChangeLog
2006-10-22 Pedro Alves <[EMAIL PROTECTED]>
* config/tc-arm.c (arm_fix_adjustable) [OBJ_COFF]: Delete.
(arm_fix_adjustable) [OBJ_ELF]: Use it on coff targets too.
Index: bfd/coff-arm.c
===================================================================
--- bfd/coff-arm.c (revision 761)
+++ bfd/coff-arm.c (working copy)
@@ -2424,7 +2424,9 @@
/* Note: the definitions here of LOCAL_LABEL_PREFIX and USER_LABEL_PREIFX
*must* match the definitions in gcc/config/arm/{coff|semi|aout}.h. */
+#ifndef LOCAL_LABEL_PREFIX
#define LOCAL_LABEL_PREFIX ""
+#endif
#ifndef USER_LABEL_PREFIX
#define USER_LABEL_PREFIX "_"
#endif
Index: bfd/pe-arm-wince.c
===================================================================
--- bfd/pe-arm-wince.c (revision 761)
+++ bfd/pe-arm-wince.c (working copy)
@@ -32,4 +32,6 @@
#define bfd_arm_process_before_allocation \
bfd_arm_wince_pe_process_before_allocation
+#define LOCAL_LABEL_PREFIX "."
+
#include "pe-arm.c"
Index: bfd/pei-arm-wince.c
===================================================================
--- bfd/pei-arm-wince.c (revision 761)
+++ bfd/pei-arm-wince.c (working copy)
@@ -25,4 +25,6 @@
#define TARGET_BIG_SYM arm_wince_pei_big_vec
#define TARGET_BIG_NAME "pei-arm-wince-big"
+#define LOCAL_LABEL_PREFIX "."
+
#include "pei-arm.c"
Index: gas/config/tc-arm.c
===================================================================
--- gas/config/tc-arm.c (revision 761)
+++ gas/config/tc-arm.c (working copy)
@@ -18899,36 +18899,7 @@
return generic_force_reloc (fixp);
}
-#ifdef OBJ_COFF
-bfd_boolean
-arm_fix_adjustable (fixS * fixP)
-{
- /* This is a little hack to help the gas/arm/adrl.s test. It prevents
- local labels from being added to the output symbol table when they
- are used with the ADRL pseudo op. The ADRL relocation should always
- be resolved before the binbary is emitted, so it is safe to say that
- it is adjustable. */
- if (fixP->fx_r_type == BFD_RELOC_ARM_ADRL_IMMEDIATE)
- return 1;
-
- /* This is a hack for the gas/all/redef2.s test. This test causes symbols
- to be cloned, and without this test relocs would still be generated
- against the original, pre-cloned symbol. Such symbols would not appear
- in the symbol table however, and so a valid reloc could not be
- generated. So check to see if the fixup is against a symbol which has
- been removed from the symbol chain, and if it is, then allow it to be
- adjusted into a reloc against a section symbol. */
- if (fixP->fx_addsy != NULL
- && ! S_IS_LOCAL (fixP->fx_addsy)
- && symbol_next (fixP->fx_addsy) == NULL
- && symbol_next (fixP->fx_addsy) == symbol_previous (fixP->fx_addsy))
- return 1;
-
- return 0;
-}
-#endif
-
-#ifdef OBJ_ELF
+#if defined (OBJ_ELF) || defined (OBJ_COFF)
/* Relocations against function names must be left unadjusted,
so that the linker can use this information to generate interworking
stubs. The MIPS version of this function
@@ -18981,7 +18952,10 @@
return 1;
}
+#endif /* defined (OBJ_ELF) || defined (OBJ_COFF) */
+#ifdef OBJ_ELF
+
const char *
elf32_arm_target_format (void)
{
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel