diff options
-rw-r--r-- | lld/docs/open_projects.rst | 3 | ||||
-rw-r--r-- | lld/include/lld/Core/TODO.txt | 9 | ||||
-rw-r--r-- | lld/lib/Core/TODO.txt | 11 | ||||
-rw-r--r-- | lld/tools/lld/TODO.txt | 14 |
4 files changed, 30 insertions, 7 deletions
diff --git a/lld/docs/open_projects.rst b/lld/docs/open_projects.rst index fd3a681ecd3..e7b631bea39 100644 --- a/lld/docs/open_projects.rst +++ b/lld/docs/open_projects.rst @@ -5,8 +5,9 @@ Open Projects .. include:: ../include/lld/Core/TODO.txt .. include:: ../lib/Core/TODO.txt +.. include:: ../tools/lld/TODO.txt Documentation TODOs -------------------- +~~~~~~~~~~~~~~~~~~~ .. todolist:: diff --git a/lld/include/lld/Core/TODO.txt b/lld/include/lld/Core/TODO.txt index 6a194392ba0..8888c763ef6 100644 --- a/lld/include/lld/Core/TODO.txt +++ b/lld/include/lld/Core/TODO.txt @@ -6,5 +6,12 @@ include/lld/Core abstraction only works for returning low level OS errors. It does not work for describing formatting issues. +* We need to design a diagnostics interface. It would be nice to share code + with Clang_ where possible. + * We need to add more attributes to File. In particular, we need cpu - and OS information (like target triples). + and OS information (like target triples). We should also provide explicit + support for `LLVM IR module flags metadata`__. + +.. __: http://llvm.org/docs/LangRef.html#module_flags +.. _Clang: http://clang.llvm.org/docs/InternalsManual.html#Diagnostics diff --git a/lld/lib/Core/TODO.txt b/lld/lib/Core/TODO.txt index 6853e417d0c..4a5decbac6a 100644 --- a/lld/lib/Core/TODO.txt +++ b/lld/lib/Core/TODO.txt @@ -17,9 +17,10 @@ lib/Core to map disk values to in-memory values. * The Platform interface needs to be refactored. There should be less work - done in the platform. Instead the Platform should just be a bunch of bool - methods which direct the Resolver in how to operate. Subclasses of - Platform can set the bool values in their constructors. + done in the platform. Instead the Platform should just be a bunch of + predicate member functcions which direct the Resolver in how to operate. + Subclasses of Platform can set the predicate values in their constructors. An + alternative to having the platform provide this directly is to have the + Platform return a LinkInfo object similar to MCAsmInfo and friends. -* The YamlReader should be converted to use Michael's yaml parser once - that goes into LLVM. +* The YamlReader should be converted to use LLVM's Support::YAMLParser. diff --git a/lld/tools/lld/TODO.txt b/lld/tools/lld/TODO.txt new file mode 100644 index 00000000000..07e5b0a8f0b --- /dev/null +++ b/lld/tools/lld/TODO.txt @@ -0,0 +1,14 @@ +tools/lld +~~~~~~~~~ + +Driver +------ + +lld needs a driver that supports gnu-ld_, ld64_, and link.exe_ arguments. It +would be nice to refactor the argument parsing parts of `Clang's`_ driver support +out to LLVM's Support library. + +.. _gnu-ld: http://sourceware.org/binutils/docs-2.22/ld/Options.html#Options +.. _ld64: https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/Xcode-3.2.5/man1/ld.1.html +.. _link.exe: http://msdn.microsoft.com/en-us/library/y0zzbyt4(v=vs.110).aspx +.. _Clang's: http://clang.llvm.org/docs/DriverInternals.html |