Switch krait to use -mcpu=cortex-a15 for assembler tool invocations.
Summary: Using -no-integrated-as causes -mcpu=krait to be transformed into -march=armv7-a today. This precludes the assembler from using instructions like sdiv, which are present for krait. Cortex-a15 is the closest subset of functionality for krait, so we should switch the assembler to use that instead. Reviewers: cfe-commits, apazos, weimingz Subscribers: aemerson Differential Revision: http://reviews.llvm.org/D17874 llvm-svn: 262742
This commit is contained in:
@@ -8706,12 +8706,12 @@ void gnutools::Assembler::ConstructJob(Compilation &C, const JobAction &JA,
|
||||
Args.AddLastArg(CmdArgs, options::OPT_march_EQ);
|
||||
|
||||
// FIXME: remove krait check when GNU tools support krait cpu
|
||||
// for now replace it with -march=armv7-a to avoid a lower
|
||||
// for now replace it with -mcpu=cortex-a15 to avoid a lower
|
||||
// march from being picked in the absence of a cpu flag.
|
||||
Arg *A;
|
||||
if ((A = Args.getLastArg(options::OPT_mcpu_EQ)) &&
|
||||
StringRef(A->getValue()).lower() == "krait")
|
||||
CmdArgs.push_back("-march=armv7-a");
|
||||
CmdArgs.push_back("-mcpu=cortex-a15");
|
||||
else
|
||||
Args.AddLastArg(CmdArgs, options::OPT_mcpu_EQ);
|
||||
Args.AddLastArg(CmdArgs, options::OPT_mfpu_EQ);
|
||||
|
||||
Reference in New Issue
Block a user