summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.h
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Driver/Tools.h')
-rw-r--r--clang/lib/Driver/Tools.h59
1 files changed, 54 insertions, 5 deletions
diff --git a/clang/lib/Driver/Tools.h b/clang/lib/Driver/Tools.h
index 6577ce92b92..253c5555ec9 100644
--- a/clang/lib/Driver/Tools.h
+++ b/clang/lib/Driver/Tools.h
@@ -59,7 +59,8 @@ private:
const InputInfo &Output,
const InputInfoList &Inputs) const;
- void AddAArch64TargetArgs(const llvm::opt::ArgList &Args,
+ void AddAArch64TargetArgs(const llvm::Triple &EffectiveTriple,
+ const llvm::opt::ArgList &Args,
llvm::opt::ArgStringList &CmdArgs) const;
void AddARMTargetArgs(const llvm::Triple &Triple,
const llvm::opt::ArgList &Args,
@@ -114,6 +115,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -133,6 +135,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -160,6 +163,7 @@ public:
bool hasIntegratedAssembler() const override { return true; }
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
@@ -219,6 +223,7 @@ public:
llvm::opt::ArgStringList &CmdArgs) const;
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -234,6 +239,7 @@ public:
llvm::opt::ArgStringList &CmdArgs) const;
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -248,6 +254,7 @@ public:
bool hasIntegratedCPP() const override { return false; }
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -263,6 +270,7 @@ public:
bool hasIntegratedCPP() const override;
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -324,6 +332,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -363,6 +372,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -383,6 +393,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -395,6 +406,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -409,6 +421,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -422,6 +435,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -438,6 +452,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -451,6 +466,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -467,6 +483,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -480,6 +497,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -496,6 +514,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -509,6 +528,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -525,6 +545,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -538,6 +559,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -553,6 +575,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -566,6 +589,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -578,6 +602,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -591,6 +616,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -607,6 +633,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -620,6 +647,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -636,6 +664,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -649,6 +678,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -665,6 +695,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -678,6 +709,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -700,6 +732,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -716,6 +749,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
@@ -737,6 +771,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -750,11 +785,13 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
private:
- void AddLibGCC(const llvm::opt::ArgList &Args, ArgStringList &CmdArgs) const;
+ void AddLibGCC(const llvm::Triple &EffectiveTriple,
+ const llvm::opt::ArgList &Args, ArgStringList &CmdArgs) const;
};
} // end namespace MinGW
@@ -766,7 +803,9 @@ enum class FloatABI {
Hard,
};
-FloatABI getARMFloatABI(const ToolChain &TC, const llvm::opt::ArgList &Args);
+FloatABI getARMFloatABI(const ToolChain &TC,
+ const llvm::Triple &EffectiveTriple,
+ const llvm::opt::ArgList &Args);
} // end namespace arm
namespace ppc {
@@ -800,6 +839,7 @@ public:
bool hasIntegratedCPP() const override { return false; }
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -812,6 +852,7 @@ public:
bool isLinkJob() const override { return true; }
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -826,6 +867,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -840,6 +882,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -855,6 +898,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -867,6 +911,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -884,6 +929,7 @@ public:
bool isLinkJob() const override { return true; }
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -898,8 +944,8 @@ public:
bool hasIntegratedCPP() const override { return false; }
void ConstructJob(Compilation &C, const JobAction &JA,
- const InputInfo &Output,
- const InputInfoList &Inputs,
+ const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -914,6 +960,7 @@ public:
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output,
const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -932,6 +979,7 @@ class LLVM_LIBRARY_VISIBILITY Assembler : public Tool {
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
@@ -948,6 +996,7 @@ class LLVM_LIBRARY_VISIBILITY Linker : public Tool {
void ConstructJob(Compilation &C, const JobAction &JA,
const InputInfo &Output, const InputInfoList &Inputs,
+ const llvm::Triple &EffectiveTriple,
const llvm::opt::ArgList &TCArgs,
const char *LinkingOutput) const override;
};
OpenPOWER on IntegriCloud