busdma_bounce: fix unused-function warning on powerpc
static inline, and powerpc's own must_bounce() never
calls it.
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D58825
ossl: fix unused-function warning for AES_CBC_ENCRYPT on powerpc
static, not static inline, so TUs that don't call it warn.
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D58823
[Hexagon] Fix KCFI check truncating type id (#211854)
The KCFI indirect-call check is lowered directly to MCInst in the
Hexagon AsmPrinter. It omitted the constant-extender, causing
mismatches.
Packet canonicalization is how we should apply constant extenders,
duplex, compounds, etc.
Assisted-by: Claude
(cherry picked from commit c88aeaf712c6694d0b29d312783d24cacc000a5a)
[DAGCombine] Fix alignment of store in replaceStoreOfInsertLoad. (#215895)
For the variable index case, the alignment of the original store was
used, which is too large.
Fixes #215530
(cherry picked from commit 2dd35f8ff91fbea3d898474851f78dfad2332c18)
[lldb] Fix crash when adding a python ParsedCommand (#215807)
The expected result of `ParsedCommand.get_args_definition` is a List of
Lists and should not crash when it is not the case.
(cherry picked from commit 58e4198eab3b7437b5ffc2e8adb21ed8fc2d8866)
devel/py-test-check: update to 2.9.1
ok and suggestion to explicitly list sysutils/py-packaging as a runtime
dependency (instead of indirectly depending on it through devel/pytest) by tb@
[flang] To fix LIT test that AIX does not emit comdat. (#214950)
PR #213890 added this new LIT test.
However, AIX uses XCOFF and does not emit COFF COMDAT.
(cherry picked from commit 31749521e7b9f1cb93c9554133ab0a6d181fd8c7)
[RISCV] Fix prefetch ADDI-adjustment range upper bound (#215985)
SelectAddrRegImmLsb00000 folds a large constant offset into an ADDI plus
a simm12_lsb00000 prefetch immediate. The positive range [2017, 4065]
overflowed simm12 at the top end: CVal - 2016 reaches 2048/2049,
producing an invalid ADDI. Narrow it to 4063; 4064/4065 now fall through
to selectConstantAddr instead.
(cherry picked from commit 866bc8d6a9930a75b2b10a8f9d0a31982c5479bb)
[DWARFLinker] Consider module units when creating the type unit (#215731)
The parallel linker creates the artificial type unit only when some
compile unit uses an ODR language, but it looks for that language in the
compile units of the object files alone. A clang module unit decides its
own ODR availability from its own DW_AT_language, so a module built as
C++ or ObjC++ imported from an object file whose units are all C, ObjC
or Swift places DIEs in the type table which does not exist, asserting
in CompileUnit::cloneDIE and dereferencing null without assertions.
Scan the languages of the module units as well, so a module which
deduplicates types always has a type unit to hold them.
rdar://182719465
(cherry picked from commit 58599fe7d593ddd4d4e9f95cfd9348a48ddf8492)
[RISCV] Avoid pre-RA Zilsd pairs with same src/dst registers (#215575)
The pre-RA Zilsd optimizer previously allowed a special case for stores
where both source operands were the same vreg if that vreg was defined
by COPY $x0. This assumes register allocation will preserve the value as
x0, but that is not guaranteed. The vreg can be allocated to a normal
GPR, producing an invalid pair.
(cherry picked from commit 4ef2427b4c08fd28e4244c585ae0673711e4c0d6)
[DWARFLinker] Keep module type definitions in the parallel linker (#215435)
A Clang module compile unit carries the only definitions of the types
its module owns. No definition in it is reachable from a live address.
Similar to the classic linker, we need to mark everything as kept.
rdar://184559034
(cherry picked from commit ef04927f4a8b890504d770186f6002f487a6790e)
[lldb] Fix incorrect Python property bindings in SBExtensions. (#215283)
Several Python property definitions in the SB extension interface files
were incorrectly copy-pasted during the
["Don't use SWIG internals
refactor"](https://github.com/llvm/llvm-project/commit/89b658428bae3b749f174ca79f0fe390451d8f69)
causing properties to shadow earlier definitions instead of exposing new
functionalities.
Rename each duplicate to its intended property name and wire it to the
correct underlying method.
Add add new API tests to cover the issue.
- SBModule: compile_unit -> section.
- SBType: is_function -> is_reference.
- SBTypeSummary is_function_code -> is_function_name.
(cherry picked from commit 1fb48d1418cf55f398024c60af13436b806561f9)
[Hexagon] Fix unusable SCS reg, make it selectable (#213820)
SCS hardcoded r19 as the shadow call stack pointer and required
-ffixed-r19. That was the wrong register to pick: r19 is precisely the
one the intended consumers cannot give up, so the feature was unusable
in practice.
* The Hexagon Linux kernel already reserves r19 for its thread-info
pointer (arch/hexagon/Makefile: "TIR_NAME := r19", documented there as
not configurable because it is hard-coded in several files).
* hexagon-hypervisor reserves r20-r28 (kernel/CMakeLists.txt), with r28
bound to a register global (H2K_gp).
That leaves h2 only r16-r19, so no single hardcoded choice can serve
both consumers.
Intersecting that with the callee-saved regs leaves r1{6,7,8}. So the
new default is r18.
[8 lines not shown]
[Release Notes] Clang UBSan changes to aggregate copy/move operand checks
Document improvements to null, alignment, and array-bounds checks from #190739 and #203737.
[Matrix] De-duplicate reshaped matrixes used as incoming values for phi. (#211210)
Phis can have multiple incoming entries for the same block. In that
case, all incoming values for the block must be the same.
Update visitPHI to avoid expanding the incoming matrix multiple times
for the some incoming block.
Fixes a verifier error for the newly added test case.
PR: https://github.com/llvm/llvm-project/pull/211210
(cherry picked from commit 0e780450034e4bf0c6aa6dd4b312e1e0b9a20689)
Merge tag 'soc-fixes-7.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
Pull SoC fixes from Arnd Bergmann:
"These are three last-minute fixes for the 7.2 release, though nothing
alarming:
- one error handling fix for optee firmware
- incorrect i2c data for the apple M3 that was added in 7.2
- a boot time warning fix for nvidia tegra"
* tag 'soc-fixes-7.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
arm64: tegra: Add EL2 virtual timer interrupt for Tegra194
arm64: dts: apple: t8122: Fix I2C resources
optee: ffa: Add NULL check in optee_ffa_lend_protmem
[RISCV] Simplify the Zibi SFB and select patterns. NFC (#216449)
Use a PatLeaf to match the valid condition codes instead of using
separate patterns for each.
[flang] To issue error message for unsupported usage of vector type. (#215248)
As discussed in PR #214219, we don't plan to support any usage that
requires runtime descriptor for vector type object.
Flang has already disallowed ALLOCATABLE, POINTER, ASSUMED-SHAPE and
ASSUMED-RANK for vector types.
The test reducer posted by @eugeneepshteyn should also be flagged by the
compiler as an error.
This PR is to add semantic check for that case. It covers
1. Vector type declaration statement that has ALLOCATABLE or POINTER
attribute.
2. ALLOCATE statement where SOURCE= or MOLD= has a vector type object.
3. Auto-allocation intrinsic assignment where the RHS is a vector type
object.
4. A vector type object being used as an argument of SAME_TYPE_AS or
EXTENDs_TYPE_OF.
5. A vector type object being used as the `dtv` argument of a UDIO.
6. A vector type object being used as the argument of `CLASSOF`.
Merge tag 'for-linus' of https://github.com/openrisc/linux
Pull OpenRISC fix from Stafford Horne:
"A bug fix found by researchers:
- mask all privileged bits when restoring the supervisor register
from sigreturn"
* tag 'for-linus' of https://github.com/openrisc/linux:
openrisc: signal: do not restore privileged SR bits on sigreturn
[SLP]Fix root PHI reordering when the root order must be preserved
Do not move the operand order onto the tree-root PHI in
reorderBottomToTop() when IgnoreReorder is false (e.g. ordered
reductions): the root has no user to take over the order and it cannot
be dropped.
Fixes #216453
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/216493