[AMDGPU][SILowerSGPRSpills] Correct insertion of IMPLICIT_DEF in cycles (#186348)
si-lower-sgpr spills was observed inserting IMPLICIT_DEF for lane VGPR
restores in the cycle header. The virtual VGPR is therefore not live-in
to the header and wwm regallocfast does not insert a restore. This
results in the vgpr being clobbered after each backedge.
Correct this by inserting the IMPLICIT_DEF in a block that dominates
all entries.
Assisted by Claude.
[lldb][AIX] Extract CPU type and set up process architecture accordingly (#189910)
This PR is in reference to porting LLDB on AIX. Ref discusssions: [llvm
discourse](https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640) and
[#101657](https://github.com/llvm/llvm-project/issues/101657).
Complete changes together in this draft:
- [Extending LLDB to work on AIX
#102601](https://github.com/llvm/llvm-project/pull/102601)
Description:
The process architecture was previously initialized using a hardcoded
TCPU_PPC64 CPU type.
The logic has been updated to determine the CPU type dynamically by
inspecting the magic bytes and the XCOFF header. Based on this
information, the appropriate CPU type (TCPU_PPC or TCPU_PPC64) is
selected and used when constructing and setting the ArchSpec.
This change ensures that the process architecture correctly reflects the
underlying binary format.
net-mgmt/zabbix*-server: Switch to respect DEFAULT_VERSIONS for MySQL
To help tracking of default MySQL client version, switch the default MySQL
requirement from fixed version (8.0, 8.4, ...) to DEFAULT_VERSIONS.
Reported by: Simon Wright <simon.wright at gmx.net>
[RISCV] Fix address type in Zacas seq_cst atomic pattern (#190729)
The seq_cst pattern in AMOCASPat used (vt GPR:$addr) for the address
operand, while all other patterns (monotonic, acquire, release, acq_rel)
consistently use (XLenVT GPR:$addr). This would produce a wrong type for
the address when vt differs from XLenVT (e.g., amocas.d on RV32 where
vt=i64).
Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
[mlir][reducer] Repalce module.emitWarning with module.emitError in ReductionTree pass (#190584)
This PR fixes the diagnostic message for mlir-reduce's reduction-tree
pass when the input module is not "interesting". Previously, running
with the warning pass would fail silently, and enabling debug options
would only show a generic "pass manager run failed" message without any
useful diagnostic information.
ifnet: Add some sanity checks
To be more robust since the checking is now performed where the
interface is referenced.
While here, remove a redundant check from if_vmove_loan().
Reviewed by: kp, glebius, pouria
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D55875
ifnet: Add some sanity checks
To be more robust since the checking is now performed where the
interface is referenced.
While here, remove a redundant check from if_vmove_loan().
Reviewed by: kp, glebius, pouria
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D55875
[Flang][Driver] Add support for '-fprofile-sample-use' option (#188697)
When the `-fprofile-sample-use=sample.prof` option is passed, the
compiler records the profile file path in `SampleProfileFile` . This
value is later used by the `SampleProfileLoaderPass`, which loads the
sample profile and injects the corresponding profiling metadata in the
LLVM IR.
emulators/rpcs3: unbreak build after 1b59de75bd3d
In file included from rpcs3/Emu/Cell/lv2/sys_usbd.cpp:44:
rpcs3/Emu/../Emu/Io/LogitechG27.h:41:2: error: unknown type name 'SDL_HapticEffectID'; did you mean 'SDL_HapticEffect'?
41 | SDL_HapticEffectID effect_id = -1;
| ^~~~~~~~~~~~~~~~~~
| SDL_HapticEffect
/usr/local/include/SDL3/SDL_haptic.h:925:3: note: 'SDL_HapticEffect' declared here
925 | } SDL_HapticEffect;
| ^
In file included from rpcs3/Emu/Cell/lv2/sys_usbd.cpp:44:
rpcs3/Emu/../Emu/Io/LogitechG27.h:41:33: error: no viable conversion from 'int' to 'SDL_HapticEffect'
41 | SDL_HapticEffectID effect_id = -1;
| ^~
/usr/local/include/SDL3/SDL_haptic.h:915:15: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'int' to 'const SDL_HapticEffect &' for 1st argument
915 | typedef union SDL_HapticEffect
| ^~~~~~~~~~~~~~~~
/usr/local/include/SDL3/SDL_haptic.h:915:15: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'int' to 'SDL_HapticEffect &&' for 1st argument
915 | typedef union SDL_HapticEffect
[13 lines not shown]
Revert "Reland "[mlir][reducer] Add eraseRedundantBlocksInRegion and getSuccessorForwardOperands API to BranchOpInterface"" (#190727)
To decouple the BranchOpInterface implementation from the reduction-tree
changes. Reverts llvm/llvm-project#189253,
[mlir][CSE] Fix CSE markAnalysesPreserved<DominanceInfo, PostDominanceInfo> comment (#190471)
The original comment claimed that DominanceInfo and PostDominanceInfo
could be preserved because region operations are not removed. However,
the real reason was that the original CSE only deleted redundant
operations without moving any operation to a different block, leaving
the dominance tree structure unchanged. Part of
https://github.com/llvm/llvm-project/pull/180556.
[libc++][docs] Update paper and LWG issue lists after 2026-03 meeting (#189901)
[P3726R2](https://wg21.link/P3726R2) is a Core paper but adds
`std::start_lifetime`, so it needs to be listed in libc++'s
documentation.
For LWG issues, see [P4145R0](https://wg21.link/P4145R0) and
[P4146R0](https://wg21.link/P4146R0).
[CodeGenPrepare] Use Instruction::comesBefore instead of manual ordering (#190485)
After #172329, we noticed that some sources compiled with MSan take
1000x longer to compile. This is caused by quadratic complexity in
tryToSinkFreeOperands, which can be called on a significant number
of instructions within huge basic blocks.
This inefficiency was introduced in 9cfa9b4, which manually iterates
and creates a DenseMap of entire basic blocks for each interesting
instruction.
This patch avoids the manual ordering by using
Instruction::comesBefore(), which provides the exact same
ordering much more efficiently.
[clang-tidy] Fix performance-trivially-destructible with C++20 modules (#178471)
When a class definition is seen through both a header include and a
C++20 module import, destructors may appear multiple times in the AST's
redeclaration chain. The original matcher used `isFirstDecl()` which
fails in this scenario because the same declaration can appear as both
first and non-first depending on the view.
Replace `unless(isFirstDecl())` with `isOutOfLine()` which correctly
identifies out-of-line definitions by checking whether the lexical
context differs from the semantic context.
Also update clang-tools-extra's lit.cfg.py to call `use_clang()` instead
of `clang_setup()` to make the `%clang` substitution available for
tests.
Fixes #178102
Co-authored-by: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
fix timer emulation-related VM hangs
This fixes state machine issues that resulted in hangs with OpenBSD-i386 VMs
when using the i8254 hardware timecounter with vmm. This also manifested in
incorrect i8254 calibration (wrong CPU speed in dmesg).
tested with Debian 12 amd64, i386
Apine Linux 3.23 x86 (with 4GB memory), x86_64
OpenBSD 7.9 beta amd64, i386
ok mlarkin@