From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2] config.mk: use memoization in cc-option macro to speed up compilation
Date: Sat, 05 Nov 2011 16:02:45 +0100 [thread overview]
Message-ID: <4EB55015.9080903@aribaud.net> (raw)
In-Reply-To: <4EB53D79.7090207@googlemail.com>
Hi Daniel,
Le 05/11/2011 14:43, Daniel Schwierzeck a ?crit :
> Hi Albert,
>
> On 05.11.2011 10:16, Albert ARIBAUD wrote:
>> Hi all,
>>
>> Le 04/11/2011 18:56, Wolfgang Denk a ?crit :
>>> Dear Daniel Schwierzeck,
>>>
>>> In
>>> message<CACUy__XY1873+dT-s=-GyPeBq5hnYsmYwWt-gxEXiwY97EcGdg@mail.gmail.com>
>>>
>>> you wrote:
>>>>
>>>> Should we change it? is the semantic still the same?
>>>
>>> I'm not sure. At first reading it doesn't look really the same to me.
>>
>> They are not, at least for ELDK4.2.
>>
>> The only difference is in -mabi options, where the change would reduce
>> "-mabi=apcs-gnu -mabi=aapcs-linux" to "-mabi=aapcs-linux".
>>
>> apcs-gnu, IIUC, is 'old ABI', while 'aapcs-linux' is 'new ABI', aka
>> eabi. Most of the toolchains I see are eabi (ELDK and CS notably). There
>> may be 'old ABI' toolchains out there, but I don't think they are old
>> ABI either.
>>
>> Anyway, I've just tried ./MAKEALL edminiv2 with ELD42 and a couple of CS
>> toolchains, and nowhere in the log does -mabi=apcs-gnu show up -- the
>> gcc invocations only have -mabi=aapcs-linux.
>
> Looks like I read it wrong. So you always want "-mabi=apcs-gnu
> -mabi=aapcs-linux -mno-thumb-interwork" in $(PF_CPPFLAGS_ABI) with EABI?
> Sorry but I am not an ARM expert ;)
No, I don't want that. :)
The problem I see is having two conflicting -mabi options,
-mabi=apcs-gnu and -mabi=aapcs-linux, in the same command line. There
should be only one -- and it should be the same across the whole U-Boot
building process.
The duplicate -mno-thumb-interwork does not worry me fronm a functional
standpoint; it's just a waste of space, that's all.
>> I've also tested making ED Mini V2 with and without the patch but
>> without Daniel's proposed change to arch/arm/config.mk, and there is no
>> difference in build commands (except that for some reason the patch
>> inserts multiple spaces between some gcc invocation options.
>
> I guess this comes from making the macros more readable. Maybe I can
> optimize this.
>
>>
>> Daniel, what do you mean with "does not work correctly"?
>
> that the generated cache file looks not right
>
> CC_OPTIONS += -mabi=apcs-gnu
> CC_OPTIONS_NOP += -mabi=apcs-gnu
> CC_OPTIONS += -mno-thumb-interwork
> CC_OPTIONS += -mabi=aapcs-linux -mno-thumb-interwork
I'm not a makefile expert, so "looks not right" is a bit meaningless to
me. If "not right" means "there are several conflicting -mabi options
and there are repeated -mno-thumb-interwork options" then I agree with
your "does not look right" statement.
> But if you want "-mabi=apcs-gnu -mabi=aapcs-linux -mno-thumb-interwork"
> then it should already work correctly without my change in
> arch/arm/config.mk.
As I said, no, I don't want that. I want the right -mabi option only,
and I'd like a single -mno-thumb-interwork option.
But what I don't understand is the discrepancy which I see between the
CC_OPTIONS resulting from include/generated/cc_options.mk and the actual
command line options used to generate e.g. edminiv2.
> Best regards,
> Daniel
Amicalement,
--
Albert.
next prev parent reply other threads:[~2011-11-05 15:02 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-02 18:46 [U-Boot] [PATCH] config.mk: use memoization in cc-option macro to speed up compilation Daniel Schwierzeck
2011-11-02 20:39 ` Simon Glass
2011-11-02 21:36 ` Daniel Schwierzeck
2011-11-03 19:47 ` Wolfgang Denk
2011-11-04 12:53 ` [U-Boot] [PATCH v2] " Daniel Schwierzeck
2011-11-04 16:32 ` Simon Glass
2011-11-04 17:15 ` Daniel Schwierzeck
2011-11-04 17:31 ` Daniel Schwierzeck
2011-11-04 17:56 ` Wolfgang Denk
2011-11-05 9:16 ` Albert ARIBAUD
2011-11-05 13:30 ` Wolfgang Denk
2011-11-05 13:43 ` Daniel Schwierzeck
2011-11-05 15:02 ` Albert ARIBAUD [this message]
2011-11-07 15:26 ` [U-Boot] [PATCH v3] " Daniel Schwierzeck
2011-11-07 21:07 ` Wolfgang Denk
[not found] ` <1320410756-30391-1-git-send-email-daniel.schwierzeck@googlemail.com>
2011-11-05 7:17 ` [U-Boot] [PATCH v2] " Aneesh V
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EB55015.9080903@aribaud.net \
--to=albert.u.boot@aribaud.net \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox