[PATCH] D61372: [coroutines] Fix spills of static array allocas

Lewis Baker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 3 14:35:33 PDT 2019


lewissbaker added inline comments.


================
Comment at: llvm/trunk/lib/Transforms/Coroutines/CoroFrame.cpp:429
+      Types.push_back(ArrayType::get(Ty, Count));
     Padder.addType(Ty);
   }
----------------
Does this call need to be changed to `Padder.addType(Types.back())`?

I can imagine a case where `Ty` is `char` and we have a local variable of type `char[3]` with the next local variable having type `int`.

Couldn't this result in the `Padding` object thinking it needs to pad to the next `int` value by adding `char[3]` whereas it actually only needs to pad with `char`?


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D61372/new/

https://reviews.llvm.org/D61372





More information about the llvm-commits mailing list