summaryrefslogtreecommitdiffstats
path: root/abs/extra/llvm/enable-lto.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/llvm/enable-lto.patch')
-rw-r--r--abs/extra/llvm/enable-lto.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/abs/extra/llvm/enable-lto.patch b/abs/extra/llvm/enable-lto.patch
new file mode 100644
index 0000000..3205fbf
--- /dev/null
+++ b/abs/extra/llvm/enable-lto.patch
@@ -0,0 +1,32 @@
+Index: lib/Driver/ToolChains.cpp
+===================================================================
+--- lib/Driver/ToolChains.cpp (revision 123373)
++++ lib/Driver/ToolChains.cpp (working copy)
+@@ -1398,7 +1398,7 @@
+ PPaths.push_back(Twine(GCCInstallation.getParentLibPath() + "/../" +
+ GCCInstallation.getTriple() + "/bin").str());
+
+- Linker = GetProgramPath("ld");
++ Linker = GetProgramPath("ld.gold");
+
+ LinuxDistro Distro = DetectLinuxDistro(Arch);
+
+Index: lib/Driver/Tools.cpp
+===================================================================
+--- lib/Driver/Tools.cpp (revision 123373)
++++ lib/Driver/Tools.cpp (working copy)
+@@ -3412,11 +3412,11 @@
+ // Tell the linker to load the plugin. This has to come before AddLinkerInputs
+ // as gold requires -plugin to come before any -plugin-opt that -Wl might
+ // forward.
+- if (D.IsUsingLTO(Args) || Args.hasArg(options::OPT_use_gold_plugin)) {
++ // if (D.IsUsingLTO(Args) || Args.hasArg(options::OPT_use_gold_plugin)) {
+ CmdArgs.push_back("-plugin");
+- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so";
++ std::string Plugin = ToolChain.getDriver().Dir + "/../lib/llvm/LLVMgold.so";
+ CmdArgs.push_back(Args.MakeArgString(Plugin));
+- }
++ // }
+
+ AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs);
+ }