[PATCH] D37093: [coroutines] Promote cleanup.dest.slot-like allocas to registers to avoid storing them in the coroutine frame

Eric Niebler via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 4 13:31:08 PDT 2017


eric_niebler added a comment.

>> I do not want to promote all promotable allocas, I only would like to target cleanup allocas (flags and dest.slot),
> 
> Why? It sounds like you're trying to optimize some aspect of the -O0 lowering.

Because as Gor writes at the top:

> We don't want them to be saved into the coroutine frame (as some of the cleanup code may
>  access them after coroutine frame destroyed).

This bug manifests as a codegen use-after-free in -O0.


https://reviews.llvm.org/D37093





More information about the llvm-commits mailing list