summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2017-01-26 01:52:05 +0000
committerRui Ueyama <ruiu@google.com>2017-01-26 01:52:05 +0000
commitec29bee7ad21857c102ae88d13a37afa1de86ce9 (patch)
treebae07a3341fb943bcef4b454006bdb27feef2b79
parent419634bdb82dbed6215c9577223e70e4c7543c55 (diff)
downloadbcm5719-llvm-ec29bee7ad21857c102ae88d13a37afa1de86ce9.tar.gz
bcm5719-llvm-ec29bee7ad21857c102ae88d13a37afa1de86ce9.zip
Add file comments to Driver.cpp.
llvm-svn: 293130
-rw-r--r--lld/ELF/Driver.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/lld/ELF/Driver.cpp b/lld/ELF/Driver.cpp
index 2b358251610..92370ab1ec3 100644
--- a/lld/ELF/Driver.cpp
+++ b/lld/ELF/Driver.cpp
@@ -6,6 +6,22 @@
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+//
+// The driver drives the entire linking process. It is responsible for
+// parsing command line options and doing whatever it is instructed to do.
+//
+// One notable thing in the LLD's driver when compared to other linkers is
+// that the LLD's driver is agnostic on the host operating system.
+// Other linkers usually have implicit default values (such as a dynamic
+// linker path or library paths) for each host OS.
+//
+// I don't think implicit default values are useful because they are
+// usually explicitly specified by the compiler driver. They can even
+// be harmful when you are doing cross-linking. Therefore, in LLD, we
+// simply trust the compiler driver to pass all required options to us
+// and don't try to make effort on our side.
+//
+//===----------------------------------------------------------------------===//
#include "Driver.h"
#include "Config.h"
OpenPOWER on IntegriCloud