[PATCH] D51568: [modules] Add `-fno-absolute-module-directory` flag for relocatable modules

2018-11-29 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. I am not sure if this is the best approach, but the implementation looks okay to me. @bruno @rsmith What do you think? Manman Comment at: include/clang/Serialization/ASTReader.h:2241 SkipString(Record, Idx); +Idx++; // Relative } --

[PATCH] D58751: Order File Instrumentation: add clang support for -forder-file-instrumentation

2019-02-27 Thread Manman Ren via Phabricator via cfe-commits
manmanren created this revision. manmanren added reviewers: davidxl, beanz, dexonsmith. Herald added subscribers: cfe-commits, jdoerfert. Herald added a project: clang. When -forder-file-instrumentation is on, we pass llvm flag to enable the order file instrumentation pass. Repository: rC Cla

[PATCH] D58751: Order File Instrumentation: add clang support for -forder-file-instrumentation

2019-03-04 Thread Manman Ren via Phabricator via cfe-commits
manmanren marked 3 inline comments as done. manmanren added inline comments. Comment at: include/clang/Driver/Options.td:774 +Group, Flags<[CoreOption]>, +HelpText<"Generate instrumented code to collect order file into default.profraw file (overridden by '=' form of opti

[PATCH] D58751: Order File Instrumentation: add clang support for -forder-file-instrumentation

2019-03-04 Thread Manman Ren via Phabricator via cfe-commits
manmanren closed this revision. manmanren added a comment. r355333 Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D58751/new/ https://reviews.llvm.org/D58751 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http

[PATCH] D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods.

2020-09-11 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. In D86049#2255738 , @rjmccall wrote: > We just talk about it. I agree with Nathan that we shouldn't just add this > as a short-term hack; we should design the ABI right and then do what we want. > > I think these are basicall

[PATCH] D104601: [Preprocessor] Implement -fminimize-whitespace.

2021-11-02 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. This commit seems to cause some regression for "-save-temps" as there is no new line before the pragma. See the below test case, -E will output int test();#pragma clang assume_nonnull It will fail the compilation on the preprocessed output with error: expected unqualifi

[PATCH] D74813: [RFC] Add hash of block contents to function block names

2020-03-11 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. There are a few concerns about the approach: 1> Compile time: dumping AST as string then hashing the string. Alex measured it on a synthetic benchmark, it shows insignificant impact. 2> Stability: from my understanding, the main goal of this patch is to increase stabil

[PATCH] D75574: RFC: Implement objc_direct_protocol attribute to remove protocol metadata

2020-03-17 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. In D75574#1925808 , @rjmccall wrote: > This might also be interesting to @manmanren. Thank you, John! Manman Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75574/new/ https://re

[PATCH] D27546: [ASTReader] Sort RawComments before merging

2016-12-17 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM. Manman https://reviews.llvm.org/D27546 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman

[PATCH] D27852: [modules] Handle modules with nonstandard names in module.private.modulemaps

2016-12-20 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. Thanks, Manman https://reviews.llvm.org/D27852 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailma

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2017-01-04 Thread Manman Ren via Phabricator via cfe-commits
manmanren updated this revision to Diff 83068. manmanren added a comment. Addressing review comments! I still need to measure the performance impact of calculating the hash then decide how to enable this. https://reviews.llvm.org/D27689 Files: include/clang/AST/ExternalASTSource.h include

[PATCH] D28299: Module: use PCMCache to manage memory buffers for pcm files.

2017-01-04 Thread Manman Ren via Phabricator via cfe-commits
manmanren created this revision. manmanren added reviewers: rsmith, benlangmuir, dexonsmith. manmanren added subscribers: cfe-commits, bruno. We create a PCMCache class to manage memory buffers associated with pcm files. With implicit modules, we currently use lock files to make sure we are makin

[PATCH] D26034: [CodeCompletion] Block property setters: Use dynamic priority heuristic

2017-01-04 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM. Manman Repository: rL LLVM https://reviews.llvm.org/D26034 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.l

[PATCH] D28299: Module: use PCMCache to manage memory buffers for pcm files.

2017-01-05 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. I forgot to upload the testing case, I will add it now. Manman Comment at: include/clang/Basic/FileManager.h:176 + /// Manage memory buffers associated with pcm files. + std::unique_ptr BufferMgr; + benlangmuir wrote: > Why is this

[PATCH] D28299: Module: use PCMCache to manage memory buffers for pcm files.

2017-01-05 Thread Manman Ren via Phabricator via cfe-commits
manmanren updated this revision to Diff 83273. manmanren added a comment. Add testing case. https://reviews.llvm.org/D28299 Files: include/clang/Basic/DiagnosticSerializationKinds.td include/clang/Basic/FileManager.h include/clang/Serialization/ASTReader.h include/clang/Serialization/AS

[PATCH] D28299: Module: use PCMCache to manage memory buffers for pcm files.

2017-01-05 Thread Manman Ren via Phabricator via cfe-commits
manmanren added inline comments. Comment at: include/clang/Basic/DiagnosticSerializationKinds.td:131 + "diagnostic options now it is a non-system module">, + InGroup; + aprantl wrote: > Is this better? > > "module file '%0' was validated as a system module and

[PATCH] D28415: PCH: fix a regression that reports a module is defined in both pch and pcm

