diff options
author | Daniel Dunbar <daniel@zuster.org> | 2011-02-09 17:54:19 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2011-02-09 17:54:19 +0000 |
commit | 17d3fea677753e6e3e82ffe2cbdeccbf5f2e7497 (patch) | |
tree | ca23efbc57f167ab05f2747be474dd063704e969 /lib/Frontend | |
parent | 086eb9f93eadbc63a12770e3457dfe2c6d8f7c30 (diff) |
Driver/Frontend: Wire up -mregparm=.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125201 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend')
-rw-r--r-- | lib/Frontend/CompilerInvocation.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Frontend/CompilerInvocation.cpp b/lib/Frontend/CompilerInvocation.cpp index 6fc7373822..3108477e3a 100644 --- a/lib/Frontend/CompilerInvocation.cpp +++ b/lib/Frontend/CompilerInvocation.cpp @@ -202,6 +202,10 @@ static void CodeGenOptsToArgs(const CodeGenOptions &Opts, Res.push_back("-fobjc-dispatch-method=non-legacy"); break; } + if (Opts.NumRegisterParameters) { + Res.push_back("-mregparm"); + Res.push_back(llvm::utostr(Opts.NumRegisterParameters)); + } if (Opts.RelaxAll) Res.push_back("-mrelax-all"); if (Opts.SoftFloat) @@ -928,6 +932,7 @@ static void ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK, Opts.NoInfsFPMath = Opts.NoNaNsFPMath = Args.hasArg(OPT_cl_finite_math_only)|| Args.hasArg(OPT_cl_fast_relaxed_math); Opts.NoZeroInitializedInBSS = Args.hasArg(OPT_mno_zero_initialized_in_bss); + Opts.NumRegisterParameters = Args.getLastArgIntValue(OPT_mregparm, 0, Diags); Opts.RelaxAll = Args.hasArg(OPT_mrelax_all); Opts.OmitLeafFramePointer = Args.hasArg(OPT_momit_leaf_frame_pointer); Opts.SoftFloat = Args.hasArg(OPT_msoft_float); |