[libc][wctype] Reland internal UTF8 wctype classification functions (#181468)
Reland #174607
#174607 broke libc++ because the LIBC_CONF_WCTYPE_MODE macro wasn't
defined when called from libc++. Defaulted LIBC_CONF_WCTYPE_MODE to
LIBC_WCTYPE_MODE_ASCII when not configured
(https://github.com/llvm/llvm-project/commit/ffd355b0879066adc9889593570af8f0df85f1a8)
[SCEVDivision] Prevent propagating nowrap flags when numerator is an addrec (#154745)
In ScalarEvolutionDivision, when the numerator is an addrec, its nowrap
flags are unconditionally propagated to the quotient and remainder.
However, this is not always correct.
This pass is only used by Delinearization, and just dropping these flags
doesn't affect Delinearization's accuracy in almost all cases.
Therefore, this patch conservatively stop propagating the nowrap flags
from the numerator to the quotient and remainder.
Fix #152566
[lldb-dap] Add unknown request handler (#181109)
Added unknown request handler to avoid crash. Returning error in this
case looks better than stopping entire debug session.
(cherry picked from commit b447f5d9763010f8c6806c578533291aef2bd484)
workflows/release-binaries: Pass missing release-version input to upload-release-artifact (#180879)
This was causing the 22.1.0-rc3 uploads to fail.
(cherry picked from commit 127d77f7abe0b9c54562ee37ce474d99effa09c1)
[flang] Fix -fno-omit-frame-pointer (#180507)
The PR #163775 added `FramePointerKind::NonLeafNoReserve`. However it
seems it forgot to update some codes in Flang. By this bug,
`frame-pointer` attribute in IR was not set even if
`-fno-omit-frame-pointer` is specified.
Fixes #180118
(cherry picked from commit e2297da21660a0c9f3db90c3effd18f6c17e38e9)
[clang-repl] Fix disambiguation of out-of-line member with private types (#178842)
This patch fixes a bug in clang-repl where out-of-line member function
definitions were incorrectly identified as statements when they involved
private type aliases.
The issue occurred because `isCXXDeclarationStatement` would trigger
immediate access checks during tentative parsing. Since the context of
an out-of-line definition isn't fully established during this phase,
Sema would incorrectly flag private members as inaccessible, causing
the parser to fail the declaration check and fall back to statement
parsing.
Changes:
- In `isCXXDeclarationStatement`, use `TentativeParsingAction` to
ensure the token stream is fully restored.
- Use `SuppressAccessChecks` during the tentative disambiguation phase
to prevent premature access errors.
- Ensure that formal access verification still occurs during the
[8 lines not shown]
[libc++] Fix native wait alignment (#180928)
This PR fixes two issues regarding the alignment of native wait:
- In the internal platform call, the local variable is copied from a
potentially non-aligned buffer
- Under the unstable ABI, the predicate to test eligibility of a type
being able to do native wait is purely on size. We should test also the
alignment of such type is qualified for platform call
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
(cherry picked from commit 155beb97492e14e29ab7af3a805bbfb97bee1e6b)
[SelectionDAG] Make sure demanded lanes for AND/MUL-by-zero are frozen (#180727)
DAGCombiner can fold a chain of INSERT_VECTOR_ELT into a vector AND/OR
operation. This patch adds protection to avoid that we end up making the
vector more poisonous by freezing the source vector when the elements
that should be set to 0/-1 may be poison in the source vector.
The patch also fixes a bug in SimplifyDemandedVectorElts for
MUL/MULHU/MULHS/AND that could result in making the vector more
poisonous. Problem was that we skipped demanding elements from Op0 that
were known to be zero in Op1. But that could result in elements being
simplified into poison when simplifying Op0, and then the result would
be poison and not zero after the MUL/MULHU/MULHS/AND. The solution is to
defensively make sure that we demand all the elements originally
demanded also when simplifying Op0.
This bugs were found when analysing the miscompiles in
https://github.com/llvm/llvm-project/issues/179448
[9 lines not shown]
interfaces: 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.
Firewall: Rules [new]: Reduce complexity in url hash handling and when using firewall_rule_lookup (#9773)
* Reduce complexity of firewall_rule_lookup, we have an all rules entrypoint now, so potentially we could just search for the UUID of the rule without concerning us with interfaces anymore
* Clean up URL hash logic, we only allow #search and #interface now and need no special handling
* Only get the hash once, use it everywhere, re-add missing null fallback and initialized interface variable
* The hash was consumed too early now, fix it by shifting to the new spot where the variable is used last
mvc: collect uuid field so it can be searched, but only if the searchPhrase contains a valid UUID (#9780)
Add UUID to the fields that can be searched, but only if the searchPhrase contains a valid UUID. That way it won't match on partial strings.
* Create new Type class in core library and add isUUID static, replace individual callers with the new static.
* Add a new static function containsUUID() to the new Type class.
* Move searchPhrase tokenization to ApiMutableControllerBase searchBase()
Determine if search_tokens contain a valid UUID, if yes collect the uuid field so it can be searched. Doing this prevents finding partial strings in UUIDs, but allows to find exact UUIDs.
Inside UIModelGrid fetchBindRequest(), use the search_tokens directly. A compatability case makes this backwards compatible for callers that do not know about search_tokens.
Pass the search_tokens directky into UIModelGrid fetch() instead of the raw searchPhrase.