This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See crosstool-NG for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GCC being built without optimisation


On 14 November 2012 13:30, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> Michael, All,
>
> On Wednesday 14 November 2012 Michael Hope wrote:
>> Hi Yann, all.  Someone recently spotted that the crosstool-NG based
>> Linaro builds took twice as long to compile code than the Ubuntu cross
>> compiler.
> [--SNIP--]
>> It turns out that GCC and the libraries are being built without
>> optimisation.
> [--SNIP--]
>> scripts: set default CFLAGS to optimise.
>>
>> Our extra CFLAGS override the product defaults, meaning that we build
>> without optimisation or debug.  Be explicit and add these in.
>
> Can I have your SoB-line for that patch?

scripts: set default CFLAGS to optimise.

The extra CFLAGS override the product defaults, causing the product to
be built without optimisation or debug.  Be explicit and add these in.

Signed-off-by: Michael Hope <michael.hope@linaro.org>

diff -r cfb1783d4cb8 -r d7c10d1bc152 scripts/crosstool-NG.sh.in
--- a/scripts/crosstool-NG.sh.in	Fri Nov 09 18:22:31 2012 +0100
+++ b/scripts/crosstool-NG.sh.in	Wed Nov 14 13:48:18 2012 +1300
@@ -494,7 +494,9 @@
     fi

     # Help gcc
-    CT_CFLAGS_FOR_HOST=
+    # Explicitly optimise, else the lines below will overide the
+    # package's default optimisation flags
+    CT_CFLAGS_FOR_HOST="-O2 -g"
     [ "${CT_USE_PIPES}" = "y" ] && CT_CFLAGS_FOR_HOST+=" -pipe"
     CT_CFLAGS_FOR_HOST+=" ${CT_EXTRA_FLAGS_FOR_HOST}"

>> diff:
>> === modified file 'scripts/crosstool-NG.sh.in'
>> --- scripts/crosstool-NG.sh.in  2012-03-23 05:22:58 +0000
>> +++ scripts/crosstool-NG.sh.in  2012-11-13 23:50:41 +0000
>> @@ -488,7 +488,7 @@
>>      fi
>>
>>      # Help gcc
>> -    CT_CFLAGS_FOR_HOST=
>> +    CT_CFLAGS_FOR_HOST="-O2 -g"
>>      [ "${CT_USE_PIPES}" = "y" ] && CT_CFLAGS_FOR_HOST+=" -pipe"
>>      CT_CFLAGS_FOR_HOST+=" ${CT_EXTRA_FLAGS_FOR_HOST}"
>
> Whoohoo! A one-liner that makes it twice faster! Love it :-)
> I'll look at it tomorrow.
>
> Also, I'd like to review your crosstool-NG fork, to see what we can bring
> back upstream, so you get less to maintain in your tree, so it makes it
> easier for you to follow upstream. That item's been basically sitting quite
> high on my TODO-list, but time being sparse, I always post-poned it. I'll
> try to get to it during this cycle.

It's our fault for forking.  Most of the stuff is Linaro specific
(samples, outer build scripts) and the remainder is hacks.

We're going to rebase as part of upstreaming the aarch64 support to
you.  I was reluctant to post it as we needed to pick random binutils
and other versions, but the recent Microblaze work has added all we
need.  FYI, we track things through blueprints and the aarch64
upstreaming is logged at:

 https://launchpad.net/linaro-toolchain-binaries/+spec/upstream-crosstool-ng-aarch64-support

-- Michael

> Do you think you could come up with a list of features / changesets you have
> in your tree that would be suitable for upstreaming?
>
> Also, I'm not used to bazaar. Can you point me to a quick cheat-sheet?
>
> Regards,
> Yann E. MORIN, sleepy at 01:27 AM... Zzzz....
>
> --
> .-----------------.--------------------.------------------.--------------------.
> |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
> | +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
> '------------------------------^-------^------------------^--------------------'

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]