Re: [Mingw-w64-public] --enable-experimental breaks as
On 27.01.2019 20:18, Mateusz wrote: W dniu 27.01.2019 o 18:40, Christer Solskogen pisze: On 26.01.2019 01:01, Mateusz wrote: For me it looks OK. Which version of binutils? It's fixed in master branch. $ gcc -v && ld -v Using built-in specs. COLLECT_GCC=f:\msys\m64-83\bin\gcc.exe COLLECT_LTO_WRAPPER=f:/msys/m64-83/bin/../libexec/gcc/x86_64-w64-mingw32/8.2.1/lto-wrapper.exe Target: x86_64-w64-mingw32 Configured with: /home/ma/m/source/gcc-8/configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --disable-nls --enable-languages=c,c++,objc,obj-c++ --with-gmp=/home/ma/m/build/for_target --with-mpfr=/home/ma/m/build/for_target --with-mpc=/home/ma/m/build/for_target --with-isl=/home/ma/m/build/for_target --enable-twoprocess --disable-libstdcxx-pch --disable-win32-registry --disable-shared --enable-fully-dynamic-string --prefix=/home/ma/m/target --with-sysroot=/home/ma/m/target Thread model: win32 gcc version 8.2.1 20190125 (GCC) GNU ld (GNU Binutils) 2.32.51.20190125 It is fixed for binary zero in *.s file, but there is no binary zero in my *.s file. And was the native compiler cross compiled from Linux? Yes, Ubuntu 16.04, build script close to https://sourceforge.net/projects/mingw-w64-dgn/ Cross compiler was build without '--enable-experimental --enable-wildcard'. I've added '--enable-experimental --enable-wildcard' options only to rebuild_target.sh it is close to https://sourceforge.net/p/mingw-w64-dgn/code/HEAD/tree/trunk/rebuild_target.sh And that is perhaps the culpit. My cross compiler was built with '--enable-experimental' (I did not recompile mingw-crt for the crossed compiler, I just copied the libs and headers. No reason to compile them again) -- chs ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
W dniu 27.01.2019 o 18:40, Christer Solskogen pisze: > On 26.01.2019 01:01, Mateusz wrote: > >> For me it looks OK. > > Which version of binutils? It's fixed in master branch. $ gcc -v && ld -v Using built-in specs. COLLECT_GCC=f:\msys\m64-83\bin\gcc.exe COLLECT_LTO_WRAPPER=f:/msys/m64-83/bin/../libexec/gcc/x86_64-w64-mingw32/8.2.1/lto-wrapper.exe Target: x86_64-w64-mingw32 Configured with: /home/ma/m/source/gcc-8/configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --disable-nls --enable-languages=c,c++,objc,obj-c++ --with-gmp=/home/ma/m/build/for_target --with-mpfr=/home/ma/m/build/for_target --with-mpc=/home/ma/m/build/for_target --with-isl=/home/ma/m/build/for_target --enable-twoprocess --disable-libstdcxx-pch --disable-win32-registry --disable-shared --enable-fully-dynamic-string --prefix=/home/ma/m/target --with-sysroot=/home/ma/m/target Thread model: win32 gcc version 8.2.1 20190125 (GCC) GNU ld (GNU Binutils) 2.32.51.20190125 It is fixed for binary zero in *.s file, but there is no binary zero in my *.s file. > And was the native compiler cross compiled from Linux? Yes, Ubuntu 16.04, build script close to https://sourceforge.net/projects/mingw-w64-dgn/ Cross compiler was build without '--enable-experimental --enable-wildcard'. I've added '--enable-experimental --enable-wildcard' options only to rebuild_target.sh it is close to https://sourceforge.net/p/mingw-w64-dgn/code/HEAD/tree/trunk/rebuild_target.sh > Try with a simple hello world in C (or C++) (without the #define) All OK, without binary 0. Regards Mateusz ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
On 26.01.2019 01:01, Mateusz wrote: For me it looks OK. Which version of binutils? It's fixed in master branch. And was the native compiler cross compiled from Linux? Try with a simple hello world in C (or C++) (without the #define) ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
W dniu 25.01.2019 o 10:48, Christer Solskogen pisze: > On 25.01.2019 10:43, Mateusz wrote: >> W dniu 21.01.2019 o 21:20, Christer Solskogen pisze: >>> I've successfully built a multilib compiler on linux targeting both >>> x86_64-w64-mingw32 and i686-w64-mingw32. Using that compiler to compile a >>> native Windows compiler (what do you really call that? Crossed compiler? >>> Hosted?) with mingw-w64-crt configured with "--enable-experimental" I get >>> this (on Windows). >> >> Could you post your mingw-w64-crt configure options to reproduce the problem >> (did you use --enable-experimental all or --enable-experimental printf128)? >> > > "--enable-experimental --enable-wildcard" > Which enables all of the experimental options, I guess. OK, I've compiled native gcc (one 64-bit lib) with mingw-w64-crt options: $M_SOURCE/mingw-w64-v$VER_MINGW64/mingw-w64-crt/configure \ --host=$MINGW_TRIPLE \ --prefix=$M_TARGET/$MINGW_TRIPLE $MINGW_LIB --enable-experimental --enable-wildcard And with this native gcc (64-bit): $ cat t.c #define __USE_MINGW_ANSI_STDIO #include int main() { __int128 t = 0; t -= 1; printf("hello %I128u\n", t); return 0; } Mateusz@Mateusz-i7 /f/t/e $ gcc -Wall -O2 -save-temps -o t.exe t.c t.c: In function 'main': t.c:8:10: warning: format '%u' expects argument of type 'unsigned int', but argument 2 has type '__int128' [-Wformat=] printf("hello %I128u\n", t); ^~~~ ~ Mateusz@Mateusz-i7 /f/t/e $ t hello 340282366920938463463374607431768211455 Mateusz@Mateusz-i7 /f/t/e $ cat t.s .file "t.c" .text .section .rdata,"dr" .LC0: .ascii "hello %I128u\12\0" .text .p2align 4,,15 .defprintf.constprop.0; .scl3; .type 32; .endef .seh_proc printf.constprop.0 printf.constprop.0: pushq %rbx .seh_pushreg%rbx subq$48, %rsp .seh_stackalloc 48 .seh_endprologue movl$1, %ecx leaq72(%rsp), %rbx movq%rdx, 72(%rsp) movq%r8, 80(%rsp) movq%r9, 88(%rsp) movq%rbx, 40(%rsp) call*__imp___acrt_iob_func(%rip) movq%rbx, %r8 leaq.LC0(%rip), %rdx movq%rax, %rcx call__mingw_vfprintf addq$48, %rsp popq%rbx ret .seh_endproc .def__main; .scl2; .type 32; .endef .section.text.startup,"x" .p2align 4,,15 .globl main .defmain; .scl2; .type 32; .endef .seh_proc main main: subq$56, %rsp .seh_stackalloc 56 .seh_endprologue call__main leaq32(%rsp), %rdx leaq.LC0(%rip), %rcx movq$-1, 32(%rsp) movq$-1, 40(%rsp) callprintf.constprop.0 xorl%eax, %eax addq$56, %rsp ret .seh_endproc .ident "GCC: (GNU) 8.2.1 20190125" .def__mingw_vfprintf; .scl2; .type 32; .endef For me it looks OK. Regards Mateusz ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
On 25.01.2019 10:43, Mateusz wrote: W dniu 21.01.2019 o 21:20, Christer Solskogen pisze: I've successfully built a multilib compiler on linux targeting both x86_64-w64-mingw32 and i686-w64-mingw32. Using that compiler to compile a native Windows compiler (what do you really call that? Crossed compiler? Hosted?) with mingw-w64-crt configured with "--enable-experimental" I get this (on Windows). Could you post your mingw-w64-crt configure options to reproduce the problem (did you use --enable-experimental all or --enable-experimental printf128)? "--enable-experimental --enable-wildcard" Which enables all of the experimental options, I guess. -- chs ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
W dniu 21.01.2019 o 21:20, Christer Solskogen pisze: > I've successfully built a multilib compiler on linux targeting both > x86_64-w64-mingw32 and i686-w64-mingw32. Using that compiler to compile a > native Windows compiler (what do you really call that? Crossed compiler? > Hosted?) with mingw-w64-crt configured with "--enable-experimental" I get > this (on Windows). Could you post your mingw-w64-crt configure options to reproduce the problem (did you use --enable-experimental all or --enable-experimental printf128)? Regards Mateusz ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
On 23.01.2019 03:26, Liu Hao wrote: I have CC'd binutils ML. Hope someone there would know something about GAS. It's now fixed in binutils. The question is why does --enable-experimental produce a assembler like that? ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
On 23.01.2019 05:35, Alan Modra wrote: On Wed, Jan 23, 2019 at 10:26:06AM +0800, Liu Hao wrote: 在 2019/1/22 上午4:20, Christer Solskogen 写道: I've successfully built a multilib compiler on linux targeting both x86_64-w64-mingw32 and i686-w64-mingw32. Using that compiler to compile a native Windows compiler (what do you really call that? Crossed compiler? Hosted?) with mingw-w64-crt configured with "--enable-experimental" I get this (on Windows). Internal error in stringer at /home/builder/binutils-2.31.1/gas/read.c:5366. Please report this bug. gas shouldn't be reporting an internal error here. Very likely you have a wrongly quoted string in the input to gas. Please open a bug at https://sourceware.org/bugzilla/enter_bug.cgi?product=binutils with the input to gas (.s file) attached. Done. https://sourceware.org/bugzilla/show_bug.cgi?id=24125 There is a difference between them. The working .S file has: .ascii "Hello world!\0" The not working .S file has: .ascii "Hello world!\ " (notepad++ says: !\NUL" instead of the whitespace. ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] --enable-experimental breaks as
在 2019/1/22 上午4:20, Christer Solskogen 写道: > I've successfully built a multilib compiler on linux targeting both > x86_64-w64-mingw32 and i686-w64-mingw32. Using that compiler to compile > a native Windows compiler (what do you really call that? Crossed > compiler? Hosted?) with mingw-w64-crt configured with > "--enable-experimental" I get this (on Windows). > > Internal error in stringer at > /home/builder/binutils-2.31.1/gas/read.c:5366. > Please report this bug. > > I get the same error with a simple Hello World in either C and C++ (alas > both gcc.exe and g++.exe produce the error) > > If I compile mingw-w64-crt without "--enable-experimental" I do not see > that error. > Not sure if it means anything, but the crossed compiler is multilib. > > cross-binutils is configured like this: > /home/builder/binutils-2.31.1/configure --prefix=/opt/cross > --target=x86_64-w64-mingw32 > > cross-gcc: /home/builder/gcc-8/configure --prefix=/opt/cross > --libexecdir=/opt/cross/lib --target=x86_64-w64-mingw32 > --enable-languages=c,c++ --disable-libstdcxx-pch --enable-libgomp > --enable-threads=posix --with-sysroot=/opt/cross > > crossed-binutils: /home/builder/binutils-2.31.1/configure > --prefix=/mingw64 --host=x86_64-w64-mingw32 > > crossed-gcc: /home/builder/gcc-8/configure --prefix=/mingw64 > --libexecdir=/mingw64/lib --host=x86_64-w64-mingw32 > --target=x86_64-w64-mingw32 --enable-languages=c,c++ > --disable-libstdcxx-pch --enable-libgomp --enable-threads=posix > I have CC'd binutils ML. Hope someone there would know something about GAS. -- Best regards, LH_Mouse signature.asc Description: OpenPGP digital signature ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
[Mingw-w64-public] --enable-experimental breaks as
I've successfully built a multilib compiler on linux targeting both x86_64-w64-mingw32 and i686-w64-mingw32. Using that compiler to compile a native Windows compiler (what do you really call that? Crossed compiler? Hosted?) with mingw-w64-crt configured with "--enable-experimental" I get this (on Windows). Internal error in stringer at /home/builder/binutils-2.31.1/gas/read.c:5366. Please report this bug. I get the same error with a simple Hello World in either C and C++ (alas both gcc.exe and g++.exe produce the error) If I compile mingw-w64-crt without "--enable-experimental" I do not see that error. Not sure if it means anything, but the crossed compiler is multilib. cross-binutils is configured like this: /home/builder/binutils-2.31.1/configure --prefix=/opt/cross --target=x86_64-w64-mingw32 cross-gcc: /home/builder/gcc-8/configure --prefix=/opt/cross --libexecdir=/opt/cross/lib --target=x86_64-w64-mingw32 --enable-languages=c,c++ --disable-libstdcxx-pch --enable-libgomp --enable-threads=posix --with-sysroot=/opt/cross crossed-binutils: /home/builder/binutils-2.31.1/configure --prefix=/mingw64 --host=x86_64-w64-mingw32 crossed-gcc: /home/builder/gcc-8/configure --prefix=/mingw64 --libexecdir=/mingw64/lib --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --enable-languages=c,c++ --disable-libstdcxx-pch --enable-libgomp --enable-threads=posix -- chs ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public