Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-26 Thread Steven Penny

On Sun, 26 Aug 2018 12:51:40, JonY wrote:

Can you roll back to the previous x86_64-w64-binutils and find out if it
makes a difference?

Other than that, I'm quite out of ideas.


Using this file:

   $ cat stoi.cpp
   #include 
   #include 
   main() {
 std::cout << std::stoi("3.14159") << std::endl;
   }

and these:

   mingw64-x86_64-gcc-g++ 7.3.0
   mingw64-x86_64-gcc-core 7.3.0

and mingw64-x86_64-binutils 2.29.1:

   $ time x86_64-w64-mingw32-g++ -static stoi.cpp; wc -c a.exe
   real0m2.337s
   11577536 a.exe

now with mingw64-x86_64-binutils 2.28.1:

   $ time x86_64-w64-mingw32-g++ -static stoi.cpp; wc -c a.exe
   real0m2.300s
   11577470 a.exe

now with mingw64-x86_64-binutils 2.25.0:

   $ time x86_64-w64-mingw32-g++ -static stoi.cpp; wc -c a.exe
   real0m2.350s
   11577536 a.exe

Going back to my original theory - it seems something is wrong with
"libstdc++.a", and has been for some time. Here a summation of the Cygwin
versions:

   Name: libstdc++.a
   Name: usr\lib\gcc\x86_64-w64-mingw32\7.3.0\
   Size: 22 446 354

   Name: libstdc++.a
   Name: usr\lib\gcc\x86_64-w64-mingw32\6.4.0\
   Size: 22 066 330

   Name: libstdc++.a
   Name: usr\lib\gcc\x86_64-w64-mingw32\6.3.0\
   Size: 22 034 356

   Name: libstdc++.a
   Name: usr\lib\gcc\x86_64-w64-mingw32\5.4.0\
   Size: 20 719 186

Compare this with Msys2:

   Name: libstdc++.a
   Name: mingw64\lib\gcc\x86_64-w64-mingw32\7.3.0\
   Size: 5 596 296

or with Debian:

   Name: .\usr\lib\gcc\x86_64-w64-mingw32\7.3-posix\
   Name: libstdc++.a
   Size: 5 093 564

Or Ubuntu:

   Name: .\usr\lib\gcc\x86_64-w64-mingw32\7.3-posix\
   Name: libstdc++.a
   Size: 5 085 236

References:

- 
http://mirror.rit.edu/cygwin/x86_64/release/mingw64-x86_64-gcc/mingw64-x86_64-gcc-g%2b%2b
- http://packages.debian.org/buster/g++-mingw-w64-x86-64
- http://packages.ubuntu.com/hu/bionic/g++-mingw-w64-x86-64
- http://repo.msys2.org/mingw/x86_64


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-26 Thread Steven Penny

On Sun, 26 Aug 2018 15:07:06, =?UTF-8?Q?Hans-Bernhard_Br=c3=b6ker?= wrote:

Am 25.08.2018 um 02:13 schrieb Steven Penny:

On Fri, 24 Aug 2018 10:11:42, JonY wrote:



    $ wc -c /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a
    22446354 /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a

    $ wc -c mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a
    5597192 mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a


And it is of course totally out of the question that this difference 
could be caused by these being different major versions of GCC, right?


next time before you post such a comment on a public forum, you might actually
check that you know what youre talking about beforehand.

   $ wc -c mingw64/lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a
   5596296 mingw64/lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a

cheers


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-26 Thread Hans-Bernhard Bröker

Am 25.08.2018 um 02:13 schrieb Steven Penny:

On Fri, 24 Aug 2018 10:11:42, JonY wrote:



    $ wc -c /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a
    22446354 /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a

    $ wc -c mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a
    5597192 mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a


And it is of course totally out of the question that this difference 
could be caused by these being different major versions of GCC, right?


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-26 Thread JonY
On 08/25/2018 12:13 AM, Steven Penny wrote:
> On Fri, 24 Aug 2018 10:11:42, JonY wrote:
>> Can you try breaking it down by phases?
>> 1. Preprocessor phase with -E -o file.ii
> 
>    $ time x86_64-w64-mingw32-g++ -E -o file.ii stoi.cpp; wc -c file.ii
>    real    0m0.172s
>    719550 file.ii
> 
>> 2. Compile phase (compile output from phase 1) with -c
> 
>    $ time x86_64-w64-mingw32-g++ -c file.ii; wc -c file.o
>    real    0m0.312s
>    7368 file.o
> 
>> 3. Link phase, point gcc to the output from phase 2.
> 
>    $ time x86_64-w64-mingw32-g++ -static file.o; wc -c a.exe
>    real    0m1.950s
>    11906797 a.exe
> 
> Also it might be worth noting the starting point - for some reason
> Cygwin is 4
> times larger than Msys2?
> 
>    $ wc -c /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a
>    22446354 /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a
> 
>    $ wc -c mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a
>    5597192 mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a
> 

