llvm-6502/unittests
Chris Bieneman 61b9b31ef1 Refactoring llvm command line parsing and option registration.
Summary:
The primary goal of this patch is to remove the need for MarkOptionsChanged(). That goal is accomplished by having addOption and removeOption properly sort the options.

This patch puts the new add and remove functionality on a CommandLineParser class that is a placeholder. Some of the functionality in this class will need to be merged into the OptionRegistry, and other bits can hopefully be in a better abstraction.

This patch also removes the RegisteredOptionList global, and the need for cl::Option objects to be linked list nodes.

The changes in CommandLineTest.cpp are required because these changes shift when we validate that options are not duplicated. Before this change duplicate options were only found during certain cl API calls (like cl::ParseCommandLine). With this change duplicate options are found during option construction.

Reviewers: dexonsmith, chandlerc, pete

Reviewed By: pete

Subscribers: pete, majnemer, llvm-commits

Differential Revision: http://reviews.llvm.org/D7132

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227345 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-28 19:00:25 +00:00
..
ADT The canonical CPU variant for ARM according to config.guess uses a 2015-01-26 11:41:48 +00:00
Analysis [PM] Split the LoopInfo object apart from the legacy pass, creating 2015-01-17 14:16:18 +00:00
Bitcode [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
CodeGen [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
DebugInfo [CMake] Update LLVM_LINK_COMPONENTS for each CMakeLists.txt. 2013-12-10 11:13:32 +00:00
ExecutionEngine Revert r227247 and r227228: "Add weak symbol support to RuntimeDyld". 2015-01-28 01:30:37 +00:00
IR IR: Change GenericDwarfNode::getHeader() to StringRef 2015-01-22 23:10:55 +00:00
LineEditor [CMake] LineEditorTests: Add Support to link_components. 2014-07-24 11:44:33 +00:00
Linker [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
MC [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
Option Retire llvm::array_endof in favor of non-member std::end. 2014-04-12 16:15:53 +00:00
Support Refactoring llvm command line parsing and option registration. 2015-01-28 19:00:25 +00:00
Transforms [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
CMakeLists.txt [cmake] Start making LLVM_LIBDIR_SUFFIX effective by adding it to 2014-12-29 11:16:19 +00:00
Makefile Invert the MC -> Object dependency. 2014-07-03 02:01:39 +00:00
Makefile.unittest With rpaths being set correctly, SHLIBPATH_VAR is not needed anymore. 2014-02-28 16:16:51 +00:00