History log of /llvm-project/clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp (Results 1 – 25 of 79)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6
# 1be4a674 16-Dec-2024 QuietMisdreavus <QuietMisdreavus@users.noreply.github.com>

[ExtractAPI] reorder the module names in extension symbol graph file names (#119925)

Resolves rdar://140298287

ExtractAPI's support for printing Objective-C category extensions from
other module

[ExtractAPI] reorder the module names in extension symbol graph file names (#119925)

Resolves rdar://140298287

ExtractAPI's support for printing Objective-C category extensions from
other modules emits symbol graphs with an
`ExtendedModule@HostModule.symbols.json`. However, this is backwards
from existing symbol graph practices, causing issues when these symbol
graphs are consumed alongside symbol graphs generated with other tools
like Swift. This PR flips the naming scheme to be in line with existing
symbol graph tooling.

show more ...


Revision tags: llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3
# af7c58b7 28-Oct-2024 Aaron Ballman <aaron@aaronballman.com>

Remove support for RenderScript (#112916)

See
https://discourse.llvm.org/t/rfc-deprecate-and-eventually-remove-renderscript-support/81284
for the RFC


Revision tags: llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4
# b1b24d75 27-Aug-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Fix quirks in interaction with submodules (#105868)

Extension SGFs require the module system to be enabled in order to discover which module defines the extended external type.

[clang][ExtractAPI] Fix quirks in interaction with submodules (#105868)

Extension SGFs require the module system to be enabled in order to discover which module defines the extended external type.
This patch ensures the following:
- Associate symbols with their top level module name, and that only top level modules are considered as modules for emitting extension SGFs.
- Ensure we don't drop macro definitions that came from a submodule. To this end look at all defined macros in `PPCalbacks::EndOfMainFile` instead of relying on `PPCallbacks::MacroDefined` being called to detect a macro definition.

show more ...


# 8f4f3df3 20-Aug-2024 Daniel Grumberg <dgrumberg@apple.com>

Reenable anon structs (#104922)

Add back missing includes and revert revert "[clang][ExtractAPI] Stop
dropping fields of nested anonymous record types when they aren't
attached to variable declara

Reenable anon structs (#104922)

Add back missing includes and revert revert "[clang][ExtractAPI] Stop
dropping fields of nested anonymous record types when they aren't
attached to variable declaration (#104600)"

show more ...


Revision tags: llvmorg-19.1.0-rc3
# b18b4547 19-Aug-2024 Daniel Grumberg <dgrumberg@apple.com>

Revert "[clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)"

This reverts commit c60da1a271a6bb271e7703b2f7c71fbece6

Revert "[clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)"

This reverts commit c60da1a271a6bb271e7703b2f7c71fbece67ab78.

show more ...


# c60da1a2 19-Aug-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)

- Introduce primitives for removing records from `APISet` and ma

[clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)

- Introduce primitives for removing records from `APISet` and managing
the record chain of `RecordContext`
- Detect nested anonymous record types and remove them from the `APISet`
after they have been fully traversed and transfer ownership of child
records to the parent context (if any)

show more ...


# 57abd4e4 15-Aug-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Emit environment component of target triple in SGF (#103273)

rdar://133533830


# 026d963c 15-Aug-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Compute inherited availability information (#103040)

Additionally this computes availability information for all platforms
ahead of possibly introducing a flag to enable this be

[clang][ExtractAPI] Compute inherited availability information (#103040)

Additionally this computes availability information for all platforms
ahead of possibly introducing a flag to enable this behavior.

rdar://123513706

show more ...


Revision tags: llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8
# f0785484 06-Jun-2024 Yuxuan Chen <ych@fb.com>

[clang][NFC] fix name lookup for llvm::json::Value in SymbolGraphSerializer (#94511)

This code uses namespaces `llvm` and `llvm::json`. However, we have both
`llvm::Value` and `llvm::json::Value`.

[clang][NFC] fix name lookup for llvm::json::Value in SymbolGraphSerializer (#94511)

This code uses namespaces `llvm` and `llvm::json`. However, we have both
`llvm::Value` and `llvm::json::Value`. Whenever any of the headers
declare or include `llvm::Value`, the lookup becomes ambiguous.

Fixing this by qualifying the `Value` type.

show more ...


Revision tags: llvmorg-18.1.7
# 50b2bd4a 20-May-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Remove symbols defined in categories to external types unless requested (#92522)

rdar://128259890


Revision tags: llvmorg-18.1.6
# 61d4ca87 13-May-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Distinguish between record kind for display and for RTTI (#91466)

rdar://127732562


Revision tags: llvmorg-18.1.5
# 2bcbe40f 24-Apr-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Fix handling of anonymous TagDecls (#87772)

This changes the handling of anonymous TagDecls to the following rules:
- If the TagDecl is embedded in the declaration for some VarD

[clang][ExtractAPI] Fix handling of anonymous TagDecls (#87772)

This changes the handling of anonymous TagDecls to the following rules:
- If the TagDecl is embedded in the declaration for some VarDecl (this
is the only possibility for RecordDecls), then pretend the child decls
belong to the VarDecl
- If it's an EnumDecl proceed as we did previously, i.e., embed it in
the enclosing DeclContext.

Additionally this fixes a few issues with declaration fragments not
consistently including "{ ... }" for anonymous TagDecls. To make testing
these additions easier this patch fixes some text declaration fragments
merging issues and updates tests accordingly.

rdar://121436298

show more ...


# 05c1447b 23-Apr-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Serialize platform specific unavailable attribute in symbol graphs (#89277)

rdar://125622225


Revision tags: llvmorg-18.1.4
# e05c1b46 03-Apr-2024 Daniel Grumberg <dgrumberg@apple.com>

Reenable external categories (#87357)

Reenables b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf.

Also adds a new warning for missing `--symbol-graph-dir` arg when
`--emit-extension-symbol-graphs` is pr

Reenable external categories (#87357)

Reenables b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf.

Also adds a new warning for missing `--symbol-graph-dir` arg when
`--emit-extension-symbol-graphs` is provided. This also reverts the
commit that removed.

show more ...


Revision tags: llvmorg-18.1.3
# 209a1e8d 02-Apr-2024 Daniel Grumberg <dgrumberg@apple.com>

Revert "[clang][ExtractAPI] Add ability to create multiple symbol graphs (#86676)"

This failed the test suite due to missing DiagGroup for a new warning.

This reverts commit b31414bf4f9898f7817a9fc

Revert "[clang][ExtractAPI] Add ability to create multiple symbol graphs (#86676)"

This failed the test suite due to missing DiagGroup for a new warning.

This reverts commit b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf.

show more ...


# b31414bf 02-Apr-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Add ability to create multiple symbol graphs (#86676)

This extends ExtractAPI to take into account symbols defined in categories to types defined in an external module.
This int

[clang][ExtractAPI] Add ability to create multiple symbol graphs (#86676)

This extends ExtractAPI to take into account symbols defined in categories to types defined in an external module.
This introduces 2 new command line flags, `--symbol-graph-dir=DIR` and `--emit-extension-symbol-graphs`, when used together this generates additional symbol graph files at `DIR/ExtendedModule@ProductName.symbols.json` for each external module that is extended in this way.

Additionally this makes some cleanups to tests to make them more resilient and cleans up the `APISet` data structure.

show more ...


# e66b670f 21-Mar-2024 Nathan Lanza <nathanlanza@gmail.com>

[CIR][Basic][NFC] Add the CIR language to the Language enum

Add the CIR language to the Language enum and the standard usages of it.

commit-id:fd12b2c2

Reviewers: bcardosolopes, AaronBallman, eric

[CIR][Basic][NFC] Add the CIR language to the Language enum

Add the CIR language to the Language enum and the standard usages of it.

commit-id:fd12b2c2

Reviewers: bcardosolopes, AaronBallman, erichkeane

Reviewed By: AaronBallman, bcardosolopes

Pull Request: https://github.com/llvm/llvm-project/pull/86072

show more ...


Revision tags: llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init
# 69fedaf8 22-Jan-2024 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Add support C unions in non C++ parsing mode (#77451)

Ensure that we generate correct symbol kinds and declaration fragments
for unions in C and Objective-C parsing modes.

rd

[clang][ExtractAPI] Add support C unions in non C++ parsing mode (#77451)

Ensure that we generate correct symbol kinds and declaration fragments
for unions in C and Objective-C parsing modes.

rdar://120544091

show more ...


# 3d4128f7 19-Jan-2024 Sofía Rodríguez <sofilin2000@icloud.com>

[clang][ExtractAPI] Record availability information only for the target platform (#76823)

Currently, ExtractAPI provides availability information for all
platforms within a given domain. With this

[clang][ExtractAPI] Record availability information only for the target platform (#76823)

Currently, ExtractAPI provides availability information for all
platforms within a given domain. With this change, we narrow down the
output to include availability details only for the specified target
platform, so users can generate the symbol graph with only the
availability information they need, omitting information of the other
platforms.

This change reverts the functionality introduced in
[`57c9780`](https://github.com/llvm/llvm-project/commit/57c9780).

rdar://120419037

show more ...


# f3dcc235 13-Dec-2023 Kazu Hirata <kazu@google.com>

[clang] Use StringRef::{starts,ends}_with (NFC) (#75149)

This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}:

[clang] Use StringRef::{starts,ends}_with (NFC) (#75149)

This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::{starts,ends}_with in C++20.

I'm planning to deprecate and eventually remove
StringRef::{starts,ends}with.

show more ...


# 789a5bbb 07-Dec-2023 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Allow serialization for ObjC++ headers (#74733)

rdar://79874441


Revision tags: llvmorg-17.0.6
# 63537872 14-Nov-2023 QuietMisdreavus <QuietMisdreavus@users.noreply.github.com>

ExtractAPI: use zero-based indices for line/column in symbol graph (#71753)

Other implementations of the symbol graph format use zero-based indices
for source locations, which causes problems when

ExtractAPI: use zero-based indices for line/column in symbol graph (#71753)

Other implementations of the symbol graph format use zero-based indices
for source locations, which causes problems when combined with clang's
current one-based indices. This commit sets ExtractAPI's symbol graph
output to use zero-based indices to align with other implementations.

rdar://107639783

show more ...


Revision tags: llvmorg-17.0.5
# 6b43764a 07-Nov-2023 Daniel Grumberg <dgrumberg@apple.com>

[clang][ExtractAPI] Update availability serialization in SGF (#71418)

The prevailiing symbol graph parsing library expects availability
attributes to just be "introduced" instead of "introducedVers

[clang][ExtractAPI] Update availability serialization in SGF (#71418)

The prevailiing symbol graph parsing library expects availability
attributes to just be "introduced" instead of "introducedVersion"

rdar://117823923

show more ...


Revision tags: llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2
# 06c9cc7e 28-Sep-2023 Manna, Soumi <soumi.manna@intel.com>

[NFC][CLANG] Fix static analyzer bugs about unnecessary object copies with auto

Reviewed By: tahonermann

Differential Revision: https://reviews.llvm.org/D159474


Revision tags: llvmorg-17.0.1, llvmorg-17.0.0
# ffb8434f 08-Sep-2023 Antonio Frighetto <me@antoniofrighetto.com>

[clang] Prevent unnecessary copies in `SymbolGraphSerializer` (NFC)


1234