[LV] Allow loops with multiple early exits in legality checks. (#176403)
This patch removes the single uncountable exit constraint, allowing
loops with multiple early exits, if the exits form a dominance chain and
all other constraints hold for all uncountable early exits.
While legality now accepts such loops, vectorization is not yet
supported. VPlan support will be added in a follow up:
https://github.com/llvm/llvm-project/pull/174864
PR: https://github.com/llvm/llvm-project/pull/176403
[LifetimeSafety] Read lifetimebound attribute on implicit 'this' from all redeclarations (#176188)
Fix handling of `lifetimebound` attributes on implicit `this` parameters across function redeclarations.
Previously, the lifetime analysis would miss `lifetimebound` attributes on implicit `this` parameters if they were only present on certain redeclarations of a method. This could lead to false negatives in the lifetime safety analysis. This change ensures that if any redeclaration of a method has the attribute, it will be properly detected and used in the analysis.
I can't seem to work around the crash in the earlier attempt https://github.com/llvm/llvm-project/pull/172146.
Reproducer of the original crash:
```cpp
struct a {
a &b() [[_Clang::__lifetimebound__]];
};
a &a::b() {}
```
This only crashes with `-target i686-w64-mingw32`. `bin/clang++ -c a.cpp` works fine.
Problematic merging logic:
```cpp
[88 lines not shown]
[lldb][TypeSystemClang] Remove redundant allow_completion parameter to GetCompleteQualType
No caller sets this parameter to `false`. It's odd that we would provide
such an option to a user. This gets used whenever we want to
ensure/check that a type has a definition. Never do we actually want to
expose the underlying mechanism of whether the type has been lazily
completed or not. A more dedicated API could introduced for this
purpose if we really wanted one.
disable lint for libgfortran.
looks like all the 4 builds failed for it, though 2 were a build issue,
testing them shows it fails anyway.
on x86 it fails with eg:
/usr/src3/external/gpl3/gcc/dist/libquadmath/quadmath.h(33): error: invalid type for _Complex [308]
included from /usr/src3/external/gpl3/gcc/dist/libquadmath/quadmath_weak.h(24)
included from /usr/src3/external/gpl3/gcc/dist/libgfortran/libgfortran.h(62)
included from /usr/src3/external/gpl3/gcc/dist/libgfortran/runtime/ISO_Fortran_binding.c(29)
on sparc/sparc64 we have:
sparc64--netbsd-lint: /home/builds/ab/HEAD-lint/sparc64/20260119052522Z-tools/libexec/sparc64--netbsd-lint1 got signal 6
sparc--netbsdelf-lint: /home/builds/ab/HEAD-lint/sparc/20260119052522Z-tools/libexec/sparc--netbsdelf-lint1 got signal 6
from the build infrastructure.
interfaces: generalise the dhcp6c_script using the new IFNAME variable ##7647
The file was conceptually created in d36f0f4f62557 and before was a single
command line script... so add appropriate copyrights from that time onward.
Many thanks to Martin for pinoeering this back in the day!
interfaces: show the prefix shift in the log message
Move the other force message to the respective if which is more or
less what we had before. This is important for making clear what
the impact of #9521 to renewals actually is.
interfaces: missed script path via @cm-rudolph
interface: multi-dhcp6c support and custom PD association #7647
This splits off rtsold and dhcp6c into separate processes
which frees us from the restrictions of faked iterative IDs
for PD associations. For NA we simply default to 0 now.
I'm not entirely sure why we settled for a single deamon of
dhcp6c back in the day, but there are certianly downsides to
it and I don't see something that wasn't fixed in the meantime
that makes this not work.
Add two debugging files which still need to be steered via the
debug setting.
py-ruff: update to 0.14.13.
0.14.13
This is a follow-up release to 0.14.12. Because of an issue publishing
the WASM packages, there is no GitHub release or Git tag for 0.14.12,
although the package was published to PyPI. The contents of the
0.14.13 release are identical to 0.14.12.
0.14.12
Preview features
[flake8-blind-except] Allow more logging methods (BLE001) (#22057)
[ruff] Respect lint.pydocstyle.property-decorators in RUF066 (#22515)
Bug fixes
Fix configuration path in --show-settings (#22478)
[18 lines not shown]