Author: Chuanqi Xu
Date: 2020-07-29T10:20:55+08:00
New Revision: d3527052fc2a952d752f82ffbe39220bad33fc8d
URL:
https://github.com/llvm/llvm-project/commit/d3527052fc2a952d752f82ffbe39220bad33fc8d
DIFF:
https://github.com/llvm/llvm-project/commit/d3527052fc2a952d752f82ffbe39220bad33fc8d.diff
LO
Author: Chuanqi Xu
Date: 2022-08-31T11:09:46+08:00
New Revision: b1d5af81249dc7e5697faf9ee33f86012ccd8668
URL:
https://github.com/llvm/llvm-project/commit/b1d5af81249dc7e5697faf9ee33f86012ccd8668
DIFF:
https://github.com/llvm/llvm-project/commit/b1d5af81249dc7e5697faf9ee33f86012ccd8668.diff
LO
Author: Chuanqi Xu
Date: 2022-08-31T13:02:00+08:00
New Revision: fed71b04fb3cc6b1a5a21f64c26104962d816300
URL:
https://github.com/llvm/llvm-project/commit/fed71b04fb3cc6b1a5a21f64c26104962d816300
DIFF:
https://github.com/llvm/llvm-project/commit/fed71b04fb3cc6b1a5a21f64c26104962d816300.diff
LO
Author: Chuanqi Xu
Date: 2022-09-01T16:31:51+08:00
New Revision: 7e19d53da44942de9b373028828c276648a8f2a4
URL:
https://github.com/llvm/llvm-project/commit/7e19d53da44942de9b373028828c276648a8f2a4
DIFF:
https://github.com/llvm/llvm-project/commit/7e19d53da44942de9b373028828c276648a8f2a4.diff
LO
Author: Sinan Lin
Date: 2022-09-02T16:18:15+08:00
New Revision: 1334e129a39cb427e7b855e9a711a3e7604e50e5
URL:
https://github.com/llvm/llvm-project/commit/1334e129a39cb427e7b855e9a711a3e7604e50e5
DIFF:
https://github.com/llvm/llvm-project/commit/1334e129a39cb427e7b855e9a711a3e7604e50e5.diff
LOG
Author: Chuanqi Xu
Date: 2022-09-02T17:24:52+08:00
New Revision: 085e8cd8d32c9104abbc2c1345a1483f19d25d36
URL:
https://github.com/llvm/llvm-project/commit/085e8cd8d32c9104abbc2c1345a1483f19d25d36
DIFF:
https://github.com/llvm/llvm-project/commit/085e8cd8d32c9104abbc2c1345a1483f19d25d36.diff
LO
Author: Chuanqi Xu
Date: 2022-09-05T11:05:23+08:00
New Revision: baa9eae279c1639f406015734ebbf4c429b15c21
URL:
https://github.com/llvm/llvm-project/commit/baa9eae279c1639f406015734ebbf4c429b15c21
DIFF:
https://github.com/llvm/llvm-project/commit/baa9eae279c1639f406015734ebbf4c429b15c21.diff
LO
Author: Chuanqi Xu
Date: 2022-09-05T15:20:09+08:00
New Revision: 69e920d42677872ac39d3475312092404193bf24
URL:
https://github.com/llvm/llvm-project/commit/69e920d42677872ac39d3475312092404193bf24
DIFF:
https://github.com/llvm/llvm-project/commit/69e920d42677872ac39d3475312092404193bf24.diff
LO
Author: Chuanqi Xu
Date: 2022-09-06T11:08:42+08:00
New Revision: 7628f19262e441b438a69176ec5229d8ccb96124
URL:
https://github.com/llvm/llvm-project/commit/7628f19262e441b438a69176ec5229d8ccb96124
DIFF:
https://github.com/llvm/llvm-project/commit/7628f19262e441b438a69176ec5229d8ccb96124.diff
LO
Author: Chuanqi Xu
Date: 2022-09-06T14:44:16+08:00
New Revision: 495419628bbab1a99cfc00d0c44b877bfc8e4a14
URL:
https://github.com/llvm/llvm-project/commit/495419628bbab1a99cfc00d0c44b877bfc8e4a14
DIFF:
https://github.com/llvm/llvm-project/commit/495419628bbab1a99cfc00d0c44b877bfc8e4a14.diff
LO
Author: Chuanqi Xu
Date: 2022-09-06T14:57:01+08:00
New Revision: f65f06d63f6a0e40c33a9d77eeb381f1b2a8a524
URL:
https://github.com/llvm/llvm-project/commit/f65f06d63f6a0e40c33a9d77eeb381f1b2a8a524
DIFF:
https://github.com/llvm/llvm-project/commit/f65f06d63f6a0e40c33a9d77eeb381f1b2a8a524.diff
LO
Author: Chuanqi Xu
Date: 2022-09-07T10:45:01+08:00
New Revision: 5f571eeb3f764c6d97b81822464ea420adef2cf7
URL:
https://github.com/llvm/llvm-project/commit/5f571eeb3f764c6d97b81822464ea420adef2cf7
DIFF:
https://github.com/llvm/llvm-project/commit/5f571eeb3f764c6d97b81822464ea420adef2cf7.diff
LO
Author: Chuanqi Xu
Date: 2022-09-13T13:11:56+08:00
New Revision: 79fa0ec8c4bfeeb21f7b44ebd9a66e7ec9781798
URL:
https://github.com/llvm/llvm-project/commit/79fa0ec8c4bfeeb21f7b44ebd9a66e7ec9781798
DIFF:
https://github.com/llvm/llvm-project/commit/79fa0ec8c4bfeeb21f7b44ebd9a66e7ec9781798.diff
LO
Author: Chuanqi Xu
Date: 2022-09-14T15:07:31+08:00
New Revision: 1c0a90fd47bded1a6d5f31091e32cd79434bf4d4
URL:
https://github.com/llvm/llvm-project/commit/1c0a90fd47bded1a6d5f31091e32cd79434bf4d4
DIFF:
https://github.com/llvm/llvm-project/commit/1c0a90fd47bded1a6d5f31091e32cd79434bf4d4.diff
LO
ChuanqiXu9 wrote:
I'd like to land this change later since the existing behavior violates our
expectations for ABI.
https://github.com/llvm/llvm-project/pull/71031
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/
Author: Chuanqi Xu
Date: 2023-11-07T14:13:33+08:00
New Revision: d0c778c882f117182f8a43d0f986cc8c2cfbb688
URL:
https://github.com/llvm/llvm-project/commit/d0c778c882f117182f8a43d0f986cc8c2cfbb688
DIFF:
https://github.com/llvm/llvm-project/commit/d0c778c882f117182f8a43d0f986cc8c2cfbb688.diff
LO
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/71031
>From 427c1e1960d48e8803e235b4d5beb437ea21c942 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Thu, 2 Nov 2023 15:19:58 +0800
Subject: [PATCH 1/2] [C++20] [Modules] Don't import function bodies from other
mod
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/71031
>From 82173f3556d40fc1c6e106820ad281b928a2c7fe Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Thu, 2 Nov 2023 15:19:58 +0800
Subject: [PATCH] [C++20] [Modules] Don't import function bodies from other
module
https://github.com/ChuanqiXu9 closed
https://github.com/llvm/llvm-project/pull/71031
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
Sorry for being too hurry here.
https://github.com/llvm/llvm-project/pull/71031
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/71014
>From c69205d54e1a4858211b5bbce69e10bba7063359 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Thu, 2 Nov 2023 11:11:59 +0800
Subject: [PATCH] [Coroutines] Introduce
[[clang::coro_only_destroy_when_complete]]
ChuanqiXu9 wrote:
> There is substantial inconsistency between "coro only destroy when complete"
> and "... when done" throughout the PR (in various forms; e.g. literal
> strings, snake_case, CamelCase, ALL_CAPS as well as file names).
>
> Presumably there should only be one spelling everywher
ChuanqiXu9 wrote:
@bcardosolopes @apolloww @rjmccall would you like to take a look for the middle
end part?
https://github.com/llvm/llvm-project/pull/71014
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/
ChuanqiXu9 wrote:
> It was suggested to avoid "thin" and "fat" terminology (I started using it
> with LTO as a precedent for the terms), but I suppose something more
> descriptive could be selected.
Any suggestions? My english is not good, you know.
> I'll also note that my prior usage was in
https://github.com/ChuanqiXu9 converted_to_draft
https://github.com/llvm/llvm-project/pull/71627
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
The term `sparse` makes me wondering its format is not efficiency.. And for the
term `surface`, ..., it may beyond my knowledge, I feel it is odd but I can't
give a concrete reason.
https://github.com/llvm/llvm-project/pull/71622
_
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/71627
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/71627
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 ready_for_review
https://github.com/llvm/llvm-project/pull/71627
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
Let's discuss the higher level problems in
https://discourse.llvm.org/t/rfc-c-20-modules-introduce-thin-bmi-and-decls-hash/74755
https://github.com/llvm/llvm-project/pull/71622
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/71627
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
Let's discuss the higher level problems in Let's discuss the higher level
problems in
https://discourse.llvm.org/t/rfc-c-20-modules-introduce-thin-bmi-and-decls-hash/74755.
Especially this one is not good to review since we don't support stacked
review now.
https://github.c
@@ -0,0 +1,59 @@
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -std=c++20 \
+// RUN: -disable-llvm-passes -emit-llvm %s -o - | FileCheck %s
+
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -std=c++20 \
+// RUN: -O3 -emit-llvm %s -o - | FileCheck %s --check-pre
@@ -0,0 +1,59 @@
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -std=c++20 \
+// RUN: -disable-llvm-passes -emit-llvm %s -o - | FileCheck %s
+
+// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -std=c++20 \
+// RUN: -O3 -emit-llvm %s -o - | FileCheck %s --check-pre
ChuanqiXu9 wrote:
> > > Presumably there should only be one spelling everywhere.
> >
> >
> > Done
>
> Missed a few. ;-)
Sorry and thanks for the detailed comment!
https://github.com/llvm/llvm-project/pull/71014
___
cfe-commits mailing list
cfe-comm
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/71014
>From 4531d8b95ecaf08e672939a49fa18415851d136e Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Thu, 2 Nov 2023 11:11:59 +0800
Subject: [PATCH] [Coroutines] Introduce
[[clang::coro_only_destroy_when_complete]]
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/71014
>From 4531d8b95ecaf08e672939a49fa18415851d136e Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Thu, 2 Nov 2023 11:11:59 +0800
Subject: [PATCH 1/2] [Coroutines] Introduce
[[clang::coro_only_destroy_when_comple
ChuanqiXu9 wrote:
This is a little bit far from what I imaged.
There are 2 things in the patch. One is to generate the BMI and the object file
in one phase (phase here means preprocess, precompile, compile, ...). Another
is to allow us to generate BMI from a `.cpp` file. (Currently we only do
ChuanqiXu9 wrote:
Thanks for reviewing this!
https://github.com/llvm/llvm-project/pull/71014
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 closed
https://github.com/llvm/llvm-project/pull/71014
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chuanqi Xu
Date: 2023-11-09T15:20:32+08:00
New Revision: 427f13bd724d332681ca5adb2455b7241af7177d
URL:
https://github.com/llvm/llvm-project/commit/427f13bd724d332681ca5adb2455b7241af7177d
DIFF:
https://github.com/llvm/llvm-project/commit/427f13bd724d332681ca5adb2455b7241af7177d.diff
LO
@@ -86,19 +87,26 @@ enum { IdentifierInfoAlignment = 8 };
static constexpr int ObjCOrBuiltinIDBits = 16;
/// The "layout" of ObjCOrBuiltinID is:
-/// - The first value (0) represents "not a special identifier".
-/// - The next (NUM_OBJC_KEYWORDS - 1) values represent ObjCKey
ChuanqiXu9 wrote:
Oh, I didn't look into the identifier's system before. I took a while to look
at the patch but I failed to understand it and I failed to find the
relationships between this patch and header units...
https://github.com/llvm/llvm-project/pull/71709
ChuanqiXu9 wrote:
> > There are 2 things in the patch. One is to generate the BMI and the object
> > file in one phase (phase here means preprocess, precompile, compile, ...).
>
> This is the main point of the patch - to do this efficiently.
Got it. The we can be more focused.
>
> > But afte
ChuanqiXu9 wrote:
> > clang++ -std=c++20 foo.cpp -c -fmodule-file=X=some/dir/X.pcm
>
> Hm, according to https://clang.llvm.org/docs/StandardCPlusPlusModules.html
> this can already be achieved with the `-fmodule-output` option (and which I
> was about to try in `build2`). Is there a reason a
Author: Chuanqi Xu
Date: 2023-11-09T17:44:41+08:00
New Revision: 0f7aaeb3241c3803489a45753190e82dbc7fd5fa
URL:
https://github.com/llvm/llvm-project/commit/0f7aaeb3241c3803489a45753190e82dbc7fd5fa
DIFF:
https://github.com/llvm/llvm-project/commit/0f7aaeb3241c3803489a45753190e82dbc7fd5fa.diff
LO
ChuanqiXu9 wrote:
> The proposition of the patches here is (in the most common general case) to
> remove the step of generating the ImplementationBMI and to pipeline the
> filtering to the AST consumer that generates the Interface BMI.
Agreed. This is what I want too.
> Whether we re-use wra
Author: Chuanqi Xu
Date: 2023-11-10T10:58:07+08:00
New Revision: 0e7b30fa821dd4899227aa643030f4e4164f4e56
URL:
https://github.com/llvm/llvm-project/commit/0e7b30fa821dd4899227aa643030f4e4164f4e56
DIFF:
https://github.com/llvm/llvm-project/commit/0e7b30fa821dd4899227aa643030f4e4164f4e56.diff
LO
ChuanqiXu9 wrote:
> > > Whether we re-use wrapper code or make some new code is an implementation
> > > detail.
> > > It does not actually prevent you from taking the two-phase approach (
> > > currently , --precompile will be unchanged in action).
> >
> >
> > It doesn't prevent the two-phase
ChuanqiXu9 wrote:
> > > > > Whether we re-use wrapper code or make some new code is an
> > > > > implementation detail.
> > > > > It does not actually prevent you from taking the two-phase approach (
> > > > > currently , --precompile will be unchanged in action).
> > > >
> > > >
> > > > It d
ChuanqiXu9 wrote:
> > > > > > > Whether we re-use wrapper code or make some new code is an
> > > > > > > implementation detail.
> > > > > > > It does not actually prevent you from taking the two-phase
> > > > > > > approach ( currently , --precompile will be unchanged in action).
> > > > > >
>
ChuanqiXu9 wrote:
@sam-mccall ping~
https://github.com/llvm/llvm-project/pull/66462
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 created
https://github.com/llvm/llvm-project/pull/74419
Close https://github.com/llvm/llvm-project/issues/72383
It looks incorrect or odd for the BMIs to dependent on the real files. It
prevents we moving the BMIs and the distributed builds. And it looks like ther
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/74419
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chuanqi Xu
Date: 2023-12-07T16:54:00+08:00
New Revision: b768b393429419d27e3f76518842136bac9d5b25
URL:
https://github.com/llvm/llvm-project/commit/b768b393429419d27e3f76518842136bac9d5b25
DIFF:
https://github.com/llvm/llvm-project/commit/b768b393429419d27e3f76518842136bac9d5b25.diff
LO
ChuanqiXu9 wrote:
@sam-mccall ping!
https://github.com/llvm/llvm-project/pull/66462
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chuanqi Xu
Date: 2023-12-11T10:18:12+08:00
New Revision: 9406ea3fe32e59a7d28de0dcbd0317b4cdfa4c62
URL:
https://github.com/llvm/llvm-project/commit/9406ea3fe32e59a7d28de0dcbd0317b4cdfa4c62
DIFF:
https://github.com/llvm/llvm-project/commit/9406ea3fe32e59a7d28de0dcbd0317b4cdfa4c62.diff
LO
Author: Chuanqi Xu
Date: 2023-12-11T14:06:32+08:00
New Revision: 8c334627818437180176b16b1932b2a26372d8ae
URL:
https://github.com/llvm/llvm-project/commit/8c334627818437180176b16b1932b2a26372d8ae
DIFF:
https://github.com/llvm/llvm-project/commit/8c334627818437180176b16b1932b2a26372d8ae.diff
LO
Author: Chuanqi Xu
Date: 2023-12-11T14:15:16+08:00
New Revision: 9a46518630869e7fcb495e72378abdbedf68d40d
URL:
https://github.com/llvm/llvm-project/commit/9a46518630869e7fcb495e72378abdbedf68d40d
DIFF:
https://github.com/llvm/llvm-project/commit/9a46518630869e7fcb495e72378abdbedf68d40d.diff
LO
Author: Chuanqi Xu
Date: 2023-12-11T16:47:51+08:00
New Revision: 65b12a8af37ffa390ff45c8215904513eb75659e
URL:
https://github.com/llvm/llvm-project/commit/65b12a8af37ffa390ff45c8215904513eb75659e
DIFF:
https://github.com/llvm/llvm-project/commit/65b12a8af37ffa390ff45c8215904513eb75659e.diff
LO
Author: Chuanqi Xu
Date: 2023-12-11T18:24:09+08:00
New Revision: 2ce9a799f950678cef844706ecb55a483d3c225b
URL:
https://github.com/llvm/llvm-project/commit/2ce9a799f950678cef844706ecb55a483d3c225b
DIFF:
https://github.com/llvm/llvm-project/commit/2ce9a799f950678cef844706ecb55a483d3c225b.diff
LO
https://github.com/ChuanqiXu9 approved this pull request.
LGTM. Thanks.
https://github.com/llvm/llvm-project/pull/71985
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -11591,6 +11591,10 @@ def err_conflicting_aligned_options : Error <
def err_coro_invalid_addr_of_label : Error<
"the GNU address of label extension is not allowed in coroutines."
>;
+def err_coroutine_return_type : Error<
ChuanqiXu9 wrote:
The intention o
ChuanqiXu9 wrote:
The key point now is the rationale why this change relates to modules. It looks
not good to proceed without understanding this. Otherwise we're playing with a
black box... And the concrete method, ..., well, I guess we had no choice but
debugging it hardly. For example, compa
@@ -7482,3 +7482,54 @@ generation of the other destruction cases, optimizing
the above `foo.destroy` to
}];
}
+
+
+def CoroReturnTypeAndWrapperDoc : Documentation {
+ let Category = DocCatDecl;
+ let Content = [{
+The ``coro_return_type`` attribute should be marked on a C
@@ -300,6 +300,11 @@ Attribute Changes in Clang
to reduce the size of the destroy functions for coroutines which are known to
be destroyed after having reached the final suspend point.
+- Clang now introduced ``[[clang::coro_return_type]]`` and
``[[clang::coro_wrapper]]``
@@ -7482,3 +7482,54 @@ generation of the other destruction cases, optimizing
the above `foo.destroy` to
}];
}
+
+
+def CoroReturnTypeAndWrapperDoc : Documentation {
+ let Category = DocCatDecl;
+ let Content = [{
+The ``coro_return_type`` attribute should be marked on a C
@@ -7482,3 +7482,54 @@ generation of the other destruction cases, optimizing
the above `foo.destroy` to
}];
}
+
+
+def CoroReturnTypeAndWrapperDoc : Documentation {
+ let Category = DocCatDecl;
+ let Content = [{
+The ``coro_return_type`` attribute should be marked on a C
Author: Chuanqi Xu
Date: 2023-11-16T16:05:46+08:00
New Revision: 10ad98dc160497699930f295dcb4c998ef561d2e
URL:
https://github.com/llvm/llvm-project/commit/10ad98dc160497699930f295dcb4c998ef561d2e
DIFF:
https://github.com/llvm/llvm-project/commit/10ad98dc160497699930f295dcb4c998ef561d2e.diff
LO
https://github.com/ChuanqiXu9 approved this pull request.
LGTM. Please wait for 3~5 days in case @ilya-biryukov has more comments.
https://github.com/llvm/llvm-project/pull/71945
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llv
ChuanqiXu9 wrote:
@sam-mccall ping
https://github.com/llvm/llvm-project/pull/66462
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/72851
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 approved this pull request.
LGTM. Please wait for few days in case there are other comments.
https://github.com/llvm/llvm-project/pull/72851
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cg
@@ -7580,10 +7580,15 @@ static void
visitLifetimeBoundArguments(IndirectLocalPath &Path, Expr *Call,
if (ObjectArg && implicitObjectParamIsLifetimeBound(Callee))
VisitLifetimeBoundArg(Callee, ObjectArg);
+ bool checkCoroCall = false;
+ if (const auto *RD = Callee->get
@@ -7483,7 +7483,6 @@ generation of the other destruction cases, optimizing the
above `foo.destroy` to
}];
}
-
ChuanqiXu9 wrote:
nit: unnecessary changes.
https://github.com/llvm/llvm-project/pull/72851
___
cfe-
https://github.com/ChuanqiXu9 created
https://github.com/llvm/llvm-project/pull/72956
This patch introduces a tool 'clang-named-modules-querier' and two plugins
'ClangGetUsedFilesFromModulesPlugin' and
'ClangGetDeclsInModulesPlugin' to help the build systems to avoid compilations
in modules.
https://github.com/ChuanqiXu9 converted_to_draft
https://github.com/llvm/llvm-project/pull/72956
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/72956
>From 05453bc0da214ad69ab94d901c997c61fae86ab6 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Fri, 17 Nov 2023 14:57:02 +0800
Subject: [PATCH 1/2] [C++20] [Modules] Introduce a tool
'clang-named-modules-quer
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/72956
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/72956
>From 05453bc0da214ad69ab94d901c997c61fae86ab6 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Fri, 17 Nov 2023 14:57:02 +0800
Subject: [PATCH 1/2] [C++20] [Modules] Introduce a tool
'clang-named-modules-quer
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/72956
>From 05453bc0da214ad69ab94d901c997c61fae86ab6 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Fri, 17 Nov 2023 14:57:02 +0800
Subject: [PATCH 1/2] [C++20] [Modules] Introduce a tool
'clang-named-modules-quer
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/72956
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
> I'm still really hesitant about this direction.
>
> One starting concern: what happens if someone adds an overload, or other
> interesting name resolution to the module? The downstream caller hasn't
> textually changed, but it should be rebuilt because it should be calling
https://github.com/ChuanqiXu9 approved this pull request.
LGTM. Thanks.
https://github.com/llvm/llvm-project/pull/73073
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -12,9 +12,10 @@
#include "CGCleanup.h"
#include "CodeGenFunction.h"
-#include "llvm/ADT/ScopeExit.h"
+#include "clang/AST/ExprCXX.h"
#include "clang/AST/StmtCXX.h"
#include "clang/AST/StmtVisitor.h"
+#include "llvm/ADT/ScopeExit.h"
ChuanqiXu9 wrote:
Is t
@@ -129,7 +130,14 @@ static SmallString<32> buildSuspendPrefixStr(CGCoroData
&Coro, AwaitKind Kind) {
return Prefix;
}
-static bool memberCallExpressionCanThrow(const Expr *E) {
+static bool ResumeExprCanThrow(const CoroutineSuspendExpr &S) {
+ const Expr *E = S.getResumeE
@@ -38,9 +39,52 @@ Task coro_create() {
co_return;
}
-// CHECK-LABEL: define{{.*}} ptr @_Z11coro_createv(
+// CHECK-LABEL: define{{.*}} ptr @_ZN9can_throw11coro_createEv(
// CHECK: init.ready:
// CHECK-NEXT: store i1 true, ptr {{.*}}
-// CHECK-NEXT: call void @_ZN4Task23
ChuanqiXu9 wrote:
> Debug the https://github.com/llvm/llvm-project/issues/72783 can prove it.
> Address interval (local from 0x3a9a00 to 0x3aaa00) allocated by allocator
> contains a IdentifierInfo variable (local address:0x3aa190) whose address is
> freed early.
In this case, it looks better
Author: Chuanqi Xu
Date: 2023-10-30T11:25:21+08:00
New Revision: 22043643c64f748cb00ae92476f2085b3c0903c9
URL:
https://github.com/llvm/llvm-project/commit/22043643c64f748cb00ae92476f2085b3c0903c9
DIFF:
https://github.com/llvm/llvm-project/commit/22043643c64f748cb00ae92476f2085b3c0903c9.diff
LO
ChuanqiXu9 wrote:
@Bigcheese ping
https://github.com/llvm/llvm-project/pull/69555
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/69551
>From c91007b51e164d22c8f73a864105494ebc10a004 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Mon, 30 Oct 2023 11:51:04 +0800
Subject: [PATCH] [clang-scan-deps] [P1689] Keep consistent behavior for make
depe
ChuanqiXu9 wrote:
> Thanks for the ping, I had missed your question
>
> > How do you think about the idea to add a flag to the MDC about whether or
> > not calling makeAbsoluteAndPreferred?
>
> SGTM; this seems like a good compromise since we can't easily extract this
> into the consumer.
Do
@@ -696,6 +698,19 @@ buildPreamble(PathRef FileName, CompilerInvocation CI,
Result->Includes = CapturedInfo.takeIncludes();
Result->Pragmas = std::make_shared(
CapturedInfo.takePragmaIncludes());
+
+if (ExperimentalModulesSupport) {
+ WallTimer Prerequi
@@ -0,0 +1,78 @@
+//=== ModuleDependencyScanner.cpp *-
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: Apa
@@ -0,0 +1,141 @@
+//===- PrerequisiteModules.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-Identifi
@@ -0,0 +1,55 @@
+//===-- ProjectModules.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: Apa
@@ -587,11 +587,11 @@ class DiagPatcher {
};
} // namespace
-std::shared_ptr
-buildPreamble(PathRef FileName, CompilerInvocation CI,
- const ParseInputs &Inputs, bool StoreInMemory,
- PreambleParsedCallback PreambleCallback,
- PreambleBui
@@ -104,6 +107,8 @@ struct PreambleData {
IncludeStructure Includes;
// Captures #include-mapping information in #included headers.
std::shared_ptr Pragmas;
+ // Information about module files for this preamble.
+ std::optional DependentModulesInfo;
Chu
@@ -0,0 +1,278 @@
+//===- PrerequisiteModules.cpp ---*-
+//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-Identifi
@@ -0,0 +1,78 @@
+//=== ModuleDependencyScanner.cpp *-
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: Apa
1 - 100 of 2178 matches
Mail list logo