[flang][semantics][openacc] Allow collapse clauses on do concurrent (#192488)
This PR generalizes the semantic checking for collapse clauses to work
on `do concurrent` and fixes two bugs exposed along the way:
- The first was that `collapse (n)` where n < the number of nested loops
was giving an assertion violation.
- The second was do concurrent index variables were causing an assertion
violation because they hadn't been declared before looking them up.
The lowering is implemented as a TODO which will happen in a following
diff.
[lldbremote][NFC] Factor out code handling breakpoint packets (#192915)
This commit extracts the code handling breakpoint packets into a helper
function that can be used by a future implementation of the
MultiBreakpointPacket.
It is meant to be purely NFC.
There are two functions handling breakpoint packets (`handle_Z` and
`handle_z`) with a lot of repeated code. This commit did not attempt to
merge the two, as that would make the diff much larger due to subtle
differences in the error message produced by the two. The only
deduplication done is in the code processing a GDBStoppointType, where a
helper struct (`BreakpointKind`) and function
(`std::optional<BreakpointKind> getBreakpointKind(GDBStoppointType
stoppoint_type)`) was created.
The following PRs are related to the MultiBreakpoint feature:
[7 lines not shown]
[Clang] fix parser recovery for invalid static_assert string messages (#187859)
Fixes #187690
---
This PR fixes parser recovery for invalid `static_assert` declarations
with string literal messages. The parser now stops the message lookahead
on `;` and `eof`, so invalid inputs are diagnosed as parse errors.
[FunctionAttrs] Remove declaration check lines (NFC) (#194384)
These are annoying, because they get dropped by UTC. We're not
inferring attributes on declarations anyway.
games/nile: Unofficial Amazon Games client
Nile aims to be CLI and GUI tool for managing and playing games from Amazon.
At the moment, Nile is a command line application.
PR: 286478
Co-authored-by: Kenneth Raplee <kenrap at FreeBSD.org>
Approved by: arrowd (co-mentor)
NAS-140310 / 27.0.0-BETA.1 / Also handle dicts in `get_mock_return_model` (#18468)
This fixes test_update.py::test_update failing with
```
AttributeError: 'dict' object has no attribute 'available'
```
Because `update.profile_choices` is expected to be a dict of objects,
but a dict of dicts is returned due to mocking.
NAS-140296 / 27.0.0-BETA.1 / Fix mock infrastructure to coerce dict results to Pydantic models for generic services (#18457)
This commit fixes an issue where the mock infrastructure (test.set_mock)
returns plain dicts for methods that internally return Pydantic models.
Generic services (those with Config.generic = True) like DockerService
return Pydantic model instances from their methods (e.g. docker.config
returns a DockerEntry, docker.status returns a DockerStatusInfo). When
internal callers use attribute access (e.g. .pool) on the result, mocks
returning plain dicts would fail with "'dict' object has no attribute
'pool'".
The fix detects at mock registration time whether the mocked method
belongs to a generic service and returns any Pydantic model. If so, the
mock's dict results are automatically wrapped via model_construct()
before being returned to callers. Non-generic services and
primitive-returning methods are unaffected.
STIG tests:
http://jenkins.eng.ixsystems.net:8080/job/tests/job/stig_tests/1812/ (
[5 lines not shown]
[z/OS] Mark shtest-ulimit-nondarwin.py unsupported on zos. (#194016)
This PR marks llvm/utils/lit/tests/shtest-ulimit-nondarwin.py
unsupported on z/OS.
[Attributor] Support SPIR-V address spaces (#192725)
Right now Attributor assumes that if the the target is a GPU is can use
a single set of address space numerical values to determine the local
address space, but that's not true in general, so add SPIR-V support,
which uses different values.
This fixes an instruction incorrectly being marked as dead and optimized
out for an OpenMP SPIR-V offloading example.
---------
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
[SystemZ] z/OS only accept C initialization (#194023)
The TLS support only accept compile constant expressions (both C and
C++) on z/OS. Add #if to skip these tests on z/OS.
Add middleware support for LIO ALUA HA
Wire up the middleware side of LIO ALUA high-availability: load
lio_ha.ko with per-node addresses on service start, manage the
4-row ALUA state table (MASTER/BACKUP × synced/not-synced) across
failover events, clean up STANDBY configfs on pool export, and
add pre-flight validation that targets have static initiator ACLs
before ALUA can be enabled.
[LiveDebugValues] Use std::sort for register sorting in collectIDsForRegs (#194339)
VarLocBasedLDV::collectIDsForRegs sorts a SmallVector<Register> using
array_pod_sort which is a thin wrapper around qsort. That shows up as a hotspot
in compile-time profiles under __GI___qsort_r.
Switching this to an explicit-comparator llvm::sort call, which takes the
std::sort path instead improves compile-time with no change to code-size.
CTMark geomean:
- stage1-O0-g: -0.41%
- stage1-aarch64-O0-g: -0.58%
- stage2-O0-g: -0.40%
http://llvm-compile-time-tracker.com/compare.php?from=347aa3f6fbcc48cd752d02aa581b74c33d18dd41&to=cca8df56a576682510733c4c1b6fc12556e2dd7c&stat=instructions%3Au
[Clang][HLSL] Fix -Wunused-variable (#194374)
Inline the variable definition into the assert given it is side effect
free and the variable name does not make the code much more clear.
[offload] Fix use of AsyncInfoWrapper's finalize function (#194098)
The expected use is to forward the error from the asynchronous
operation's issuing (e.g., launchImpl) directly into the
AsyncInfoWrapper::finalize(). The check of the error is already
performed inside that function. No need to forward a dummy success error
code.
[llvm][lli] fix lli crash when run variable arguments function as a interpret (#173719)
Run `lli` comand with the flag `-force-interpreter=true` to execute LLVM
bitcode, if `lli` run `variable arguments` function in the bitcode, it
will crash.
Fix #173718