devel/libagcre: Add libagcre, a regular expression library, version 20261013
to the packages collection.
The library is libagcre, which implements regular expression compilation
and execution. It uses the Pike Virtual Machine approach:
+ standard POSIX features where sane
+ some/most Perl escapes
+ lazy matching via '?'
+ non-capture parentheses (?:...)
+ in-expression case-insensitive directives are supported (?i)...(?-i)
+ all case-insensitivity is actioned at expression exec time - compile
with case-sensitive matching, execute with case-insensitive
+ utf-8 is supported both for expressions and for input text when
matching
+ unicode escapes (in the Java format of \uABCD) are supported
+ wide character support is also provided. Expressions can be compiled
in utf-8, and searched using wchar_t arrays. When matching, start and
end offsets are given relative to the input format: utf-8 is a byte
[6 lines not shown]
[clang][ssaf] Add clang-ssaf-merge-transformation-report (#231664)
A source transformation writes a SARIF report for each translation unit.
Add a tool that merges the reports of the translation units of a link
unit into one, the way clang-ssaf-src-edit-merge merges their edits.
Each report numbers its rules and artifacts on its own, so the tool
renumbers every result against the merged run before it drops the ones
that are identical, such as a finding in a header that several
translation units include. clang lists a run's artifacts in URI order
but numbers them in the order it first refers to them, so an artifact is
known by its own index. The inputs must come from the same
transformation, and a merged report can be merged again.
---------
Co-authored-by: Kazu Hirata <kazu at google.com>
[mlir][SCF] Avoid linear scans when querying forall buffer aliases (#231187)
Override `getAliasingOpOperands` for `scf.forall` to directly look up
the tied `shared_outs` operand.
The default implementation scans all tensor operands on each query,
making alias lookup quadratic when querying all results. Direct lookup
reduces this to linear overall, improving bufferization time for loops
with many shared outputs.
[mlir][bufferization] Speed up DPS aliasing operand lookup (#231362)
Override `getAliasingOpOperands` for destination-style ops to directly
look up the tied output operand.
The default implementation scans all tensor operands on each query.
Direct lookup avoids repeated scans when querying many results.
[lldb] Fix highlight of digit separators (#224902) (#226363)
### [lldb] Fix syntax highlighting for C++ literal digit separators
The main goal of this PR is to fix a syntax highlighting bug in LLDB
where C++ literal digit separators (e.g., `0b00'00` or `1'000'000`) were
incorrectly parsed and colored as character literals.
Currently, `ClangHighlighter::Highlight` initializes `LangOptions`
manually. While it enables the `CPlusPlus14` version flag, it doesn't
use `LangOptions::setLangDefaults()`. As a result, underlying feature
flags are left in their default `false` state.
**Implementation Notes**
As discussed in the related issue #224902, we opted for explicitly
setting `Opts.AllowLiteralDigitSeparator = true;`. We tried to use
`LangOptions::setLangDefaults()`, but avoided it because, in the
isolated context of the Highlighter, it caused unexpected regressions in
other token tests.
[7 lines not shown]
[Vectorize] Declare command line options in TableGen (#231025)
TailFoldingPolicyTy moves to VectorizeOptions.h. LoopVectorize.h no
longer exports EnableLoopInterleaving and EnableLoopVectorization, which
nothing outside the library reads. LoopVectorizeHints and
LoopVectorizationLegality take the options struct in their constructors.
The -vplan-print-* options and -sbvec-always-verify are AssertsOnly
(#230898), no longer available in LLVM_ENABLE_DUMP builds without
assertions.
-vplan-verify-each defaults to VPlanVerifyEachDefault, true under
EXPENSIVE_CHECKS. -epilogue-vectorization-force-VF (ElementCount parser)
stays cl::opt.
Aided by Opus 5.5
[clang][ssaf] Interpose ld.lld in clang-ssaf-orchestrator-make (#231720)
A clang built with CLANG_DEFAULT_LINKER=lld, or given -fuse-ld=lld, runs
ld.lld for a link rather than ld, so the ld shim stands in for ld.lld
too. ld.lld takes ld's command line.
Assisted-by: Claude