Move the ObjC layout bitmap to the cstring section. (#174705)
Currently the layout bitmap is emitted as a "class name" but its not
actually a name at all. This moves the bitmap to the regular cstring
section for now.
In Apple, our linker and other tools try to optimize sections such as
objc strings. As layout bitmaps aren't really strings at all, they block
some optimizations. We don't currently try to optimize sections such as
cstring, which is why that is the section i used here for now.
[flang][OpenACC] Fix link failure with BUILD_SHARED_LIBS=ON
/usr/bin/ld: tools/flang/lib/Optimizer/OpenACC/Analysis/CMakeFiles/FIROp
enACCAnalysis.dir/FIROpenACCSupportAnalysis.cpp.o: in function `fir::acc
::FIROpenACCSupportAnalysis::isValidValueUse(mlir::Value, mlir::Region&)
':
FIROpenACCSupportAnalysis.cpp:(.text._ZN3fir3acc25FIROpenACCSupportAnaly
sis15isValidValueUseEN4mlir5ValueERNS2_6RegionE+0xb): undefined referenc
e to `mlir::acc::isValidValueUse(mlir::Value, mlir::Region&)'
clang++: error: linker command failed with exit code 1 (use -v to see in
vocation)
[AMDGPU] Introduce `AMDGPUSubtargetFeature` multiclass to reduce boilerplate
Many `SubtargetFeature` definitions in `AMDGPU.td` follow a repetitive pattern where a `FeatureXYZ` is paired with a `HasXYZ` predicate. This creates significant code duplication.
This PR introduces `AMDGPUSubtargetFeature` multiclass that generates both the `SubtargetFeature` and its corresponding `Predicate` from a single definition. The multiclass accepts an optional `GenPredicate` parameter (default 1) to skip predicate generation when not needed.
Not converted:
- Features with dependencies - multiclass doesn't support this yet. Will do it in a follow-up.
- Features with irregular predicates (e.g., `Predicate` without `AssemblerPredicate`, negated `Predicate`, complex multi-feature conditions).
- Features where field name doesn't match the `HasXYZ` pattern.
148 features converted, saving ~529 lines of code.
Properly make sure we return docker config in docker update
This commit fixes an issue where in a given case, we were not returning
docker config which will result in pydantic validation error.
AArch64/GlobalISel: Use LibcallLoweringInfo in utils
Wire up the boilerplate to get the query for bzero from
LibcallLoweringInfo instead of TargetLowering.
Improve pwenc handling
Add a common pwenc_rename function that resets caches on
config upload parsing and other places where we replace the
pwenc file. This also ensures that we never have a partially-
written pwenc file (for example sent by remote HA node).
When we rename / replace the pwenc file we'll keep a backup
of the old on so that we have potential to rebuild old
config if needed.
wip/openwv: import openwv-1.1.3
OpenWV is a free and open-source reimplementation of Google's Widevine Content
Decryption Module (CDM), the portion of the Widevine DRM system that runs in
your browser, obtains content keys for protected media, and decrypts the media
using those keys. OpenWV is a drop-in replacement for Google's official,
proprietary CDM and implements the same shared library API.
[win][x64] Unwind v2 4/4: Use chaining to split unwind info if needed, and allow dealloc to be elided if setframe + frame pointer is used (#159206)
Windows x64 unwind v2 only permits an offset from the end of the current
unwind info frame to the epilog of 4Kb. Since LLVM only uses one frame
info per function, the furthest an epilog could be from the end of the
function is 4Kb.
One way to permit offsets that are further is to use frame info
chaining: each of the chained frame infos covers a different portion of
the function and all point back to the parent unwind info.
The x64 unwind v2 lowering will now keep track of the approximate number
of instructions between each epilog and, if there are more than 600
instructions (chosen based on real world testing, this can be overridden
with an LLVM flag) between the current epilog and the end of the current
frame info, then a split frame info will be inserted.
Additionally, if the lowering detects that the current unwind info might
have more than 255 bytes of unwind codes (limit per frame info, also
[3 lines not shown]
Improve pwenc handling
Add a common pwenc_rename function that resets caches on
config upload parsing and other places where we replace the
pwenc file. This also ensures that we never have a partially-
written pwenc file (for example sent by remote HA node).
When we rename / replace the pwenc file we'll keep a backup
of the old on so that we have potential to rebuild old
config if needed.
Update TNC defaults for HA systems
This commit fixes an issue where the defaults for TNC in HA will raise EINVAL. So we fix the defaults so that they are appropriately handled and UI will not expose these knobs.
(cherry picked from commit a1803d083630ba0d55536fddfdc2741e84d49a54)
NAS-139296 / 26.04 / Update TNC defaults for HA systems (#18065)
This commit fixes an issue where the defaults for TNC in HA will raise
EINVAL. So we fix the defaults so that they are appropriately handled
and UI will not expose these knobs.
[NFC][Driver] Change SYCL test file extension .c -> .cpp (#173937)
SYCL is an API built on top of C++ programming language. Building SYCL
program with C compiler is not possible.
LinuxKPI: 802.11: fix build for non-debug kernels
lkpi_nl80211_band_name() is only available under LINUXKPI_DEBUG_80211.
IMPROVE in theory should be as well or defined to nothing but we cannot
do that in cfg80211.h mac80211.h where we possibly (re-)define this.
Put an #ifdef around the IMPROVE call for now (untested).
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Fixes: 768332d61948
Reported by: CI
[mlir][acc] Add OffloadTargetVerifier pass (#176467)
Add a verification pass that checks live-in values and symbol references
within offload regions are legal for the target execution model.
When code is offloaded to a device (e.g., GPU), not all values and
symbols from the host context are directly accessible. Data must be
explicitly mapped via OpenACC data clauses (copyin, create, present
etc.), declared with device attributes, or be trivial scalars that can
be passed by value. Similarly, symbol references to globals must have
proper `declare` attributes or device-resident data attributes.
This pass walks operations implementing `OffloadRegionOpInterface`,
which includes OpenACC compute constructs (`acc.parallel`,
`acc.kernels`, `acc.serial`) as well as GPU operations like
`gpu.launch`. For each region, it uses liveness analysis to identify
values flowing into the region and checks their validity using the
`OpenACCSupport` analysis.
[4 lines not shown]
[-Wunsafe-buffer-usage] Improve null-termination analysis on conditionals (#176262)
This commit adds two improvements to null-termination analysis on
conditionals:
- perform recursive constant folding
- when the condition is not a constant, analyze both branches for
null-termination
rdar://168256816
netstat: fix a segfault with --libxo
Fix a segfault when printing the "protocol" field. The field-format and
encoding-format were expecting different numbers of arguments.
Also, fix the width of the tcp-state field in encoded output.
PR: 292228
Fixes: c2b08c13c20 netstat: add support for UDP-Lite endpoints
Sponsored by: ConnectWise
Reviewed by: tuexen, js, des
Differential Revision: https://reviews.freebsd.org/D54567
(cherry picked from commit 3b6615ec0332f901fcc9e9307f78717424f09c1e)
Improve pwenc handling
Add a common pwenc_rename function that resets caches on
config upload parsing and other places where we replace the
pwenc file. This also ensures that we never have a partially-
written pwenc file (for example sent by remote HA node).
When we rename / replace the pwenc file we'll keep a backup
of the old on so that we have potential to rebuild old
config if needed.
fusefs: Fix further intermittency in the BadServer.ShortWrite test case
After being unmounted, the mockfs server would occasionally read from
/dev/fuse again, if the main function didn't exit fast enough, getting
an ENODEV error. Handle that appropriately.
Reported by: Siva Mahadevan <me at svmhdvn.name>
Fixes: d86025c1d49c84c4dc8c3635c83c078ad56e5a53
Reviewed by: Siva Mahadevan <me at svmhdvn.name>
Differential Revision: https://reviews.freebsd.org/D54331
(cherry picked from commit f51e9d0e0988df58c94db586ab5c8b5fd091c004)