[clang] [clang][modules] Separate parsing of modulemaps (PR #119740)

2025-02-20 Thread Michael Spencer via cfe-commits
@@ -3157,25 +2140,18 @@ bool ModuleMap::parseModuleMapFile(FileEntryRef File, bool IsSystem, assert((!Offset || *Offset <= Buffer->getBufferSize()) && "invalid buffer offset"); - // Parse this module map file. - Lexer L(SourceMgr.getLocForStartOfFile(ID), MMapLan

[clang] [clang][modules] Fix local submodule visibility of macros from transitive import (PR #122955)

2025-02-20 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. https://github.com/llvm/llvm-project/pull/122955 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Exclude RedirectingFileSystem with null OverlayFileDir in VFSUsage (PR #128267)

2025-02-24 Thread Michael Spencer via cfe-commits
@@ -149,11 +149,16 @@ std::vector HeaderSearch::collectVFSUsageAndClear() const { llvm::vfs::FileSystem &RootFS = FileMgr.getVirtualFileSystem(); // TODO: This only works if the `RedirectingFileSystem`s were all created by - // `createVFSFromOverlayFiles`. + //

[clang] Exclude RedirectingFileSystem with null OverlayFileDir in VFSUsage (PR #128267)

2025-02-24 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese edited https://github.com/llvm/llvm-project/pull/128267 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Improve module out of date error message (PR #128103)

2025-02-24 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese closed https://github.com/llvm/llvm-project/pull/128103 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Exclude RedirectingFileSystem with null OverlayFileDir in VFSUsage (PR #128267)

2025-02-24 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. Hmm, I think this is fine, although it would be nice if there was a tighter connection between the `-ivfsoverlay` options and this. I don't think that needs to happen here though. https://github.com/llvm/llvm-project/pull/128267

[clang] [clang] C++20 Modules: document how to perform automated reductions (PR #124997)

2025-02-20 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese edited https://github.com/llvm/llvm-project/pull/124997 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] C++20 Modules: document how to perform automated reductions (PR #124997)

2025-02-20 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. While I agree it would be good to full documentation on how to reduce test cases, I think this subset is very useful for modules issues. I think this is fine with or without the changes I suggested. https://github.com/llvm/llvm-project/p

[clang] [clang] C++20 Modules: document how to perform automated reductions (PR #124997)

2025-02-20 Thread Michael Spencer via cfe-commits
@@ -2072,3 +2072,25 @@ Interoperability with Clang Modules We **wish** to support Clang modules and standard C++ modules at the same time, but the mixing them together is not well used/tested yet. Please file new GitHub issues as you find interoperability problems. + +Finding r

[clang] [clang] C++20 Modules: document how to perform automated reductions (PR #124997)

2025-02-20 Thread Michael Spencer via cfe-commits
@@ -2072,3 +2072,25 @@ Interoperability with Clang Modules We **wish** to support Clang modules and standard C++ modules at the same time, but the mixing them together is not well used/tested yet. Please file new GitHub issues as you find interoperability problems. + +Finding r

[clang] [clang][deps] Propagate the entire service (PR #128959)

2025-02-26 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. https://github.com/llvm/llvm-project/pull/128959 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][modules] Lazily load by name lookups in module maps (PR #132853)

2025-04-03 Thread Michael Spencer via cfe-commits
Bigcheese wrote: > This now makes much more sense after the renames from the prep-commit. There > are still some naming inconsistencies, though. For example > `ModuleMap::loadModuleMapFile()` both **parses** and loads a module map file, > but `ModuleMap::findOrLoadModule()` expects the module

[clang] [llvm] [llvm][clang] Allocate a new stack instead of spawning a new thread to get more stack space (PR #133173)

2025-04-03 Thread Michael Spencer via cfe-commits
Bigcheese wrote: > If split stacks are negatively impacting profiling, debugging, or other > compiler development tasks, I have to ask, have we considered optimizing > clang stack usage? The issue is we will always have this problem with implicitly built modules. It's naturally recursive as w

[clang] [llvm] [llvm][clang] Allocate a new stack instead of spawning a new thread to get more stack space (PR #133173)

2025-04-03 Thread Michael Spencer via cfe-commits
@@ -52,6 +56,7 @@ else() check_include_file(mach/mach.h HAVE_MACH_MACH_H) check_include_file(malloc/malloc.h HAVE_MALLOC_MALLOC_H) check_include_file(pthread.h HAVE_PTHREAD_H) + check_include_file(sys/resource.h HAVE_SYS_RESOURCE_H) Bigcheese wrote: I c

[clang] [llvm] [llvm][clang] Allocate a new stack instead of spawning a new thread to get more stack space (PR #133173)

2025-04-03 Thread Michael Spencer via cfe-commits
@@ -0,0 +1,115 @@ +//===--- RunOnNewStack.cpp - Crash Recovery ---===// +// +// 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: Ap

[clang] [clang][modules] Lazily load by name lookups in module maps (PR #132853)

2025-04-03 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese updated https://github.com/llvm/llvm-project/pull/132853 >From d19d7c6314dbb68abfe7cdceebd8e8f65aedddc5 Mon Sep 17 00:00:00 2001 From: Michael Spencer Date: Wed, 29 Jan 2025 12:49:29 -0800 Subject: [PATCH] [clang][modules] Lazily load by name lookups in module maps

[clang] [llvm] [llvm][clang] Allocate a new stack instead of spawning a new thread to get more stack space (PR #133173)

2025-04-03 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese updated https://github.com/llvm/llvm-project/pull/133173 >From cc251995b3d55b3cd76b0b65753be88c9fb9d627 Mon Sep 17 00:00:00 2001 From: Michael Spencer Date: Wed, 26 Mar 2025 14:48:19 -0700 Subject: [PATCH] [llvm][clang] Allocate a new stack instead of spawning a new

[clang] [llvm] [clang][modules] Lazily load by name lookups in module maps (PR #132853)

2025-04-03 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese updated https://github.com/llvm/llvm-project/pull/132853 >From d19d7c6314dbb68abfe7cdceebd8e8f65aedddc5 Mon Sep 17 00:00:00 2001 From: Michael Spencer Date: Wed, 29 Jan 2025 12:49:29 -0800 Subject: [PATCH 1/2] [clang][modules] Lazily load by name lookups in module

[clang] [clang][modules][deps] Implicit modules are out of date when their explicit imports are (PR #138920)

2025-05-07 Thread Michael Spencer via cfe-commits
@@ -0,0 +1,77 @@ +// Test that modifications to a common header (imported from both a PCH and a TU) +// cause rebuilds of dependent modules imported from the TU on incremental build. + +// RUN: rm -rf %t +// RUN: split-file %s %t + +//--- module.modulemap +module mod_common { he

[clang] [clang] Mark some language options as benign. (PR #131569)

2025-05-07 Thread Michael Spencer via cfe-commits
@@ -398,11 +398,11 @@ BENIGN_LANGOPT(HalfNoSemanticInterposition, 1, 0, "Like -fno-semantic-interposition but don't use local aliases") ENUM_LANGOPT(StackProtector, StackProtectorMode, 2, SSPOff, "stack protector mode") -ENUM_LANGOPT(TrivialAutoVarIn

[clang] [clang] Mark some language options as benign. (PR #131569)

2025-05-07 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. lgtm with Chuanqi's release notes request. Separately, I'd also like to see the rtti and exceptions stuff be marked compatible, although with some testing first of what happens when people do create AST differences with the macros. It's

[clang] [Modules] Don't fail when an unused textual header is missing. (PR #138227)

2025-05-07 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. Just looking at the `missing_textual_header` module alone this is a bit odd, but that's just the semantics of textual headers. Really textual headers just exist to control the non-modular include warning, so this is fine. https://github.

[clang] [clang][modules] Allow not forcing validation of user headers (PR #139091)

2025-05-08 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. lgtm https://github.com/llvm/llvm-project/pull/139091 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [lldb] [clang][modules] Lazily load by name lookups in module maps (PR #132853)

2025-05-06 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese closed https://github.com/llvm/llvm-project/pull/132853 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [clang][modules] Timestamp-less validation API (PR #138983)

2025-05-14 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. lgtm, looks like it keeps the existing semantics. https://github.com/llvm/llvm-project/pull/138983 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/l

[clang] [clang-tools-extra] [lldb] [clang] Remove intrusive reference count from `DiagnosticOptions` (PR #139584)

2025-05-22 Thread Michael Spencer via cfe-commits
https://github.com/Bigcheese approved this pull request. lgtm. I agree this makes the lifetime clearer. https://github.com/llvm/llvm-project/pull/139584 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/list

<    1   2   3   4