Can you roll back to the previous x86_64-w64-binutils and find out if it
makes a difference?

Other than that, I'm quite out of ideas.




signature.asc
Description: OpenPGP digital signature


Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-24 Thread Steven Penny

On Fri, 24 Aug 2018 10:11:42, JonY wrote:

Can you try breaking it down by phases?
1. Preprocessor phase with -E -o file.ii


   $ time x86_64-w64-mingw32-g++ -E -o file.ii stoi.cpp; wc -c file.ii
   real0m0.172s
   719550 file.ii


2. Compile phase (compile output from phase 1) with -c


   $ time x86_64-w64-mingw32-g++ -c file.ii; wc -c file.o
   real0m0.312s
   7368 file.o


3. Link phase, point gcc to the output from phase 2.


   $ time x86_64-w64-mingw32-g++ -static file.o; wc -c a.exe
   real0m1.950s
   11906797 a.exe

Also it might be worth noting the starting point - for some reason Cygwin is 4
times larger than Msys2?

   $ wc -c /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a
   22446354 /lib/gcc/x86_64-w64-mingw32/7.3.0/libstdc++.a

   $ wc -c mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a
   5597192 mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++.a


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-24 Thread JonY
On 08/21/2018 03:18 AM, Steven Penny wrote:
> On Wed, 18 Jul 2018 10:38:22, JonY wrote:
>> The mingw-w64 cross compilers have been updated:
>>
>> * mingw64-i686-gcc-7.3.0-1
>> * mingw64-x86_64-gcc-7.3.0-1
>>
>> It is available under the test version.
> 
> http://cygwin.com/ml/cygwin/2018-07/msg00168.html
> 
> Using this file:
> 
>    $ cat stoi.cpp
>    #include 
>    #include 
>    main() {
>  std::string q = "23456";
>  std::cout << std::stoi(q) << std::endl;
>    }
> 
> I have noticed an issue with the Cygwin "x86_64-w64-mingw32-g++"
> compiler. If I
> strip the executable, all is well:
> 
>    $ time x86_64-w64-mingw32-g++ -s -static-libstdc++ stoi.cpp; wc -c a.exe
>    real    0m0.889s
>    845824 a.exe
> 
> Same with Msys2:
> 
>    # time x86_64-w64-mingw32-g++ -s -static-libstdc++ stoi.cpp; wc -c a.exe
>    real    0m0.718s
>    835584 a.exe
> 
> However if I do not strip the executable, the compile time nearly
> triples and
> the size increases 10 fold:
> 
>    $ time x86_64-w64-mingw32-g++ -static-libstdc++ stoi.cpp; wc -c a.exe
>    real    0m2.340s
>    11695660 a.exe
> 
> Compare with Msys2, where the time only increases 17%, and the size only
> increases 3 fold:
> 
>    # time x86_64-w64-mingw32-g++ -static-libstdc++ stoi.cpp; wc -c a.exe
>    real    0m0.842s
>    3001138 a.exe


Can you try breaking it down by phases?
1. Preprocessor phase with -E -o file.ii
2. Compile phase (compile output from phase 1) with -c
3. Link phase, point gcc to the output from phase 2.




signature.asc
Description: OpenPGP digital signature


Re: [ANNOUNCEMENT] [Updated] mingw64-{i686,x86_64}-gcc-7.3.0-1 (Test)

2018-08-20 Thread Steven Penny

On Wed, 18 Jul 2018 10:38:22, JonY wrote:

The mingw-w64 cross compilers have been updated:

* mingw64-i686-gcc-7.3.0-1
* mingw64-x86_64-gcc-7.3.0-1

It is available under the test version.


http://cygwin.com/ml/cygwin/2018-07/msg00168.html

Using this file:

   $ cat stoi.cpp
   #include 
   #include 
   main() {
 std::string q = "23456";
 std::cout << std::stoi(q) << std::endl;
   }

I have noticed an issue with the Cygwin "x86_64-w64-mingw32-g++" compiler. If I
strip the executable, all is well:

   $ time x86_64-w64-mingw32-g++ -s -static-libstdc++ stoi.cpp; wc -c a.exe
   real0m0.889s
   845824 a.exe

Same with Msys2:

   # time x86_64-w64-mingw32-g++ -s -static-libstdc++ stoi.cpp; wc -c a.exe
   real0m0.718s
   835584 a.exe

However if I do not strip the executable, the compile time nearly triples and
the size increases 10 fold:

   $ time x86_64-w64-mingw32-g++ -static-libstdc++ stoi.cpp; wc -c a.exe
   real0m2.340s
   11695660 a.exe

Compare with Msys2, where the time only increases 17%, and the size only
increases 3 fold:

   # time x86_64-w64-mingw32-g++ -static-libstdc++ stoi.cpp; wc -c a.exe
   real0m0.842s
   3001138 a.exe


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple