[lldb][Windows] Make RM_RF a no-op on an empty argument and swallow errors (#203040)
This patch makes the Windows `RM_RF` a no-op on an empty argument and
swallow errors, matching Unix `rm -rf`. This fixes issues in swiftlang
on fresh builds.
This is needed for https://github.com/swiftlang/llvm-project/pull/13180
[PGO][HIP] Fix HIP device profile collection and sections emission (#202095)
Several related HIP device-PGO fixes:
Windows device collection. HIP rejects a hipMemcpy that reads past the
bounds
of a symbol registered with __hipRegisterVar, but device
data/counters/names
live in merged linker sections. Register a separate shadow for each
device
data, counters, and names symbol and copy each one by its exact
hipGetSymbolSize
size; this also lets static TUs with several kernels keep all their
profile
data. Open the device profile file in binary mode and pass the device
names to
the correct lprofWriteDataImpl arguments so llvm-profdata can read the
raw
profile. Open the versioned amdhip64_7.dll first, falling back to
[41 lines not shown]
[SystemZ] Rename GetSingleElementType to getSingleElementType (#203078)
# Refactor: Rename GetSingleElementType to getSingleElementType in
SystemZ ABI
## Summary
This PR refactors the SystemZ ABI code to follow LLVM coding standards
by renaming `GetSingleElementType` to `getSingleElementType` (camelCase
convention).
## Motivation
Rename to avoid having 'GetSingleElementType` in one class and
`getSingleElementType` in another one.
[X86] Add tests showing failure to concat 256-bit rotate nodes on non-vlx targets (#203517)
These are widened in tablegen, we don't need to limit these to VLX targets
NAS-141370 / 26.0.0-RC.1 / Fix `list_partitions` crash (by themylogin) (#19125)
```
File "/usr/lib/python3/dist-packages/middlewared/plugins/disk_/disk_info.py", line 122, in list_partitions
part_name = self.get_partition_for_disk(disk, p['ID_PART_ENTRY_NUMBER'])
~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/pyudev/device/_device.py", line 973, in __getitem__
return self.properties.__getitem__(prop)
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/usr/lib/python3/dist-packages/pyudev/device/_device.py", line 1100, in __getitem__
raise KeyError(prop)
KeyError: 'ID_PART_ENTRY_NUMBER'
```
The root cause of the issue is that `req_keys` was a generator, and
iterating over the second, the third, and so-on time returns an empty
list. Which makes `all(p.get(k) for k in req_keys)` always `True`. Which
makes `filter` expression not filter out partitions without specified
keys.
[3 lines not shown]
NAS-141369 / 26.0.0-RC.1 / Fix container/VM migrations crash when ran without pwenc secret (by themylogin) (#19123)
When container/VM migrations are ran without valid pwenc secret present
(config imported without pwenc secret), they crash the migration
process, because `decrypt` returns an empty string, and we try to
`json.loads` it. We should skip empty strings in this case, the same way
we do in all other similar migrations.
Original PR: https://github.com/truenas/middleware/pull/19116
Co-authored-by: themylogin <themylogin at gmail.com>
NAS-141370 / 27.0.0-BETA.1 / Fix `list_partitions` crash (#19117)
```
File "/usr/lib/python3/dist-packages/middlewared/plugins/disk_/disk_info.py", line 122, in list_partitions
part_name = self.get_partition_for_disk(disk, p['ID_PART_ENTRY_NUMBER'])
~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/pyudev/device/_device.py", line 973, in __getitem__
return self.properties.__getitem__(prop)
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/usr/lib/python3/dist-packages/pyudev/device/_device.py", line 1100, in __getitem__
raise KeyError(prop)
KeyError: 'ID_PART_ENTRY_NUMBER'
```
The root cause of the issue is that `req_keys` was a generator, and
iterating over the second, the third, and so-on time returns an empty
list. Which makes `all(p.get(k) for k in req_keys)` always `True`. Which
makes `filter` expression not filter out partitions without specified
keys.
(math/R-zoo) Updated 1.8.12 to 1.8.15
Changes in Version 1.8-15
* Documentation fix in BibTeX files requested by CRAN : Use `doi` field rather
than `url` for DOIs, and updates to various URLs.
Changes in Version 1.8-14
* In the `scale_x_yearmon()` function the `scale_x_continuous()` function
is now called with `transform' argument rather than the old `trans` argument
(deprecated since `ggplot2` 3.5.0). The analogous changes are made for
`scale_y_*` and `yearqtr`. (Patch provided by Jari Karppinen.)
* Improve example with AM/PM times in `vignette("zoo-read", package = "zoo")`:
The `%p` specification for the AM/PM indicator should be combined with `%I`
(and not `%H`) for the hours in 01-12 (rather than 00-23). (Reported by
Brian D. Ripley.)
[37 lines not shown]
[mlir][vector] extend `createReadOrMaskedRead`/`createWriteOrMaskedWrite` with permutation map support (#202766)
Follow-up to #201180.
Extends the existing `createReadOrMaskedRead` and
`createWriteOrMaskedWrite` utilities in `VectorUtils` with two optional
trailing parameters:
- `ArrayRef<Value> indices`
- `AffineMap permutationMap`
The affine super-vectorizer is updated to call these functions instead
of constructing `TransferReadOp`/`TransferWriteOp` directly.
@banach-space, please correct me if this wasn't what you meant in the
previous PR.
---------
Signed-off-by: Federico Bruzzone <federico.bruzzone.i at gmail.com>
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
(sysutils/R-ps) Updated 1.8.1 to 1.9.3
# ps 1.9.3
* On Linux, process create times are now computed using
`CLOCK_REALTIME - CLOCK_MONOTONIC` instead of `/proc/stat btime`, giving
sub-second precision (previously, integer-second boot time caused up to 1s
error). Handle validation accepts both the precise and the legacy boot time,
so handles created by older versions of processx continue to work.
For https://github.com/r-lib/processx/issues/394 and
https://github.com/r-lib/processx/issues/402.
# ps 1.9.2
* New `ps_string()` for uniquely identifying a process (#208, @dansmith01).
# ps 1.9.1
* ps now builds correctly on Alpine Linux (3.19) on R 4.5.0.
[8 lines not shown]
[MergeICmps] Perform dereferenceability check with context (#202884)
To support deref-at-point semantics, we need to check dereferenceability
with a context instruction. Currently, MergeICmps does the check for
each individual load instruction. In this PR, I'm replacing this with a
check for all the loads that are part of a chain after they have been
collected, so we do the context-sensitive check only once.
The choice of context instruction is a bit tricky: Normally, this would
just be the first block in the chain (the "entry block"), but it's also
possible for the block to "do extra work", in which case it will get
split. If this happens, we should be checking at the splitting point, as
the extra work might be freeing the pointer.
Another question to consider here is whether we need to be concerned
about frees at all: After all, the original code will be accessing at
least one byte of the two objects, so doesn't that imply that it wasn't
freed already? This is indeed the case, as long as allocations cannot
shrink. This is something we currently don't allow, but I think it's
something we want to allow, so I'm going with the conservative treatment
here.
[DirectX] Drop DICommonBlock metadata (#201948)
DICommonBlock cannot be represented in LLVM 3.7, but it is a scope
within a parent scope, so we can refer to the parent scope instead.