[clang] [llvm] [InstallAPI] Add support for aliased exports (PR #88750)

2024-04-15 Thread Juergen Ributzka via cfe-commits
@@ -973,5 +978,24 @@ bool DylibVerifier::verifyBinaryAttrs(const ArrayRef ProvidedTargets, return true; } +std::unique_ptr DylibVerifier::getExports() { + for (const auto &[Alias, Base] : Aliases) { ributzka wrote: In that case I would update the

[clang] [llvm] [InstallAPI] Add support for aliased exports (PR #88750)

2024-04-15 Thread Juergen Ributzka via cfe-commits
@@ -107,6 +107,9 @@ struct LinkerOptions { /// \brief Additional library search paths. PathSeq LibPaths; + /// \brief List of aliased symbol exports. ributzka wrote: ```suggestion /// \brief List of alias symbol files. ```

[clang] [llvm] [InstallAPI] Add support for aliased exports (PR #88750)

2024-04-15 Thread Juergen Ributzka via cfe-commits
@@ -973,5 +978,24 @@ bool DylibVerifier::verifyBinaryAttrs(const ArrayRef ProvidedTargets, return true; } +std::unique_ptr DylibVerifier::getExports() { + for (const auto &[Alias, Base] : Aliases) { ributzka wrote: This loop runs every time someone calls

[clang] [modules] allow use of ptrauth module from no_undeclared_includes system modules (PR #88432)

2024-04-12 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/88432 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Handle zippered frameworks (PR #88205)

2024-04-11 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/88205 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Handle zippered frameworks (PR #88205)

2024-04-10 Thread Juergen Ributzka via cfe-commits
@@ -588,13 +622,58 @@ void DylibVerifier::visitSymbolInDylib(const Record , SymbolContext ) { } } + const bool IsLinkerSymbol = SymbolName.starts_with("$ld$"); + + if (R.isVerified()) { +// Check for unavailable symbols. +// This should only occur in the

[clang] [InstallAPI] Handle zippered frameworks (PR #88205)

2024-04-10 Thread Juergen Ributzka via cfe-commits
@@ -588,13 +622,58 @@ void DylibVerifier::visitSymbolInDylib(const Record , SymbolContext ) { } } + const bool IsLinkerSymbol = SymbolName.starts_with("$ld$"); + + if (R.isVerified()) { +// Check for unavailable symbols. +// This should only occur in the

[clang] [clang][Darwin] Handle reexported library arguments in driver (PR #86980)

2024-03-28 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/86980 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Add support for parsing dSYMs (PR #86852)

2024-03-27 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/86852 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Add support for parsing dSYMs (PR #86852)

2024-03-27 Thread Juergen Ributzka via cfe-commits
@@ -511,14 +520,16 @@ DylibVerifier::Result DylibVerifier::verify(GlobalRecord *R, return verifyImpl(R, SymCtx); } -void DylibVerifier::VerifierContext::emitDiag( -llvm::function_ref Report) { +void DylibVerifier::VerifierContext::emitDiag(llvm::function_ref Report, +

[clang] [llvm] [InstallAPI] Add *umbrella-header options (PR #86587)

2024-03-27 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/86587 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Add *umbrella-header options (PR #86587)

2024-03-26 Thread Juergen Ributzka via cfe-commits
@@ -424,6 +448,56 @@ InstallAPIContext Options::createContext() { if (!Glob->didMatch()) Diags->Report(diag::warn_glob_did_not_match) << Glob->str(); + // Mark any explicit or inferred umbrella headers. If one exists, move + // that to the beginning of the input

[clang] [llvm] [InstallAPI] Add *umbrella-header options (PR #86587)

2024-03-25 Thread Juergen Ributzka via cfe-commits
@@ -424,6 +448,56 @@ InstallAPIContext Options::createContext() { if (!Glob->didMatch()) Diags->Report(diag::warn_glob_did_not_match) << Glob->str(); + // Mark any explicit or inferred umbrella headers. If one exists, move + // that to the beginning of the input

[clang] [llvm] [InstallAPI] Add *umbrella-header options (PR #86587)

2024-03-25 Thread Juergen Ributzka via cfe-commits
@@ -424,6 +448,56 @@ InstallAPIContext Options::createContext() { if (!Glob->didMatch()) Diags->Report(diag::warn_glob_did_not_match) << Glob->str(); + // Mark any explicit or inferred umbrella headers. If one exists, move + // that to the beginning of the input

[clang] [llvm] [InstallAPI] Add --extra* and --exclude* cli options for header input (PR #86522)

2024-03-25 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/86522 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Report exports discovered in binary but not in interface (PR #86025)

2024-03-21 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/86025 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Report exports discovered in binary but not in interface (PR #86025)

2024-03-21 Thread Juergen Ributzka via cfe-commits
@@ -520,5 +515,136 @@ void DylibVerifier::VerifierContext::emitDiag( Report(); } +// The existence of weak-defined RTTI can not always be inferred from the +// header files because they can be generated as part of an implementation +// file. +// InstallAPI doesn't warn

[clang] [llvm] [InstallAPI] Report exports discovered in binary but not in interface (PR #86025)

2024-03-21 Thread Juergen Ributzka via cfe-commits
@@ -520,5 +515,136 @@ void DylibVerifier::VerifierContext::emitDiag( Report(); } +// The existence of weak-defined RTTI can not always be inferred from the +// header files because they can be generated as part of an implementation +// file. +// InstallAPI doesn't warn

[clang] [llvm] [InstallAPI] Report exports discovered in binary but not in interface (PR #86025)

2024-03-21 Thread Juergen Ributzka via cfe-commits
@@ -21,6 +21,9 @@ CHECK-NEXT: CPP.h:5:7: error: declaration has external linkage, but symbol has i CHECK-NEXT: CPP.h:6:7: error: dynamic library symbol '(weak-def) Bar::init()' is weak defined, but its declaration is not CHECK-NEXT: int init(); CHECK-NEXT: ^

[clang] [llvm] [InstallAPI] Report exports discovered in binary but not in interface (PR #86025)

2024-03-21 Thread Juergen Ributzka via cfe-commits
@@ -520,5 +515,136 @@ void DylibVerifier::VerifierContext::emitDiag( Report(); } +// The existence of weak-defined RTTI can not always be inferred from the +// header files because they can be generated as part of an implementation +// file. +// InstallAPI doesn't warn

[clang] [InstallAPI] Verify that declarations in headers map to exports found in dylib (PR #85348)

2024-03-18 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/85348 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Add installapi specific options & diagnostics (PR #85100)

2024-03-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/85100 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Add installapi specific options & diagnostics (PR #85100)

2024-03-13 Thread Juergen Ributzka via cfe-commits
ributzka wrote: Do you think this file is necessary? https://github.com/llvm/llvm-project/pull/85100 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Add installapi specific options & diagnostics (PR #85100)

2024-03-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka edited https://github.com/llvm/llvm-project/pull/85100 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Add installapi specific options & diagnostics (PR #85100)

2024-03-13 Thread Juergen Ributzka via cfe-commits
@@ -126,9 +178,77 @@ bool Options::processFrontendOptions(InputArgList ) { return true; } +std::vector +Options::processAndFilterOutInstallAPIOptions(ArrayRef Args) { + std::unique_ptr Table; + Table.reset(createDriverOptTable()); + + unsigned MissingArgIndex,

[clang] [InstallAPI] Break up headers and add common header for TextAPI types (PR #84960)

2024-03-12 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/84960 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Collect global functions (PR #83952)

2024-03-07 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/83952 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Upstream visionOS Availability & DarwinSDKInfo APIs (PR #84279)

2024-03-07 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/84279 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Collect symbols from ObjC Ivars (PR #83632)

2024-03-04 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/83632 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [InstallAPI] Collect symbols from ObjC Ivars (PR #83632)

2024-03-04 Thread Juergen Ributzka via cfe-commits
@@ -27,12 +27,40 @@ __attribute__((objc_exception)) @interface Exception @end + +//--- Foo.framework/PrivateHeaders/Foo_Private.h +#import + +@interface ClassWithIvars : Visible { ributzka wrote: ``` @interface ClassWithIvars : Visible { @package int

[clang] [llvm] [InstallAPI] Collect symbols from ObjC Ivars (PR #83632)

2024-03-01 Thread Juergen Ributzka via cfe-commits
@@ -27,12 +27,40 @@ __attribute__((objc_exception)) @interface Exception @end + +//--- Foo.framework/PrivateHeaders/Foo_Private.h +#import + +@interface ClassWithIvars : Visible { ributzka wrote: Please also add a test that has the reverse order of access

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-03-01 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/83378 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-03-01 Thread Juergen Ributzka via cfe-commits
@@ -16,6 +16,74 @@ using namespace llvm::MachO; namespace clang::installapi { +GlobalRecord *FrontendRecordsSlice::addGlobal( +StringRef Name, RecordLinkage Linkage, GlobalRecord::Kind GV, +const clang::AvailabilityInfo Avail, const Decl *D, const HeaderType Access,

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-02-29 Thread Juergen Ributzka via cfe-commits
@@ -16,6 +16,74 @@ using namespace llvm::MachO; namespace clang::installapi { +GlobalRecord *FrontendRecordsSlice::addGlobal( +StringRef Name, RecordLinkage Linkage, GlobalRecord::Kind GV, +const clang::AvailabilityInfo Avail, const Decl *D, const HeaderType Access,

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-02-29 Thread Juergen Ributzka via cfe-commits
@@ -16,6 +16,74 @@ using namespace llvm::MachO; namespace clang::installapi { +GlobalRecord *FrontendRecordsSlice::addGlobal( +StringRef Name, RecordLinkage Linkage, GlobalRecord::Kind GV, +const clang::AvailabilityInfo Avail, const Decl *D, const HeaderType Access,

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-02-29 Thread Juergen Ributzka via cfe-commits
@@ -16,6 +16,74 @@ using namespace llvm::MachO; namespace clang::installapi { +GlobalRecord *FrontendRecordsSlice::addGlobal( +StringRef Name, RecordLinkage Linkage, GlobalRecord::Kind GV, +const clang::AvailabilityInfo Avail, const Decl *D, const HeaderType Access,

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-02-29 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,86 @@ +// RUN: rm -rf %t +// RUN: split-file %s %t +// RUN: sed -e "s|DSTROOT|%/t|g" %t/inputs.json.in > %t/inputs.json + +/// Check multiple targets are captured. ributzka wrote: What do you mean with multiple targets here?

[clang] [InstallAPI] Collect frontend attributes & ObjCInterface decls (PR #83378)

2024-02-29 Thread Juergen Ributzka via cfe-commits
@@ -16,6 +16,74 @@ using namespace llvm::MachO; namespace clang::installapi { +GlobalRecord *FrontendRecordsSlice::addGlobal( +StringRef Name, RecordLinkage Linkage, GlobalRecord::Kind GV, +const clang::AvailabilityInfo Avail, const Decl *D, const HeaderType Access,

[clang] [InstallAPI] Hookup Input files & basic ASTVisitor (PR #82552)

2024-02-28 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/82552 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Hookup Input files & basic ASTVisitor (PR #82552)

2024-02-21 Thread Juergen Ributzka via cfe-commits
@@ -24,8 +27,23 @@ struct InstallAPIContext { /// Library attributes that are typically passed as linker inputs. llvm::MachO::RecordsSlice::BinaryAttrs BA; - /// Active target triple to parse. - llvm::Triple TargetTriple{}; + /// All headers that represent library. +

[clang] [InstallAPI] Hookup Input files & basic ASTVisitor (PR #82552)

2024-02-21 Thread Juergen Ributzka via cfe-commits
@@ -24,8 +27,23 @@ struct InstallAPIContext { /// Library attributes that are typically passed as linker inputs. llvm::MachO::RecordsSlice::BinaryAttrs BA; - /// Active target triple to parse. - llvm::Triple TargetTriple{}; + /// All headers that represent library.

[clang] [InstallAPI] Set InstallAPI as a standalone tool instead of CC1 action (PR #82293)

2024-02-21 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/82293 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [InstallAPI] Set InstallAPI as a standalone tool instead of CC1 action (PR #82293)

2024-02-20 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,106 @@ +#include "Options.h" ributzka wrote: Please add the license/file header. https://github.com/llvm/llvm-project/pull/82293 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [InstallAPI] Set InstallAPI as a standalone tool instead of CC1 action (PR #82293)

2024-02-20 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,125 @@ +#include "Options.h" ributzka wrote: The license header is missing. https://github.com/llvm/llvm-project/pull/82293 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [InstallAPI] Set InstallAPI as a standalone tool instead of CC1 action (PR #82293)

2024-02-20 Thread Juergen Ributzka via cfe-commits
@@ -35,19 +36,19 @@ struct InstallAPIContext { /// Active target triple to parse. llvm::Triple TargetTriple{}; - /// Output stream to write TextAPI file to. - std::unique_ptr OS = nullptr; - - /// DiagnosticsEngine to report errors. - llvm::IntrusiveRefCntPtr Diags =

[clang] [clang] Move `AvailabilityInfo` into AST library (PR #81897)

2024-02-15 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/81897 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Move `AvailabilityInfo` into AST library (PR #81897)

2024-02-15 Thread Juergen Ributzka via cfe-commits
@@ -57,6 +58,57 @@ class AvailabilitySpec { bool isOtherPlatformSpec() const { return Version.empty(); } }; +class Decl; + +/// Storage of availability attributes for a declaration. +struct AvailabilityInfo { + /// The domain is the platform for which this availability

[clang] [clang][InstallAPI] Add input file support to library (PR #81701)

2024-02-14 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/81701 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][InstallAPI] Add input file support to library (PR #81701)

2024-02-14 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,53 @@ +//===- InstallAPI/FileList.h *- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier:

[clang] [clang][InstallAPI] Add input file support to library (PR #81701)

2024-02-14 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,53 @@ +//===- InstallAPI/FileList.h *- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier:

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/81571 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
@@ -4319,6 +4324,12 @@ void Driver::BuildActions(Compilation , DerivedArgList , if (!MergerInputs.empty()) Actions.push_back( C.MakeAction(MergerInputs, types::TY_Image)); + } else if (Args.hasArg(options::OPT_installapi)) { +assert(Inputs.size() == 1

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
@@ -94,6 +94,7 @@ TYPE("lto-bc", LTO_BC, INVALID, "o", phases TYPE("ast", AST, INVALID, "ast", phases::Compile, phases::Backend, phases::Assemble, phases::Link) TYPE("ifs", IFS,

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
@@ -4319,6 +4324,12 @@ void Driver::BuildActions(Compilation , DerivedArgList , if (!MergerInputs.empty()) Actions.push_back( C.MakeAction(MergerInputs, types::TY_Image)); + } else if (Args.hasArg(options::OPT_installapi)) { +assert(Inputs.size() == 1

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
@@ -804,4 +804,7 @@ def warn_android_unversioned_fallback : Warning< def err_drv_triple_version_invalid : Error< "version '%0' in target triple '%1' is invalid">; + +def err_drv_installapi_unsupported : Error< + "the clang compiler does not support '%0' for InstallAPI">;

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka edited https://github.com/llvm/llvm-project/pull/81571 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
@@ -45,6 +45,7 @@ ".rs", ".ifs", ".rc", +".tbd", ributzka wrote: This doesn't seem to be used by the current tests. https://github.com/llvm/llvm-project/pull/81571 ___ cfe-commits mailing list

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,65 @@ +//===- InstallAPI/Context.h -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier:

[clang] [clang][InstallAPI] Introduce basic driver to write out tbd files (PR #81571)

2024-02-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka commented: It is great to finally see this come together :D Thank you Cyndy https://github.com/llvm/llvm-project/pull/81571 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][Driver] Add support for XROS_DEPLOYMENT_TARGET env var (PR #81011)

2024-02-09 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/81011 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fixup last value in DarwinPlatformKind enum (PR #81011)

2024-02-07 Thread Juergen Ributzka via cfe-commits
ributzka wrote: > Why didn't this trigger: > > https://github.com/llvm/llvm-project/blob/ab92f6274b7c3a4b4445d47017bc481aa919545f/clang/lib/Driver/ToolChains/Darwin.cpp#L1906 > > ? XROS is missing in the env vars too:

[clang] [clang] Fixup last value in DarwinPlatformKind enum (PR #81011)

2024-02-07 Thread Juergen Ributzka via cfe-commits
ributzka wrote: Why didn't this trigger: https://github.com/llvm/llvm-project/blob/ab92f6274b7c3a4b4445d47017bc481aa919545f/clang/lib/Driver/ToolChains/Darwin.cpp#L1906 ? https://github.com/llvm/llvm-project/pull/81011 ___ cfe-commits mailing list

[clang] [Docs] Add release note about Clang-defined target OS macros (PR #79879)

2024-01-29 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/79879 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Use LazyDetector for all toolchains. (PR #79073)

2024-01-23 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka closed https://github.com/llvm/llvm-project/pull/79073 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Fix CodeGen options that can affect the AST. (PR #78816)

2024-01-23 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka closed https://github.com/llvm/llvm-project/pull/78816 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Fix CodeGen options that can affect the AST. (PR #78816)

2024-01-22 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka updated https://github.com/llvm/llvm-project/pull/78816 >From 968941561e08424ecb4fb15615ee46fe8356405e Mon Sep 17 00:00:00 2001 From: Juergen Ributzka Date: Fri, 19 Jan 2024 16:10:03 -0800 Subject: [PATCH 1/2] [clang][modules] Fix CodeGen options that can affect the

[clang] [clang][modules] Fix CodeGen options that can affect the AST. (PR #78816)

2024-01-22 Thread Juergen Ributzka via cfe-commits
ributzka wrote: > LGTM, although are we sure none of the other options should be affecting? I > just did a quick search and it seems like this is it. > > I don't think it matters here, but the actual option that controls the macro > is on `LangOptions` and where it's set has a "FIXME:

[clang] [clang][modules] Fix CodeGen options that can affect the AST. (PR #78816)

2024-01-19 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka updated https://github.com/llvm/llvm-project/pull/78816 >From ba6eac97038a8fbd24d288ffa88a4dcf508e66b8 Mon Sep 17 00:00:00 2001 From: Juergen Ributzka Date: Fri, 19 Jan 2024 16:10:03 -0800 Subject: [PATCH 1/2] [clang][modules] Fix CodeGen options that can affect the

[clang] [clang][modules] Fix CodeGen options that can affect the AST. (PR #78816)

2024-01-19 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka created https://github.com/llvm/llvm-project/pull/78816 `OptimizationLevel` and `OptimizeSize` can affect the generated AST. They indirectly affect the `Optimize` and `OptimizeSize` frontend options, which in turn set predefined macro definitions. This fixes

[clang] [llvm] [lldb] [flang] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2024-01-17 Thread Juergen Ributzka via cfe-commits
ributzka wrote: @jansvoboda11 gentle ping https://github.com/llvm/llvm-project/pull/75530 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Revert "[Fix] Disable fdefine-target-os-macros for now" (PR #78353)

2024-01-16 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. https://github.com/llvm/llvm-project/pull/78353 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Objective-C test lacks support on AIX/zOS (PR #77485)

2024-01-09 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. Sorry for the breakage and thanks for fixing it. https://github.com/llvm/llvm-project/pull/77485 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][modules] Remove `_Private` suffix from framework auto-link hints. (PR #77120)

2024-01-08 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka closed https://github.com/llvm/llvm-project/pull/77120 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Remove `_Private` suffix from framework auto-link hints. (PR #77120)

2024-01-08 Thread Juergen Ributzka via cfe-commits
ributzka wrote: Thanks for the review Jan. https://github.com/llvm/llvm-project/pull/77120 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Remove `_Private` suffix from framework auto-link hints. (PR #77120)

2024-01-08 Thread Juergen Ributzka via cfe-commits
@@ -984,7 +984,9 @@ static void inferFrameworkLink(Module *Mod) { assert(!Mod->isSubFramework() && "Can only infer linking for top-level frameworks"); - Mod->LinkLibraries.push_back(Module::LinkLibrary(Mod->Name, + StringRef FrameworkName(Mod->Name); +

[clang] [clang][modules] Remove `_Private` suffix from framework auto-link hints. (PR #77120)

2024-01-08 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,25 @@ +// Test that autolink hints for frameworks don't use the private module name. ributzka wrote: The auto-link hint is supposed to provide a framework name, which is incorrect when you pass the name of the private module. The linker ignores

[clang] [clang][modules] Remove `_Private` suffix from framework auto-link hints. (PR #77120)

2024-01-05 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka created https://github.com/llvm/llvm-project/pull/77120 - [clang][modules] Remove no longer needed autolink test for TBD files. - [clang][modules] Remove `_Private` suffix from framework auto-link hints. >From 166bc82a6bd7fa2dff6fb405aadcf6c2a9d48f51 Mon Sep 17

[llvm] [clang] [lldb] [flang] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2024-01-05 Thread Juergen Ributzka via cfe-commits
@@ -1722,6 +1738,11 @@ bool CompilerInvocation::ParseCodeGenArgs(CodeGenOptions , ArgList , #include "clang/Driver/Options.inc" #undef CODEGEN_OPTION_WITH_MARSHALLING +#define DEBUG_OPTION_WITH_MARSHALLING(...) \ ributzka

[llvm] [clang] [lldb] [flang] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2024-01-05 Thread Juergen Ributzka via cfe-commits
@@ -11,46 +11,13 @@ namespace clang { -CodeGenOptions::CodeGenOptions() { -#define CODEGENOPT(Name, Bits, Default) Name = Default; -#define ENUM_CODEGENOPT(Name, Type, Bits, Default) set##Name(Default); -#include "clang/Basic/CodeGenOptions.def"

[llvm] [clang] [lldb] [flang] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2024-01-05 Thread Juergen Ributzka via cfe-commits
@@ -224,19 +233,20 @@ class CompilerInvocation : public CompilerInvocationBase { /// @{ // Note: These need to be pulled in manually. Otherwise, they get hidden by // the mutable getters with the same names. - using CompilerInvocationBase::getLangOpts; - using

[llvm] [clang] [lldb] [flang] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2024-01-05 Thread Juergen Ributzka via cfe-commits
@@ -11,6 +11,7 @@ #include "clang/APINotes/APINotesOptions.h" #include "clang/Basic/CodeGenOptions.h" +#include "clang/Basic/DebugOptions.h" ributzka wrote: done https://github.com/llvm/llvm-project/pull/75530 ___

[clang] [lldb] [llvm] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2023-12-18 Thread Juergen Ributzka via cfe-commits
@@ -224,19 +233,20 @@ class CompilerInvocation : public CompilerInvocationBase { /// @{ // Note: These need to be pulled in manually. Otherwise, they get hidden by // the mutable getters with the same names. - using CompilerInvocationBase::getLangOpts; - using

[clang] [lldb] [llvm] [clang] Split out DebugOptions.def into its own top-level options group. (PR #75530)

2023-12-18 Thread Juergen Ributzka via cfe-commits
ributzka wrote: > This looks pretty nice, I left just a couple of notes. You might want to take > a look at the CI failures. Thanks Jan, I will take a look. At first glance I need to build and fix `flang` too. https://github.com/llvm/llvm-project/pull/75530

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-14 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka closed https://github.com/llvm/llvm-project/pull/75405 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-14 Thread Juergen Ributzka via cfe-commits
ributzka wrote: Thanks for the reviews. https://github.com/llvm/llvm-project/pull/75405 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-14 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka updated https://github.com/llvm/llvm-project/pull/75405 >From 78d332143efc8220d80715091246da4e62fdfb14 Mon Sep 17 00:00:00 2001 From: Juergen Ributzka Date: Wed, 13 Dec 2023 15:44:54 -0800 Subject: [PATCH] [clang][modules] Strip LLVM options Currently, the dep

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-13 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,49 @@ +// RUN: rm -rf %t +// RUN: split-file %s %t +// RUN: sed -e "s|DIR|%/t|g" %t/cdb1.json.template > %t/cdb1.json + +// RUN: clang-scan-deps -compilation-database %t/cdb1.json -format experimental-full > %t/result1.txt +// RUN: FileCheck %s -input-file

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-13 Thread Juergen Ributzka via cfe-commits
@@ -0,0 +1,49 @@ +// RUN: rm -rf %t +// RUN: split-file %s %t +// RUN: sed -e "s|DIR|%/t|g" %t/cdb1.json.template > %t/cdb1.json + +// RUN: clang-scan-deps -compilation-database %t/cdb1.json -format experimental-full > %t/result1.txt +// RUN: FileCheck %s -input-file

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka updated https://github.com/llvm/llvm-project/pull/75405 >From ef0b260488d1de1cc89ead90d35cc6abf189fd6c Mon Sep 17 00:00:00 2001 From: Juergen Ributzka Date: Wed, 13 Dec 2023 15:44:54 -0800 Subject: [PATCH 1/2] [clang][modules] Strip LLVM options Currently, the dep

[clang] [clang][modules] Strip LLVM options (PR #75405)

2023-12-13 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka created https://github.com/llvm/llvm-project/pull/75405 Currently, the dep scanner does not remove LLVM options from the argument list. Since LLVM options shouldn't affect the AST, it is safe to remove them all. >From ef0b260488d1de1cc89ead90d35cc6abf189fd6c Mon

[clang] Remove the builtin_headers_in_system_modules feature (PR #75262)

2023-12-12 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka approved this pull request. LGTM. Thanks for cleaning this up. https://github.com/llvm/llvm-project/pull/75262 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][modules] Reset codegen options (take 2). (PR #74388)

2023-12-05 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka closed https://github.com/llvm/llvm-project/pull/74388 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Reset codegen options (take 2). (PR #74388)

2023-12-04 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka created https://github.com/llvm/llvm-project/pull/74388 CodeGen options do not affect the AST, so they usually can be ignored. The only exception to the rule is when a PCM is created with `-gmodules`. In that case the Clang module format is switched to object file

[clang] 1157bee - Revert "[clang][modules] Reset codegen options. (#74006)"

2023-12-04 Thread Juergen Ributzka via cfe-commits
Author: Juergen Ributzka Date: 2023-12-04T14:28:22-08:00 New Revision: 1157bee5ce2c7acb803cda5003b2ea9d0ed962e2 URL: https://github.com/llvm/llvm-project/commit/1157bee5ce2c7acb803cda5003b2ea9d0ed962e2 DIFF:

[clang] [clang][modules] Reset codegen options. (PR #74006)

2023-12-04 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka closed https://github.com/llvm/llvm-project/pull/74006 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Reset codegen options. (PR #74006)

2023-12-04 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka updated https://github.com/llvm/llvm-project/pull/74006 >From 416c233bf334fd96ec6e5b54971f3ae5c6b99843 Mon Sep 17 00:00:00 2001 From: Juergen Ributzka Date: Mon, 6 Nov 2023 14:22:02 -0800 Subject: [PATCH] [clang][modules] Reset codegen options. CodeGen options do

[clang] [clang][modules] Reset codegen options. (PR #74006)

2023-12-04 Thread Juergen Ributzka via cfe-commits
ributzka wrote: Thanks for the reviews https://github.com/llvm/llvm-project/pull/74006 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Reset codegen options. (PR #74006)

2023-12-04 Thread Juergen Ributzka via cfe-commits
@@ -4770,9 +4770,20 @@ std::string CompilerInvocation::getModuleHash() const { // When compiling with -gmodules, also hash -fdebug-prefix-map as it // affects the debug info in the PCM. - if (getCodeGenOpts().DebugTypeExtRefs) + if (getHeaderSearchOpts().ModuleFormat ==

[clang] [clang][modules] Reset codegen options. (PR #74006)

2023-12-04 Thread Juergen Ributzka via cfe-commits
@@ -515,6 +430,8 @@ ENUM_CODEGENOPT(ZeroCallUsedRegs, llvm::ZeroCallUsedRegs::ZeroCallUsedRegsKind, /// non-deleting destructors. (No effect on Microsoft ABI.) CODEGENOPT(CtorDtorReturnThis, 1, 0) +#include "DebugOptions.def" ributzka wrote: I added the

[clang] [clang][modules] Reset codegen options. (PR #74006)

2023-12-04 Thread Juergen Ributzka via cfe-commits
https://github.com/ributzka updated https://github.com/llvm/llvm-project/pull/74006 >From a6ea5e2da353ba006083082976065c9a8a988cbc Mon Sep 17 00:00:00 2001 From: Juergen Ributzka Date: Mon, 6 Nov 2023 14:22:02 -0800 Subject: [PATCH 1/2] [clang][modules] Reset codegen options. CodeGen options

  1   2   >