From 8c493ead6366b552adee796de296936b78f34c5a Mon Sep 17 00:00:00 2001 From: Ben Cheng Date: Sat, 17 May 2014 17:03:43 -0700 Subject: [4.9] Refresh GCC 4.9 to the 20140514 snapshot. For critical bug fixes including devirtualization and codegen. Change-Id: I8138d3dc408fc12db5eecb01d2753d39219712f2 --- gcc-4.9/libgcc/config/i386/cygming-crtbegin.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'gcc-4.9/libgcc/config') diff --git a/gcc-4.9/libgcc/config/i386/cygming-crtbegin.c b/gcc-4.9/libgcc/config/i386/cygming-crtbegin.c index eeb51d4c5..195b46376 100644 --- a/gcc-4.9/libgcc/config/i386/cygming-crtbegin.c +++ b/gcc-4.9/libgcc/config/i386/cygming-crtbegin.c @@ -54,6 +54,11 @@ extern void __register_frame_info (__attribute__((unused)) const void *, TARGET_ATTRIBUTE_WEAK; extern void *__deregister_frame_info (__attribute__((unused)) const void *) TARGET_ATTRIBUTE_WEAK; + +/* Work around for current cygwin32 build problems (Bug gas/16858). + Compile weak default functions only for 64-bit systems, + when absolutely necessary. */ +#ifdef __x86_64__ TARGET_ATTRIBUTE_WEAK void __register_frame_info (__attribute__((unused)) const void *p, __attribute__((unused)) struct object *o) @@ -65,16 +70,19 @@ __deregister_frame_info (__attribute__((unused)) const void *p) { return (void*) 0; } +#endif #endif /* DWARF2_UNWIND_INFO */ #if TARGET_USE_JCR_SECTION extern void _Jv_RegisterClasses (__attribute__((unused)) const void *) TARGET_ATTRIBUTE_WEAK; +#ifdef __x86_64__ TARGET_ATTRIBUTE_WEAK void _Jv_RegisterClasses (__attribute__((unused)) const void *p) { } +#endif #endif /* TARGET_USE_JCR_SECTION */ #if defined(HAVE_LD_RO_RW_SECTION_MIXING) -- cgit v1.2.3