From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:59125) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qtjpu-0004OA-IY for qemu-devel@nongnu.org; Wed, 17 Aug 2011 13:23:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qtjps-000885-Qh for qemu-devel@nongnu.org; Wed, 17 Aug 2011 13:23:26 -0400 Received: from mail-gy0-f173.google.com ([209.85.160.173]:39631) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qtjps-00087x-Nz for qemu-devel@nongnu.org; Wed, 17 Aug 2011 13:23:24 -0400 Received: by gyd12 with SMTP id 12so1070681gyd.4 for ; Wed, 17 Aug 2011 10:23:24 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <4E4ABC12.3010008@redhat.com> Date: Wed, 17 Aug 2011 18:23:23 +0100 Message-ID: From: Stefan Hajnoczi Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] Compilation error of coroutine-win32.c with gcc version 3.4.5 (mingw-vista special r3) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: Paolo Bonzini , qemu-devel , Roy Tam On Wed, Aug 17, 2011 at 6:20 PM, Blue Swirl wrote: > On Tue, Aug 16, 2011 at 6:50 PM, Paolo Bonzini wrot= e: >> On 08/16/2011 05:45 AM, Stefan Hajnoczi wrote: >>> >>> Roy, >>> This stack trace does not reveal much. >>> >>> Is there any MinGW gcc user that has successfully built and run >>> qemu.git? >> >> I would be surprised if Stefan Weil hasn't. > > Builds and runs (under i386 chroot + Wine) here. It worked also in > Windows the last time I tried (2010). > >>> Which version/architecture of Windows and which MinGW >>> version? > > Debian: > $ i586-mingw32msvc-gcc -v > Using built-in specs. > Target: i586-mingw32msvc > Configured with: > /build/buildd-gcc-mingw32_4.4.4-0.1+b1-amd64-aFhFbL/gcc-mingw32-4.4.4/bui= ld-tree/gcc-4.4.4/configure > --build=3Dx86_64-linux-gnu --prefix=3D/usr --includedir=3D'/usr/include' > --mandir=3D'/usr/share/man' --infodir=3D'/usr/share/info' > --sysconfdir=3D/etc --localstatedir=3D/var > --libexecdir=3D'/usr/lib/gcc-mingw32' --disable-multilib > --enable-threads --enable-sjlj-exceptions > --enable-version-specific-runtime-libs --disable-shared > --target=3Di586-mingw32msvc --enable-languages=3Dc,c++,fortran : > (reconfigured) /build/buildd-gcc-mingw32_4.4.4-0.1+b1-amd64-aFhFbL/gcc-mi= ngw32-4.4.4/build-tree/gcc-4.4.4/configure > --build=3Dx86_64-linux-gnu --prefix=3D/usr --includedir=3D'/usr/include' > --mandir=3D'/usr/share/man' --infodir=3D'/usr/share/info' > --sysconfdir=3D/etc --localstatedir=3D/var > --libexecdir=3D'/usr/lib/gcc-mingw32' --disable-multilib > --enable-threads --enable-sjlj-exceptions > --enable-version-specific-runtime-libs --disable-shared > --target=3Di586-mingw32msvc --enable-languages=3Dc,c++,fortran > Thread model: win32 > gcc version 4.4.4 (GCC) > > Compiled myself: > $ i686-mingw32msvc-gcc -v > Using built-in specs. > COLLECT_GCC=3Di686-mingw32msvc-gcc > COLLECT_LTO_WRAPPER=3D/usr/local/libexec/gcc/i686-mingw32msvc/4.6.0/lto-w= rapper > Target: i686-mingw32msvc > Configured with: ../configure --target=3Di686-mingw32msvc > --enable-targets=3Di686-mingw32msvc --disable-nls --disable-threads > --enable-languages=3Dc --disable-shared --disable-libssp > --disable-multilib > Thread model: single > gcc version 4.6.0 20100925 (experimental) (GCC) > >> I'm trying to get rid of emutls, it is slow anyway and we'll likely want= to >> rely on TLS very liberally in the future. =A0If it fixes the bug, we can >> backport it to stable too. > > I don't know about Win32 TLS support, but at least OpenBSD/sparc64 > gcc/ld/ld.so/libc do not support __thread. According to manual, TLS is > not available everywhere: > http://gcc.gnu.org/onlinedocs/gcc-4.6.1/gcc/Thread_002dLocal.html#Thread_= 002dLocal Yeah, for OpenBSD we have the portable but slow GThread coroutine implementation. Stefan