[lldb] [Windows] Let LLGS TestClient tolerate async `O` output packets (#225521)
My PR (swiftlang/llvm-project#14269) has a pre-merge test failure on
Windows, and that lead me looking at test LLGSTest.cpp deeply
```
Send Packet: vCont;c
Read Packet: O1b5b3f32356c
lldb-server exiting...
LLGSTest.cpp(30): error: Value of:
llvm::detail::TakeError(Client.ContinueAll())
Expected: succeeded
Actual: failed (Unable to parse StopReply: Invalid packet)
```
`TestClient::SendMessage` read exactly one packet and had no handling
for `O`
(inferior stdout) packets, but inferior output arriving before a stop
reply
[35 lines not shown]
[mlir] Reduce generated assembly printer compile time
Use fixed arrays for statically elided attributes and combine leading spaces
with literals. Initialize fixed elisions together when runtime elision is
needed; in strict properties mode, print discardable attributes directly.
Move common operand printing out of generated call sites and emit sliced
operand getters to reduce optimizer work in large printers.
For omp.target, the original patch reduced optimized print IR from 3,893 to
2,667 instructions. Its printing benchmark was 2.1% slower. check-mlir
passed before this follow-up.
Assisted-by: Codex
[RISCV] Use switches for opcode checks in RISCVInstrPredicates.td. NFC (#225695)
CheckOpcode expands out to a linear search which is slow when there's
lots of opcodes in the list. Using a switch statement allows a jump
table to be emitted which improves compile time, since these predicates
are hammered quite frequently.
Measured to reduce geomean -1.15% instructions retired on CTMark w/ a
stage2 rva23u64 -O3 Clang build.
Assisted-By: Opus 5.5
[ORC] Mangle EH-frame alloc-action CI names as C (#225682)
Flip the EH-frame register/deregister alloc-action names from Verbatim
to C, so they carry the target's C mangling. These are bootstrap-map
names only (the implementing functions have different linker names):
they're registered by addDefaultBootstrapValuesForHostProcess via
mangledCopy of the same specs, and resolved by EHFrameRegistration-
Plugin and EPCGenericRTDyldMemoryManager through the same specs, so both
sides stay in sync.
[mlir][tosa] Update reverse tests for direct axis syntax
Use the axis(...) assembly syntax in block-scaled reverse tests. This
matches the existing TOSA operation format and restores test parsing.
Assisted-by: Codex
ipfw tests: cover layer-2 filtering of unmapped mbufs
Test that ipfw's layer-2 hook copes with unmapped mbufs, on the pass
and on the deny path.
Reviewed by: glebius
Assisted-by: Claude Code (Fable 5, Opus 5)
Differential Revision: https://reviews.freebsd.org/D59390
vfs_register: prevent kernel crash
vfs_register hashes the filesystem name and uses it for sysctl oids.
A filesystem name which hashes to 0 crashes in sysctl_register_oid().
Map 0 to 1 to prevent the kernel crash.
This can be tested with "udf2" as the filesystem name.
MFC after: 1 month
MFC to: stable/15 stable/14
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D59839
[Flang][Driver] Added support for -funique-internal-linkage-names option (#216680)
The option `-funique-internal-linkage-names` appends an MD5 hash suffix
`(.__uniq.<hash>)` to internal procedure names and sets
`"sample-profile-suffix-elision-policy"="selected"` on those functions,
enabling the sample profiler to correctly match profiles to internal
procedures across compilation units.
Implementation:
- Added a unique hash suffix to internal procedure names when
`-funique-internal-linkage-names` is enabled. The suffix is derived from
the source file path and disambiguates identically named internal
procedures across different compilation units, which helps accurate
sample-based profiling.
- Added the function attribute
`"sample-profile-suffix-elision-policy"="selected"` on internal
procedures in LLVM IR. This attribute is used by the LLVM sample profile
loader to control suffix stripping during profile matching
[mlir] Enable strict assembly properties for the builtin dialect
Print ModuleOp visibility in the property dictionary and retain its
separate discardable attribute dictionary. Update affected assembly tests.
Assisted-by: Codex
[lldb-dap] Log the error when the adapter fails to write. (#225191)
I noticed this when trying to debug some failures, the Python log are
missing responses when compared to the C++ log.
Change the test case suffix `testcase` from `test_dap` to avoid
confusion with a session log (`dap{session_number}.log`).
misc: Avoid use of Unicode closing single quote
The Unicode closing single quotation mark is classified as a homoglyph
and can trip automated code quality checks in downstream CI pipelines or
cause code review UIs to refuse to display a file. If used as an
apostrophe, use the ASCII single quote instead. If used as a closing
single quote, replace with double quotes or no quotes at all.
Sponsored by: Klara, Inc.
Sponsored by: NetApp, Inc.
Reviewed by: ziaee, obiwac, olce
Differential Revision: https://reviews.freebsd.org/D59911
[lldb] Fix SBValue::Watch on a local variable. (#220292)
Setting a watchpoint on an SBValue variable should not trigger after the
life time of the variable. because a new frame can reuse the same
address for a different variable.
Set the name of the variable as the watch spec.
sysutils/logstash*: Fix rc script: use LS_JAVA_HOME/LS_JAVA_OPTS instead of JAVA_HOME/JAVA_OPTS
The use of JAVA_HOME and JAVA_OPTS is deprecated.
PR: 297679
Approved by: blanket (fix runtime)
Sponsored by: UNIS Labs
Co-authored-by: Boris Korzun <drtr0jan at yandex.ru>
Make the S3 bucket path errors terse
State what is wrong with the path and where a bucket's contents are
reached instead. Naming what would have written the path was the only
thing `consumer` carried, so the argument and every service's
`path_consumer` go with it.
Make the S3 bucket recursive permissions errors terse
State what the path is, the rule, and where to apply the change
instead. The clauses about undefined behavior and security risks said
nothing the rule does not.
Restrict non-S3 exports of S3 buckets to s3data, read-only
SMB, NFS and Webshare shares of a bucket's dataset must be read-only
and of its s3data directory, matched by the dataset the path resolves
to. A share above a bucket is smbd's to refuse, by the daemon's root
marker; NFS does not cross a mount.
Move the S3 bucket path rule into the sharing base classes
The check runs from validate_path_field, in both service hierarchies,
so no share or task calls it. Each declares only whether it reads its
path or writes it -- readonly_field for a share's flag, a task's
direction through local_path_readonly -- and how the errors name it,
path_consumer. NFS resolves its path through validate_path_field like
the other protocols do.
sharing.s3 answers two reusable questions in place of the one shaped
like an export: validate_writable_path refuses any path on a bucket's
dataset to something that writes there, and validate_readonly_path
anything but s3data to something that only reads. Home directories,
the anonymous FTP root and a cloud backup's restore destination ask
the first directly; rsync and cloud sync pulls, and the pushes and
backups that read, are covered through the base.