[all-commits] [llvm/llvm-project] 168db5: [SpecialCaseList] Filtering Globs with matching pr...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Fri Oct 24 22:59:45 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 168db5eca0da25b92a105c8df5c55ed7fd2d4cfc
      https://github.com/llvm/llvm-project/commit/168db5eca0da25b92a105c8df5c55ed7fd2d4cfc
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-10-25 (Sat, 25 Oct 2025)

  Changed paths:
    M llvm/include/llvm/Support/SpecialCaseList.h
    M llvm/lib/Support/SpecialCaseList.cpp

  Log Message:
  -----------
  [SpecialCaseList] Filtering Globs with matching prefix (#164531)

This commit optimizes `SpecialCaseList` by using a `RadixTree` to filter
glob patterns based on their prefixes. When matching a query, the
`RadixTree` quickly identifies all glob patterns whose prefixes match
the query's prefix. This significantly reduces the number of glob
patterns that need to be fully evaluated, leading to performance
improvements, especially when dealing with a large number of patterns.

According to SpecialCaseListBM:

Lookup benchmarks (significant improvements):
```
OVERALL_GEOMEAN                       -0.8177
```

Lookup like `prefix*` benchmarks (huge improvements):
```
OVERALL_GEOMEAN                       -0.9819
```

https://gist.github.com/vitalybuka/824884bcbc1713e815068c279159dafe

---------

Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list