[LLDB] Expose enumerator for separate-debug-info in SBModule (#144119)
Today we can run `target modules dump separate-debug-info --json` to get
a json blob of all the separate debug info, but it has a few
shortcomings when developing some scripting against it. Namely, the
caller has to know the structure of the JSON per architecture that will
be returned.
I've been working on a Minidump packing utility where we enumerate
symbols and source and put them in a package so we can debug with
symbols portably, and it's been difficult to maintain multiple
architectures due to the above shortcomings. To address this for myself,
I've exposed a simple iterator for the SBModule to get all the
separate-debug-info as list of filespecs with no need for the caller to
have context on what kind of data it is.
I also extened the swig interfaces to make writing my test easier and as
a nice to have.
[Clang][CodeGen] Avoid emitting poison immargs for __builtin_prefetch (#201623)
Fixes #201448
This PR fixes invalid clang CodeGen when lowering `__builtin_prefetch`
that is called with a constant expression that produces a poison value.
The code currently assumes that the immediate operands are
`ConstantInt`s. This is not always true as poison values may come from
UB expressions (e.g., `__builtin_prefetch(0, 2 >> 32)`) due to the use
of `EmitScalarExpr`. This would cause the subsequent downcast
`cast<ConstantInt>` in `SelectionDAGBuilder` to fail.
This PR replaces `EmitScalarExpr` with `EmitScalarOrConstFoldImmArg` to
obtain an integer constant instead of emitting a poison value for the
corresponding arguments of `llvm.prefetch`.
A regression test is also added to cover the poison immediate argument
case.
[4 lines not shown]
Reapply "[flang] Enumeration Type: (PR 1/5) Foundation types + Parser" (#202440)
FortranEvaluate referenced DerivedTypeSpec::GetScope(), defined
out-of-line in FortranSemantics, producing an undefined reference in
libFortranEvaluate.so under BUILD_SHARED_LIBS=ON. Made GetScope() inline
in symbol.h so no cross-library symbol is needed.
This is the fix missing from the original PR (#192651), which was
reverted in #202408.
---------
Co-authored-by: Kevin Wyatt <kwyatt at hpe.com>
update to socklog-2.1.2 to unbreak with llvm22
simplify the port a bit as well, along the same lines as was done
to ipsvd (both from the same upstream and have quite a few similarities)
linux: Fix sockopt copyout
The Linux getsockopt did not check the size of the provided buffer when
copying out the value, leading to buffer overflows (e.g., for TCP_INFO).
Fix is to use the smaller of the option value size and the provided
buffer.
MFC after: 1 month
Relnotes: yes
Reviewed by: kib, markj
Differential Revision: https://reviews.freebsd.org/D55881
[Clang] add support for C23 'H', 'D', and 'DD' length modifiers (#201098)
This patch adds `-Wformat` support for the C23 `H`, `D`, and `DD` length
modifiers in `printf`/`scanf` format strings. #116962