GorNishanov created this revision.
GorNishanov added reviewers: modocache, rsmith, lewissbaker.
Herald added a subscriber: EricWF.
Complete the implementation of p0914r1.
Implicit object parameter should be passed to a promise constructor.
Fixes: https://bugs.llvm.org/show_bug.cgi?id=37604
http
This revision was automatically updated to reflect the committed changes.
Closed by commit rL79: [coroutines] Pass implicit object parameter to
promise ctor (fix BUG37604) (authored by GorNishanov, committed by ).
Herald added a subscriber: llvm-commits.
Changed prior to commit:
https://rev
GorNishanov added a comment.
ping
https://reviews.llvm.org/D37115
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
GorNishanov added a comment.
@toby-allsopp: You mentioned that @EricWF already got this in. Can you close
("abandon") this patch if it is no longer needed.
https://reviews.llvm.org/D35046
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http
GorNishanov added a comment.
@rsmith , here is a fix for the funny diagnostics you mentioned.
https://reviews.llvm.org/D37115
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
Herald added a subscriber: jfb.
LGTM
With couple of suggestions.
1. Remove swap. It is not part of the proposal at the moment.
2. If you feel like, add a lazy alias to task, that way
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Repository:
rC Clang
https://reviews.llvm.org/D42605
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.
GorNishanov added inline comments.
Comment at: lib/Sema/SemaCoroutine.cpp:1062
+ // an argument list."
+ for (auto *PD : FD.parameters()) {
+if (PD->getType()->isDependentType())
This does not implement TS specified behavior for non static member functions:
GorNishanov added inline comments.
Comment at: lib/Sema/SemaCoroutine.cpp:1062
+ // an argument list."
+ for (auto *PD : FD.parameters()) {
+if (PD->getType()->isDependentType())
GorNishanov wrote:
> This does not implement TS specified behavior for non sta
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Repository:
rC Clang
https://reviews.llvm.org/D42606
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.
GorNishanov added a comment.
In https://reviews.llvm.org/D31608#762783, @alekseyshl wrote:
> Leaks and warnings are reported in coro-await.cpp:
> http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/1400/steps/check-clang%20asan/logs/stdio.
> Please fix.
Thank you! The fi
GorNishanov added a comment.
Fixed:
r303714 = 8832327ab89f3668378d70d1c4e5a218446ce36e
https://reviews.llvm.org/D31608
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
GorNishanov updated this revision to Diff 100027.
GorNishanov added a comment.
merge with tot, preparing to land
https://reviews.llvm.org/D31670
Files:
lib/CodeGen/CGCoroutine.cpp
test/CodeGenCoroutines/coro-gro.cpp
Index: test/CodeGenCoroutines/coro-gro.cpp
===
GorNishanov created this revision.
Herald added a subscriber: EricWF.
Sema creates a declaration for gro variable as:
auto $gro = $promise.get_return_object();
However, gro variable has to outlive coroutine frame and coroutine promise, but,
it can only be initialized after the coroutine promise
This revision was automatically updated to reflect the committed changes.
Closed by commit rL303716: [coroutines] Implement correct GRO lifetime
(authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33477?vs=100029&id=100030#toc
Repository:
rL LLVM
https://reviews.ll
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
Landed as: https://reviews.llvm.org/rL303716
https://reviews.llvm.org/D31670
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
ht
GorNishanov closed this revision.
GorNishanov added a comment.
Closed by commit https://reviews.llvm.org/rL303716: [coroutines] Implement
correct GRO lifetime (authored by GorNishanov)
https://reviews.llvm.org/D31670
___
cfe-commits mailing list
cf
GorNishanov created this revision.
- Test that coroutine promise destructor is called.
- Test that we call return_void on fallthrough
- Test that we call unhandled exception in a try catch surrounding the body
https://reviews.llvm.org/D33479
Files:
test/CodeGenCoroutines/Inputs/coroutine.h
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33479
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov created this revision.
Now we helpfully provide a note pointing at the promise_type in question.
https://reviews.llvm.org/D33481
Files:
lib/Sema/SemaCoroutine.cpp
test/SemaCXX/coroutine-unhandled_exception-warning.cpp
test/SemaCXX/coroutines.cpp
Index: test/SemaCXX/coroutine
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33481
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
This revision was automatically updated to reflect the committed changes.
Closed by commit rL303748: [coroutines] [NFC] Add tests for return_void,
unhandled_exception and promise… (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33479?vs=100034&id=100084#toc
Reposi
This revision was automatically updated to reflect the committed changes.
Closed by commit rL303752: [coroutines] Improved diagnostics when
unhandled_exception is missing in the… (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33481?vs=100037&id=100086#toc
Reposit
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33498
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov created this revision.
Herald added a subscriber: EricWF.
1. Coroutine cannot be constexpr (added a check in SemaLambda.cpp not to mark
coroutine as constexpr)
2. TransformCoroutineBodyStmt should transform ResultDecl and ReturnStmt
https://reviews.llvm.org/D33498
Files:
lib/Sema
This revision was automatically updated to reflect the committed changes.
Closed by commit rL303764: [coroutines] Make generic lambda coroutines work
(authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33498?vs=100097&id=100102#toc
Repository:
rL LLVM
https://revie
GorNishanov created this revision.
Simple types like int are handled by LLVM Coroutines just fine.
But for non-scalar parameters we need to create copies of those parameters in
the coroutine frame and make all uses of those parameters to refer to parameter
copies.
https://reviews.llvm.org/D335
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33507
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
This revision was automatically updated to reflect the committed changes.
Closed by commit rL303803: [coroutines] Add support for coroutines with
non-scalar parameters (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33507?vs=100132&id=100152#toc
Repository:
rL L
GorNishanov added inline comments.
Comment at: lib/Sema/AnalysisBasedWarnings.cpp:378
const Stmt *S = CS.getStmt();
-if ((isa(S) && !IsCoroutine) || isa(S)) {
+if (isa(S) || isa(S)) {
HasLiveReturn = true;
Is this check no longer needed becaus
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33532
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33534
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D33536
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov created this revision.
It is time!
https://reviews.llvm.org/D33624
Files:
www/cxx_status.html
Index: www/cxx_status.html
===
--- www/cxx_status.html
+++ www/cxx_status.html
@@ -831,9 +831,9 @@
[DR
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
Drumroll.. Approved!
https://reviews.llvm.org/D33624
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/
This revision was automatically updated to reflect the committed changes.
Closed by commit rL304081: [coroutines] Mark cxx_status.html of Coroutines TS
as (SVN) (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33624?vs=100538&id=100539#toc
Repository:
rL LLVM
ht
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Comment at: test/SemaCXX/coroutines.cpp:842
+struct bad_await_suspend_return {
+ bool await_ready();
+ // expected-error@+1 {{the return type of 'await_suspe
GorNishanov added inline comments.
Comment at: lib/Sema/SemaCoroutine.cpp:324
struct ReadySuspendResumeResult {
+ enum AwaitCallType { ACT_Ready, ACT_Suspend, ACT_Resume };
Expr *Results[3];
enum class?
https://reviews.llvm.org/D33625
__
GorNishanov created this revision.
Herald added a subscriber: EricWF.
https://reviews.llvm.org/D33632
Files:
www/cxx_status.html
Index: www/cxx_status.html
===
--- www/cxx_status.html
+++ www/cxx_status.html
@@ -832,7 +832,7 @@
This revision was automatically updated to reflect the committed changes.
Closed by commit rL304091: [coroutines] www/cxx_status.html: add non-breaking
hyphen (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33632?vs=100552&id=100553#toc
Repository:
rL LLVM
http
GorNishanov updated this revision to Diff 100555.
GorNishanov added a comment.
one more non-breaking hyphen to make it pretty in chrome. In edge it is perfect
already, naturally
https://reviews.llvm.org/D33632
Files:
www/cxx_status.html
Index: www/cxx_status.html
==
This revision was automatically updated to reflect the committed changes.
Closed by commit rL304092: [coroutines] www/cxx_status.html: add non-breaking
hyphen (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33632?vs=100555&id=100556#toc
Repository:
rL LLVM
http
GorNishanov created this revision.
This is a follow up for the https://reviews.llvm.org/rL297084 which made sure
that dominance is preserved during expression cleanup emission.
We ran into a case where dominance fixup code was inserting the store in the
middle of allocas.
%x = alloca i32, ali
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LBTM (Looks brilliant to me)
https://reviews.llvm.org/D33660
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.
GorNishanov updated this revision to Diff 100889.
GorNishanov added a comment.
Make sure that we use AllocaInsertPt for only static allocas in the entry block
https://reviews.llvm.org/D33663
Files:
lib/CodeGen/CGCleanup.cpp
test/CodeGenCoroutines/coro-await-domination.cpp
Index: test/Code
GorNishanov added inline comments.
Comment at: lib/CodeGen/CGCleanup.cpp:458
InsertBefore = Invoke->getNormalDest()->getFirstInsertionPt();
+else if (isa(Inst))
+ InsertBefore = std::next(AllocaInsertPt->getIterator());
rnk wrote:
> This doesn't s
GorNishanov created this revision.
This is a follow up for the https://reviews.llvm.org/rL297084 which made sure
that dominance is preserved during expression cleanup emission.
We ran into a case where dominance fixup code was inserting the store in the
middle of allocas.
%x = alloca i32, ali
GorNishanov abandoned this revision.
GorNishanov added a comment.
Abandoning... Reid fixed the problem with "r304335 - Don't try to spill static
allocas when emitting expr cleanups with branches"
Thank you Reid for looking into it!
https://reviews.llvm.org/D33663
___
GorNishanov created this revision.
Coroutine related test that used to trigger broken IR prior to r304335.
https://reviews.llvm.org/D33750
Files:
test/CodeGenCoroutines/coro-await-domination.cpp
Index: test/CodeGenCoroutines/coro-await-domination.cpp
This revision was automatically updated to reflect the committed changes.
Closed by commit rL304380: CGCleanup: (NFC) add another test for r304335 -
Don't try to spill static… (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D33750?vs=100951&id=100955#toc
Repository
GorNishanov closed this revision.
GorNishanov added a comment.
Tested checked in. Thank you for looking into this, Reid!
r304380 = 1c0d15a4bf10876bb233e921907e114d52bee82e
https://reviews.llvm.org/D33733
___
cfe-commits mailing list
cfe-commits@lis
GorNishanov created this revision.
We were not handling correctly rebuilding of parameter and were not creating
copies for them.
With this checking, we will be always rebuilding parameter moves in
TreeTransform's TransformCoroutineBodyStmt.
https://reviews.llvm.org/D33797
Files:
lib/Sema/Co
GorNishanov added inline comments.
Comment at: test/CodeGenCoroutines/coro-params.cpp:103
+ // CHECK: call i8* @llvm.coro.begin
+ // CHECK-NEXT: call void @_ZN1AC1EOS_(%struct.A* %x1, %struct.A*
dereferenceable(512) %x)
+ // CHECK-NEXT: call void
@_ZNSt12experimental16corout
GorNishanov updated this revision to Diff 101282.
GorNishanov added a comment.
test updated to use %[[copy_x]] instead of %x1
https://reviews.llvm.org/D33797
Files:
lib/Sema/CoroutineStmtBuilder.h
lib/Sema/SemaCoroutine.cpp
lib/Sema/TreeTransform.h
test/CodeGenCoroutines/coro-params.cpp
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D34021
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Comment at: test/CodeGenCoroutines/coro-await.cpp:301
+
+// Verifies that we don't chrash when returning an lvalue from a await_resume()
+// expression.
--
GorNishanov requested changes to this revision.
GorNishanov added inline comments.
This revision now requires changes to proceed.
Comment at: lib/CodeGen/CGCoroutine.cpp:255
+
+static QualType getCoroutineSuspendExprReturnType(const ASTContext &Ctx,
+ const CoroutineSuspendExpr
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM with changes
https://reviews.llvm.org/D34194
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin
GorNishanov added a comment.
Added John McCall as he made great suggestions last time I touched
emitSuspendExpression
https://reviews.llvm.org/D34194
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov added inline comments.
Comment at: test/CodeGenCoroutines/coro-await.cpp:310
+ int& x = co_await a;
+ // CHECK: await2.ready:
+ // CHECK-NEXT: %[[RES2:.+]] = call dereferenceable(4) i32*
@_ZN24AwaitResumeReturnsLValue12await_resumeEv(%struct.AwaitResumeReturnsLVal
GorNishanov requested changes to this revision.
GorNishanov added a comment.
This revision now requires changes to proceed.
Thank you for doing this change!
Comment at: lib/Sema/SemaCoroutine.cpp:475
+// Create a static_cast\(expr).
+static Expr *castForMoving(Sema &S, Expr *
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM with some suggestions.
Comment at: lib/CodeGen/CGCoroutine.cpp:224
+ bool ResumeCanThrow = true;
+ if (const auto *MCE = dyn_cast(S.getResumeExpr()))
+if
GorNishanov accepted this revision.
GorNishanov added a subscriber: rsmith.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Comment at: lib/Sema/SemaCoroutine.cpp:260
else if (MD && MD->isMoveAssignmentOperator())
return DiagInvalid(Di
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM!
Repository:
rC Clang
https://reviews.llvm.org/D54075
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm
GorNishanov added inline comments.
Comment at: test/SemaCXX/coroutines.cpp:299-311
// FIXME: The spec says this is ill-formed.
void operator=(CtorDtor&) {
co_yield 0; // expected-error {{'co_yield' cannot be used in a copy
assignment operator}}
}
void operator=(
GorNishanov requested changes to this revision.
GorNishanov added inline comments.
This revision now requires changes to proceed.
Comment at: lib/Sema/SemaCoroutine.cpp:675
+ // Second emphasis of [expr.await]p2: must be outside of an exception
handler.
+ if (S.getCurScope()->
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D59076/new/
https://reviews.llvm.org/D59076
___
cfe-
GorNishanov accepted this revision.
GorNishanov added a comment.
LGTM! Thank you for doing this.
Repository:
rC Clang
https://reviews.llvm.org/D51741
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/li
GorNishanov created this revision.
Shall we?
https://reviews.llvm.org/D37433
Files:
www/cxx_status.html
Index: www/cxx_status.html
===
--- www/cxx_status.html
+++ www/cxx_status.html
@@ -872,7 +872,7 @@
-
GorNishanov created this revision.
https://reviews.llvm.org/D37454
Files:
lib/Sema/SemaCoroutine.cpp
test/SemaCXX/coroutines.cpp
Index: test/SemaCXX/coroutines.cpp
===
--- test/SemaCXX/coroutines.cpp
+++ test/SemaCXX/coroutines
GorNishanov updated this revision to Diff 113800.
GorNishanov retitled this revision from "[coroutines] desugar auto type of
await_resume before checking whether it is void or bool" to "[coroutines] Make
sure auto return type of await_resume is properly handled".
GorNishanov added a comment.
use
GorNishanov marked an inline comment as done.
GorNishanov added inline comments.
Comment at: lib/Sema/SemaCoroutine.cpp:451
if (RetType->isReferenceType() ||
(AdjRetType != S.Context.BoolTy && AdjRetType != S.Context.VoidTy)) {
S.Diag(AwaitSuspend->getC
GorNishanov marked an inline comment as done.
GorNishanov added inline comments.
Comment at: test/SemaCXX/coroutines.cpp:169
+void check_auto_await_suspend() {
+ co_await auto_await_suspend{}; // OK
+}
javed.absar wrote:
> maybe change the comment to something m
This revision was automatically updated to reflect the committed changes.
Closed by commit rL312565: [coroutines] Make sure auto return type of
await_resume is properly handled (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D37454?vs=113800&id=113894#toc
Repositor
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM! Thank you for the fix
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D62550/new/
https://reviews.llvm.org/D62550
_
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM! Thank you for the fix.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63381/new/
https://reviews.llvm.org/D63381
___
cfe-
GorNishanov closed this revision.
GorNishanov added a comment.
Committed as:
https://reviews.llvm.org/rCXX329237
and a flurry of cleanup fixes:
https://reviews.llvm.org/rCXX329239
https://reviews.llvm.org/rCXX329240
https://reviews.llvm.org/rCXX329245
https://reviews.llvm.org/D45121
__
GorNishanov added a comment.
Thank you for doing this. It looks very elegant, but, it is a little bit wrong.
It creates two different initial_suspend objects.
Run this example:
https://wandbox.org/permlink/Q1Zd2NUlolmw9YmX
You will observe that in trunk we are getting the output:
0x216808c:
GorNishanov added a comment.
Looks good. Make sure to run the tests in release and debug mode.
On my box, these three test failed in release mode.
Clang :: CodeGenCoroutines/coro-await-resume-eh.cpp
Clang :: CodeGenCoroutines/coro-promise-dtor.cpp
Clang :: CodeGenCoroutines/coro-unhandled-e
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
Repository:
rC Clang
https://reviews.llvm.org/D45860
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.
GorNishanov added inline comments.
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:9053
"a coroutine">;
+def note_coroutine_types_for_traits_here : Note<
+ "the coroutine traits class template is being instantiated using the return "
I am wondering wha
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D36070
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
GorNishanov created this revision.
When SemaCoroutine looks for await_resume, it means it. No need for helpful:
"Did you mean await_ready?" messages.
Fixes PR33477 and a couple of FIXMEs in test/SemaCXX/coroutines.cpp
https://reviews.llvm.org/D37115
Files:
lib/Sema/SemaCoroutine.cpp
test/
GorNishanov created this revision.
If await_suspend returns a coroutine_handle, as in the example below:
coroutine_handle<> await_suspend(coroutine_handle<> h) {
coro.promise().waiter = h;
return coro;
}
suspensionExpression processing will resume the coroutine pointed at by that
ha
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM
https://reviews.llvm.org/D37131
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/list
This revision was automatically updated to reflect the committed changes.
Closed by commit rL311762: [coroutines] Support coroutine-handle returning
await-suspend (i.e symmetric… (authored by GorNishanov).
Changed prior to commit:
https://reviews.llvm.org/D37131?vs=112658&id=112659#toc
Reposit
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM!
Repository:
rC Clang
https://reviews.llvm.org/D43927
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm
GorNishanov closed this revision.
GorNishanov added a comment.
Fixed:
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@328663
91177308-0d34-0410-b5e6-96231b3b80d8
https://reviews.llvm.org/D37115
___
cfe-commits mailing list
cfe-commits@lists
GorNishanov accepted this revision.
GorNishanov added a comment.
This revision is now accepted and ready to land.
LGTM with some stylistic suggestions
Comment at: lib/Sema/SemaExprCXX.cpp:2351
+return true;
+ else
+LookupQualifiedName(R, Context.getTranslat
GorNishanov created this revision.
GorNishanov added reviewers: EricWF, modocache, lewissbaker.
A recent addition to Coroutines TS (https://wg21.link/p0913) adds a pre-defined
coroutine noop_coroutine that does nothing. To implement this feature, we
implemented
an llvm.coro.noop intrinsic that re
GorNishanov created this revision.
GorNishanov added reviewers: EricWF, lewissbaker, modocache.
GorNishanov added dependencies: D45114: [coroutines] Add support for
llvm.coro.noop intrinsics, D45120: [coroutines] Add __builtin_coro_noop =>
llvm.coro.noop.
A recent addition to Coroutines TS (http
GorNishanov closed this revision.
GorNishanov added a comment.
Committed:
https://reviews.llvm.org/rC328993
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@328993
91177308-0d34-0410-b5e6-96231b3b80d8
https://reviews.llvm.org/D45120
___
cf
GorNishanov added a comment.
@EricWF , gentle ping. Super tini-tiny change. Last piece missing to be
post-Jax 2018 compilant
https://reviews.llvm.org/D45121
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailm
GorNishanov added a comment.
In https://reviews.llvm.org/D45121#1056408, @lewissbaker wrote:
> The `coroutine_handle` type does not have a
> `from_address()` or a `from_promise()` static functions in the same way that
> the `coroutine_handle` implementation does.
> Is this intentional or an ov
GorNishanov updated this revision to Diff 140903.
GorNishanov added a comment.
incorporated review feedback
https://reviews.llvm.org/D45121
Files:
include/experimental/coroutine
test/std/experimental/language.support/support.coroutines/coroutine.handle/coroutine.handle.noop/noop_coroutine.
GorNishanov marked 2 inline comments as done.
GorNishanov added inline comments.
Comment at: include/experimental/coroutine:294
+
+inline _LIBCPP_ALWAYS_INLINE
+noop_coroutine_handle noop_coroutine() _NOEXCEPT {
lewissbaker wrote:
> EricWF wrote:
> > This should
GorNishanov updated this revision to Diff 140983.
GorNishanov marked 2 inline comments as done.
GorNishanov added a comment.
- static_cast instead of reintrepret_cast in promise()
- 2 spaces indent in added code (the rest of the file stayed as is)
- added static_assert to check for done-ness and c
GorNishanov marked 11 inline comments as done.
GorNishanov added inline comments.
Comment at: include/experimental/coroutine:275
+return *reinterpret_cast<_Promise*>(
+__builtin_coro_promise(this->__handle_, __alignof(_Promise),
false));
+}
--
GorNishanov marked an inline comment as done.
GorNishanov added inline comments.
Comment at: include/experimental/coroutine:294
+
+inline _LIBCPP_ALWAYS_INLINE
+noop_coroutine_handle noop_coroutine() _NOEXCEPT {
EricWF wrote:
> GorNishanov wrote:
> > lewissbaker
GorNishanov updated this revision to Diff 141010.
GorNishanov added a comment.
- s/_LIBCPP_ALWAYS_INLINE/_LIBCPP_INLINE_VISIBILITY throughout
- Added _LIBCPP_INLINE_VISIBILITY to noop_coroutine constructor
@EricWF , good to go?
https://reviews.llvm.org/D45121
Files:
include/experimental/co
1 - 100 of 210 matches
Mail list logo