[PATCH] D67257: New statepoint spilling mechanism

Quentin Colombet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 6 11:19:50 PDT 2019


qcolombet requested changes to this revision.
qcolombet added a comment.
This revision now requires changes to proceed.

Hi,

I don't think this patch is correct in the sense that having statepoints depend on GreedyRegAlloc is a non-starter.
Indeed, that means that now any configuration that doesn't use greedy reg alloc (like fast or basic reg alloc) will generate incorrect code with respect to state point spilling.

What problem do you see with the current handling of statepoints?

Cheers,
-Quentin



================
Comment at: llvm/include/llvm/CodeGen/SlotIndexes.h:334
+    /// Statepoints
+    SmallVector<SlotIndex, 0> StatepointSlotIndexes;
 
----------------
Having 0-sized SmallVector looks weird.
Just use std::vector if you don't need the inline storage.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D67257





More information about the llvm-commits mailing list