summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/tools/clang/lib/Driver/Tools.h
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2013-02-22 22:40:10 +0000
committerdim <dim@FreeBSD.org>2013-02-22 22:40:10 +0000
commit4432e4c15f8200e334bbff080e7a466c41f1fadd (patch)
tree601d7c0cad38c82e510c4438e525d8ffe5e323ca /contrib/llvm/tools/clang/lib/Driver/Tools.h
parent3c85c4e0a01f81b81007aca4f3ee4562755f34ba (diff)
downloadFreeBSD-src-4432e4c15f8200e334bbff080e7a466c41f1fadd.zip
FreeBSD-src-4432e4c15f8200e334bbff080e7a466c41f1fadd.tar.gz
Pull in r172354 from upstream clang trunk:
Refactor the x86 CPU name logic in the driver and pass -march and -mcpu flag information down from the Clang driver into the Gold linker plugin for LTO. This allows specifying -march on the linker commandline and should hopefully have it pass all the way through to the LTO optimizer. Fixes PR14697. Pull in r175919 from upstream clang trunk: Driver: Pass down the -march setting down to -cc1as on x86 too. The assembler historically didn't make use of any target features, but this has changed when support for old CPUs that don't support long nops was added. This should fix the long nops that still occurred in crt*.o, and possibly other object files, if the system was compiled for a CPU that does not support those, such as Geode. Note that gcc on i386 also does not pass through any -march, -mcpu or -mtune setting to gas, but this has not caused any trouble yet, because gas defaults to i386. Reported by: lev MFC after: 1 week
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Driver/Tools.h')
-rw-r--r--contrib/llvm/tools/clang/lib/Driver/Tools.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/contrib/llvm/tools/clang/lib/Driver/Tools.h b/contrib/llvm/tools/clang/lib/Driver/Tools.h
index 5898c66..7ac43ec 100644
--- a/contrib/llvm/tools/clang/lib/Driver/Tools.h
+++ b/contrib/llvm/tools/clang/lib/Driver/Tools.h
@@ -68,6 +68,7 @@ namespace tools {
/// \brief Clang integrated assembler tool.
class LLVM_LIBRARY_VISIBILITY ClangAs : public Tool {
void AddARMTargetArgs(const ArgList &Args, ArgStringList &CmdArgs) const;
+ void AddX86TargetArgs(const ArgList &Args, ArgStringList &CmdArgs) const;
public:
ClangAs(const ToolChain &TC) : Tool("clang::as",
"clang integrated assembler", TC) {}
OpenPOWER on IntegriCloud