* [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains
@ 2013-05-15 14:22 Markos Chandras
2013-05-26 13:29 ` Thomas Petazzoni
0 siblings, 1 reply; 6+ messages in thread
From: Markos Chandras @ 2013-05-15 14:22 UTC (permalink / raw)
To: buildroot
From: Markos Chandras <markos.chandras@imgtec.com>
The n64 ABI which is supported by the Codesourcery MIPS toolchains,
is only available with MIPS64 so allow these cores to be selected
and used with these toolchains.
Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
---
toolchain/toolchain-external/Config.in | 20 ++++++++++----------
1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in
index a93ada3..a13ee31 100644
--- a/toolchain/toolchain-external/Config.in
+++ b/toolchain/toolchain-external/Config.in
@@ -114,7 +114,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201109
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201209
bool "Sourcery CodeBench MIPS 2012.09"
- depends on BR2_mips || BR2_mipsel
+ depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
@@ -129,7 +129,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201209
Select a MIPS generic core
Disable BR2_SOFT_FLOAT
- MIPS64 big endian glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Disable BR2_SOFT_FLOAT
- MIPS32 O32 little endian glibc
@@ -137,7 +137,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201209
Disable BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
- MIPS64 little endian glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Disable BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
@@ -145,7 +145,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201209
Select a MIPS generic core
Select BR2_SOFT_FLOAT
- MIPS64 big endian soft float glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Select BR2_SOFT_FLOAT
- MIPS32 little endian soft float glibc
@@ -153,7 +153,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201209
Select BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
- MIPS64 little endian soft float glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Select BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
@@ -184,7 +184,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201209
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201203
bool "Sourcery CodeBench MIPS 2012.03"
- depends on BR2_mips || BR2_mipsel
+ depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
@@ -199,7 +199,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201203
Select a MIPS generic core
Disable BR2_SOFT_FLOAT
- MIPS64 big endian glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Disable BR2_SOFT_FLOAT
- MIPS32 O32 little endian glibc
@@ -207,7 +207,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201203
Disable BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
- MIPS64 little endian glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Disable BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
@@ -215,7 +215,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201203
Select a MIPS generic core
Select BR2_SOFT_FLOAT
- MIPS64 big endian soft float glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Select BR2_SOFT_FLOAT
- MIPS32 little endian soft float glibc
@@ -223,7 +223,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201203
Select BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
- MIPS64 little endian soft float glibc
- Select a MIPS generic core
+ Select a MIPS64 generic core
Select the n64 ABI
Select BR2_SOFT_FLOAT
Set BR2_TARGET_OPTIMIZATION to -EL
--
1.7.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains
2013-05-15 14:22 [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains Markos Chandras
@ 2013-05-26 13:29 ` Thomas Petazzoni
2013-05-27 9:05 ` Markos Chandras
0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2013-05-26 13:29 UTC (permalink / raw)
To: buildroot
Dear Markos Chandras,
On Wed, 15 May 2013 15:22:20 +0100, Markos Chandras wrote:
> From: Markos Chandras <markos.chandras@imgtec.com>
>
> The n64 ABI which is supported by the Codesourcery MIPS toolchains,
> is only available with MIPS64 so allow these cores to be selected
> and used with these toolchains.
>
> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
> ---
> toolchain/toolchain-external/Config.in | 20 ++++++++++----------
> 1 files changed, 10 insertions(+), 10 deletions(-)
I've just tested this one, and with the following defconfig:
BR2_mips64el=y
BR2_MIPS_NABI64=y
BR2_TOOLCHAIN_EXTERNAL=y
the Busybox compilation fails with:
In file included from libbb/pw_encrypt.c:89:0:
libbb/pw_encrypt_des.c: In function 'pw_encrypt':
libbb/pw_encrypt_des.c:289:27: internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:769
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://support.codesourcery.com/GNUToolchain/> for instructions.
make[2]: *** [libbb/pw_encrypt.o] Erreur 1
It does not appear with the same toolchain in MIPS32 mode. I agree it's
a toolchain bug, but I'm just wondering in which conditions you tested
your patch and/or if something can be done to avoid the toolchain
breakage.
Best regards,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains
2013-05-26 13:29 ` Thomas Petazzoni
@ 2013-05-27 9:05 ` Markos Chandras
2013-05-27 9:18 ` Thomas Petazzoni
0 siblings, 1 reply; 6+ messages in thread
From: Markos Chandras @ 2013-05-27 9:05 UTC (permalink / raw)
To: buildroot
On 26 May 2013 14:29, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Markos Chandras,
>
> On Wed, 15 May 2013 15:22:20 +0100, Markos Chandras wrote:
>> From: Markos Chandras <markos.chandras@imgtec.com>
>>
>> The n64 ABI which is supported by the Codesourcery MIPS toolchains,
>> is only available with MIPS64 so allow these cores to be selected
>> and used with these toolchains.
>>
>> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
>> ---
>> toolchain/toolchain-external/Config.in | 20 ++++++++++----------
>> 1 files changed, 10 insertions(+), 10 deletions(-)
>
> I've just tested this one, and with the following defconfig:
>
> BR2_mips64el=y
> BR2_MIPS_NABI64=y
> BR2_TOOLCHAIN_EXTERNAL=y
>
> the Busybox compilation fails with:
>
> In file included from libbb/pw_encrypt.c:89:0:
> libbb/pw_encrypt_des.c: In function 'pw_encrypt':
> libbb/pw_encrypt_des.c:289:27: internal compiler error: in gen_rtx_SUBREG, at emit-rtl.c:769
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <https://support.codesourcery.com/GNUToolchain/> for instructions.
> make[2]: *** [libbb/pw_encrypt.o] Erreur 1
>
> It does not appear with the same toolchain in MIPS32 mode. I agree it's
> a toolchain bug, but I'm just wondering in which conditions you tested
> your patch and/or if something can be done to avoid the toolchain
> breakage.
>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, Free Electrons
> Kernel, drivers, real-time and embedded Linux
> development, consulting, training and support.
> http://free-electrons.com
Hi Thomas,
I did limited testing and I haven't seen this problem but I haven't
build busybox to be honest.
However, on the release notes they say they support MIPS64/n64
https://sourcery.mentor.com/GNUToolchain/release2358?@template=datasheet
so I just allowed buildroot to select this combination as well.
My understanding is that the compilation problem is orthogonal to
mip64/n64 patch in the sense
that forbidding the combination just hides the problem for now :)
--
Regards,
Markos Chandras
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains
2013-05-27 9:05 ` Markos Chandras
@ 2013-05-27 9:18 ` Thomas Petazzoni
2013-05-27 15:11 ` Markos Chandras
0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2013-05-27 9:18 UTC (permalink / raw)
To: buildroot
Dear Markos Chandras,
On Mon, 27 May 2013 10:05:10 +0100, Markos Chandras wrote:
> I did limited testing and I haven't seen this problem but I haven't
> build busybox to be honest.
> However, on the release notes they say they support MIPS64/n64
> https://sourcery.mentor.com/GNUToolchain/release2358?@template=datasheet
>
> so I just allowed buildroot to select this combination as well.
>
> My understanding is that the compilation problem is orthogonal to
> mip64/n64 patch in the sense
> that forbidding the combination just hides the problem for now :)
I agree that the problem is orthogonal, but having an external
toolchain that isn't even capable of building Busybox worries me a
little bit. This means that an user selecting mips64 and external
toolchain, and keep all the other options as default, will see a
failing build. Not really nice.
We have various issues with the toolchain from Mentor Graphics. It
would be nice if we could have some contact to help solve those issues.
Best regards,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains
2013-05-27 9:18 ` Thomas Petazzoni
@ 2013-05-27 15:11 ` Markos Chandras
2013-06-07 8:53 ` Markos Chandras
0 siblings, 1 reply; 6+ messages in thread
From: Markos Chandras @ 2013-05-27 15:11 UTC (permalink / raw)
To: buildroot
On 27 May 2013 10:18, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Markos Chandras,
>
> On Mon, 27 May 2013 10:05:10 +0100, Markos Chandras wrote:
>
>> I did limited testing and I haven't seen this problem but I haven't
>> build busybox to be honest.
>> However, on the release notes they say they support MIPS64/n64
>> https://sourcery.mentor.com/GNUToolchain/release2358?@template=datasheet
>>
>> so I just allowed buildroot to select this combination as well.
>>
>> My understanding is that the compilation problem is orthogonal to
>> mip64/n64 patch in the sense
>> that forbidding the combination just hides the problem for now :)
>
> I agree that the problem is orthogonal, but having an external
> toolchain that isn't even capable of building Busybox worries me a
> little bit. This means that an user selecting mips64 and external
> toolchain, and keep all the other options as default, will see a
> failing build. Not really nice.
Ok I agree. I will try an out-of-buildroot build for busybox using
this toolchain just to rule out specific buildroot problems. If that
fails too then I will see if there is a way to report this problem.
--
Regards,
Markos Chandras
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains
2013-05-27 15:11 ` Markos Chandras
@ 2013-06-07 8:53 ` Markos Chandras
0 siblings, 0 replies; 6+ messages in thread
From: Markos Chandras @ 2013-06-07 8:53 UTC (permalink / raw)
To: buildroot
On 27 May 2013 16:11, Markos Chandras <markos.chandras@gmail.com> wrote:
> On 27 May 2013 10:18, Thomas Petazzoni
> <thomas.petazzoni@free-electrons.com> wrote:
>> Dear Markos Chandras,
>>
>> On Mon, 27 May 2013 10:05:10 +0100, Markos Chandras wrote:
>>
>>> I did limited testing and I haven't seen this problem but I haven't
>>> build busybox to be honest.
>>> However, on the release notes they say they support MIPS64/n64
>>> https://sourcery.mentor.com/GNUToolchain/release2358?@template=datasheet
>>>
>>> so I just allowed buildroot to select this combination as well.
>>>
>>> My understanding is that the compilation problem is orthogonal to
>>> mip64/n64 patch in the sense
>>> that forbidding the combination just hides the problem for now :)
>>
>> I agree that the problem is orthogonal, but having an external
>> toolchain that isn't even capable of building Busybox worries me a
>> little bit. This means that an user selecting mips64 and external
>> toolchain, and keep all the other options as default, will see a
>> failing build. Not really nice.
>
> Ok I agree. I will try an out-of-buildroot build for busybox using
> this toolchain just to rule out specific buildroot problems. If that
> fails too then I will see if there is a way to report this problem.
>
> --
> Regards,
> Markos Chandras
Thomas,
busybox now builds on the 2013.05 toolchain. I will send a patch for
the version bump and add MIPS64 support as well.
--
Regards,
Markos Chandras
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-06-07 8:53 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-15 14:22 [Buildroot] [PATCH] external-toolchain: Allow MIPS64 for Codesourcery MIPS toolchains Markos Chandras
2013-05-26 13:29 ` Thomas Petazzoni
2013-05-27 9:05 ` Markos Chandras
2013-05-27 9:18 ` Thomas Petazzoni
2013-05-27 15:11 ` Markos Chandras
2013-06-07 8:53 ` Markos Chandras
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox