[clang][flang][docs] Re-land Markdown CLI ref generator (#222147)
Reverts llvm/llvm-project#221937
Relands llvm/llvm-project#220385
This time, the migration includes flang command line reference
documentation, so the change passes `ninja docs-flang-html/man`.
Tracking issue: #201242
Assisted-By: Codex
fix: Supply the HIP SPIR-V version only for metadata emission
Fix the assertion exposed by PR #214246 under the version invariant from PR #219687. Supply OpenCL 2.0 in classic CodeGen and CIRGen without changing HIP language options or enabling OpenCL-only Sema restrictions.
Assisted-by: Codex / GPT-6
[CIR][OpenCL] Lower OpenCL language version metadata to LLVM dialect
Propagate CIR OpenCL language version module attributes as LLVM dialect named metadata before LLVM IR translation.
Assisted-by: Codex / GPT-5.6 Sol
[CIR][OpenCL] Emit OpenCL language version metadata in CIR
Emit OpenCL and C++ for OpenCL language version attributes from CIRGen. Preserve the compatible OpenCL version and the C++ for OpenCL version separately so later lowering does not infer one from the other.
Assisted-by: Codex / GPT-5.6 Sol
[AMDGPU] Do not freeze reserved registers in AMDGPUReserveWWMRegs (#222193)
Refreshing the shared RegisterClassInfo needs an up-to-date reserved set, but
freezing it into MachineRegisterInfo, as #221849 did, publishes it too early:
clearing the per-lane VGPR mask unreserves those registers, and LiveIntervals
does not extend a reserved register's unit ranges to its uses, so those uses
fail verification.
Take the set from TargetRegisterInfo instead. It is the same set, and the
register allocator still freezes it into MachineRegisterInfo itself.
AI-assisted.
[OpenMP] Reserve the main thread's warp for generic mode kernels (#218790)
In generic mode one warp of the block runs the main thread and the rest
run the
user's threads, so everything needing the team size computes
`BlockSize - WarpSize`: the device runtime's `getMaxTeamThreads`, and
the state
machine OpenMPOpt builds. The bound written into the kernel was the
program's
`thread_limit` exactly, so on gfx90a `thread_limit(4)` launched a block
of 4
threads and the team size came out as `4 - 64`. That subtraction is
unsigned, so
the runtime saw four billion workers rather than none: the parallel
region never
ran, and on current trunk the launch dies with a memory access fault.
Any
`thread_limit` below one warp was affected, so anything under 64 on a
wave64
[41 lines not shown]
vmimage.subr: Use makefs -N
By default, makefs uses the host environment's user and group databases
when creating filesystems. This causes makefs to fail when trying to
create files owned by users or groups which don't exist in the host
environment, for example when creating a VM with packages pre-installed
which added their own users/groups.
Pass "-N ${DESTDIR}/etc" to makefs to point it at the user and group
databases from the image being created.
MFC after: 1 week
Sponsored by: Amazon
(cherry picked from commit 7ca0c1eba2e4c49ac92499ef0f6adf27c8b930d4)
vmimage.subr: Use makefs -N
By default, makefs uses the host environment's user and group databases
when creating filesystems. This causes makefs to fail when trying to
create files owned by users or groups which don't exist in the host
environment, for example when creating a VM with packages pre-installed
which added their own users/groups.
Pass "-N ${DESTDIR}/etc" to makefs to point it at the user and group
databases from the image being created.
MFC after: 1 week
Sponsored by: Amazon
(cherry picked from commit 7ca0c1eba2e4c49ac92499ef0f6adf27c8b930d4)
[libc][bazel] Make a large swath of targets full-build compatible (#218993)
After this PR, all compatible targets in `@llvm-project//libc:all` are
buildable under full-build mode.
```
bazel build @llvm-project//libc:all --@llvm-project//libc:build_mode=full --config=generic_clang --keep_going
```
Assited-by: Gemini 3.5
[flang][test] Expand test for legacy DATA initializer on invalid declarations (#222171)
Follow-up to #221170. Expands `flang/test/Semantics/data27.f90` with the
other shapes that crashed the same way before that fix and now produce
the expected error
Assisted-by: AI
[MLIR][Func] Enable strict property assembly format (#217300)
Enable the strict properties assembly format mode for the Func dialect.
Spell inherent call attributes directly in the call formats so they are
no longer parsed from attr-dict in strict mode.
Assisted-by: Codex
Add ACPI hardware IDS for Qualcom Glymur (X2) SoC.
The HIDs map to to glymur device tree nodes as follows:
QCOM0F0C: GIO0 -> tlmm: pinctrl at f100000
QCOM0F10:
I2C1 -> i2c0: i2c at b80000
I2C5 -> i2c4: i2c at b90000
I2C6 -> i2c5: i2c at b94000
I2C9 -> i2c8: i2c at a80000
QCOM0F8B: URS0 -> usb_0: usb at a600000
QCOM0F8C: URS1 -> usb_1: usb at a800000
QCOM0FED: URS2 -> usb_2: usb at a000000
This gets USB, keyboard and touchpad working in ACPI mode
on the HP Elitebook X G2q.
ok kettenis@
[Fuzzer] Bump rss_limit again. (#222187)
The two tests libFuzzer-x86-64-default-Linux::fork_corpus_groups.test
and libFuzzer-x86-64-default-Linux::fork.test have started being flaky
again on two of my bots, so bumping up the rss limit in the test which
temporarily solved the issue back in #204701.
See comment in #222187 for links to the bots and recent failures.
[MLIR][EmitC] Enable strict property assembly format (#217271)
Enable strict property assembly format mode for the EmitC dialect. Spell
call metadata directly in the affected declarative assembly formats and
drop unneeded property dictionaries from formats that already cover
their inherent attributes.
Refresh EmitC tests and related C++ target checks so call properties use
direct syntax while ordinary attributes remain in attr-dict.
Assisted-by: Codex
[libc++][NFC] Remove `optional::__get` (#217218)
Internal communicating functions `optional::__get` can be superseded by
either `value`, `operator*()`, or direct use of data member. Even though
`value()` is checked, checks are already performed before internal calls
to it, so compilers should be able to remove duplicated checks.
It is intended to use `opt.value()` instead of `*opt` to avoid undesired
argument-dependent lookup.
www/py-django-q2: Fix build after devel/py-uv-build update
Patch pyproject.toml to stretch out devel/py-uv-build version range.
PR: 298327
Approved by: osa, vvd (Mentors, implicit)
www/py-django-q2: Fix build after devel/py-uv-build update
Patch pyproject.toml to stretch out devel/py-uv-build version range.
PR: 298327
Approved by: osa, vvd (Mentors, implicit)