[flang][cuda][openacc] Fix interoperability when host_data is not generated (#186516)
Update lowering to not process operands if the operation will not be
generated because of a `if(.false.)` clause. This was breaking when
enabling CUDA Fortran on the same test.
[NFC][sanitizer] Accept ETIMEDOUT in getpwnam_r_invalid_user.cpp (#186538)
On some systems, looking up an result in a timeout.
Error here is not a sign of compiler-rt issue.
Fixes flakiness on
https://lab.llvm.org/buildbot/#/builders/sanitizer-ppc64le-linux
plug a memory leak when detaching codel ifq disciplines on an interface.
fqcodel_alloc() takes (moves) ownership of memory allocated as part
of the pf queue code that sets up the queue discipline, but nothing
releases it when the discipline is removed from the interface. every
time you load a pf rulese that uses codel, it temporarily resets
an interface to priq before creating and attaching new codel
instances. this means every ruleset load would leak memory, to the
point where M_DEVBUF allocations exhaust the kernel map.
this has fqcodel_free() call fqcodel_pf_free to free the now unused
codel discipline.
found and fixed by lexi wilson
[RISCV] Add codegen patterns to support short forward branches with immediates (#185643)
This is a follow-up to #182456. This PR adds support for short forward
branches where branches are from Qualcomm uC `Xqcibi` extension.
[libclc][NFC] Rename three .inc files to avoid name conflicts (#186384)
Follow-up of 9b96ebc. There are binary_def.inc and unary_def.inc in
header directory.
- clc_ep.inc -> clc_ep_decl.inc
- relational/binary_def.inc -> relational/relational_binary_def.inc
- relational/unary_def.inc -> relational/relational_unary_def.inc
[NFC][Support] Don't test UB in Caching.WriteAfterCommit (#186532)
The test expects crash after commit essentially null-dereferencing.
Just check that it's nullptr directly.
Fixes asan/ubsan buildbot.
[clang][DirectX] Specify element-aligned vectors in TargetInfo (#185954)
Add a bit to TargetInfo to specify that vectors are element-aligned
rather than naturally aligned. This is needed to match DirectX's Data
Layout in LLVM.
Note that this removes the `Opts.HLSL` early exit from
`checkDataLayoutConsistency` so that we actually get these checks when
compiling HLSL. This check looks like it was put there because of
similarity between OpenCL and HLSL, but it isn't actually necessary.
Resolves #123968
[libc] Reference the proper namespaced variables in the GPU header
Summary:
These linked to the extern "C" versions which did not exist in test
builds.
[ScalarEvolution] Limit recursion in getRangeRef for PHI nodes. (#152823)
Restrict PHI nodes that getRangeRef is allowed to recursively examine so
we don't need a "visited" set. And fix createSCEVIter so it creates all
the relevant SCEV nodes before getRangeRef tries to examine them.
The tests that are affected have induction variables that aren't
AddRecs. (Other cases are theoretically affected, but don't seem to show
up in our tests.)
Fix callee type generation (#186272)
The callee_type metadata is expected to be a list of generalized type
metadata by the IR verifier. But for indirect calls with internal
linkage the type metadata is just an integer. Avoid including them in
callee_type metadata.
This will reduce the precision of the generated call graph as the edges to internal linkage functions whose address were taken will not be present anymore. We need to handle this in the future.
[lldb] Enable SanitizersAllocationTraces=tagged in darwin-mte-launcher (#186326)
Collect allocation traces for tagged memory when using the
`darwin-mte-launcher` to help debug MTE crashes.
[lldb] Add support for the darwin-mte-launcher to lldb-dotest (#186319)
Add support for the `darwin-mte-launcher` to `lldb-dotest` when LLDB is
configured to run the tests under MTE.