summaryrefslogtreecommitdiffstats
path: root/lld
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2015-06-15 02:46:18 +0000
committerRui Ueyama <ruiu@google.com>2015-06-15 02:46:18 +0000
commit095409e9e87cdbdf8edc11877fd0f7962ae1b479 (patch)
treea2b264447dae3639fa75acbd94f93f0913ba04b2 /lld
parentd0ca8d7edd96c8a99736c19d15bbfd15e91df7f1 (diff)
downloadbcm5719-llvm-095409e9e87cdbdf8edc11877fd0f7962ae1b479.tar.gz
bcm5719-llvm-095409e9e87cdbdf8edc11877fd0f7962ae1b479.zip
COFF: Add a brief description about LTO.
llvm-svn: 239714
Diffstat (limited to 'lld')
-rw-r--r--lld/COFF/README.md14
1 files changed, 14 insertions, 0 deletions
diff --git a/lld/COFF/README.md b/lld/COFF/README.md
index 1b2f1375de6..a2d438be47c 100644
--- a/lld/COFF/README.md
+++ b/lld/COFF/README.md
@@ -191,6 +191,20 @@ We created an experimental multi-threaded linker using the Microsoft
ConcRT concurrency library, and it was able to link itself in 0.5
seconds, so we think the design is promising.
+Link-Time Optimization
+----------------------
+
+LTO is implemented by handling LLVM bitcode files as input files.
+The linker resolves symbols in bitcode files normally. If all symbols
+are successfully resolved, it then calls an LLVM libLTO function
+with all bitcode files to convert them to one big regular COFF file.
+Finally, the linker replaces bitcode symbols with COFF symbols,
+so that we can link the input files as if they were in COFF format
+from the beginning.
+
+The details are described in this document.
+http://llvm.org/docs/LinkTimeOptimization.html
+
Glossary
--------
OpenPOWER on IntegriCloud