[all-commits] [llvm/llvm-project] e3ec05: [pseudo] Track heads as GSS nodes, rather than as ...
Sam McCall via All-commits
all-commits at lists.llvm.org
Thu Jun 23 08:27:29 PDT 2022
Author: Sam McCall <sam.mccall at gmail.com>
Date: 2022-06-23 (Thu, 23 Jun 2022)
[pseudo] Track heads as GSS nodes, rather than as "pending actions".
IMO this model is simpler to understand (borrowed from the LR0 patch D127357).
It also makes error recovery easier to implement, as we have a simple list of
head nodes lying around to recover from when needed.
(It's not quite as nice as LR0 in this respect though).
It's slightly slower (2.24 -> 2.12 MB/S on my machine = 5%) but nothing close
to as bad as LR0.
- I think we'd have to eat a litle performance loss otherwise to implement
- this frees up some complexity budget for optimizations like fastpath push/pop
(this + fastpath is already faster than head)
- I haven't changed the data structure here and it's now pretty dumb, we can
make it faster
Differential Revision: https://reviews.llvm.org/D128297
More information about the All-commits