[clang] fix profiling of pack index expressions (#192810)
This replaces a few incorrect calls of VisitExpr on subcomponents, which
should have been plain `Visit` instead, because the former just
implements the commonality between all kind-specific profile functions
(marking the class kind and visiting children).
So this for example would visit a DeclRefExpr but not actually profile
any of it's properties, like the parameter declaration, so it would fail
to distinguish between DeclRefExps referencing distinct entities.
This also adds a call to record the PackIndexExpr's kind in the profile,
to avoid false positives when comparing expressions with different
kinds.
unbound: add a WIP "unbound-1.25.0beta" package, based on -current from github.
Among other things, this version will reportedly reload any renewed
certificates on "fast_reload", as opposed to earlier released
versions which require a full restart. Ref.
https://github.com/NLnetLabs/unbound/issues/278.
[lldb] Override UpdateBreakpointSites in ProcessGDBRemote to use MultiBreakpoint
This concludes the implementation of MultiBreakpoint by actually using
the new packet to batch breakpoint requests.
https://github.com/llvm/llvm-project/pull/192910
[lldb] Implement delayed breakpoints
This patch changes the Process class so that it delays *physically*
enabling/disabling breakpoints until the process is about to
resume/detach/be destroyed, potentially reducing the packets transmitted
by batching all breakpoints together.
Most classes only need to know whether a breakpoint is "logically"
enabled, as opposed to "physically" enabled (i.e. the remote server has
actually enabled the breakpoint). However, lower level classes like
derived Process classes, or StopInfo may actually need to know whether
the breakpoint was physically enabled. As such, this commit also adds a
"IsPhysicallyEnabled" API.
https://github.com/llvm/llvm-project/pull/192910
gimp: update to 3.2.4.
Overview of Changes from GIMP 3.2.2 to GIMP 3.2.4
=================================================
Core:
- The "edit-fill-*" actions will now behave accordingly on specific
cases. E.g. it will skip layers which can't be filled (content-lock
layers and link layers) and it will fill the expected way
non-rasterized text and vector layers.
- Images opened through command lines are not considered stray images
anymore on exit when run without a GUI (scripts, etc.).
- We improved the support of the process temporary folder, so that we
can avoid clashes when several users run GIMP on a same computer.
Furthermore the temporary folder is now deleted at startup (unless
it is not empty, which it should be).
- XCF opened as layers will now always create new layers named as in
the source XCF, even if the source XCF had only a single layer.
[65 lines not shown]
[mlir][acc][flang] Add genCast API to PointerLikeType (#192720)
Introduces new API for PointerLikeType named genCast which can be used
for generating IR that does type conversions. This is implemented for
FIR reference types, memref, and LLVM ptr.
[clang] fix profiling of pack index expressions
This replaces a few incorrect calls of VisitExpr on subcomponents,
which should have been plain `Visit` instead, because the former
just implements the commonality between all kind-specific profile
functions (marking the class kind and visiting children).
So this for example would visit a DeclRefExpr but not actually profile
any of it's properties, like the parameter declaration, so it would fail
to distinguish between DeclRefExps referencing distinct entities.
This also adds a call to record the PackIndexExpr's kind in the profile,
to avoid false positives when comparing expressions with different kinds.
[clang] fix matching constrained out-of-line definitions of class specialization member function templates (#192806)
The method which gathered the template arguments for transforming
constraints was incorrectly skipping adding the arguments for function
templates which are members of class template specializations.
This fixes that, and removes an undocumented workaround for template
alias CTAD.
Also adds a test case showing #139276 caused a profiling issue with
PackIndexExprs,
which for the tests added in that PR gave the false impression they were
fixing the
problem, but were actually causing the implementation to be too
accepting, which
masked the bug solved in this patch.
[clang][test] Use ToolSubst for spirv-tools lit substitutions (#192906)
Bare-string substitutions match as substrings and the replacement path
contains the tool name, causing corrupted RUN lines
The issue is reproducible, for example, when path to llvm has tool name
substring at any point
Based on change for llvm tests:
https://github.com/llvm/llvm-project/pull/192462
[clang][CIR][docs] Fix a Python 3.8 compatibility issue in PostProcessCIRDocs.py (#192255)
This patch fixes a compatibility issue with Python 3.8 in the
`PostProcessCIRDocs.py` script.
[AArch64][clang] Fix typos in arm_sve.td (NFC)
Rename some typos, rather than perpetuate them (since I'll be
adding more MMLA intrinsics shortly). No functional change.
[Polly] Apply gist only after converting to pw_aff (#192975)
A single-valued set/map is not necessarily single-valued anymore after
applying after gisting a context. In particular, the set/map might not
be single-valued outside the context.
Convert the result of MemoryAccess::getAddressFunction() directly to
pw_aff. Since it is the result of lexmin(), it is single-valued by
definition. Gist the context only after te conversion.
We should consider using `isl_basic_map_partial_lexmin_pw_multi_aff` in
`getAddressFunction()` directly to avoid the intermediate step.
Fixes #190459
[AArch64][SVE] Add more MOVPRFX pseudos for SVE immediate instructions. (#192491)
This patchs adds MOVPRFX pseudos for the following instructions:
* AND (immediate)
* ORR (immediate)
* EOR (immediate)
* MUL (immediate)
* SMAX (immediate)
* SMIN (immediate)
* UMAX (immediate)
* UMIN (immediate)
This also updates instances of `cast<Pseudo>` to `cast<Instruction>` for
consistency as discussed in
https://github.com/llvm/llvm-project/pull/192491#discussion_r3101420478.
Avoid code pages issues with escape chars in printf command (#192334)
On z/OS the printf command run via the `RUN:` commands in lit prints on
EBCDIC. The llvm-lit util ends up converting the string literal (without
evaluating the escape sequences) into EBCDIC. The system printf command
then parses that string literal and prints out the EBCDIC string. The
octal and hex escape sequences create EBCDIC characters with those
values. The llvm-lit then converts the final EBCDIC string literal to
ASCII. For this test case that causes the char `\357` to end up with the
\xd5 instead of \xef.
Other BOM tests store the source file with the BOM marker as a file in
the Inputs dir. Do the same with this test case.