@@ -628,11 +628,11 @@ void CoroCloner::replaceRetconOrAsyncSuspendUses() {
628628 return ;
629629
630630 // Otherwise, we need to create an aggregate.
631- Value *Agg = PoisonValue::get (NewS->getType ());
632- for (auto Arg : llvm::enumerate (Args))
633- Agg = Builder.CreateInsertValue (Agg , Arg. value (), Arg. index () );
631+ Value *Aggr = PoisonValue::get (NewS->getType ());
632+ for (auto [Idx, Arg] : llvm::enumerate (Args))
633+ Aggr = Builder.CreateInsertValue (Aggr , Arg, Idx );
634634
635- NewS->replaceAllUsesWith (Agg );
635+ NewS->replaceAllUsesWith (Aggr );
636636}
637637
638638void CoroCloner::replaceCoroSuspends () {
@@ -1834,8 +1834,8 @@ void coro::AsyncABI::splitCoroutine(Function &F, coro::Shape &Shape,
18341834
18351835 // Create a continuation function for each of the suspend points.
18361836 Clones.reserve (Shape.CoroSuspends .size ());
1837- for (auto CS : llvm::enumerate (Shape.CoroSuspends )) {
1838- auto *Suspend = cast<CoroSuspendAsyncInst>(CS. value () );
1837+ for (auto [Idx, CS] : llvm::enumerate (Shape.CoroSuspends )) {
1838+ auto *Suspend = cast<CoroSuspendAsyncInst>(CS);
18391839
18401840 // Create the clone declaration.
18411841 auto ResumeNameSuffix = " .resume." ;
@@ -1851,8 +1851,8 @@ void coro::AsyncABI::splitCoroutine(Function &F, coro::Shape &Shape,
18511851 }
18521852 auto *Continuation = createCloneDeclaration (
18531853 F, Shape,
1854- UseSwiftMangling ? ResumeNameSuffix + Twine (CS. index () ) + " _"
1855- : ResumeNameSuffix + Twine (CS. index () ),
1854+ UseSwiftMangling ? ResumeNameSuffix + Twine (Idx ) + " _"
1855+ : ResumeNameSuffix + Twine (Idx ),
18561856 NextF, Suspend);
18571857 Clones.push_back (Continuation);
18581858
@@ -1885,12 +1885,12 @@ void coro::AsyncABI::splitCoroutine(Function &F, coro::Shape &Shape,
18851885 }
18861886
18871887 assert (Clones.size () == Shape.CoroSuspends .size ());
1888- for (auto CS : llvm::enumerate (Shape.CoroSuspends )) {
1889- auto *Suspend = CS. value () ;
1890- auto *Clone = Clones[CS. index () ];
1888+ for (auto [Idx, CS] : llvm::enumerate (Shape.CoroSuspends )) {
1889+ auto *Suspend = CS;
1890+ auto *Clone = Clones[Idx ];
18911891
1892- CoroCloner::createClone (F, " resume." + Twine (CS. index ()) , Shape, Clone,
1893- Suspend, TTI);
1892+ CoroCloner::createClone (F, " resume." + Twine (Idx) , Shape, Clone, Suspend ,
1893+ TTI);
18941894 }
18951895}
18961896
@@ -1947,12 +1947,12 @@ void coro::AnyRetconABI::splitCoroutine(Function &F, coro::Shape &Shape,
19471947
19481948 // Create a continuation function for each of the suspend points.
19491949 Clones.reserve (Shape.CoroSuspends .size ());
1950- for (auto CS : llvm::enumerate (Shape.CoroSuspends )) {
1951- auto Suspend = cast<CoroSuspendRetconInst>(CS. value () );
1950+ for (auto [Idx, CS] : llvm::enumerate (Shape.CoroSuspends )) {
1951+ auto Suspend = cast<CoroSuspendRetconInst>(CS);
19521952
19531953 // Create the clone declaration.
19541954 auto Continuation = createCloneDeclaration (
1955- F, Shape, " .resume." + Twine (CS. index () ), NextF, nullptr );
1955+ F, Shape, " .resume." + Twine (Idx ), NextF, nullptr );
19561956 Clones.push_back (Continuation);
19571957
19581958 // Insert a branch to the unified return block immediately before
@@ -2016,12 +2016,12 @@ void coro::AnyRetconABI::splitCoroutine(Function &F, coro::Shape &Shape,
20162016 }
20172017
20182018 assert (Clones.size () == Shape.CoroSuspends .size ());
2019- for (auto CS : llvm::enumerate (Shape.CoroSuspends )) {
2020- auto Suspend = CS. value () ;
2021- auto Clone = Clones[CS. index () ];
2019+ for (auto [Idx, CS] : llvm::enumerate (Shape.CoroSuspends )) {
2020+ auto Suspend = CS;
2021+ auto Clone = Clones[Idx ];
20222022
2023- CoroCloner::createClone (F, " resume." + Twine (CS. index ()) , Shape, Clone,
2024- Suspend, TTI);
2023+ CoroCloner::createClone (F, " resume." + Twine (Idx) , Shape, Clone, Suspend ,
2024+ TTI);
20252025 }
20262026}
20272027
0 commit comments