diff options
author | Tom Roeder <tmroeder@google.com> | 2014-04-25 21:46:51 +0000 |
---|---|---|
committer | Tom Roeder <tmroeder@google.com> | 2014-04-25 21:46:51 +0000 |
commit | 817f5e2fa137b15b536c952bcc1e75b1dd34b4b1 (patch) | |
tree | f514566a78e689fcc0c138b83fde6342a4c26c9a /lib/LTO | |
parent | c744a371534456c1bb6557f053705f066ac33b62 (diff) | |
download | llvm-817f5e2fa137b15b536c952bcc1e75b1dd34b4b1.tar.gz llvm-817f5e2fa137b15b536c952bcc1e75b1dd34b4b1.tar.bz2 llvm-817f5e2fa137b15b536c952bcc1e75b1dd34b4b1.tar.xz |
Add an -mattr option to the gold plugin to support subtarget features in LTO
This adds support for an -mattr option to the gold plugin and to llvm-lto. This
allows the caller to specify details of the subtarget architecture, like +aes,
or +ssse3 on x86. Note that this requires a change to the include/llvm-c/lto.h
interface: it adds a function lto_codegen_set_attr and it increments the
version of the interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207279 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/LTO')
-rw-r--r-- | lib/LTO/LTOCodeGenerator.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/LTO/LTOCodeGenerator.cpp b/lib/LTO/LTOCodeGenerator.cpp index da74c57c58..105fb6900d 100644 --- a/lib/LTO/LTOCodeGenerator.cpp +++ b/lib/LTO/LTOCodeGenerator.cpp @@ -301,8 +301,9 @@ bool LTOCodeGenerator::determineTarget(std::string &errMsg) { break; } - // construct LTOModule, hand over ownership of module and target - SubtargetFeatures Features; + // Construct LTOModule, hand over ownership of module and target. Use MAttr as + // the default set of features. + SubtargetFeatures Features(MAttr); Features.getDefaultSubtargetFeatures(Triple); std::string FeatureStr = Features.getString(); // Set a default CPU for Darwin triples. |