[PATCH] D127357: [pseudo] wip/prototype: use LR0 instead of SLR1 table

Sam McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 21 07:06:05 PDT 2022


sammccall updated this revision to Diff 438693.
sammccall added a comment.

Deeper version of LR0, still prototype-quality

- use hashtables instead of binary search where appropriate
- simplify GLR accordingly
- add fast-path reduce to reclaim some of the performance (though "reclaim" is maybe wrong - this optimization can with hindsight apply to SLR1 also)

Numbers to follow.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D127357

Files:
  clang-tools-extra/pseudo/benchmarks/Benchmark.cpp
  clang-tools-extra/pseudo/include/clang-pseudo/GLR.h
  clang-tools-extra/pseudo/include/clang-pseudo/LRTable.h
  clang-tools-extra/pseudo/lib/GLR.cpp
  clang-tools-extra/pseudo/lib/cxx/CXX.cpp
  clang-tools-extra/pseudo/lib/grammar/LRTable.cpp
  clang-tools-extra/pseudo/lib/grammar/LRTableBuild.cpp
  clang-tools-extra/pseudo/test/lr-build-basic.test
  clang-tools-extra/pseudo/test/lr-build-conflicts.test
  clang-tools-extra/pseudo/tool/ClangPseudo.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D127357.438693.patch
Type: text/x-patch
Size: 29619 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220621/cf90e7cf/attachment-0001.bin>


More information about the cfe-commits mailing list