Hello, I would like to backport the following changes to 4.4 branch. Regression tested for i686-pc-mingw32, x86_64-pc-mingw32, and i686-pc-linux. Ok for apply? ChangeLog 2009-09-29 Kai Tietz Back merge from trunk 2009-05-28 Dave Korn PR target/37216 * configure.ac (HAVE_GAS_ALIGNED_COMM): Add autoconf test and macro definition for support of three-operand format aligned .comm directive in assembler on cygwin/pe/mingw target OS. * configure: Regenerate. * config.h: Regenerate. * config/i386/winnt.c (i386_pe_asm_output_aligned_decl_common): Use aligned form of .comm directive if -mpe-aligned-commons is in effect. * config/i386/cygming.opt (-mpe-aligned-commons): Add new option. * doc/invoke.texi (-mpe-aligned-commons): Document new target option. * doc/tm.texi (ASM_OUTPUT_COMMON): Document zero size commons. Backmerge from trunk 2009-05-28 Dave Korn Uros Bizjak Danny Smith PR target/37216 * lib/target-supports.exp (check_effective_target_pe_aligned_commons): New function. * gcc.target/i386/pr37216.c: New test source file. * gcc.dg/compat/struct-layout-1_generate.c (dg_options[]): No longer use -fno-common for testing Cygwin and MinGW targets. Backmerge from trunk 2009-03-30 H.J. Lu PR target/38781 * config/i386/i386.c (classify_argument): Check total size of structure. Backmerge from trunk 2009-04-13 Ozkan Sezer PR target/39062 * ssp.c: Also include malloc.h for alloca(). MinGW needs it. * configure.ac: Also check for malloc.h. * configure: Regenerated. * config.h.in: Regenerated. Backmerge from trunk 2009-04-13 Ozkan Sezer PR/39066 * gbl-ctors.h (DO_GLOBAL_CTORS_BODY): Use __SIZE_TYPE__ instead of unsigned long. Backmerge from trunk 2009-06-10 Kai Tietz * g++.dg/torture/pr31579.C: Cast pointer via __SIZE_TYPE__ instead of 'unsigned long'. Cheers, Kai -- | (\_/) This is Bunny. Copy and paste | (='.'=) Bunny into your signature to help | (")_(") him gain world domination