Message ID | 884EA965490E3C4D8E66AEF41E98025006BF3A@ezex10.ezchip.com |
---|---|
State | Rejected |
Headers | show |
Dear Noam Camus, On Sun, 23 Feb 2014 08:28:55 +0000, Noam Camus wrote: > external toolchain passes -mcpu=arc700 > However compiler is familiar with -mcpu=ARC700 > > Signed-off-by: Noam Camus <noamc@ezchip.com> > --- > arch/Config.in.arc | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/arch/Config.in.arc b/arch/Config.in.arc index 60b59f0..53e7052 100644 > --- a/arch/Config.in.arc > +++ b/arch/Config.in.arc > @@ -11,4 +11,5 @@ config BR2_ENDIAN > default "BIG" if BR2_arceb > > config BR2_GCC_TARGET_CPU > + default "ARC700" if BR2_TOOLCHAIN_EXTERNAL > default "arc700" We clearly don't want to use BR2_TOOLCHAIN_EXTERNAL here as a condition. What is the official value? Is it -mcpu=arc700 or -mcpu=ARC700 ? Maybe the existing arc700 value was wrong and should just be fixed? Or does the value depends on the gcc version? Thanks, Thomas
Hi Thomas, Using external toolchain than BR2_GCC_TARGET_CPU is passed to GCC by -mcpu Using buildroot toolchain than BR2_GCC_TARGET_CPU is passed to configure by --with-cpu ARC GCC likes to get -mcpu=ARC700 However through configure I am not sure but I think that config.gcc script is involved and it likes to get arc*. Maybe my patch is a workaround to make external toolchain work for ARC and complete solution is to change ARC GCC. Noam -----Original Message----- From: Thomas Petazzoni [mailto:thomas.petazzoni@free-electrons.com] Sent: Sunday, February 23, 2014 11:48 AM To: Noam Camus Cc: buildroot@busybox.net Subject: Re: [Buildroot] [PATCH] external toolchain: [ARC] gcc cpu parameter Dear Noam Camus, On Sun, 23 Feb 2014 08:28:55 +0000, Noam Camus wrote: > external toolchain passes -mcpu=arc700 However compiler is familiar > with -mcpu=ARC700 > > Signed-off-by: Noam Camus <noamc@ezchip.com> > --- > arch/Config.in.arc | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/arch/Config.in.arc b/arch/Config.in.arc index > 60b59f0..53e7052 100644 > --- a/arch/Config.in.arc > +++ b/arch/Config.in.arc > @@ -11,4 +11,5 @@ config BR2_ENDIAN > default "BIG" if BR2_arceb > > config BR2_GCC_TARGET_CPU > + default "ARC700" if BR2_TOOLCHAIN_EXTERNAL > default "arc700" We clearly don't want to use BR2_TOOLCHAIN_EXTERNAL here as a condition. What is the official value? Is it -mcpu=arc700 or -mcpu=ARC700 ? Maybe the existing arc700 value was wrong and should just be fixed? Or does the value depends on the gcc version? Thanks, Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Noam, Thomas, All, On 2014-02-23 10:57 +0000, Noam Camus spake thusly: > Using external toolchain than BR2_GCC_TARGET_CPU is passed to GCC by > -mcpu > Using buildroot toolchain than BR2_GCC_TARGET_CPU is passed to configure > by --with-cpu > > ARC GCC likes to get -mcpu=ARC700 > However through configure I am not sure but I think that config.gcc > script is involved and it likes to get arc*. From what I can see in gcc master: - ./configure expects: --with-cpu=arc700 - gcc expects : -mpcu=ARC700 Yes, that's it... :-/ Regards, Yann E. MORIN.
Dear Noam Camus, (It would be nice if you could avoid top-posting. It is considered a bad practice in most open-source circles. See http://en.wikipedia.org/wiki/Posting_style#Top-posting vs. http://en.wikipedia.org/wiki/Posting_style#Bottom-posting. Thanks!) On Sun, 23 Feb 2014 10:57:06 +0000, Noam Camus wrote: > Using external toolchain than BR2_GCC_TARGET_CPU is passed to GCC by -mcpu > Using buildroot toolchain than BR2_GCC_TARGET_CPU is passed to configure by --with-cpu Passing -mcpu or --with-cpu is already taken care of by Buildroot depending on the case. However, normally, gcc accepts the same possible values for both -mcpu and --with-cpu. > ARC GCC likes to get -mcpu=ARC700 > However through configure I am not sure but I think that config.gcc script is involved and it likes to get arc*. > > Maybe my patch is a workaround to make external toolchain work for ARC and complete solution is to change ARC GCC. I'm Cc'ing Anton, from Synposys, to get more details about this. Noam, which ARC external toolchain are you using? Maybe it's an older ARC toolchain, and Synopsys has since then changed the possible -mcpu values? Best regards, Thomas
Hi Thomas, > > I'm Cc'ing Anton, from Synposys, to get more details about this. I've connected Noam and compiler engineering, so they can discuss what to do about this inconsistency. > > Noam, which ARC external toolchain are you using? Maybe it's an older > ARC toolchain, and Synopsys has since then changed the possible -mcpu > values? Nope, this is the same for the current tools as well :-( Anton > > Best regards, > > Thomas > -- > Thomas Petazzoni, CTO, Free Electrons > Embedded Linux, Kernel and Android engineering > http://free-electrons.com
Dear Noam Camus, On Sun, 23 Feb 2014 08:28:55 +0000, Noam Camus wrote: > external toolchain passes -mcpu=arc700 > However compiler is familiar with -mcpu=ARC700 > > Signed-off-by: Noam Camus <noamc@ezchip.com> > --- > arch/Config.in.arc | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/arch/Config.in.arc b/arch/Config.in.arc index 60b59f0..53e7052 100644 > --- a/arch/Config.in.arc > +++ b/arch/Config.in.arc > @@ -11,4 +11,5 @@ config BR2_ENDIAN > default "BIG" if BR2_arceb > > config BR2_GCC_TARGET_CPU > + default "ARC700" if BR2_TOOLCHAIN_EXTERNAL > default "arc700" Since there has been no feedback about this patch since February 2014, I've marked it as Rejected in patchwork, as the proposed solution is not acceptable. Do not hesitate to get back to us with a more appropriate solution. Thanks! Thomas
diff --git a/arch/Config.in.arc b/arch/Config.in.arc index 60b59f0..53e7052 100644 --- a/arch/Config.in.arc +++ b/arch/Config.in.arc @@ -11,4 +11,5 @@ config BR2_ENDIAN default "BIG" if BR2_arceb config BR2_GCC_TARGET_CPU + default "ARC700" if BR2_TOOLCHAIN_EXTERNAL default "arc700"
external toolchain passes -mcpu=arc700 However compiler is familiar with -mcpu=ARC700 Signed-off-by: Noam Camus <noamc@ezchip.com> --- arch/Config.in.arc | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) -- 1.7.1