2017-01-06 Thread Manman Ren via Phabricator via cfe-commits
manmanren created this revision. manmanren added reviewers: rsmith, benlangmuir, doug.gregor. manmanren added a subscriber: cfe-commits. In r276159, we started to say that a module X is defined in a pch if we specify -fmodule-name when building the pch. This caused a regression that reports modul

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2017-01-11 Thread Manman Ren via Phabricator via cfe-commits
manmanren updated this revision to Diff 83999. manmanren added a comment. Rebase on top of r291686. https://reviews.llvm.org/D27689 Files: include/clang/AST/ExternalASTSource.h include/clang/Basic/Module.h include/clang/Frontend/PCHContainerOperations.h include/clang/Serialization/ASTBi

[PATCH] D28299: Module: use PCMCache to manage memory buffers for pcm files.

2017-01-12 Thread Manman Ren via Phabricator via cfe-commits
manmanren updated this revision to Diff 84137. manmanren added a comment. Addressing review comments. https://reviews.llvm.org/D28299 Files: include/clang/Basic/DiagnosticSerializationKinds.td include/clang/Basic/FileManager.h include/clang/Serialization/ASTReader.h include/clang/Serial

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2017-01-12 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. Bruno helped on collecting performance data for this patch: $ cat cocoa-test.h #import $ rm -rf tmp; clang -x objective-c -isysroot `xcrun --sdk macosx --show-sdk-path` -fblocks -fmodules -fmodules-cache-path=tmp cocoa-test.h -fsyntax-only clang-release (10 runs) --

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2017-01-13 Thread Manman Ren via Phabricator via cfe-commits
manmanren updated this revision to Diff 84406. manmanren marked 7 inline comments as done. manmanren added a comment. Add CC1 option to control hashing of the module file content. https://reviews.llvm.org/D27689 Files: include/clang/AST/ExternalASTSource.h include/clang/Basic/Module.h inc

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2017-01-13 Thread Manman Ren via Phabricator via cfe-commits
manmanren marked an inline comment as done. manmanren added inline comments. Comment at: include/clang/Serialization/Module.h:19 #include "clang/Basic/FileManager.h" +#include "clang/Basic/Module.h" #include "clang/Basic/SourceLocation.h" rsmith wrote: > Redund

[PATCH] D28790: [Modules] Correct test comment from obsolete earlier version of code. NFC

2017-01-17 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM Manman https://reviews.llvm.org/D28790 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/

[PATCH] D28779: [ASTReader] Add a DeserializationListener callback for IMPORTED_MODULES

2017-01-17 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM Manman https://reviews.llvm.org/D28779 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2017-01-18 Thread Manman Ren via Phabricator via cfe-commits
manmanren marked an inline comment as done. manmanren added a comment. Ping :] I am hoping to wrap this up this week. Thanks, Manman https://reviews.llvm.org/D27689 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bi

[PATCH] D28299: Module: use PCMCache to manage memory buffers for pcm files.

2017-01-18 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. Ping :] Hoping to wrap this up this week. Cheers, Manman https://reviews.llvm.org/D28299 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D29923: Send UndefMacroDirective to MacroDefined callback

2017-03-09 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. Please update the patch with context: http://llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface Thanks, Manman Comment at: unittests/Basic/SourceManagerTest.cpp:251 std::string Name; - bool isDefinition; // if false, it is

[PATCH] D26503: [Parser][ObjC] Improve diagnostics and recovery when C++ keywords are used as identifiers in Objective-C++

2016-12-07 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM Manman Repository: rL LLVM https://reviews.llvm.org/D26503 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.ll

[PATCH] D27053: [CodeCompletion] Provide Objective-C class property completion results

2016-12-07 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM . Manman Comment at: lib/Sema/SemaCodeComplete.cpp:3763 +if (!M->getSelector().isUnarySelector() || +M->getReturnType()->isVoidType() || M->is

[PATCH] D27039: [CodeCompletion] Autocomplete NS_DESIGNATED_INITIALIZER in initializers with arguments

2016-12-07 Thread Manman Ren via Phabricator via cfe-commits
manmanren accepted this revision. manmanren added a comment. This revision is now accepted and ready to land. LGTM Manman Repository: rL LLVM https://reviews.llvm.org/D27039 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.ll

[PATCH] D27689: Module: hash the pcm content and use it as SIGNATURE for implicit modules.

2016-12-12 Thread Manman Ren via Phabricator via cfe-commits
manmanren created this revision. manmanren added reviewers: rsmith, benlangmuir, aprantl. manmanren added subscribers: bruno, cfe-commits, dexonsmith. We change ASTFileSignature from a random 32-bit number to the actual SHA hash of the pcm content. 1> Definition of ASTFileSignature is moved to B

[PATCH] D109632: [clang] de-duplicate methods from AST files

2021-09-10 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. This looks good to me in general. Since it should not change functionality, it may not be possible to write a test case. Manman Comment at: clang/lib/Serialization/ASTReader.cpp:8194 +if (seen.insert(M).second) { + S.addMethodToGlobalList(&

[PATCH] D109632: [clang] de-duplicate methods from AST files

2021-09-14 Thread Manman Ren via Phabricator via cfe-commits
manmanren added a comment. @dexonsmith @bruno: are you okay with this change? It looks good to me :] Thanks, Manman Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D109632/new/ https://reviews.llvm.org/D109632 ___