[llvmlinux] [PATCH] Add support for the Malta target, MIPS CodeSourcery toolchains, and switched away from EABI

Daniel Sanders Daniel.Sanders at imgtec.com
Fri Aug 8 17:40:47 UTC 2014


Thanks for committing it and for the follow up fixes. Initial/partial support for -mno-abicalls was committed to LLVM today. It's not fully implemented  at this point but I'll see how far the kernel build gets now that the option is accepted.

> I would also suggest adding
> 
>      MIPS_ENDIAN := little
> 
> to the Makefile so someone trying make kernel-build would get something
> by default.  I will apply the patch as sent for now and await further patches.

I'm a little confused by this. arch/mips/mips.mk already sets the default value with 'MIPS_ENDIAN ?= little'.

> -----Original Message-----
> From: Charlebois, Mark [mailto:mcharleb at quicinc.com]
> Sent: 07 August 2014 20:05
> To: Daniel Sanders; llvmlinux at lists.linuxfoundation.org
> Subject: RE: [llvmlinux] [PATCH] Add support for the Malta target, MIPS
> CodeSourcery toolchains, and switched away from EABI
> 
> For clang there is also an issue in:
> 
>       src/linux/scripts/recordmcount.pl
> 
> -mno-abicalls is not understood by clang.
> 
> I would also suggest adding
> 
>      MIPS_ENDIAN := little
> 
> to the Makefile so someone trying make kernel-build would get something
> by default.  I will apply the patch as sent for now and await further patches.
> 
> Thanks,
> 
> -Mark
> ________________________________________
> From: llvmlinux-bounces at lists.linuxfoundation.org [llvmlinux-
> bounces at lists.linuxfoundation.org] on behalf of Daniel Sanders
> [Daniel.Sanders at imgtec.com]
> Sent: Thursday, August 07, 2014 2:03 AM
> To: llvmlinux at lists.linuxfoundation.org
> Subject: [llvmlinux] [PATCH] Add support for the Malta target, MIPS
> CodeSourcery toolchains, and switched away from EABI
> 
> * Add support for CodeSourcery toolchain
> * Changed triple from mips-none-eabi to mips-unknown-linux.
>   This is because clang for MIPS does not support EABI yet.
> * Added support for big and little endian
>   It's not currently possible to build for big and little endian at the same time
> since some paths conflict.
> * Added partial support for MIPS64 in that the correct qemu binary will be
> called.
> 
> This patch is based on work by Matheus Almeida.
> 
> Signed-off-by: Daniel Sanders <daniel.sanders at imgtec.com>
> ---
> 
> After this patch, 'make kernel-gcc-build' and 'make test-gcc' will work for
> both big and little endian with the CodeSourcery toolchain targeting Malta.
> There will be follow up patches for the clang build (mostly fixing VLAIS issues)
> once I've tested that.
> 
> I can split this up into separate toolchain/target patches if you prefer.


More information about the LLVMLinux mailing list