summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-doc/BitcodeReader.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [clang-doc] Explicitly cast to unique_ptrJulie Hockett2018-08-151-1/+1
| | | | | | | Older compilers don't like the implicit cast & move when returning a unique_ptr to an llvm::Expected type. llvm-svn: 339785
* Reland "[clang-doc] Updating BitcodeReader to use llvm::Error""Julie Hockett2018-08-151-200/+247
| | | | | | | With explicit unique_ptr casts so that bots with older compilers don't break. llvm-svn: 339783
* Revert "[clang-doc] Updating BitcodeReader to use llvm::Error"Julie Hockett2018-08-131-247/+200
| | | | | | This reverts commit r339617 for breaking bots. llvm-svn: 339620
* [clang-doc] Updating BitcodeReader to use llvm::ErrorJulie Hockett2018-08-131-200/+247
| | | | llvm-svn: 339617
* Reland "[clang-doc] Refactoring mapper to map by scope"Julie Hockett2018-08-021-12/+73
| | | | | | | | | | | | | | | Relanding with a minor change to prevent an assertion on release bots. The result of this adjusted mapper pass is that all Function and Enum infos are absorbed into the info of their enclosing scope (i.e. the class or namespace in which they are defined). Namespace and Record infos are passed along to the final output, but the second pass creates a reference to each in its parent scope. As a result, the top-level final outputs are Namespaces and Records. Differential Revision: https://reviews.llvm.org/D48341 llvm-svn: 338763
* Revert "[clang-doc] Refactoring mapper to map by scope"Julie Hockett2018-08-021-71/+10
| | | | | | This reverts commit r338738 as it's breaking the bots. llvm-svn: 338748
* [clang-doc] Refactoring mapper to map by scopeJulie Hockett2018-08-021-10/+71
| | | | | | | | | | | The result of this adjusted mapper pass is that all Function and Enum infos are absorbed into the info of their enclosing scope (i.e. the class or namespace in which they are defined). Namespace and Record infos are passed along to the final output, but the second pass creates a reference to each in its parent scope. As a result, the top-level final outputs are Namespaces and Records. llvm-svn: 338738
* [clang-doc] Implement reducer portion of the frontend frameworkJulie Hockett2018-06-041-0/+622
Implements a simple, in-memory reducer for the mapped output of the initial tool. This creates a collection object for storing the deduplicated infos on each declaration, and populates that from the mapper output. The collection object is serialized to LLVM bitstream. On reading each serialized output, it checks to see if a merge is necessary and if so, merges the new info with the existing info (prefering the existing one if conflicts exist). For a more detailed overview of the tool, see the design document on the mailing list: http://lists.llvm.org/pipermail/cfe-dev/2017-December/056203.html Differential Revision: https://reviews.llvm.org/D43341 llvm-svn: 333932
OpenPOWER on IntegriCloud