[RFC] Embedded bitcode and related upstream (Part II)

2016-06-03 Thread Steven Wu via cfe-commits
Hi everyone I am still in the process of upstreaming some improvements to the embed bitcode option. If you want more background, you can read the previous RFC (http://lists.llvm.org/pipermail/llvm-dev/2016-February/094851.html

[PATCH] D21230: Do not embed all the cc1 options in bitcode commandline

2016-06-10 Thread Steven Wu via cfe-commits
steven_wu created this revision. steven_wu added reviewers: rsmith, dexonsmith. steven_wu added subscribers: cfe-commits, jfb, dschuff. Previously, all the cc1 options are passed to both compile stage and codegen stage and almost all of them are embedded in the commandline section in the object fi

Re: [llvm-dev] [RFC] Embedded bitcode and related upstream (Part II)

2016-06-13 Thread Steven Wu via cfe-commits
Thanks for the feedback! Replies inline. > On Jun 12, 2016, at 11:44 PM, Eric Christopher wrote: > > Hi Steven, > > Great to see the commentary and updates here. I've got a few questions about > some of this work. It might be nice to see some separate RFCs for a couple of > things, but we'll

Re: [llvm-dev] [RFC] Embedded bitcode and related upstream (Part II)

2016-06-24 Thread Steven Wu via cfe-commits
> On Jun 14, 2016, at 3:27 PM, Eric Christopher wrote: > > > > On Mon, Jun 13, 2016 at 9:37 AM Steven Wu > wrote: > Thanks for the feedback! Replies inline. > >> On Jun 12, 2016, at 11:44 PM, Eric Christopher > > wrote: >> >> Hi Steven,

Re: Embedded Bitcode in Object Files

2016-02-29 Thread Steven Wu via cfe-commits
Ping. I don't know who is the best review for the patches. Thanks for Rafael looking at the LLVM change. Richard, do you have any opinions on the clang changes? Thanks Steven > On Feb 18, 2016, at 9:57 AM, Steven Wu wrote: > > Hi all > > I put up some patches for embedding bitcode inside th

Re: [PATCH] D17390: Introduce -fembed-bitcode driver option

2016-02-29 Thread Steven Wu via cfe-commits
steven_wu updated this revision to Diff 49431. steven_wu added a comment. Make selectToolForJob logic better and less disruptive for -fembed-bitcode. When -fembed-bitcode is used, the same old logic is used to decide if CompileJob and BackendJob can be combined with an extra requirement for -femb

r262282 - Introduce -fembed-bitcode driver option

2016-02-29 Thread Steven Wu via cfe-commits
Author: steven_wu Date: Mon Feb 29 19:07:58 2016 New Revision: 262282 URL: http://llvm.org/viewvc/llvm-project?rev=262282&view=rev Log: Introduce -fembed-bitcode driver option Summary: This is the clang driver part of the change to embedded bitcode. This includes: 1. -fembed-bitcode option which

Re: [PATCH] D17390: Introduce -fembed-bitcode driver option

2016-02-29 Thread Steven Wu via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL262282: Introduce -fembed-bitcode driver option (authored by steven_wu). Changed prior to commit: http://reviews.llvm.org/D17390?vs=49431&id=49437#toc Repository: rL LLVM http://reviews.llvm.org/D17

r262286 - Fix the testcase in r262282

2016-02-29 Thread Steven Wu via cfe-commits
Author: steven_wu Date: Mon Feb 29 19:24:54 2016 New Revision: 262286 URL: http://llvm.org/viewvc/llvm-project?rev=262286&view=rev Log: Fix the testcase in r262282 -bitcode_bundle is only passed to the darwin ld64 linker and it is only implemented there. Remove the check on the linker flag. Modi

Re: [PATCH] D17390: Introduce -fembed-bitcode driver option

2016-02-29 Thread Steven Wu via cfe-commits
steven_wu added a comment. Thanks for reviewing the patch. There is a problem in the test case (it only works on darwin). It is fixed in r262286. Comment at: lib/Driver/Driver.cpp:1761 @@ -1747,1 +1760,3 @@ +const ActionList *BackendInputs = + (EmbedBitcode ? Inputs :

Re: r262282 - Introduce -fembed-bitcode driver option

2016-03-01 Thread Steven Wu via cfe-commits
as failing to find the > -emit-obj option. I've fixed this by adding -fintegrated-as. > > > From: cfe-commits [cfe-commits-boun...@lists.llvm.org] on behalf of Steven Wu > via cfe-commits [cfe-commits@lists.llvm.org] > Sent: 01 March

Re: [PATCH] D17627: Fix false positives for for-loop-analysis warning

2016-03-01 Thread Steven Wu via cfe-commits
steven_wu updated this revision to Diff 49549. steven_wu added a comment. I did some more digging of the issue. It seems ObjCSubscriptRefExpr always rebuilds and hinds both base and key behind OpaqueValueExpr. See ObjCSubscriptOpBuilder::rebuildAndCaptureObject so it looks the AST generated is in

Re: [PATCH] D17392: Embed bitcode in object file (clang cc1 part)

2016-03-09 Thread Steven Wu via cfe-commits
steven_wu added a comment. ping http://reviews.llvm.org/D17392 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D17627: Fix false positives for for-loop-analysis warning

2016-03-09 Thread Steven Wu via cfe-commits
steven_wu added a comment. ping http://reviews.llvm.org/D17627 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D17627: Fix false positives for for-loop-analysis warning

2016-03-09 Thread Steven Wu via cfe-commits
steven_wu updated this revision to Diff 50186. steven_wu added a comment. Update the patch to address John's feedback. We shouldn't even checking ObjCSubscript but looking at the Semantics for PseudoObjectExpr only. http://reviews.llvm.org/D17627 Files: lib/Sema/SemaStmt.cpp test/SemaObjC/w

Re: [PATCH] D17627: Fix false positives for for-loop-analysis warning

2016-03-09 Thread Steven Wu via cfe-commits
steven_wu updated this revision to Diff 50212. steven_wu updated the summary for this revision. steven_wu added a comment. Update according to feedback. I agree that OVE should never be null as semantics of PseudoObjectExpr. http://reviews.llvm.org/D17627 Files: lib/Sema/SemaStmt.cpp test/S

Re: [PATCH] D17627: Fix false positives for for-loop-analysis warning

2016-03-09 Thread Steven Wu via cfe-commits
This revision was automatically updated to reflect the committed changes. steven_wu marked 2 inline comments as done. Closed by commit rL263087: Fix false positives for for-loop-analysis warning (authored by steven_wu). Changed prior to commit: http://reviews.llvm.org/D17627?vs=50212&id=50221#t

r263087 - Fix false positives for for-loop-analysis warning

2016-03-09 Thread Steven Wu via cfe-commits
Author: steven_wu Date: Wed Mar 9 20:02:48 2016 New Revision: 263087 URL: http://llvm.org/viewvc/llvm-project?rev=263087&view=rev Log: Fix false positives for for-loop-analysis warning Summary: For PseudoObjectExpr, the DeclMatcher need to search only all the semantics but also need to search pa

Re: [PATCH] D17392: Embed bitcode in object file (clang cc1 part)

2016-03-19 Thread Steven Wu via cfe-commits
steven_wu added a comment. Hi Richard Thanks for looking at the patch! Replies are inlined with the feedback. Steven Comment at: include/clang/Frontend/CodeGenOptions.def:57 @@ -56,1 +56,3 @@ +CODEGENOPT(EmbedBitcode , 1, 0) ///< Embed LLVM IR bitcode as data. +CODEGENOPT

[clang] [clang][deps] Print tracing VFS data (PR #108056)

2024-09-10 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM with a comment. https://github.com/llvm/llvm-project/pull/108056 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][deps] Print tracing VFS data (PR #108056)

2024-09-10 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/108056 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][deps] Print tracing VFS data (PR #108056)

2024-09-10 Thread Steven Wu via cfe-commits
@@ -1024,6 +1042,16 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) { Pool.wait(); } + if (Verbose) { +llvm::errs() << "\n*** Virtual File System Stats:\n" + << NumStatusCalls << " status() calls\n" + <<

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Remove EXPORT_SYMBOLS_FOR_PLUGINS from #102138 (PR #102396)

2024-08-09 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: @jakeegan I will create a PR to restore this target to the previous configuration but it would be good to figure out what flags/setting were different that caused that failure for you. https://github.com/llvm/llvm-project/pull/102396 _

[clang] [clang][docs] Modernize attribute docs for darwin specifics (PR #88448)

2024-04-11 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/88448 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][docs] Modernize attribute docs for darwin specifics (PR #88448)

2024-04-11 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/88448 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][docs] Modernize attribute docs for darwin specifics (PR #88448)

2024-04-11 Thread Steven Wu via cfe-commits
@@ -1604,23 +1604,31 @@ specifies availability for the current target platform, the availability attributes are ignored. Supported platforms are: ``ios`` - Apple's iOS operating system. The minimum deployment target is specified by - the ``-mios-version-min=*version*`` or `

[clang] [clang][docs] fix whitespace in AttrDocs.td (PR #88631)

2024-04-13 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM. Thanks for fixing. https://github.com/llvm/llvm-project/pull/88631 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [clang][MBD] set up module build daemon infrastructure (PR #67562)

2024-04-19 Thread Steven Wu via cfe-commits
@@ -0,0 +1,25 @@ +// Check that a clang invocation can spawn and handshake with a module build daemon + +// RUN: %kill-process "-cc1modbuildd mbd-handshake" +// RUN: rm -rf mbd-handshake %t +// RUN: split-file %s %t + +//--- main.c +int main() {return 0;} + +// RUN: %clang -fmodu

[clang] [llvm] [clang][MBD] set up module build daemon infrastructure (PR #67562)

2024-04-19 Thread Steven Wu via cfe-commits
@@ -0,0 +1,25 @@ +// Check that a clang invocation can spawn and handshake with a module build daemon + +// RUN: %kill-process "-cc1modbuildd mbd-handshake" +// RUN: rm -rf mbd-handshake %t +// RUN: split-file %s %t + +//--- main.c +int main() {return 0;} + +// RUN: %clang -fmodu

[clang] [llvm] [clang][MBD] set up module build daemon infrastructure (PR #67562)

2024-04-22 Thread Steven Wu via cfe-commits
@@ -0,0 +1,25 @@ +// Check that a clang invocation can spawn and handshake with a module build daemon + +// RUN: %kill-process "-cc1modbuildd mbd-handshake" +// RUN: rm -rf mbd-handshake %t +// RUN: split-file %s %t + +//--- main.c +int main() {return 0;} + +// RUN: %clang -fmodu

[clang] [lld] [llvm] [LTO] enable `ObjCARCContractPass` only on optimized build (PR #101114)

2024-07-30 Thread Steven Wu via cfe-commits
@@ -588,12 +588,6 @@ bool EmitAssemblyHelper::AddEmitPasses(legacy::PassManager &CodeGenPasses, // this also adds codegenerator level optimization passes. CodeGenFileType CGFT = getCodeGenFileType(Action); - // Add ObjC ARC final-cleanup optimizations. This is done as pa

[clang] [Clang][Sema] clang generates incorrect fix-its for API_AVAILABLE (PR #105855)

2024-09-03 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/105855 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Sema] clang generates incorrect fix-its for API_AVAILABLE (PR #105855)

2024-09-03 Thread Steven Wu via cfe-commits
@@ -1073,6 +1073,36 @@ static llvm::StringRef canonicalizePlatformName(llvm::StringRef Platform) { .Case("ShaderModel", "shadermodel") .Default(Platform); } +static std::vector equivalentPlatformNames(llvm::StringRef Platform) { cach

[clang] [Clang][Sema] clang generates incorrect fix-its for API_AVAILABLE (PR #105855)

2024-09-03 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM in general. https://github.com/llvm/llvm-project/pull/105855 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Sema] clang generates incorrect fix-its for API_AVAILABLE (PR #105855)

2024-09-03 Thread Steven Wu via cfe-commits
@@ -1073,6 +1073,36 @@ static llvm::StringRef canonicalizePlatformName(llvm::StringRef Platform) { .Case("ShaderModel", "shadermodel") .Default(Platform); } +static std::vector equivalentPlatformNames(llvm::StringRef Platform) { cach

[clang] [Clang][Sema] clang generates incorrect fix-its for API_AVAILABLE (PR #105855)

2024-09-03 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/105855 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Darwin][IR] Don't error on target_variant mismatch when linking IR (PR #92297)

2024-05-15 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan updated https://github.com/llvm/llvm-project/pull/92297 >From dcdad613db40ce325c1ffbe98df02c454daa3771 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Wed, 15 May 2024 10:35:55 -0700 Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[clang] [lld] [llvm] Run ObjCContractPass in Distributed Thin-LTO Pipeline (PR #92331)

2024-05-20 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: > it seems like this should just be in the default codegen pipeline? you'd need > to change the pass to bail out early if there are no relevant intrinsics (by > checking if the module contains the intrinsic declaration) to not affect > compile times > it seems like th

[clang] [llvm] [Darwin][IR] Don't error on target_variant mismatch when linking IR (PR #92297)

2024-05-20 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan updated https://github.com/llvm/llvm-project/pull/92297 >From dcdad613db40ce325c1ffbe98df02c454daa3771 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Wed, 15 May 2024 10:35:55 -0700 Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[clang] [lld] [llvm] Run ObjCContractPass in Distributed Thin-LTO Pipeline (PR #92331)

2024-05-20 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: > I couldn't find this check you're alluding to, so I added my own. If the > check does exist, could you point me to it? If not, does mine look > reasonable? Thanks. I was answering from my memory, now I have to check. We have this function `ModuleHasARC` which is used

[clang] [lld] [llvm] Run ObjCContractPass in Distributed Thin-LTO Pipeline (PR #92331)

2024-05-20 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. https://github.com/llvm/llvm-project/pull/92331 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Darwin][IR] Don't error on target_variant mismatch when linking IR (PR #92297)

2024-05-21 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/92297 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Workaround the incompatibility for executable exports (PR #101741)

2024-08-05 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan updated https://github.com/llvm/llvm-project/pull/101741 >From 49c9db2b5c9b7309defb1c2dfa484ca4883a7794 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Fri, 2 Aug 2024 12:43:21 -0700 Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Fold export_executable_symbols_* into function args. (PR #101741)

2024-08-05 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/101741 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Fold export_executable_symbols_* into function args. (PR #101741)

2024-08-05 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/101741 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Fold export_executable_symbols_* into function args. (PR #101741)

2024-08-05 Thread Steven Wu via cfe-commits
@@ -14,5 +14,3 @@ set(LLVM_LINK_COMPONENTS add_kaleidoscope_chapter(BuildingAJIT-Ch1 toy.cpp ) - -export_executable_symbols(BuildingAJIT-Ch1) cachemeifyoucan wrote: The expert symbols are pushed to the add_llvm_example by default https://github.com/llvm/l

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Fold export_executable_symbols_* into function args. (PR #101741)

2024-08-05 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/101741 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Fold export_executable_symbols_* into function args. (PR #101741)

2024-08-06 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Yes, please revert. Do you have link to the build failure? https://github.com/llvm/llvm-project/pull/101741 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] f9b69a3 - Revert "[CMake] Fold export_executable_symbols_* into function args. (#101741)"

2024-08-06 Thread Steven Wu via cfe-commits
Author: Steven Wu Date: 2024-08-06T06:08:16-07:00 New Revision: f9b69a378cb1acfedab7252b4d4dc3d0af282d0b URL: https://github.com/llvm/llvm-project/commit/f9b69a378cb1acfedab7252b4d4dc3d0af282d0b DIFF: https://github.com/llvm/llvm-project/commit/f9b69a378cb1acfedab7252b4d4dc3d0af282d0b.diff LOG

[clang] f9b69a3 - Revert "[CMake] Fold export_executable_symbols_* into function args. (#101741)"

2024-08-06 Thread Steven Wu via cfe-commits
Author: Steven Wu Date: 2024-08-06T06:08:16-07:00 New Revision: f9b69a378cb1acfedab7252b4d4dc3d0af282d0b URL: https://github.com/llvm/llvm-project/commit/f9b69a378cb1acfedab7252b4d4dc3d0af282d0b DIFF: https://github.com/llvm/llvm-project/commit/f9b69a378cb1acfedab7252b4d4dc3d0af282d0b.diff LOG

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Fold export_executable_symbols_* into function args. (PR #101741)

2024-08-06 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Reverted. I suspect it is a LLVM_DRIVER build that is not covered by PR testing and I missed some code path there. Let me improve later. https://github.com/llvm/llvm-project/pull/101741 ___ cfe-commits mailing list cfe-commits@l

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] Reapply "[CMake] Fold export_executable_symbols_* into function args. (#101741)" (PR #102138)

2024-08-06 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan created https://github.com/llvm/llvm-project/pull/102138 Fix the builds with LLVM_TOOL_LLVM_DRIVER_BUILD enabled. >From ea208594eca2af600cd38f618bada04d4b6b9a10 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Tue, 6 Aug 2024 06:21:47 -0700 Subject: [PATCH] =?

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] Reapply "[CMake] Fold export_executable_symbols_* into function args. (#101741)" (PR #102138)

2024-08-06 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/102138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] Reapply "[CMake] Fold export_executable_symbols_* into function args. (#101741)" (PR #102138)

2024-08-06 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: @petrhosek Let me know if you want to check this offline before I merge or you want me to merge and see if it breaks again. https://github.com/llvm/llvm-project/pull/102138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [Test] Update clang/test/Modules/crash-vfs-include-pch.m (PR #102080)

2024-08-06 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/102080 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Revert "[LinkerWrapper] Extend with usual pass options (#96704)" (PR #102226)

2024-08-06 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Thanks! Can this be fixed on `release/19.x` too? https://github.com/llvm/llvm-project/pull/102226 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] Reapply "[CMake] Fold export_executable_symbols_* into function args. (#101741)" (PR #102138)

2024-08-07 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: I will merge and watch Fuchsia bot to make sure it doesn't break. https://github.com/llvm/llvm-project/pull/102138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] Reapply "[CMake] Fold export_executable_symbols_* into function args. (#101741)" (PR #102138)

2024-08-07 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/102138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Modules] Fix cyclic dependencies in clang (PR #102348)

2024-08-07 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan created https://github.com/llvm/llvm-project/pull/102348 Breakup the cyclic dependency in module 'Clang_Frontend': Clang_Frontend -> Clang_Serialization -> Clang_Frontend >From dcfd3b1cc4ba4ec71f3f89c28429e6f0dac3a400 Mon Sep 17 00:00:00 2001 From: Steven Wu

[clang] [Modules] Fix cyclic dependencies in clang (PR #102348)

2024-08-07 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan unassigned https://github.com/llvm/llvm-project/pull/102348 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Modules] Fix cyclic dependencies in clang (PR #102348)

2024-08-07 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Maybe the next step is to get rid of `"clang/Frontend/PCHContainerOperations.h"` but I don't know why it was there in the first place. https://github.com/llvm/llvm-project/pull/102348 ___ cfe-commits mailing list cfe-commits@l

[clang] [Modules] Fix cyclic module dependencies in clang (PR #102348)

2024-08-07 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/102348 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Remove EXPORT_SYMBOLS_FOR_PLUGINS from #102138 (PR #102396)

2024-08-07 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan created https://github.com/llvm/llvm-project/pull/102396 Partially remove some of the changes from #102138 as EXPORT_SYMBOLS_FOR_PLUGINS doesn't work on all the configurations. >From 6eae32d099a2ae90428831dcf1fae8efa7a8070c Mon Sep 17 00:00:00 2001 From: Stev

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Remove EXPORT_SYMBOLS_FOR_PLUGINS from #102138 (PR #102396)

2024-08-07 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Try to fix https://github.com/llvm/llvm-project/pull/102138 after failing on `clang-ppc64-aix` bot: [https://lab.llvm.org/buildbot/#/builders/64/builds/62](https://lab.llvm.org/buildbot/#/builders/64/builds/620) https://github.com/llvm/llvm-project/pull/102396 __

[clang] [Modules] Fix cyclic module dependencies in clang (PR #102348)

2024-08-07 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/102348 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Remove EXPORT_SYMBOLS_FOR_PLUGINS from #102138 (PR #102396)

2024-08-08 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/102396 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [flang] [lld] [llvm] [mlir] [CMake] Remove EXPORT_SYMBOLS_FOR_PLUGINS from #102138 (PR #102396)

2024-08-08 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: That looks an unstable test the has been failed before. https://github.com/llvm/llvm-project/pull/102396 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Support] Add VirtualOutputBackends to virtualize the output from tools (PR #68447)

2024-10-22 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/68447 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Support] Add VirtualOutputBackends to virtualize the output from tools (PR #68447)

2024-10-22 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Close as moving to new stacked PR for easy review. https://github.com/llvm/llvm-project/pull/68447 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [Support] Add VirtualOutputBackends to virtualize the output from tools (PR #68447)

2024-10-22 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: @zmodem Sorry I totally missed you comments. I thought no one was reviewing so I kind of abandoned the process. Recreate the PR in a stack for new reviews. All of your comments should be addressed: ``` 3713985 Support: Add proxies for raw_ostream and raw_pwrite_stream

[clang] [Darwin][Driver][clang] Prioritise `-isysroot` over `--sysroot` consistently (PR #115993)

2024-12-02 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: I think the correct solution for Homebrew is to never use `--sysroot` and switch to `-isysroot` since the former is almost never used on Darwin platforms. https://github.com/llvm/llvm-project/pull/115993 ___ cfe-commits mailing

[clang] [Darwin][Driver][clang] Prioritise command line args over `DEFAULT_SYSROOT` (PR #115993)

2024-12-05 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Current patch breaks test: ``` // We pass --sysroot="" to defeat any -DDEFAULT_SYSROOT parameter. ``` I think that just a pure hack in the test case, we can just update the test. @cyndyishida what do you think about the current approach? https://github.com/llvm/llvm-proje

[clang] [Darwin][Driver][clang] Prioritise `-isysroot` over `--sysroot` consistently (PR #115993)

2024-12-04 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: > DEFAULT_SYSROOT was expected by some users to support setting a default SDK. > Maybe this wasn't actually intended, but it came common enough knowledge to > eventually be explicitly recommended in parts of LLVM documentation: That is flang document, which is not endors

[clang] [Darwin][Driver][clang] Prioritise `-isysroot` over `--sysroot` consistently (PR #115993)

2024-12-04 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Ah, I see. I think `--sysroot` is not even involved when you use `DEFAULT_SYSROOT`, it is injected here: https://github.com/llvm/llvm-project/blob/main/clang/lib/Driver/Driver.cpp#L205 Maybe instead of, the logic in the patch should be setting `-syslibroot` for linker in

[clang] [Clang][Darwin] Centralize framework search paths for headers & libraries. (PR #118543)

2024-12-03 Thread Steven Wu via cfe-commits
@@ -339,13 +340,11 @@ void InitHeaderSearch::AddDefaultIncludePaths( if (triple.isOSDarwin()) { cachemeifyoucan wrote: Do you think we can just clean up this code block by moving all logics to driver? https://github.com/llvm/llvm-project/pull/118543

[clang] [Clang][Darwin] Centralize framework search paths for headers & libraries. (PR #118543)

2024-12-03 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/118543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Darwin] Centralize framework search paths for headers & libraries. (PR #118543)

2024-12-03 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan commented: Some comments in line. https://github.com/llvm/llvm-project/pull/118543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Darwin] Centralize framework search paths for headers & libraries. (PR #118543)

2024-12-03 Thread Steven Wu via cfe-commits
@@ -192,6 +192,17 @@ class DarwinSDKInfo { Expected> parseDarwinSDKInfo(llvm::vfs::FileSystem &VFS, StringRef SDKRootPath); +/// Get the system platform prefix for the active target triple. cachemeifyoucan wrote: I feel this header is used for parsing `SDKSet

[clang] [clang][Driver] Support simplified triple versions for config files (PR #111387)

2024-12-09 Thread Steven Wu via cfe-commits
@@ -226,3 +226,26 @@ // // RUN: HOME=%S/Inputs/config %clang -### --config-user-dir=~ -v 2>&1 | FileCheck %s --check-prefix=CHECK-TILDE // CHECK-TILDE: User configuration file directory: {{.*}}/Inputs/config + +//--- Fallback to stripping OS versions +// +// RUN: touch %t/test

[clang] Add -fuse-lipo option (PR #121231)

2025-01-02 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: > I tried to take precedence from -fuse-ld and --ld-path, so -fuse-lipo takes a > name, and a hypothetical future --lipo-path would be a full path. Perhaps > these are only named this way due to legacy compatibility though, and new > naming conventions should be somethin

[clang] Add -fuse-lipo option (PR #121231)

2025-01-02 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. https://github.com/llvm/llvm-project/pull/121231 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [DependencyScanning] Add ability to scan TU with a buffer input (PR #125111)

2025-02-03 Thread Steven Wu via cfe-commits
cachemeifyoucan wrote: Ping. https://github.com/llvm/llvm-project/pull/125111 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang module] Current Working Directory Pruning (PR #124786)

2025-01-30 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan commented: Is it better if this optimization happens really early in the process since you only visit all the options in CI? In that case, you can just reset the `CurrentWorkingDirectory` in the VFS so all the searching is done without CWD. This avoids any ha

[clang] [DependencyScanning] Add ability to scan TU with a buffer input (PR #125111)

2025-01-30 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan created https://github.com/llvm/llvm-project/pull/125111 Update Dependency scanner so it can scan the dependency of a TU with a provided buffer rather than relying on the on disk file system to provide the input file. >From d836f2f5da850f0d985f34253873c6c4616

[clang] [DependencyScanning] Add ability to scan TU with a buffer input (PR #125111)

2025-02-04 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan closed https://github.com/llvm/llvm-project/pull/125111 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang module] Current Working Directory Pruning (PR #124786)

2025-02-04 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM with some small style comments. https://github.com/llvm/llvm-project/pull/124786 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinf

[clang] [clang module] Current Working Directory Pruning (PR #124786)

2025-02-04 Thread Steven Wu via cfe-commits
@@ -397,9 +397,91 @@ void ModuleDepCollector::applyDiscoveredDependencies(CompilerInvocation &CI) { } } +static bool isSafeToIgnoreCWD(const CowCompilerInvocation &CI) { + // Check if the command line input uses relative paths. + // It is not safe to ignore the current wo

[clang] [clang module] Current Working Directory Pruning (PR #124786)

2025-02-04 Thread Steven Wu via cfe-commits
@@ -63,7 +63,10 @@ enum class ScanningOptimizations { /// Canonicalize -D and -U options. Macros = 8, - DSS_LAST_BITMASK_ENUM(Macros), + /// Ignore the compiler's working directory if it is safe. + IgnoreCWD = 0x10, cachemeifyoucan wrote: Nit: maybe up

[clang] [clang module] Current Working Directory Pruning (PR #124786)

2025-02-04 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/124786 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [DependencyScanning] Add ability to scan TU with a buffer input (PR #125111)

2025-01-30 Thread Steven Wu via cfe-commits
@@ -0,0 +1,111 @@ +// UNSUPPORTED: target=powerpc64-ibm-aix{{.*}} + +// RUN: rm -rf %t +// RUN: split-file %s %t + +//--- module.modulemap +module root { header "root.h" } +module direct { header "direct.h" } +module transitive { header "transitive.h" } +module addition { header "

[clang] [DependencyScanning] Add ability to scan TU with a buffer input (PR #125111)

2025-01-30 Thread Steven Wu via cfe-commits
@@ -0,0 +1,111 @@ +// UNSUPPORTED: target=powerpc64-ibm-aix{{.*}} + +// RUN: rm -rf %t +// RUN: split-file %s %t + +//--- module.modulemap +module root { header "root.h" } +module direct { header "direct.h" } +module transitive { header "transitive.h" } +module addition { header "

[clang] [DependencyScanning] Add ability to scan TU with a buffer input (PR #125111)

2025-01-30 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan updated https://github.com/llvm/llvm-project/pull/125111 >From d836f2f5da850f0d985f34253873c6c461606db0 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Thu, 30 Jan 2025 11:51:41 -0800 Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=

[clang] [Darwin][Driver][clang] Prioritise command line args over `DEFAULT_SYSROOT` (PR #115993)

2024-12-10 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/115993 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Darwin] Remove legacy framework search path logic in the frontend (PR #120149)

2024-12-18 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. https://github.com/llvm/llvm-project/pull/120149 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Driver][Darwin] Optionally use xcselect to find macOS SDK (PR #119670)

2024-12-12 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan edited https://github.com/llvm/llvm-project/pull/119670 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Driver][Darwin] Optionally use xcselect to find macOS SDK (PR #119670)

2024-12-12 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan commented: The idea looks good. Need to add test. You should add `CLANG_USE_XCSELECT` as a requirement and label all the tests properly (including those will break). Maybe you can also remove the hack for `CLANG_NO_XCSELECT` but I am neutral on that. https:

[clang] [clang][Driver][Darwin] Optionally use xcselect to find macOS SDK (PR #119670)

2024-12-12 Thread Steven Wu via cfe-commits
@@ -2257,17 +2261,26 @@ void Darwin::AddDeploymentTarget(DerivedArgList &Args) const { // Warn if the path does not exist. if (!getVFS().exists(A->getValue())) getDriver().Diag(clang::diag::warn_missing_sysroot) << A->getValue(); - } else { -if (char *env =

[clang] [clang][Driver][Darwin] Optionally use xcselect to find macOS SDK (PR #119670)

2024-12-12 Thread Steven Wu via cfe-commits
@@ -214,6 +214,39 @@ if(GCC_INSTALL_PREFIX AND NOT USE_DEPRECATED_GCC_INSTALL_PREFIX) "See https://github.com/llvm/llvm-project/pull/77537 for detail.") endif() +if(APPLE) + check_include_file(xcselect.h CLANG_HAVE_XCSELECT_H) cachemeifyoucan wrote: All

[clang] [clang][Driver][Darwin] Optionally use xcselect to find macOS SDK (PR #119670)

2024-12-13 Thread Steven Wu via cfe-commits
@@ -43,8 +43,8 @@ // RUN: %clang -target x86_64-apple-macos10.13 -mlinker-version=520 \ // RUN: -### %t.o 2>&1 \ -// RUN: | FileCheck --check-prefix=NOSDK %s +// RUN: | FileCheck --check-prefix=INFERRED-SDK %s cachemeifyoucan wrote: I think you want to

[clang] [clang][Driver][Darwin] Optionally use xcselect to find macOS SDK (PR #119670)

2024-12-13 Thread Steven Wu via cfe-commits
https://github.com/cachemeifyoucan approved this pull request. LGTM after addressing the last comment. https://github.com/llvm/llvm-project/pull/119670 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listi

<    1   2   3   >