[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