linuxkpi: Make pm_qos.h self-contained
Include <linux/types.h> for `false`. This is needed by amdgpu somewhere
between Linux 6.12 and 6.15.
Reviewed by: Minsoo Choo <minsoo at minsoo.io>, bz
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57415
[RFC][CodeGen] Add generic target feature checks for intrinsics
This PR adds target-independent infrastructure for annotating LLVM intrinsics
with required subtarget feature expressions.
It introduces a TargetFeatures string field to intrinsic TableGen records.
TableGen emits an intrinsic-to-feature mapping table.
Both SelectionDAG and GlobalISel now perform this check before lowering target
intrinsics. This allows targets to opt in by annotating intrinsic definitions
directly, rather than adding custom checks during lowering, legalization, or
instruction selection.
This PR uses one AMDGPU intrinsic as an example.
[AMDGPU] Do not add latency for tensorcnt / asynccnt dependencies (#201201)
Currently, when constructing the ScheduleDAG we see dependencies between
LDSDMA->LDSDMA or s_wait->s_wait due to implicit $asynccnt / $tensorcnt
operands. These implicit operands are necessary to force ordering of the
instructions, but there should be no latency for this dependency. In the
LDSDMA->LDSDMA case, the scheduler thinks it will be hundreds of cycles
until the next LDSDMA is ready.
This handles the cases:
1. LDSDMA -> LDSDMA
2. WAIT -> LDSDMA
3. WAIT -> WAIT
In the LDSDMA -> WAIT case, usually the relevant WAIT is in a different
iteration, so we don't need latency between these instructions in the
same iteration, though that isn't guaranteed. I plan to handle remove
the latency for obvious cases in a followup PR.
Fix metadirective loop variant lowering
Preserve the associated DO evaluation when a dynamic metadirective can
select either a loop-associated directive or a standalone fallback, so
the fallback still lowers the original loop body.
Scope temporary loop-IV data-sharing attributes to the selected variant.
Use the selected variant's collapse clause to determine how many loop IVs
to mark, avoiding DSA state leaking between alternatives.
[NVPTX] Remove support for `sub` in global initializers. (#201473)
I added this in https://github.com/llvm/llvm-project/pull/201220 and
assumed it worked because the pre-commit builders passed. But (a) this
is not attested in the PTX ISA, and (b) it seems that the builders don't
actually run ptxas.
Oops. Removed support for `sub`.
[flang][OpenMP] Support loop-associated metadirective variants (part 3)
Enable metadirective lowering for loop-associated variants such as
`do`, `simd`, `parallel do`, and `do simd`.
When a metadirective resolves to a loop-associated directive, the
sibling DO evaluation is spliced into the metadirective's evaluation
list so existing loop lowering finds it. Loop IV data-sharing
attributes are marked at lowering time since semantic analysis cannot
know which variant will be selected. The DataSharingProcessor is also
extended to handle spliced evaluations.
This patch is part of the feature work for #188820 and stacked on top
of #194424.
Assisted with copilot and GPT-5.4
filesystems/perfuse: Explain why this is ~never built
perfuse is part of the NetBSD base system since 6, so while packages
depend on this to ensure perfuse, the package is ~never built.
[RFC][CodeGen] Add generic target feature checks for intrinsics
This PR adds target-independent infrastructure for annotating LLVM intrinsics
with required subtarget feature expressions.
It introduces a TargetFeatures string field to intrinsic TableGen records.
TableGen emits an intrinsic-to-feature mapping table.
Both SelectionDAG and GlobalISel now perform this check before lowering target
intrinsics. This allows targets to opt in by annotating intrinsic definitions
directly, rather than adding custom checks during lowering, legalization, or
instruction selection.
This PR uses one AMDGPU intrinsic as an example.
[libclang] Add clang_ModuleCache_pruneWithCallback (#199789)
clang_ModuleCache_pruneWithCallback takes a callback that is invoked for
each PCM that gets pruned. This is to support build systems that would
like to clean up additional data when PCMs are removed from disk.
Update to version 9.2.0593.
Changes:
- patch 9.2.0593: :wqall ignores term_setkill() on running terminal buffers
- patch 9.2.0592: Error when restoring session with terminal window
- patch 9.2.0591: 'scrolljump' ignored when scrolling up
- patch 9.2.0590: GTK4: drawing area loses focus shape on popup menu open
- patch 9.2.0589: filetype: xinitrc files are not recognized
- runtime(doc): Update mapping descriptions
- runtime(kitty): Fix regex for kittyMapSeq region
- patch 9.2.0588: GTK4: drawing area loses focus after closing a menubar popover
- patch 9.2.0587: GTK4: left scrollbar overlaps drawarea
- runtime(doc): fix a typo in :write-plugin
- runtime(doc): Tweak documentation style
- runtime(cpp): recognize C++23 stdfloat types
- patch 9.2.0586: Crash with TextPut autocmd when pasting in terminal buffer
- runtime(c): classify type qualifiers, function specifiers and C23 attributes
- patch 9.2.0585: line number wrong after undoing a deletion in quickfix buffer
- runtime(sgf): Include sgf syntax script
[28 lines not shown]
[docs] Rename 20 key LLVM docs to Markdown
This may break the docs build temporarily, but there will be a follow-up
PR that fixes it immediately after. The rename is being committed first
to aid review and source code archaelogy.
Tracking issue: #201242
[Hexagon] Add optimization remarks to Hexagon IR and MIR passes (#189176)
Add OptimizationRemark/OptimizationRemarkMissed emissions to four
Hexagon-specific passes, making them observable via the standard
-Rpass/-Rpass-missed flags:
- HexagonLoopIdiomRecognition (hexagon-lir): remarks for loop-to-memcpy/
memmove conversions and polynomial multiply recognition, with missed
remarks for non-countable loops, aliasing, non-affine pointers, etc.
- HexagonVectorLoopCarriedReuse (hexagon-vlcr): remarks for reused
loop-carried vector values, with missed remarks for multi-block loops,
non-innermost loops, and missing candidates.
- HexagonVectorCombine (hexagon-vc): remarks for aligned vector memory
operations, with missed remarks for group size limits, unsafe
relocations, and insufficient HVX version.
- HexagonHardwareLoops (hwloops): remarks for hardware loop conversion,
with missed remarks for invalid instructions (calls), multiple exits,
induction variable issues, and non-computable trip counts.