[all-commits] [llvm/llvm-project] e973f7: [RISCV][Xqcicsr] Instructions have Side Effects (#...
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Fri Dec 6 10:24:17 PST 2024
Branch: refs/heads/users/alexey-bataev/spr/riscvcodegenttiuse-processshufflemasks-for-cost-estimationsactual-per-register-shuffles
Home: https://github.com/llvm/llvm-project
Commit: e973f7ae52e753ebe53f5414ddf1c4d29e49deb5
https://github.com/llvm/llvm-project/commit/e973f7ae52e753ebe53f5414ddf1c4d29e49deb5
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV][Xqcicsr] Instructions have Side Effects (#118089)
Xqcicsr was added in #117169. I missed that `hasSideEffects` was set to
0, rather than 1 (which all other CSR-modifying instructions have).
This has no effect on the current assembly-only support, but I think is
worth fixing before I forget. I accidentally fixed the closing comment
in 9300274a12d758368c036812d903b73d70d64ea4.
Commit: ef86a31a593a023946a2dc805948360efdad3930
https://github.com/llvm/llvm-project/commit/ef86a31a593a023946a2dc805948360efdad3930
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/cmake/modules/GetHostTriple.cmake
Log Message:
-----------
[CMake] Fix mismatched endif warning
Caused by https://github.com/llvm/llvm-project/pull/116701.
Seems like a lot of arguments to repeat, so just use a plain endif().
Commit: 2a18162daa96e1cca5144a634bb03134405b52cb
https://github.com/llvm/llvm-project/commit/2a18162daa96e1cca5144a634bb03134405b52cb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
Log Message:
-----------
[X86] update shuffle lowering tests to take poison arg instead of undef
Commit: 5c181a9191bfb758575329ff7eb8db4fc46ffac9
https://github.com/llvm/llvm-project/commit/5c181a9191bfb758575329ff7eb8db4fc46ffac9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-512.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll
M llvm/test/CodeGen/X86/vector-shift-by-select-loop.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-512.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-sub128.ll
M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-512.ll
M llvm/test/CodeGen/X86/vector-shift-shl-sub128.ll
Log Message:
-----------
[X86] update vector shift lowering tests to take poison arg instead of undef
Commit: 38098b486e44ad077b674e512eee399fc6f5a30c
https://github.com/llvm/llvm-project/commit/38098b486e44ad077b674e512eee399fc6f5a30c
Author: Andrzej WarzyĆski <andrzej.warzynski at arm.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][vector] Disable CompressStoreOp/ExpandLoadOp for scalable vectors (#117538)
These operations were introduced as counterparts to the following LLVM
intrinsics:
* `@llvm.masked.expandload.*`,
* `@llvm.masked.compressstore.*`.
Currently, there is minimal test coverage for scalable vector use cases
involving these Ops (both LLVM and MLIR). Additionally, the verifier is
flawed - it incorrectly allows mixing fixed-width and scalable vectors.
To address these issues, scalable vector support for these Ops is being
disabled for now. This decision can be revisited if a clear need arises
for their use with scalable vectors in the future.
Commit: b40714b01206abef4130d3a39a90ac82aa96f18f
https://github.com/llvm/llvm-project/commit/b40714b01206abef4130d3a39a90ac82aa96f18f
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
A llvm/lib/Transforms/Coroutines/CoroCloner.h
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
Log Message:
-----------
[Coroutines][NFC] Refactor CoroCloner (#116885)
* Move CoroCloner to its own header. For now, the header is located in llvm/lib/Transforms/Coroutines
* Change private to protected to allow inheritance
* Create CoroSwitchCloner and move some of the switch specific code into this cloner. More code will follow in later commits.
Commit: ef50d790c276600da609b465259a8e636e3531bc
https://github.com/llvm/llvm-project/commit/ef50d790c276600da609b465259a8e636e3531bc
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M libcxx/utils/ci/run-buildbot-container
Log Message:
-----------
[libc++] Update run-buildbot-container with up-to-date image information
Commit: 31b7d4333a6c10aa8b7e1a7ca5aa0e281f124ec2
https://github.com/llvm/llvm-project/commit/31b7d4333a6c10aa8b7e1a7ca5aa0e281f124ec2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/extract-insert.ll
M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll
M llvm/test/CodeGen/PowerPC/scalar_vector_test_5.ll
M llvm/test/CodeGen/X86/load-partial.ll
Log Message:
-----------
[DAG] Extend extract_element(bitcast(scalar_to_vector(X))) -> trunc(srl(X,C)) (#117900)
When extracting a smaller integer from a scalar_to_vector source, we were limited to only folding/truncating the lowest bits of the scalar source.
This patch extends the fold to handle extraction of any other element, by right shifting the source before truncation.
Fixes a regression from #117884
Commit: fe042904829b83a61c1f4bc904f8f9e5b6da891e
https://github.com/llvm/llvm-project/commit/fe042904829b83a61c1f4bc904f8f9e5b6da891e
Author: David Green <david.green at arm.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/test/Analysis/CostModel/AArch64/sve-gather.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/AArch64/sve-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-vectorization-cost-tuning.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-vf-hint.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-strict-fadd-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-zext-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
Log Message:
-----------
[AArch64] Change the default vscale-for-tuning to 1. (#117174)
Most AArch64 cpus outside of Neoverse V1 (256) and A64FX (512) have an
SVE vector length of 128, and in environments like Android (where no
mcpu option is common) we would expect all cpus to match. This patch
changes the default vector length to 128 with -mcpu=generic, to match
the most common case.
Commit: 8fb748b4a7c45b56c2e4f37c327fd88958ab3758
https://github.com/llvm/llvm-project/commit/8fb748b4a7c45b56c2e4f37c327fd88958ab3758
Author: Marina Taylor <marina_taylor at apple.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/include/llvm/Analysis/InlineCost.h
M llvm/lib/Analysis/InlineCost.cpp
A llvm/test/Transforms/Inline/AArch64/memcpy-constant-size.ll
A llvm/test/Transforms/PhaseOrdering/AArch64/memcpy-constant-size.ll
Log Message:
-----------
[Inliner] Don't count a call penalty for foldable __memcpy_chk and similar (#117876)
When the size is an appropriate constant, __memcpy_chk will turn into a
memcpy that gets folded away by InstCombine. Therefore this patch avoids
counting these as calls for purposes of inlining costs.
This is only really relevant on platforms whose headers redirect memcpy
to __memcpy_chk (such as Darwin). On platforms that use intrinsics,
memcpy and similar functions are already exempt from call penalties.
Commit: 77c2b005539c4b0c0e2b7edeefd5f57b95019bc9
https://github.com/llvm/llvm-project/commit/77c2b005539c4b0c0e2b7edeefd5f57b95019bc9
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
A .ci/metrics/Dockerfile
A .ci/metrics/metrics.py
A .ci/metrics/requirements.lock.txt
A .ci/metrics/requirements.txt
Log Message:
-----------
[CI] Upstream metrics script and container definition (#117461)
This patch includes the script that pulls information from Github and
pushes it to Grafana. This is currently running in the cluster and
pushes information to
https://llvm.grafana.net/public-dashboards/6a1c1969b6794e0a8ee5d494c72ce2cd.
This script is designed to accept other jobs relatively easily and can
be easily modified to look at other metrics.
Commit: be75a14207ab0dac6ad9f9097957f14a918ac611
https://github.com/llvm/llvm-project/commit/be75a14207ab0dac6ad9f9097957f14a918ac611
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateDeduction.cpp
A clang/test/SemaTemplate/template-args-deduction-aggregates.cpp
Log Message:
-----------
[Clang] fix crash due to incorrect argument position in merging deduced template arguments (#118041)
Fixes #113659
Commit: 9ebab700cde7e47bd7b6c3386529262369e8fa2c
https://github.com/llvm/llvm-project/commit/9ebab700cde7e47bd7b6c3386529262369e8fa2c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
A .github/workflows/build-metrics-container.yml
Log Message:
-----------
[Github] Add new workflow to build metrics container (#117462)
This patch adds a new Github Actions workflow to build the metrics
container and push it to the Github Container Registry.
Commit: 820403c4e04db1f4adc8528bec33d393a5be3856
https://github.com/llvm/llvm-project/commit/820403c4e04db1f4adc8528bec33d393a5be3856
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
M clang/test/Analysis/initializer.cpp
Log Message:
-----------
[analyzer] Never create Regions wrapping reference TypedValueRegions (NFCI) (#118096)
Like in the test case:
```c++
struct String {
String(const String &) {}
};
struct MatchComponent {
unsigned numbers[2];
String prerelease;
MatchComponent(MatchComponent const &) = default;
};
MatchComponent get();
void consume(MatchComponent const &);
MatchComponent parseMatchComponent() {
MatchComponent component = get();
component.numbers[0] = 10;
component.numbers[1] = 20;
return component; // We should have no stack addr escape warning here.
}
void top() {
consume(parseMatchComponent());
}
```
When calling `consume(parseMatchComponent())` the
`parseMatchComponent()` would return a copy of a temporary of
`component`. That copy would invoke the
`MatchComponent::MatchComponent(const MatchComponent &)` ctor.
That ctor would have a (reference typed) ParamVarRegion, holding the
location (lvalue) of the object we are about to copy (&component). So
far so good, but just before evaluating the binding operation for
initializing the `numbers` field of the temporary, we evaluate the
ArrayInitLoopExpr representing the by-value elementwise copy of the
array `component.numbers`. This is represented by a LazyCompoundVal,
because we (usually) don't just copy large arrays and bind many
individual direct bindings. Rather, we take a snapshot by using a LCV.
However, notice that the LCV representing this copy would look like
this:
lazyCompoundVal{ParamVarRegion{"reference param of cctor"}.numbers}
Notice that it refers to the numbers field of a reference. It would be
much better to desugar the reference to the actual object, thus it
should be: `lazyCompoundVal{component.numbers}`
Actually, when binding the result of the ArrayInitLoopExpr to the
`temp_object.numbers` in the compiler-generated member initializer of
the cctor, we should have two individual direct bindings because this is
a "small array":
```
binding &Element{temp_object.numbers, 0} <- loadFrom(&Element{component.numbers, 0})
binding &Element{temp_object.numbers, 1} <- loadFrom(&Element{component.numbers, 1})
```
Where `loadFrom(...)` would be:
```
loadFrom(&Element{component.numbers, 0}): 10 U32b
loadFrom(&Element{component.numbers, 1}): 20 U32b
```
So the store should look like this, after PostInitializer of
`temp_object.numbers`:
```
temp_object at offset 0: 10 U32b
temp_object at offset 32: 20 U32b
```
The lesson is that it's okay to have TypedValueRegions of references as
long as we don't form subregions of those. If we ever want to refer to a
subregion of a "reference" we actually meant to "desugar" the reference
and slice a subregion of the pointee of the reference instead.
Once this canonicalization is in place, we can also drop the special
handling of references in `ProcessInitializer`, because now reference
TypedValueRegions are eagerly desugared into their referee region when
forming a subregion of it.
There should be no practical differences, but there are of course bugs
that this patch may surface.
Commit: b5132b7d044a5bc83eba9b09bd158cd77a511403
https://github.com/llvm/llvm-project/commit/b5132b7d044a5bc83eba9b09bd158cd77a511403
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_two_calls.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
M llvm/test/CodeGen/SPIRV/instructions/ret-type.ll
A llvm/test/CodeGen/SPIRV/pointers/builtin-ret-reg-type.ll
A llvm/test/CodeGen/SPIRV/pointers/gep-types-1.ll
A llvm/test/CodeGen/SPIRV/pointers/gep-types-2.ll
A llvm/test/CodeGen/SPIRV/pointers/phi-chain-types.ll
M llvm/test/CodeGen/SPIRV/pointers/phi-valid-operand-types.ll
A llvm/test/CodeGen/SPIRV/pointers/type-deduce-via-store-load-args-rev.ll
M llvm/test/CodeGen/SPIRV/transcoding/OpGenericCastToPtr.ll
M llvm/test/CodeGen/SPIRV/transcoding/spirv-event-null.ll
A llvm/test/CodeGen/SPIRV/validate/sycl-hier-par-basic.ll
Log Message:
-----------
[SPIR-V] Improve type inference: fix types of return values in call lowering (#116609)
Goals of the PR are:
* to ensure that correct types are applied to virtual registers which
were used as return values in call lowering. A reproducer is attached as
a new test case, before the PR it fails because spirv-val considers
output invalid due to wrong result/operand types in OpPhi's;
* improve type inference by speeding up postprocessing of types: by
limiting iterations by checking what remains to process, and processing
each instruction just once for any number of operands with uncomplete
types;
* improve type inference by more accurate work with uncomplete types
(pass uncomplete property to dependent operands, ensure consistency of
uncomplete-types data structure);
* change processing order and add traversing of PHI nodes when type
inference apply instructions results to specify/update/cast operands
type (fixes an issue with OpPhi's result type mismatch with operand
types).
Commit: 2de2e7aa6f82ac283bc17945ca9750c01016a331
https://github.com/llvm/llvm-project/commit/2de2e7aa6f82ac283bc17945ca9750c01016a331
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M .github/workflows/build-metrics-container.yml
Log Message:
-----------
[Github] Fix build metrics container push (#118130)
This patch fixes a couple typos that were preventing the build metrics
container job from pushing the container to GHCR.
Commit: cbf495fd12ba08c3a8e10dbcd482df1bf80736ed
https://github.com/llvm/llvm-project/commit/cbf495fd12ba08c3a8e10dbcd482df1bf80736ed
Author: Reno Dakota <paparodeo at proton.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/unsupported-option.c
Log Message:
-----------
[Clang][Driver] report unsupported option error when link + compile in same process (#116476)
Fixes: https://github.com/llvm/llvm-project/issues/116278
This change updates clang to report unsupported option errors regardless
of the command line argument order.
When clang is invoked with a source file and without `-c` it will both
compile and link. When an unsupported option is also part of the command
line clang should generated an error. However, if the source file name
comes before an object file, eg: `-lc`, the error is ignored.
```
$ clang --target=x86_64 -lc hello.c -mhtm
clang: error: unsupported option '-mhtm' for target 'x86_64'
$ echo $?
1
```
but if `-lc` comes after `hello.c` the error is dropped
```
$ clang --target=x86_64 hello.c -mhtm -lc
$ echo $?
0
```
after this change clang will report the error regardless of the command
line argument order.
Commit: 0ad6be1927f89cef09aa5d0fb244873f687997c9
https://github.com/llvm/llvm-project/commit/0ad6be1927f89cef09aa5d0fb244873f687997c9
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
Log Message:
-----------
[SLPVectorizer, TargetTransformInfo, SystemZ] Improve SLP getGatherCost(). (#112491)
As vector element loads are free on SystemZ, this patch improves the cost
computation in getGatherCost() to reflect this.
getScalarizationOverhead() gets an optional parameter which can hold the actual
Values so that they in turn can be passed (by BasicTTIImpl) to
getVectorInstrCost().
SystemZTTIImpl::getVectorInstrCost() will now recognize a LoadInst and
typically return a 0 cost for it, with some exceptions.
Commit: 6bfb6d4092a284e1fcd135625c0e713d019f0572
https://github.com/llvm/llvm-project/commit/6bfb6d4092a284e1fcd135625c0e713d019f0572
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
Log Message:
-----------
[SmallPtrSet] Optimize contains (NFC) (#118092)
Instead of going through find_imp(), implement a specialized
contains_imp() that directly returns a boolean instead of a pointer that
needs to be compared to EndPointer().
This gives a compile-time improvement of around 0.2-0.3%.
Commit: 05ff6e7948df3c152982814ea2367c7b83138cea
https://github.com/llvm/llvm-project/commit/05ff6e7948df3c152982814ea2367c7b83138cea
Author: Fangrui Song <i at maskray.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/Symbols.cpp
M lld/test/ELF/invalid-eh-frame3.s
M lld/test/ELF/invalid-eh-frame6.s
M lld/test/ELF/tls.s
M lld/test/ELF/undef-multi.s
M lld/test/ELF/undef.s
Log Message:
-----------
[ELF] Use lower case offset in getObjMsg
to improve consistency with other diagnostics. While here, migrate to
use ELFSyncStream to drop toStr/getCtx uses and avoid string overhead.
Commit: ae9b91acc76e03a3c38e2f92b59308c508901817
https://github.com/llvm/llvm-project/commit/ae9b91acc76e03a3c38e2f92b59308c508901817
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M libcxx/docs/Status/Cxx2cIssues.csv
Log Message:
-----------
[libc++] Fix malformed CSV entry for C++26 LWG issue
Commit: 2dc0de753b6df83e35f3d98e0e6a26c95e3399c0
https://github.com/llvm/llvm-project/commit/2dc0de753b6df83e35f3d98e0e6a26c95e3399c0
Author: Brian Cain <bcain at quicinc.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Hexagon.cpp
Log Message:
-----------
[clang] recognize hexagon-*-ld.lld variants (#117338)
If we create a cross toolchain with a ${triple}-ld.lld symlink, clang
finds that symlink and when it uses it, it's not recognized as "lld".
Let's resolve that symlink and consider it when determining lld-ness.
For example, clang provides hexagon-link specific link arguments such as
`-mcpu=hexagonv65` and `-march=hexagon` when
hexagon-unknown-linux-musl-ld.lld is found. lld rejects this with the
following error:
hexagon-unknown-linux-musl-ld.lld: error: unknown emulation:
cpu=hexagonv65
Commit: 52690db47da36a739ee506d3b3a7457fb918dc1e
https://github.com/llvm/llvm-project/commit/52690db47da36a739ee506d3b3a7457fb918dc1e
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
Log Message:
-----------
[clang] Fix -Wdangling false negative regressions caused by 117315 (#118088)
A specialization declaration can have an attribute even if the primary
template does not, particularly when the specialization is instantiated
from an annotated using-alias declaration.
Fix #118064
Commit: 8ac2b77a11c9db9879557ce1c26e38628e1ef45f
https://github.com/llvm/llvm-project/commit/8ac2b77a11c9db9879557ce1c26e38628e1ef45f
Author: vabridgers <58314289+vabridgers at users.noreply.github.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/branch-clone.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/redundant-expression.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/alpha-core-identicalexpr.cpp
M clang/docs/ReleaseNotes.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
R clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp
R clang/test/Analysis/identical-expressions.cpp
Log Message:
-----------
[analyzer] Remove alpha.core.IdenticalExpr Checker (#114715)
This change removes the alpha.core.IdenticalExpr static analysis checker
since it's checks are present in the clang-tidy checks
misc-redundant-expression and bugprone-branch-clone. This check was
implemented as a static analysis check using AST matching, and since
alpha and duplicated in 2 clang-tidy checks may be removed.
Co-authored-by: Vince Bridgers <vince.a.bridgers at ericsson.com>
Commit: 666de79595dc2460b7abca0b99d79d058c10cadf
https://github.com/llvm/llvm-project/commit/666de79595dc2460b7abca0b99d79d058c10cadf
Author: Fangrui Song <i at maskray.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
Log Message:
-----------
[ELF] Move some ObjFile members to ELFFileBase to simplify getSrcMsg
Commit: f28e071dc075fd5591344bc5aabd7b298aaecf50
https://github.com/llvm/llvm-project/commit/f28e071dc075fd5591344bc5aabd7b298aaecf50
Author: Chris Apple <cja-private at pm.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
Log Message:
-----------
[rtsan] NFC: Fix style of some interceptors not using MAYBE (#118145)
There were a few interceptors that weren't using the newer MAYBE style -
fixed them up for uniform style.
Commit: b22cc5a650deb729f4a1f18206e14971616d07ee
https://github.com/llvm/llvm-project/commit/b22cc5a650deb729f4a1f18206e14971616d07ee
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn
Log Message:
-----------
[gn build] Port 8ac2b77a11c9
Commit: 9df63b2651b2435c02a7d825953ca2ddc65c778e
https://github.com/llvm/llvm-project/commit/9df63b2651b2435c02a7d825953ca2ddc65c778e
Author: Matthias Springer <me at m-sp.org>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.h
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Transforms/decompose-call-graph-types.mlir
M mlir/test/Transforms/test-legalizer.mlir
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[mlir][Transforms] Add 1:N `matchAndRewrite` overload (#116470)
This commit adds a new `matchAndRewrite` overload to `ConversionPattern`
to support 1:N replacements. This is the first of two main PRs that
merge the 1:1 and 1:N dialect conversion drivers.
The existing `matchAndRewrite` function supports only 1:1 replacements,
as can be seen from the `ArrayRef<Value>` parameter.
```c++
LogicalResult ConversionPattern::matchAndRewrite(
Operation *op, ArrayRef<Value> operands /*adaptor values*/,
ConversionPatternRewriter &rewriter) const;
```
This commit adds a `matchAndRewrite` overload that is called by the
dialect conversion driver. By default, this new overload dispatches to
the original 1:1 `matchAndRewrite` implementation. Existing
`ConversionPattern`s do not need to be changed as long as there are no
1:N type conversions or value replacements.
```c++
LogicalResult ConversionPattern::matchAndRewrite(
Operation *op, ArrayRef<ValueRange> operands /*adaptor values*/,
ConversionPatternRewriter &rewriter) const {
// Note: getOneToOneAdaptorOperands produces a fatal error if at least one
// ValueRange has 0 or more than 1 value.
return matchAndRewrite(op, getOneToOneAdaptorOperands(operands), rewriter);
}
```
The `ConversionValueMapping`, which keeps track of value replacements
and materializations, still does not support 1:N replacements. We still
rely on argument materializations to convert N replacement values back
into a single value. The `ConversionValueMapping` will be generalized to
1:N mappings in the second main PR.
Before handing the adaptor values to a `ConversionPattern`, all argument
materializations are "unpacked". The `ConversionPattern` receives N
replacement values and does not see any argument materializations. This
implementation strategy allows us to use the 1:N infrastructure/API in
`ConversionPattern`s even though some functionality is still missing in
the driver. This strategy was chosen to keep the sizes of the PRs
smaller and to make it easier for downstream users to adapt to API
changes.
This commit also updates the the "decompose call graphs" transformation
and the "sparse tensor codegen" transformation to use the new 1:N
`ConversionPattern` API.
Note for LLVM conversion: If you are using a type converter with 1:N
type conversion rules or if your patterns are performing 1:N
replacements (via `replaceOpWithMultiple` or
`applySignatureConversion`), conversion pattern applications will start
failing (fatal LLVM error) with this error message: `pattern 'name' does
not support 1:N conversion`. The name of the failing pattern is shown in
the error message. These patterns must be updated to the new 1:N
`matchAndRewrite` API.
Commit: 04ab599363eacc156e11238da9343c1d9d90db56
https://github.com/llvm/llvm-project/commit/04ab599363eacc156e11238da9343c1d9d90db56
Author: Qizhi Hu <836744285 at qq.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/return-const-ref-from-parameter.cpp
Log Message:
-----------
[clang-tidy] fix false positive in bugprone-return-const-ref-from-parameter (#117734)
Fix https://github.com/llvm/llvm-project/issues/115743
Commit: 1f13713dbb323d678c37efd5aa98a69e8f633b26
https://github.com/llvm/llvm-project/commit/1f13713dbb323d678c37efd5aa98a69e8f633b26
Author: Fangrui Song <i at maskray.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/Relocations.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Target.cpp
M lld/include/lld/Common/ErrorHandler.h
Log Message:
-----------
[ELF] Change getSrcMsg to use ELFSyncStream. NFC
Commit: 58389b220a9354ed6c34bdb9310a35165579c5e3
https://github.com/llvm/llvm-project/commit/58389b220a9354ed6c34bdb9310a35165579c5e3
Author: Matthias Springer <me at m-sp.org>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir] Fix build after #116470 (#118147)
This should have been part of #116470.
Commit: 10b98473e8f9e3886bd4a51966c755d760de14ed
https://github.com/llvm/llvm-project/commit/10b98473e8f9e3886bd4a51966c755d760de14ed
Author: Fangrui Song <i at maskray.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M lld/ELF/ICF.cpp
Log Message:
-----------
[ELF] Simplify --print-icf-sections
Commit: ee19eb3037c781361e6f82c524b500ed5f55be18
https://github.com/llvm/llvm-project/commit/ee19eb3037c781361e6f82c524b500ed5f55be18
Author: Fangrui Song <i at maskray.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/OutputSections.cpp
M lld/ELF/Writer.cpp
M lld/test/ELF/linkerscript/i386-sections-max-va-overflow.s
M lld/test/ELF/linkerscript/locationcountererr-arm-exidx.test
M lld/test/ELF/linkerscript/sections-max-va-overflow.s
Log Message:
-----------
[ELF] Change some upper-case utohexstr to lower-case to improve consistency
The convention is to use lower-case addresses.
Commit: b9ac390cc7ec208fc738a91540b070f499b292b8
https://github.com/llvm/llvm-project/commit/b9ac390cc7ec208fc738a91540b070f499b292b8
Author: antangelo <contact at antangelo.com>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-no-op-intrinsics.ll
Log Message:
-----------
[GISel] Add generic implementation for @llvm.expect.with.probability when optimizations are disabled (#117835)
Handle @llvm.expect.with.probability in GlobalISel in the same way
@llvm.expect is handled, passing the value through as-is. This can be
encountered if the intrinsic is used without optimizations, which would
otherwise transform it out.
Fixes #115411 for GlobalISel
Commit: 691e55643daa3470ff19b02a55e3e2503d2de0c9
https://github.com/llvm/llvm-project/commit/691e55643daa3470ff19b02a55e3e2503d2de0c9
Author: Fangrui Song <i at maskray.me>
Date: 2024-11-29 (Fri, 29 Nov 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
Log Message:
-----------
[Driver] BuildCompilation: remove unused BaseArg. NFC
setBaseArg, only used by -XArch_* options, are called in BuildJobs.
When processing --config and CL /clang:, BaseArg is always nullptr.
The unneeded parameter was introduced in https://reviews.llvm.org/D24933
Commit: a348f223cab54b21a7b1c38dec7bc6aa2f81c949
https://github.com/llvm/llvm-project/commit/a348f223cab54b21a7b1c38dec7bc6aa2f81c949
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/ARM/ARMInstrFormats.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/lib/Target/ARM/ARMInstrThumb2.td
M llvm/lib/Target/ARM/ARMInstrVFP.td
M llvm/test/CodeGen/ARM/add-like-or.ll
M llvm/test/CodeGen/ARM/arm-shrink-wrapping.ll
M llvm/test/CodeGen/ARM/atomic-64bit.ll
M llvm/test/CodeGen/ARM/atomic-ops-v8.ll
M llvm/test/CodeGen/ARM/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/ARM/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/ARM/atomicrmw_exclusive_monitor_ints.ll
M llvm/test/CodeGen/ARM/bfi.ll
M llvm/test/CodeGen/ARM/cmov_fp16.ll
M llvm/test/CodeGen/ARM/cse-call.ll
M llvm/test/CodeGen/ARM/cttz.ll
M llvm/test/CodeGen/ARM/fadd-select-fneg-combine.ll
M llvm/test/CodeGen/ARM/fcmp-xo.ll
M llvm/test/CodeGen/ARM/fpclamptosat.ll
M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
M llvm/test/CodeGen/ARM/fpscr-multi-use.ll
M llvm/test/CodeGen/ARM/fptoi-sat-store.ll
M llvm/test/CodeGen/ARM/fptosi-sat-scalar.ll
M llvm/test/CodeGen/ARM/fptoui-sat-scalar.ll
M llvm/test/CodeGen/ARM/funnel-shift-rot.ll
M llvm/test/CodeGen/ARM/funnel-shift.ll
M llvm/test/CodeGen/ARM/ifcvt1.ll
M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
M llvm/test/CodeGen/ARM/neon_vabd.ll
M llvm/test/CodeGen/ARM/overflow-intrinsic-optimizations.ll
M llvm/test/CodeGen/ARM/sadd_sat.ll
M llvm/test/CodeGen/ARM/sadd_sat_plus.ll
M llvm/test/CodeGen/ARM/select.ll
M llvm/test/CodeGen/ARM/select_const.ll
M llvm/test/CodeGen/ARM/shift-i64.ll
M llvm/test/CodeGen/ARM/ssub_sat.ll
M llvm/test/CodeGen/ARM/ssub_sat_plus.ll
M llvm/test/CodeGen/ARM/sub-cmp-peephole.ll
M llvm/test/CodeGen/ARM/uadd_sat.ll
M llvm/test/CodeGen/ARM/uadd_sat_plus.ll
M llvm/test/CodeGen/ARM/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/ARM/umulo-64-legalisation-lowering.ll
M llvm/test/CodeGen/ARM/usub_sat.ll
M llvm/test/CodeGen/ARM/usub_sat_plus.ll
M llvm/test/CodeGen/ARM/vselect_imax.ll
M llvm/test/CodeGen/ARM/wide-compares.ll
M llvm/test/CodeGen/Thumb/arm_q15_to_q31.ll
M llvm/test/CodeGen/Thumb/select.ll
M llvm/test/CodeGen/Thumb/smul_fix_sat.ll
M llvm/test/CodeGen/Thumb/stack-guard-xo.ll
M llvm/test/CodeGen/Thumb/umul_fix_sat.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/arm_cmplx_dot_prod_f32.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/exitcount.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
M llvm/test/CodeGen/Thumb2/float-ops.ll
M llvm/test/CodeGen/Thumb2/mve-blockplacement.ll
M llvm/test/CodeGen/Thumb2/mve-doublereduct.ll
M llvm/test/CodeGen/Thumb2/mve-float16regloops.ll
M llvm/test/CodeGen/Thumb2/mve-float32regloops.ll
M llvm/test/CodeGen/Thumb2/mve-fmas.ll
M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
M llvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-gather-scatter-ptr-address.ll
M llvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
M llvm/test/CodeGen/Thumb2/mve-minmaxi.ll
M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
M llvm/test/CodeGen/Thumb2/mve-pred-ext.ll
M llvm/test/CodeGen/Thumb2/mve-pred-or.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vctpvpsel.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vselect.ll
M llvm/test/CodeGen/Thumb2/mve-pred-xor.ll
M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
M llvm/test/CodeGen/Thumb2/mve-vcmpf.ll
M llvm/test/CodeGen/Thumb2/mve-vcmpfr.ll
M llvm/test/CodeGen/Thumb2/mve-vcmpfz.ll
M llvm/test/CodeGen/Thumb2/mve-vmaxv-vminv-scalar.ll
M llvm/test/CodeGen/Thumb2/mve-vqdmulh.ll
M llvm/test/CodeGen/Thumb2/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/Thumb2/umulo-64-legalisation-lowering.ll
Log Message:
-----------
[ARM] Stop gluing ALU nodes to branches / selects (#116970)
Following #116547 and #116676, this PR changes the type of results and
operands of some nodes to accept / return a normal type instead of Glue.
Unfortunately, changing the result type of one node requires changing
the operand types of all potential consumer nodes, which in turn
requires changing the result types of all other possible producer nodes.
So this is a bulk change.
Pull Request: https://github.com/llvm/llvm-project/pull/116970
Commit: a8a494faab8af60754c4647dbb7b24bc86a80aab
https://github.com/llvm/llvm-project/commit/a8a494faab8af60754c4647dbb7b24bc86a80aab
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/lib/Support/SmallPtrSet.cpp
Log Message:
-----------
[SmallPtrSet] Remove SmallArray member (NFC) (#118099)
Currently SmallPtrSet stores CurArray and SmallArray, with the former
pointing to the latter in small representation. Instead, only use
CurArray and a separate IsSmall boolean.
Most of the implementation doesn't need the separate SmallArray member
-- we only need it for copy/move/swap operations, where we may switch
back from large to small representation. In those cases, we explicitly
pass down the pointer to SmallStorage.
This reduces the size of SmallPtrSet and improves compile-time.
Commit: 04cc492ec3e2792e3fa790750ff678baa90bd436
https://github.com/llvm/llvm-project/commit/04cc492ec3e2792e3fa790750ff678baa90bd436
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M libcxx/include/__configuration/availability.h
Log Message:
-----------
[libc++][NFC] Remove unused macros from <__configuration/availability.h>
Commit: 39209724e66a20080bdebc609a051dfa0eb6b49f
https://github.com/llvm/llvm-project/commit/39209724e66a20080bdebc609a051dfa0eb6b49f
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M llvm/lib/Support/YAMLTraits.cpp
M llvm/unittests/Support/YAMLIOTest.cpp
Log Message:
-----------
[YAML] Fix incorrect dash output in nested sequences (#116488)
Nested sequences could be defined but the YAML output was incorrect.
`Output::newLineCheck()` was not able to emit multiple dashes `- ` and
YAML parser sometimes didn't accept its output as the result.
This fixes for emitting corresponding dashes for consecutive
`inSeqFirstElement`, but suppresses emission to the top
`inSeqFirstElement`.
This also fixes for emitting flow elements onto nested sequences.
Commit: 1c702d38540dd8bad50f22947b71769b4d0c1202
https://github.com/llvm/llvm-project/commit/1c702d38540dd8bad50f22947b71769b4d0c1202
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/nssw-predicate-implied.ll
Log Message:
-----------
[SCEV] Add tests where one wrap predicate implies another.
Commit: f89fa238faa6a63168997a8a1d03c15b71da8080
https://github.com/llvm/llvm-project/commit/f89fa238faa6a63168997a8a1d03c15b71da8080
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-func.cpp
Log Message:
-----------
[clang-tidy][use-internal-linkage]fix false positives for global overloaded operator new and operator delete (#117945)
Commit: 4148aa63e2285ec7198c67d9b231b9097076ba8e
https://github.com/llvm/llvm-project/commit/4148aa63e2285ec7198c67d9b231b9097076ba8e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
A llvm/utils/merge-json.py
M runtimes/CMakeLists.txt
Log Message:
-----------
[Reland][Runtimes] Merge 'compile_commands.json' files from runtimes build (#116303)
Summary:
When building a project in a runtime mode, the compilation database is a
separate CMake invocation. So its `compile_commands.json` file will be
placed elsewhere in the `runtimes/runtime-bins` directory. This is
somewhat annoying for ongoing development when a runtimes build is
necessary. This patch adds some CMake magic to merge the two files.
Fixed issue w/ standalone runtimes build by checking if the LLVM src and
CMake src are the same.
Commit: 2e30df740ef0b9f8edb7075768540ce08678023d
https://github.com/llvm/llvm-project/commit/2e30df740ef0b9f8edb7075768540ce08678023d
Author: Jinsong Ji <jinsong.ji at intel.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
Log Message:
-----------
[TableGen] Fix validateOperandClass for non Phyical Reg (#118146)
https://github.com/llvm/llvm-project/commit/b71704436e61
Rewrote the register operands handling,
but the Table only contains physical regs, we will SEGV when there are
non physical regs.
---------
Co-authored-by: Sergei Barannikov <barannikov88 at gmail.com>
Commit: 9a0f25158c2eff539de1efbd55de71e711135db7
https://github.com/llvm/llvm-project/commit/9a0f25158c2eff539de1efbd55de71e711135db7
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/CodeGen/AArch64/selectopt-cast.ll
Log Message:
-----------
[SelectOpt] Support ADD and SUB with zext operands. (#115489)
Extend the support for implicit selects in the form of OR with a ZExt
operand to support ADD and SUB binops as well. They similarly can form
implicit selects which can be profitable to convert back the branches.
PR: https://github.com/llvm/llvm-project/pull/115489
Commit: 92ba7e397377b8005206cb01a2052a750780827e
https://github.com/llvm/llvm-project/commit/92ba7e397377b8005206cb01a2052a750780827e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/bitop3.ll
Log Message:
-----------
AMDGPU/GlobalISel: Do not try to form v_bitop3_b32 for SGPR results (#117940)
Commit: 1c7e4074b1efe7c3c9110f1d116b16f50fce9c88
https://github.com/llvm/llvm-project/commit/1c7e4074b1efe7c3c9110f1d116b16f50fce9c88
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-11-30 (Sat, 30 Nov 2024)
Changed paths:
M lldb/unittests/debugserver/RNBSocketTest.cpp
Log Message:
-----------
[lldb] Fix warning: 'sprintf' is deprecated in RNBSocketTest
Fixes warning: 'sprintf' is deprecated: This function is provided for
compatibility reasons only. Due to security concerns inherent in the
design of sprintf(3), it is highly recommended that you use snprintf(3)
instead.
Commit: 6568ceb9fa1c49383b2fa102a04fd8fd3af01491
https://github.com/llvm/llvm-project/commit/6568ceb9fa1c49383b2fa102a04fd8fd3af01491
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
A llvm/test/Transforms/CodeGenPrepare/X86/pr118172.ll
Log Message:
-----------
[CodeGenPrepare] Drop nsw flags in `optimizeLoadExt` (#118180)
Alive2: https://alive2.llvm.org/ce/z/pMcD7q
Closes https://github.com/llvm/llvm-project/issues/118172.
Commit: 017c75bfacdfa25594f8212a427627cff7aa98f3
https://github.com/llvm/llvm-project/commit/017c75bfacdfa25594f8212a427627cff7aa98f3
Author: Kai Sasaki <lewuathe at gmail.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir] Fix typo in test vector transform pass descriptions (#118194)
Fix some typos in the description of vector transform passes.
Commit: 6881c6d2a6ef2b9f1736afb124b2486d6b8bc603
https://github.com/llvm/llvm-project/commit/6881c6d2a6ef2b9f1736afb124b2486d6b8bc603
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
A llvm/test/MC/RISCV/xqcia-invalid.s
A llvm/test/MC/RISCV/xqcia-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqcia (Arithmetic) extension (#118113)
This extension adds 11 instructions that perform integer arithmetic.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/latest
This patch adds assembler only support.
Commit: 94df95de6bab20930c1a77bc785221ff2f670dba
https://github.com/llvm/llvm-project/commit/94df95de6bab20930c1a77bc785221ff2f670dba
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr94546.ll
Log Message:
-----------
[TTI][X86] getShuffleCosts - for SK_PermuteTwoSrc, if the masks are known to be "inlane" no need to scale the costs by worst-case legalization (#117999)
SK_PermuteTwoSrc legalization has to assume any of the legalised source registers could be referenced in split shuffles, but if we already know that each 128-bit lane only references elements from the same lane of the source operands, then this scaling won't occur.
Hopefully this can help with #113356 without us having to get full processShuffleMasks canonicalization finished first.
Commit: f7ef0721d60f85e1f699f8d1b83d4402ae19b122
https://github.com/llvm/llvm-project/commit/f7ef0721d60f85e1f699f8d1b83d4402ae19b122
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
A llvm/test/Analysis/ScalarEvolution/pr117133.ll
A llvm/test/Transforms/IndVarSimplify/pr117133.ll
Log Message:
-----------
[SCEV] Do not allow refinement in the rewriting of BEValue (#117152)
See the following case:
```
; bin/opt -passes="print<scalar-evolution>" test.ll --disable-output
define i32 @widget() {
b:
br label %b1
b1: ; preds = %b5, %b
%phi = phi i32 [ 0, %b ], [ %udiv6, %b5 ]
%phi2 = phi i32 [ 1, %b ], [ %add, %b5 ]
%icmp = icmp eq i32 %phi, 0
br i1 %icmp, label %b3, label %b8
b3: ; preds = %b1
%udiv = udiv i32 10, %phi2
%urem = urem i32 %udiv, 10
%icmp4 = icmp eq i32 %urem, 0
br i1 %icmp4, label %b7, label %b5
b5: ; preds = %b3
%udiv6 = udiv i32 %phi2, 0
%add = add i32 %phi2, 1
br label %b1
b7: ; preds = %b3
ret i32 5
b8: ; preds = %b1
ret i32 7
}
```
```
%phi2 = phi i32 [ 1, %b ], [ %add, %b5 ] --> {1,+,1}<nuw><nsw><%b1>
%udiv6 = udiv i32 %phi2, 0 --> ({1,+,1}<nuw><nsw><%b1> /u 0)
%phi = phi i32 [ 0, %b ], [ %udiv6, %b5 ] --> ({0,+,1}<nuw><nsw><%b1> /u 0)
```
`ScalarEvolution::createAddRecFromPHI` gives a wrong SCEV result for
`%phi`:
https://github.com/llvm/llvm-project/blob/d7d6fb1804415b0f3e7f1cc9290bfb3d711cb707/llvm/lib/Analysis/ScalarEvolution.cpp#L5926-L5950
It converts `phi(0, ({1,+,1}<nuw><nsw><%b1> /u 0))` into `phi(0 / 0,
({1,+,1}<nuw><nsw><%b1> /u 0))`. Then it simplifies the expr into
`{0,+,1}<nuw><nsw><%b1> /u 0`.
As we did in
https://github.com/llvm/llvm-project/commit/acd700a24b6f767413db3d525e06d03e4245aa40,
this patch disallows udiv simplification if we cannot prove that the
denominator is a well-defined non-zero value.
Fixes https://github.com/llvm/llvm-project/issues/117133.
Commit: 22417ec6cca0ed8ccecb0c2b77011e591378fd2a
https://github.com/llvm/llvm-project/commit/22417ec6cca0ed8ccecb0c2b77011e591378fd2a
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/codeview-column-info.c
Log Message:
-----------
[Driver] Do not add gno-column-info when using sampling PGO (#117954)
Column info is important for sampling PGO to generate/load profile file.
On windows, it will be automatically added when using -gdwarf to
generate
profile file. It should also be generated when fprofile-sample-use= is
used.
Commit: 1a3eace82a885fca01a70472b3816007dbee9d9f
https://github.com/llvm/llvm-project/commit/1a3eace82a885fca01a70472b3816007dbee9d9f
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
Log Message:
-----------
[InstCombine] Fold `umax(X, C) + -C` into `usub.sat(X, C)` (#118195)
Alive2: https://alive2.llvm.org/ce/z/oSWe5S
Closes https://github.com/llvm/llvm-project/issues/118155
Commit: 4a074330c6d587be51494f651f539c8055be201c
https://github.com/llvm/llvm-project/commit/4a074330c6d587be51494f651f539c8055be201c
Author: Chris Apple <cja-private at pm.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[rtsan] Intercept various file system functions (#118183)
Adds interceptors for
* chmod
* fchmod
* mkdir
* rmdir
* umask
Commit: 82ed9c0319c9f0373bcb633a03ce6d35ebac3661
https://github.com/llvm/llvm-project/commit/82ed9c0319c9f0373bcb633a03ce6d35ebac3661
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
Log Message:
-----------
[clang][bytecode][NFC] Remove APValue Result argument where unnecessary (#118199)
This is unneeded in almost all circumstances. We only return an APValue
back to clang when the evaluation is finished, and that is always done
by an EvalEmitter - which has its own implementation of the Ret
instructions.
Commit: 31bde711c4098b3136edd1cb92dd4e0cc1d4d179
https://github.com/llvm/llvm-project/commit/31bde711c4098b3136edd1cb92dd4e0cc1d4d179
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Support __builtin_reduce_add (#117672)
Commit: 77767986ed423f868805d8ee9652f6dcc85c6adc
https://github.com/llvm/llvm-project/commit/77767986ed423f868805d8ee9652f6dcc85c6adc
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[LV] Use IsaPred in a few more places (NFC).
Simplifies the code slightly by removing explicit lambdas.
Commit: 9becc4a3c966d46b95ddfcf856b3c433c030db1e
https://github.com/llvm/llvm-project/commit/9becc4a3c966d46b95ddfcf856b3c433c030db1e
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
Log Message:
-----------
[ELF] ObjFile::parse: check EM_AARCH64 for SHT_AARCH64_MEMTAG_GLOBAL_STATIC
and reorder sh_type checks to make SHT_PROGBITS/SHT_GROUP fast.
Commit: 2a5e1da57a42fa2fc081bbc11970871a1eecb3b3
https://github.com/llvm/llvm-project/commit/2a5e1da57a42fa2fc081bbc11970871a1eecb3b3
Author: Martin Storsjö <martin at martin.st>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/ARM/ARMInstrFormats.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/lib/Target/ARM/ARMInstrThumb2.td
M llvm/lib/Target/ARM/ARMInstrVFP.td
M llvm/test/CodeGen/ARM/add-like-or.ll
M llvm/test/CodeGen/ARM/arm-shrink-wrapping.ll
M llvm/test/CodeGen/ARM/atomic-64bit.ll
M llvm/test/CodeGen/ARM/atomic-ops-v8.ll
M llvm/test/CodeGen/ARM/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/ARM/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/ARM/atomicrmw_exclusive_monitor_ints.ll
M llvm/test/CodeGen/ARM/bfi.ll
M llvm/test/CodeGen/ARM/cmov_fp16.ll
M llvm/test/CodeGen/ARM/cse-call.ll
M llvm/test/CodeGen/ARM/cttz.ll
M llvm/test/CodeGen/ARM/fadd-select-fneg-combine.ll
M llvm/test/CodeGen/ARM/fcmp-xo.ll
M llvm/test/CodeGen/ARM/fpclamptosat.ll
M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
M llvm/test/CodeGen/ARM/fpscr-multi-use.ll
M llvm/test/CodeGen/ARM/fptoi-sat-store.ll
M llvm/test/CodeGen/ARM/fptosi-sat-scalar.ll
M llvm/test/CodeGen/ARM/fptoui-sat-scalar.ll
M llvm/test/CodeGen/ARM/funnel-shift-rot.ll
M llvm/test/CodeGen/ARM/funnel-shift.ll
M llvm/test/CodeGen/ARM/ifcvt1.ll
M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
M llvm/test/CodeGen/ARM/neon_vabd.ll
M llvm/test/CodeGen/ARM/overflow-intrinsic-optimizations.ll
M llvm/test/CodeGen/ARM/sadd_sat.ll
M llvm/test/CodeGen/ARM/sadd_sat_plus.ll
M llvm/test/CodeGen/ARM/select.ll
M llvm/test/CodeGen/ARM/select_const.ll
M llvm/test/CodeGen/ARM/shift-i64.ll
M llvm/test/CodeGen/ARM/ssub_sat.ll
M llvm/test/CodeGen/ARM/ssub_sat_plus.ll
M llvm/test/CodeGen/ARM/sub-cmp-peephole.ll
M llvm/test/CodeGen/ARM/uadd_sat.ll
M llvm/test/CodeGen/ARM/uadd_sat_plus.ll
M llvm/test/CodeGen/ARM/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/ARM/umulo-64-legalisation-lowering.ll
M llvm/test/CodeGen/ARM/usub_sat.ll
M llvm/test/CodeGen/ARM/usub_sat_plus.ll
M llvm/test/CodeGen/ARM/vselect_imax.ll
M llvm/test/CodeGen/ARM/wide-compares.ll
M llvm/test/CodeGen/Thumb/arm_q15_to_q31.ll
M llvm/test/CodeGen/Thumb/select.ll
M llvm/test/CodeGen/Thumb/smul_fix_sat.ll
M llvm/test/CodeGen/Thumb/stack-guard-xo.ll
M llvm/test/CodeGen/Thumb/umul_fix_sat.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/arm_cmplx_dot_prod_f32.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/exitcount.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
M llvm/test/CodeGen/Thumb2/float-ops.ll
M llvm/test/CodeGen/Thumb2/mve-blockplacement.ll
M llvm/test/CodeGen/Thumb2/mve-doublereduct.ll
M llvm/test/CodeGen/Thumb2/mve-float16regloops.ll
M llvm/test/CodeGen/Thumb2/mve-float32regloops.ll
M llvm/test/CodeGen/Thumb2/mve-fmas.ll
M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
M llvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-gather-scatter-ptr-address.ll
M llvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
M llvm/test/CodeGen/Thumb2/mve-minmaxi.ll
M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
M llvm/test/CodeGen/Thumb2/mve-pred-ext.ll
M llvm/test/CodeGen/Thumb2/mve-pred-or.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vctpvpsel.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vselect.ll
M llvm/test/CodeGen/Thumb2/mve-pred-xor.ll
M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
M llvm/test/CodeGen/Thumb2/mve-vcmpf.ll
M llvm/test/CodeGen/Thumb2/mve-vcmpfr.ll
M llvm/test/CodeGen/Thumb2/mve-vcmpfz.ll
M llvm/test/CodeGen/Thumb2/mve-vmaxv-vminv-scalar.ll
M llvm/test/CodeGen/Thumb2/mve-vqdmulh.ll
M llvm/test/CodeGen/Thumb2/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/Thumb2/umulo-64-legalisation-lowering.ll
Log Message:
-----------
Revert "[ARM] Stop gluing ALU nodes to branches / selects" (#118232)
Reverts llvm/llvm-project#116970.
This change broke Wine compiled for armv7, causing segfaults when
starting Wine. See llvm/llvm-project#116970 for more detailed discussion
about the issue.
Commit: 603d41ab7b4078a00a5d3b899d3b9d14eea2d8ff
https://github.com/llvm/llvm-project/commit/603d41ab7b4078a00a5d3b899d3b9d14eea2d8ff
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M lld/ELF/InputSection.cpp
Log Message:
-----------
[ELF] decompress: remove mutex
decompress() is in the parallel code path splitIntoPieces
and we should avoid mutex.
Commit: a09df64f406be162b0bd096dbe2466603b7a4f29
https://github.com/llvm/llvm-project/commit/a09df64f406be162b0bd096dbe2466603b7a4f29
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
Log Message:
-----------
[ELF] postParse: remove some branches in the fast path
Commit: 73f087b3318a8f887cd867f27608f693fee6dc7b
https://github.com/llvm/llvm-project/commit/73f087b3318a8f887cd867f27608f693fee6dc7b
Author: antangelo <contact at antangelo.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
R llvm/test/CodeGen/Generic/builtin-expect-with-probability.ll
M llvm/test/CodeGen/X86/fast-isel-expect.ll
Log Message:
-----------
[NFC][SelectionDAG] Replace generic @llvm.expect.with.probability codegen test with X86 test (#117848)
Adds test case for X86 to check that the output of
@llvm.expect.with.probability's generic lowering is reasonable. This
replaces a generic test which only asserts that llc does not crash.
Commit: 574f64ca61d252dbcf98621e056ab02b93d928bc
https://github.com/llvm/llvm-project/commit/574f64ca61d252dbcf98621e056ab02b93d928bc
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/include/llvm/Support/TimeProfiler.h
Log Message:
-----------
[TimeProfiler] Remove unneeded check
Commit: 92a4b443260ccf9237b873850a9b511fdcffd79a
https://github.com/llvm/llvm-project/commit/92a4b443260ccf9237b873850a9b511fdcffd79a
Author: Abdul Raheem <abdulraheembeigh at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
Log Message:
-----------
[MLIR][NFC] Fixed a typo of member variable static_basis (#117678)
-- Fixed a typo of member variable static_basis of
AffineDelinearizeIndexOp operation in AffineOps.td
Signed-off: Abdul Raheem Beigh <abdulraheembeigh at gmail.com>
Commit: a4c3683b665c6ac875b4821f5c6a881fdf5fef70
https://github.com/llvm/llvm-project/commit/a4c3683b665c6ac875b4821f5c6a881fdf5fef70
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M mlir/include/mlir/Interfaces/DestinationStyleOpInterface.td
Log Message:
-----------
[mlir][NFC] Fix typo. (#118163)
Fixes https://github.com/llvm/llvm-project/issues/117222.
Commit: 427fb5cc5ac34414c4682c90d3db0c63c5a1b227
https://github.com/llvm/llvm-project/commit/427fb5cc5ac34414c4682c90d3db0c63c5a1b227
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
Log Message:
-----------
[ORC] Track all dependencies on symbols that aren't Ready yet.
AsynchronousSymbolQuery tracks the symbols that it depends on in order to (1)
detach the query in the event of a failure, and (2) report those dependencies
to clients of the ExecutionSession::lookup method (via the RegisterDependencies
argument). Previously we tracked only dependencies on symbols that didn't meet
the required state (the only symbols that the query needs to be attached to),
but this is insufficient to report all necessary dependencies to lookup clients.
E.g. A lookup requiring SymbolState::Resolved where some matched symbol is
already Resolved but not yet Emitted or Ready would result in the dependency on
that symbol not being reported, which could result in illegal access in
concurrent JIT setups. (This bug was discovered by @mikaoP on discord with a
simple concurrent JIT setup).
This patch tracks and reports all dependencies on symbols that aren't Ready yet,
correcting the under-reporting issue. AsynchronousSymbolQuery::detach is updated
to stop asserting that all depended-upon symbols have a query attached.
Commit: ed7a8f15564f11ce8ceabaa925a26842302b8450
https://github.com/llvm/llvm-project/commit/ed7a8f15564f11ce8ceabaa925a26842302b8450
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M offload/test/mapping/map_both_pointer_pointee.c
M offload/test/mapping/power_of_two_alignment.c
Log Message:
-----------
[NFC][Offload] Correct the compile command of two C test files (#118243)
The compile command for the two C test files are `compilexx`, which is
actually
for C++ compilation.
Commit: 8cb44859cc31929521c09fc6a8add66d53db44de
https://github.com/llvm/llvm-project/commit/8cb44859cc31929521c09fc6a8add66d53db44de
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
R offload/test/mapping/power_of_two_alignment.c
A offload/test/mapping/power_of_two_alignment.cpp
Log Message:
-----------
FIX: Fix test failure in offload/test/mapping/power_of_two_alignment.c
A C file with `template` in it. Awesome.
Commit: c4a1e0efe6b0767dfb5861a7e8814d7db0c0de8a
https://github.com/llvm/llvm-project/commit/c4a1e0efe6b0767dfb5861a7e8814d7db0c0de8a
Author: Richard Trieu <57020969+Weverything at users.noreply.github.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M clang/lib/AST/ASTDiagnostic.cpp
M clang/test/Misc/diag-template-diffing-cxx98.cpp
Log Message:
-----------
[clang] Remove redundant integer values in template type diffing
Look through SubstNonTypeTemplateParmExpr to find an IntegerLiteral
node when attempting to determine if extra info is printed via
the aka mechanism. This will avoid printing types such as
"array<5 aka 5>" and will only show "array<5>".
Commit: a9ad9e27caba2153b82fb3029694bfadaa5803cb
https://github.com/llvm/llvm-project/commit/a9ad9e27caba2153b82fb3029694bfadaa5803cb
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELFRelocs/AArch64.def
M llvm/test/tools/llvm-readobj/ELF/reloc-types-aarch64.test
Log Message:
-----------
[PAC][llvm-readobj][AArch64] Move PAuth GOT relocs out of private space (#118214)
Apply change from the spec
https://github.com/ARM-software/abi-aa/pull/300
Commit: 010317e1731d76b91c00ed1241583e518380d65f
https://github.com/llvm/llvm-project/commit/010317e1731d76b91c00ed1241583e518380d65f
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/use-internal-linkage.rst
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-module.cpp
M clang/docs/LibASTMatchersReference.html
M clang/docs/ReleaseNotes.rst
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
Log Message:
-----------
[clang-tidy][use-internal-linkage]fix false positives for ExportDecl (#117901)
Fixed: #97190
Commit: 91f69b70e075a475b550e3ef832816c47311e2bd
https://github.com/llvm/llvm-project/commit/91f69b70e075a475b550e3ef832816c47311e2bd
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
[ORC] Remove redundant check from ObjectLinkingLayer.
Non-locally scoped symbols must have names.
Commit: 0a44b24d6697ee8542583960c4a4166fc805883c
https://github.com/llvm/llvm-project/commit/0a44b24d6697ee8542583960c4a4166fc805883c
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
A llvm/test/CodeGen/DirectX/group_memory_barrier_with_group_sync.ll
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DXIL] Add GroupMemoryBarrierWithGroupSync intrinsic (#114349)
fixes #112974
partially fixes #70103
An earlier version of this change was reverted so some issues could be fixed.
### Changes
- Added new tablegen based way of lowering dx intrinsics to DXIL ops.
- Added int_dx_group_memory_barrier_with_group_sync intrinsic in
IntrinsicsDirectX.td
- Added expansion for int_dx_group_memory_barrier_with_group_sync in
DXILIntrinsicExpansion.cpp`
- Added DXIL backend test case
### Related PRs
* [[clang][HLSL] Add GroupMemoryBarrierWithGroupSync intrinsic
#111883](https://github.com/llvm/llvm-project/pull/111883)
* [[SPIRV] Add GroupMemoryBarrierWithGroupSync intrinsic
#111888](https://github.com/llvm/llvm-project/pull/111888)
Commit: d9d656edd4d6d7ca1be5c2f2e0cca4d1ef773dd5
https://github.com/llvm/llvm-project/commit/d9d656edd4d6d7ca1be5c2f2e0cca4d1ef773dd5
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-01 (Sun, 01 Dec 2024)
Changed paths:
M lld/ELF/Symbols.cpp
Log Message:
-----------
[ELF] resolve LazySymbol: remove a branch in the fast path
Commit: dd0d9561b8945d4128814bd7eda1bc470a1552f7
https://github.com/llvm/llvm-project/commit/dd0d9561b8945d4128814bd7eda1bc470a1552f7
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
A clang/test/AST/ByteCode/altivec.c
M clang/test/AST/ByteCode/vectors.cpp
Log Message:
-----------
[clang][bytecode] Support vector-to-vector bitcasts (#118230)
Commit: 08c1a6b3e181c3af019b18489139bfe4b03d9d08
https://github.com/llvm/llvm-project/commit/08c1a6b3e181c3af019b18489139bfe4b03d9d08
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
Log Message:
-----------
Revert "[ORC] Track all dependencies on symbols that aren't Ready yet."
This reverts commit 427fb5cc5ac34414c4682c90d3db0c63c5a1b227 while I investigate
the bot failure in https://lab.llvm.org/buildbot/#/builders/95/builds/6835.
Commit: eaa6cc547e7300b122efbbaf8940ee9d15f7964c
https://github.com/llvm/llvm-project/commit/eaa6cc547e7300b122efbbaf8940ee9d15f7964c
Author: Shankhin <44582011+firestrike007 at users.noreply.github.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libc/src/__support/threads/linux/rwlock.h
Log Message:
-----------
Fixes #118231: Corrected spelling mistake in has_acitive_owner function (#118266)
Fixes #118231
- Updated the method name to `has_active_owner` in
`llvm-project/libc/src/__support/threads/linux/rwlock.h`
- Verified usage and updated all references to the method.
- Ran tests:
- `check-llvm-unit`
- `check-all`
Commit: 979a0356d4c90ec855be4f2d2f6687132cf10298
https://github.com/llvm/llvm-project/commit/979a0356d4c90ec855be4f2d2f6687132cf10298
Author: Veera <32646674+veera-sivarajan at users.noreply.github.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/test/CodeGen/attr-counted-by.c
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
A llvm/test/Transforms/InstCombine/canonicalize-const-to-bop.ll
M llvm/test/Transforms/InstCombine/minmax-fold.ll
M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
M llvm/test/Transforms/InstCombine/select.ll
M llvm/test/Transforms/InstCombine/unsigned_saturated_sub.ll
Log Message:
-----------
[InstCombine] Fold `X Pred C2 ? X BOp C1 : C2 BOp C1` to `min/max(X, C2) BOp C1` (#116888)
Fixes #82414.
General Proof: https://alive2.llvm.org/ce/z/ERjNs4
Proof for Tests: https://alive2.llvm.org/ce/z/K-934G
This PR transforms `select` instructions of the form `select (Cmp X C1)
(BOp X C2) C3` to `BOp (min/max X C1) C2` iff `C3 == BOp C1 C2`.
This helps in eliminating a noop loop in
https://github.com/rust-lang/rust/issues/123845 but does not improve
optimizations.
Commit: 7bbc049688a1586827d87ad8e2fc7cb3638ef2fc
https://github.com/llvm/llvm-project/commit/7bbc049688a1586827d87ad8e2fc7cb3638ef2fc
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-value-equivalence.ll
Log Message:
-----------
[InstCombine] Consolidate another fold into select value equivalence (#117746)
We had a separate fold that handled just the trivial case where we're
replacing exactly the argument of the select. Handle this in select
value equivalence by relaxing the infinite loop protection to allow a
replacement of a non-constant with a constant.
This also fixes https://github.com/llvm/llvm-project/issues/113301, as
the separate fold did not handle undef values correctly.
Commit: 770adc56097342d3478c1b3b6d3e67cdf6d2c93e
https://github.com/llvm/llvm-project/commit/770adc56097342d3478c1b3b6d3e67cdf6d2c93e
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/Sema/SemaAttr.cpp
M clang/test/AST/attr-lifetime-capture-by.cpp
Log Message:
-----------
[clang] Infer lifetime_capture_by for map's subscript operator. (#118078)
Commit: a545cf5c6da6decbde95287f95e1ffce40116d23
https://github.com/llvm/llvm-project/commit/a545cf5c6da6decbde95287f95e1ffce40116d23
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
A flang/test/HLFIR/eval_in_mem-codegen.fir
A flang/test/HLFIR/eval_in_mem.fir
M flang/test/HLFIR/invalid.fir
Log Message:
-----------
[flang][hlfir] add hlfir.eval_in_mem operation (#118067)
See HLFIROps.td change for the description of the operation.
The goal is to ease temporary storage elision for expression evaluation
(typically evaluating the RHS directly inside the LHS) for expressions
that do not have abtsractions in HLFIR and for which it is not clear
adding one would bring much. The case that is implemented in [the
following lowering
patch](https://github.com/llvm/llvm-project/pull/118070) is the array
call case, where adding a new hlfir.call would add complexity (needs to
deal with dispatch, inlining ....).
Commit: 8201926ec0a61ea182e3b25c23e3dbaae6036dbf
https://github.com/llvm/llvm-project/commit/8201926ec0a61ea182e3b25c23e3dbaae6036dbf
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/compare.ll
M llvm/test/Transforms/InstSimplify/icmp-monotonic.ll
Log Message:
-----------
[InstSimplify] Generalize simplification of icmps with monotonic operands (#69471)
InstSimplify currently folds patterns like `(x | y) uge x` and `(x & y)
ule x` to true. However, it cannot handle combinations of such
situations, such as `(x | y) uge (x & z)` etc.
To support this, recursively collect operands of monotonic instructions
(that preserve either a greater-or-equal or less-or-equal relationship)
and then check whether any of them match.
Fixes https://github.com/llvm/llvm-project/issues/69333.
Commit: 54fcf3ec26ad192e91b6ac924f6d3eb562e3647d
https://github.com/llvm/llvm-project/commit/54fcf3ec26ad192e91b6ac924f6d3eb562e3647d
Author: antangelo <contact at antangelo.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/lib/Parse/ParseDecl.cpp
M clang/test/CXX/drs/cwg722.cpp
A clang/test/Parser/cxx2c-oxford-variadic-comma.cpp
M clang/www/cxx_status.html
Log Message:
-----------
[clang] Implement P3176R1: The Oxford variadic comma (#117524)
Emit a deprecation warning when a variadic parameter in a
parameter-declaration-clause is not preceded by a comma for C++26.
Commit: 4851dbb8d6f1c00ad382ff4780293ca9a743c609
https://github.com/llvm/llvm-project/commit/4851dbb8d6f1c00ad382ff4780293ca9a743c609
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonPatterns.td
A llvm/test/CodeGen/Hexagon/addrmode-neg-offset.ll
Log Message:
-----------
[Hexagon] Use getSignedConstant for RoundTo8 XForm
To handle negative offset addrmodes correctly.
Fixes https://github.com/llvm/llvm-project/pull/117558#issuecomment-2510208764.
Commit: 98e747ba56b2f8b51a7c797a3f379d02c545c42b
https://github.com/llvm/llvm-project/commit/98e747ba56b2f8b51a7c797a3f379d02c545c42b
Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/test/CodeGen/AArch64/pure-scalable-args.c
M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.cpp
M clang/test/CodeGen/AArch64/sve-vls-arith-ops.c
M clang/test/CodeGen/AArch64/sve-vls-bitwise-ops.c
M clang/test/CodeGen/AArch64/sve-vls-compare-ops.c
M clang/test/CodeGen/AArch64/sve-vls-shift-ops.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-codegen.c
M clang/test/CodeGen/RISCV/rvv-vls-arith-ops.c
M clang/test/CodeGen/RISCV/rvv-vls-bitwise-ops.c
M clang/test/CodeGen/RISCV/rvv-vls-compare-ops.c
M clang/test/CodeGen/RISCV/rvv-vls-shift-ops.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-codegen.c
Log Message:
-----------
[clang] Use poison instead of undef as the placeholder when creating a new vector [NFC] (#117064)
Call `@llvm.vector.insert` with a `poison` vector when coercing a fixed
vector to a scalable vector with the same element type.
Commit: 7be501c1d3b3153e08603670873e1b3b700c9598
https://github.com/llvm/llvm-project/commit/7be501c1d3b3153e08603670873e1b3b700c9598
Author: BalĂĄzs KĂ©ri <balazs.keri at ericsson.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ASTImporter.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
[clang][ASTImporter] Allow import of similar friend template with different depth (#115734)
This fix applies to a case that occurs when the AST contains a friend
template that is contained within another template and this (outer)
template has specialization. (See the added test code in the commit.)
Commit: 9cbbf15db925c8d588b998487115a46250954dc1
https://github.com/llvm/llvm-project/commit/9cbbf15db925c8d588b998487115a46250954dc1
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
Log Message:
-----------
[AMDGPU] Only insert intrinsic declarations when needed (#117998)
Commit: 085e7d2b22876ebc03948a0690580e0189cddcc1
https://github.com/llvm/llvm-project/commit/085e7d2b22876ebc03948a0690580e0189cddcc1
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
R bolt/CODE_OWNERS.TXT
A bolt/Maintainers.txt
M llvm/Maintainers.md
Log Message:
-----------
[bolt] Move CODE_OWNERS.txt to Maintainers.txt (#118082)
To align with: https://llvm.org/docs/DeveloperPolicy.html#maintainers
I have not changed the format of the file, my only goal here is that the
project have a `bolt/Maintainers.*` so it is easy to find.
Commit: fec0eb4c3ef2a1fa2e0e413b0ea4871ee0bcebd1
https://github.com/llvm/llvm-project/commit/fec0eb4c3ef2a1fa2e0e413b0ea4871ee0bcebd1
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
R compiler-rt/CODE_OWNERS.TXT
A compiler-rt/Maintainers.txt
M llvm/Maintainers.md
Log Message:
-----------
[compiler-rt] Move CODE_OWNERS.txt to Maintainers.txt (#118086)
To align with https://llvm.org/docs/DeveloperPolicy.html#maintainers
No format change, I just want each project to have a `Maintainers.*`
file so it is easy to find.
Commit: df10f1c6f79a77e45e44c62974a186decb0f1f33
https://github.com/llvm/llvm-project/commit/df10f1c6f79a77e45e44c62974a186decb0f1f33
Author: Luke Lau <luke at igalia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV] Use getRISCVInstructionCost for split cost in mask reductions. NFC
This is effectively the same due to how the mask instructions have an
LMUL of 1 and cost of 1, but matches how we use LT.first elsewhere in
RISCVTargetTransformInfo.cpp by using it to multiply another
instruction cost.
Commit: 51003076ebc1ccc0cf339f9d96b2cfec84ab867c
https://github.com/llvm/llvm-project/commit/51003076ebc1ccc0cf339f9d96b2cfec84ab867c
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/unittests/Core/CMakeLists.txt
A bolt/unittests/Core/MemoryMaps.cpp
M llvm/utils/gn/secondary/bolt/unittests/Core/BUILD.gn
Log Message:
-----------
Reapply [BOLT] DataAggregator support for binaries with multiple text segments (#118023)
When a binary has multiple text segments, the Size is computed as the
difference of the last address of these segments from the BaseAddress.
The base addresses of all text segments must be the same.
Introduces flag 'perf-script-events' for testing, which allows passing
perf events without BOLT having to parse them by invoking 'perf script'.
The flag is used to pass a mock perf profile that has two memory
mappings for a mock binary that has two text segments. The mapping
size is updated as `parseMMapEvents` now processes all text segments.
Commit: 7a7a426188eea0b181738436205759e13ad6fd7b
https://github.com/llvm/llvm-project/commit/7a7a426188eea0b181738436205759e13ad6fd7b
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Analysis/LazyValueInfo.cpp
M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll
Log Message:
-----------
[LVI] Fix insertelement of constexpr
Bail out when evaluating an insertelement of a constant expression.
Unlike other ValueLattice kinds, these don't have implicit splat
semantics and we end up with type mismatches. If we actually wanted
to handle these, we should actually evaluate the insertion via
constant folding. I'm not bothering with that, as these should
get constant folded on construction already.
Commit: 5248e1d4e1ee950d1703ec57141257b02446dd67
https://github.com/llvm/llvm-project/commit/5248e1d4e1ee950d1703ec57141257b02446dd67
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/stack-hazard-windows.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
Log Message:
-----------
[AArch64] Fix frame-pointer offset with hazard padding (#118091)
The `-aarch64-stack-hazard-size=<val>` option disables register paring
(as the hazard padding may mean the offset is too large for STP/LDP).
This broke setting the frame-pointer offset, as the code to find the
frame record looked for a (FP, LR) register pair.
This patch resolves this by looking for FP, LR as two unpaired registers
when hazard padding is enabled.
Commit: ede570980a2534c4a21850777b92505c02924416
https://github.com/llvm/llvm-project/commit/ede570980a2534c4a21850777b92505c02924416
Author: LiqinWeng <liqin.weng at spacemit.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
Log Message:
-----------
[RISCV][TTI] Add llvm.vp.select into canSplatOperand. (#117982)
The second operand of llvm.vp.select is a splat operand , it can help
llvm.vp.select fold vv instructions to vx instructions.
Commit: fe1c4f0106fe4fd6d61c38ba46e71fda8f4d1573
https://github.com/llvm/llvm-project/commit/fe1c4f0106fe4fd6d61c38ba46e71fda8f4d1573
Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
Log Message:
-----------
[mlir][vector][nfc] Remove redundant "`"
Commit: 34d4cd8208b9378d5ec00f256d8ea898162430be
https://github.com/llvm/llvm-project/commit/34d4cd8208b9378d5ec00f256d8ea898162430be
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ItaniumMangle.cpp
A clang/test/CodeGenCXX/aarch64-mangle-sme-atts.cpp
Log Message:
-----------
[Clang][AArch64] Include SME attributes in the name mangling of function types (#114209)
Similar to arm_sve_vector_bits, the mangling of function types is
implemented as a pseudo template if there are any SME attributes
present, i.e.
`__SME_ATTRS<normal_function_type, sme_state>`
For example, the following function:
`void f(svint8_t (*fn)() __arm_streaming) { fn(); }`
would be mangled as:
`_Z1fP11__SME_ATTRSIFu10__SVInt8_tELj1EE`
See https://github.com/ARM-software/acle/pull/358
Commit: 541d5d911119d0268bc55fa1367ada5ef25f99c1
https://github.com/llvm/llvm-project/commit/541d5d911119d0268bc55fa1367ada5ef25f99c1
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
Log Message:
-----------
[clang][bytecode][NFC] Reject invalid FromTypes in emitBuiltinBitcast (#118274)
instead of silently accepting them and failing later.
Commit: 6f285d31159501050de5563b1a844a3e1ac79a03
https://github.com/llvm/llvm-project/commit/6f285d31159501050de5563b1a844a3e1ac79a03
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/zeroing-forms-fcvt-bfcvt.ll
Log Message:
-----------
[AArch64] Generate zeroing forms of certain SVE2.2 instructions (2/11) (#116828)
SVE2.2 introduces instructions with predicated forms with zeroing of
the inactive lanes. This allows in some cases to save a `movprfx` or
a `mov` instruction when emitting code for `_x` or `_z` variants of
intrinsics.
This patch adds support for emitting the zeroing forms of certain
`FCVT`, and `BFCVT` instructions.
Commit: 3348b4688f570d5be3180f80c888325958c37db7
https://github.com/llvm/llvm-project/commit/3348b4688f570d5be3180f80c888325958c37db7
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[X86][compiler-rt] Split CPU names even they have the same subtype (#118237)
Fixes: #118205
Commit: f8ce2e4bb38609033098714a467e25abe5b1f9d4
https://github.com/llvm/llvm-project/commit/f8ce2e4bb38609033098714a467e25abe5b1f9d4
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[Matrix] Only retrieve analyses if there are any matrix intrinsics (NFC)
Only request analyses if there are any matrix intrinics to avoid
computing them if there are no matrix intrinsics.
Commit: 50c66e52f8946bc66147f615b1beaffff620e69e
https://github.com/llvm/llvm-project/commit/50c66e52f8946bc66147f615b1beaffff620e69e
Author: David Green <david.green at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/concat-vector.ll
Log Message:
-----------
[AArch64] Add tests for concat(extract-high, extract-high). NFC
Commit: f5bc6b47e856ec4b44026bb82bfbe244afcc1d98
https://github.com/llvm/llvm-project/commit/f5bc6b47e856ec4b44026bb82bfbe244afcc1d98
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/test/Transforms/PhaseOrdering/SystemZ/sub-xor.ll
Log Message:
-----------
[PhaseOrdering] Remove -enable-matrix flag from sub-xor.ll test.
The test does not use matrix intrinsics, so does not need enable-matrix.
Commit: e6eac65ad6aa2c61475d65f13d6d938d0e3a7728
https://github.com/llvm/llvm-project/commit/e6eac65ad6aa2c61475d65f13d6d938d0e3a7728
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/test/CodeGen/ARM/2012-03-13-DAGCombineBug.ll
Log Message:
-----------
[ARM] 2012-03-13-DAGCombineBug.ll - regenerate checks
Commit: 9a34a4f8d668b72868fde3b6a58bb3a57d72c0c9
https://github.com/llvm/llvm-project/commit/9a34a4f8d668b72868fde3b6a58bb3a57d72c0c9
Author: dlav-sc <daniil.avdeev at syntacore.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbtest.py
Log Message:
-----------
[lldb] fix fd leak during lldb testsuite (#118093)
During lldb testing dotest.py opens files to dump testcase results, but
doesn't close them.
This patch makes necessary changes to fix the file descriptors leak.
Commit: 4930f69b78e215c60eb53e25596599c2f98b6564
https://github.com/llvm/llvm-project/commit/4930f69b78e215c60eb53e25596599c2f98b6564
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/pr50609.ll
Log Message:
-----------
[X86] canonicalizeShuffleWithOp - add initial shuffle(sint_to_fp(x)) -> sint_to_fp(shuffle(x)) handling
Another tentative step towards folding shuffles through conversion ops - initially limited to cases where the src/dst types are matching width.
Commit: 0611fdd32046c41647a7719252166033f7bce2f2
https://github.com/llvm/llvm-project/commit/0611fdd32046c41647a7719252166033f7bce2f2
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Add simple __builtin_memcpy implementation (#118278)
Not handling all the special- and error cases yet. Just making sure the
bitcast code can be used for this as well.
Commit: 16ec534989a7ec0f67b694c3b9b21914794d8aef
https://github.com/llvm/llvm-project/commit/16ec534989a7ec0f67b694c3b9b21914794d8aef
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll
Log Message:
-----------
[ValueTracking] Handle and/or of conditions in `computeKnownFPClassFromContext` (#118257)
Fix a typo introduced by
https://github.com/llvm/llvm-project/pull/83161.
This patch also supports decomposition of and/or expressions in
`computeKnownFPClassFromContext`.
Compile-time improvement:
http://llvm-compile-time-tracker.com/compare.php?from=688bb432c4b618de69a1d0e7807077a22f15762a&to=07493fc354b686f0aca79d6f817091a757bd7cd5&stat=instructions:u
Commit: c1dcf75a7cf8840ddf20b622148c4ab0c3b16943
https://github.com/llvm/llvm-project/commit/c1dcf75a7cf8840ddf20b622148c4ab0c3b16943
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_reduce_mul (#118287)
Commit: e48c7fe49f8575b7737d07ac5a71d1fc924d37f7
https://github.com/llvm/llvm-project/commit/e48c7fe49f8575b7737d07ac5a71d1fc924d37f7
Author: Devajith <devajith.valaparambil.sreeramaswamy at cern.ch>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/include/llvm/LineEditor/LineEditor.h
M llvm/lib/LineEditor/LineEditor.cpp
Log Message:
-----------
Reland '[lineeditor] Add `setHistorySize()` method for adjusting history size' (#115442)
Reland: https://github.com/llvm/llvm-project/pull/110092
Buildbot was failing due to an unused variable warning as there were 2
implementations (with and without libedit). Compared to last version,
wrap the variable inside the `#ifdef HAVE_LIBEDIT`.
Apologies for the oversight @vgvassilev
Commit: ccc471fe3eb825db76ec4248c4d0dfe447aa04b1
https://github.com/llvm/llvm-project/commit/ccc471fe3eb825db76ec4248c4d0dfe447aa04b1
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_reduce_and (#118289)
Commit: da23a8372cd37e1a6280e9e0519bc0be60e2c209
https://github.com/llvm/llvm-project/commit/da23a8372cd37e1a6280e9e0519bc0be60e2c209
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Support/FormattedStream.cpp
Log Message:
-----------
[FormattedStream] Add ASCII fast path (#117892)
Printing IR spends a large amount of time updating the column count via
generic UTF-8 APIs. Speed it up by adding a fast path for the common
printable ASCII case.
This makes `-print-on-crash -print-module-scope` about two times faster.
Commit: cbb49d4be676a251ca140db92aa2788dd5514569
https://github.com/llvm/llvm-project/commit/cbb49d4be676a251ca140db92aa2788dd5514569
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/test/Fir/target-rewrite-boxchar.fir
M flang/test/Fir/target.fir
Log Message:
-----------
[flang][fir] fix ABI bug 116844 (#118121)
Fix issue #116844.
The issue came from a look-up on the func.func for the sret attribute
when lowering fir.call with character arguments. This was broken because
the func.func may or may not have been rewritten when dealing with the
fir.call, but the lookup assumed it had not been rewritten yet. If the
func.func was rewritten and the result moved to a sret argument, the
call was lowered as if the character was meant to be the result, leading
to bad call code and an assert.
It turns out that the whole logic is actually useless since fir.boxchar
are never lowered as sret arguments, instead, lowering directly breaks
the character result into the first two `fir.ref<>, i64` arguments. So,
the sret case was actually never used, except in this bug.
Hence, instead of fixing the logic (probably by looking for argument
attributes on the call itself), just remove this logic that brings
unnecessary complexity.
Commit: c2950982fe481091df91a06e59ab8a86af71509e
https://github.com/llvm/llvm-project/commit/c2950982fe481091df91a06e59ab8a86af71509e
Author: A. Jiang <de34 at live.cn>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
Log Message:
-----------
[libc++] Add Wroclaw straw polls (#118116)
Commit: 2474cf7ad123ea14308293a2237e3552cddb1136
https://github.com/llvm/llvm-project/commit/2474cf7ad123ea14308293a2237e3552cddb1136
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/zeroing-forms-fcvtlt-fcvtx.ll
Log Message:
-----------
[AArch64] Generate zeroing forms of certain SVE2.2 instructions (3/11) (#116829)
SVE2.2 introduces instructions with predicated forms with zeroing of
the inactive lanes. This allows in some cases to save a `movprfx` or
a `mov` instruction when emitting code for `_x` or `_z` variants of
intrinsics.
This patch adds support for emitting the zeroing forms of certain
`FCVTLT`, and `FCVTX` instructions.
Commit: 94488445cdd1657d1363a4994393b193c291b2cc
https://github.com/llvm/llvm-project/commit/94488445cdd1657d1363a4994393b193c291b2cc
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
Log Message:
-----------
[flang][MLIR] Support delayed privatization for `wsloop` (PFT -> MLIR) (#118271)
Adds PFT to MLIR lowering for delayed privatization of `omp.wsloop` ops.
Lowering to LLVM IR will be added in a later PR.
Commit: cdbd22876b71acad9e5eeceadc0d8859e6e73b18
https://github.com/llvm/llvm-project/commit/cdbd22876b71acad9e5eeceadc0d8859e6e73b18
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-modifiers.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Parser/OpenMP/allocators-unparse.f90
M flang/test/Semantics/OpenMP/allocate-clause01.f90
M flang/test/Semantics/OpenMP/allocators01.f90
M flang/test/Semantics/OpenMP/allocators04.f90
M flang/test/Semantics/OpenMP/allocators05.f90
M flang/test/Semantics/OpenMP/allocators06.f90
M flang/test/Semantics/OpenMP/resolve06.f90
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp
Log Message:
-----------
[flang][OpenMP] Use new modifiers in ALLOCATE clause (#117627)
Again, this simplifies the semantic checks and lowering quite a bit.
Update the check for positive alignment to use a more informative
message, and to highlight the modifier itsef, not the whole clause.
Remove the checks for the allocator expression itself being positive:
there is nothing in the spec that says that it should be positive.
Remove the "simple" modifier from the AllocateT template, since both
simple and complex modifiers are the same thing, only differing in
syntax.
Commit: 61a58fc676297756519412ddc1dfab6a75207b70
https://github.com/llvm/llvm-project/commit/61a58fc676297756519412ddc1dfab6a75207b70
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
Log Message:
-----------
[flang] remove unused var after #118121 (#118295)
Fix https://lab.llvm.org/buildbot/#/builders/89/builds/11704
Commit: 39337ff2dc366fde83b07193b72c294a846c5959
https://github.com/llvm/llvm-project/commit/39337ff2dc366fde83b07193b72c294a846c5959
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk.gfx950.ll
M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
Log Message:
-----------
AMDGPU: Handle cvt_scale F32/F16->F4/F8 gfx950 hazard (#117844)
gfx950 SP changes doc says:
No 4 clk forwarding on opcodes that convert from
F32/F16->F8 or F32/F16->F4. Must insert a NOP or
instruction writing some other destination VREG
after a conversion to F4/F8 since it writes either
low/high half or bytes.
Co-authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>
Co-authored-by: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Commit: 1288f6d405768f57bf2d2fd5914c5a20f902f5d6
https://github.com/llvm/llvm-project/commit/1288f6d405768f57bf2d2fd5914c5a20f902f5d6
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_reduce_or (#118292)
Commit: eae30a240e34e1fd31b57096a1b8bdbd8b84352d
https://github.com/llvm/llvm-project/commit/eae30a240e34e1fd31b57096a1b8bdbd8b84352d
Author: Chris Apple <cja-private at pm.me>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
A compiler-rt/test/rtsan/syscall.cpp
Log Message:
-----------
[rtsan] Add syscall interceptor (#118250)
This is a complex one - `syscall` is used when people want to bypass
libc and make the call directly
However, this call:
* Has a variable amount of arguments (up to 6, typically)
* Has arguments that can be any type, (think of whatever arguments go in
to the libc call, or see more details here
https://syscalls.mebeim.net/?table=x86/64/x64/latest)
I've tried to put in a couple tests to ensure we aren't mucking with the
underlying functionality and they seem to be working.
Commit: b587b910d5b6fd27f4730ad933a8465528d6f5be
https://github.com/llvm/llvm-project/commit/b587b910d5b6fd27f4730ad933a8465528d6f5be
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_reduce_xor (#118299)
Commit: 03b5f8f0f0d10c412842ed04b90e2217cf071218
https://github.com/llvm/llvm-project/commit/03b5f8f0f0d10c412842ed04b90e2217cf071218
Author: Mats Petersson <mats.petersson at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
A flang/test/Lower/OpenMP/Todo/atomic-compare.f90
A flang/test/Parser/OpenMP/atomic-compare.f90
M flang/test/Parser/OpenMP/atomic-unparse.f90
A flang/test/Semantics/OpenMP/atomic-compare.f90
M flang/test/Semantics/OpenMP/atomic.f90
Log Message:
-----------
[flang][OpenMP]Add parsing and semantics support for ATOMIC COMPARE (#117032)
This adds a minimalistic implementation of parsing and semantics for the
ATOMIC COMPARE feature from OpenMP 5.1.
There is no lowering, just a TODO for that part. Some of the Semantics
is also just a comment explaining that more is needed.
Commit: 40fb74a8ff23c0ff042b5e80b330882b7a625e43
https://github.com/llvm/llvm-project/commit/40fb74a8ff23c0ff042b5e80b330882b7a625e43
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/mul.i16.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] V_MUL_LO_U16 true16 test (#118118)
This is a NFC. Update and eable V_MUL_LO_U16 codegen test for
true16/fake16 flow
Commit: aa7fe1c10e5d6d0d3aacdb345fed995de413e142
https://github.com/llvm/llvm-project/commit/aa7fe1c10e5d6d0d3aacdb345fed995de413e142
Author: Nathan Gauër <brioche at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Basic/AddressSpaces.h
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/DirectX.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/TCE.h
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
M clang/test/SemaTemplate/address_space-dependent.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
A llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
A llvm/test/CodeGen/SPIRV/pointers/variables-storage-class-vk.ll
M llvm/test/CodeGen/SPIRV/pointers/variables-storage-class.ll
Log Message:
-----------
[SPIR-V] Fixup storage class for global private (#116636)
Adds a new address spaces: `hlsl_private`. Variables with such address
space will be emitted with a `Private` storage class.
This is useful for variables global to a SPIR-V module, since up to now,
they were still emitted with a `Function` storage class, which is wrong.
---------
Signed-off-by: Nathan Gauër <brioche at google.com>
Commit: 4ad4d34a226043a5d594b261a9c2a50efd292a76
https://github.com/llvm/llvm-project/commit/4ad4d34a226043a5d594b261a9c2a50efd292a76
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/CXX/temp/temp.deduct.guide/p3.cpp
Log Message:
-----------
Revert [Clang] prevent errors for deduction guides using deduced type aliases (#118165)
Reverts https://github.com/llvm/llvm-project/pull/117450
---
Revert https://github.com/llvm/llvm-project/pull/117450 because the
prior behavior aligns with the standard - _`template-name`_ in the
_`simple-template-id`_ in the return type shall be the actual name of a
class template rather than some equivalent alias template. Details
https://github.com/llvm/llvm-project/issues/54909#issuecomment-2508418355.
Commit: 608f4ae113f94b0c4a9b3c944a2aa9f115a805b4
https://github.com/llvm/llvm-project/commit/608f4ae113f94b0c4a9b3c944a2aa9f115a805b4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Parser/OpenMP/bind-clause.f90
M flang/test/Parser/OpenMP/declare_target-device_type.f90
M flang/test/Parser/OpenMP/proc-bind.f90
M flang/test/Parser/OpenMP/target-loop-unparse.f90
Log Message:
-----------
[flang][OpenMP] Rename some `Type` members in OpenMP clauses (#117784)
The intent is to keep names in sync with the terminology from the OpenMP
spec:
```
OmpBindClause::Type -> Binding
OmpDefaultClause::Type -> DataSharingAttribute
OmpDeviceTypeClause::Type -> DeviceTypeDescription
OmpProcBindClause::Type -> AffinityPolicy
```
Add more comments with references to the OpenMP specs.
Commit: b27d97bef782a8405e80e7b9f60b44d0537f43b6
https://github.com/llvm/llvm-project/commit/b27d97bef782a8405e80e7b9f60b44d0537f43b6
Author: Andrzej WarzyĆski <andrzej.warzynski at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/invalid.mlir
Log Message:
-----------
[mlir][tensor] Add test for invalid tensor.unpack + update error msg (#118275)
Adds a new test for invalid `tensor.unpack` operations where the output
rank does not match the expected rank (input rank + num inner tile
sizes). For example:
```mlir
tensor.unpack %output
inner_dims_pos = [0, 1]
inner_tiles = [32, 16]
into %input : tensor<64x32x16xf32> -> tensor<256x128xf32>
```
In addition, updates the corresponding error message to make it more
informative:
BEFORE:
```mlir
error: packed rank must equal unpacked rank + tiling factors}
```
AFTER:
```mlir
error: packed rank != (unpacked rank + num tiling factors), got 3 != 4
```
Commit: b343f3f3faf5b732cc19c9c51d392389677477ce
https://github.com/llvm/llvm-project/commit/b343f3f3faf5b732cc19c9c51d392389677477ce
Author: DonĂĄt Nagy <donat.nagy at ericsson.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
Log Message:
-----------
[analyzer][NFC] Cleanup BranchNodeBuilder (#117898)
Previously `BranchNodeBuilder` had a machinery to mark the two possible
branches (true, false) as infeasible, but this was completely useless in
practice, because the `BranchNodeBuilder` objects where short-lived
local variables so the `markInfeasible()` calls did not affect any later
calls.
The only theoretical exception was that in `ExprEngine::processBranch`
the methods of `BranchNodeBuilder` were called within a `for` loop that
iterates over the nodes created by the `check::BranchCondition`
callbacks.
However, currently only two checkers listen to `check::BranchCondition`
and neither of them produces multiple out nodes. This is fortunate,
because if the `for` loop had multiple iterations, then the lingering
effects of `markInfeasible()` would have caused wildly incorrect
behavior.
_For example, let's assume that a hypothetical `check::BranchCondition`
callback transitions to two different states, and the condition
expression happens to be true in the first and false in the second. In
this situation the first iteration of the loop would mark the false
branch as 'infeasible' and then in the second iteration the analyzer
would skip creating the transition to the false branch (from the state
where that is the 'right' path forward)._
After removing `markInfeasible()`, it became clear that the
`isFeasible()` calls in `ExprEngine::processBranch` are redundant
because they only guarded a `generateNode` call -- which immediately
calls `isFeasible()` and does nothing on an infeasible branch.
At this point in the refactoring the only code writing the feasibility
data members is their initialization in the constructors of
`BranchNodeBuilder` and the only code reading them is the check at the
beginning of `BranchNodeBuilder::generateNode`, so it was
straightforward to remove them completely and simplify the logic of
`generateNode()` to let it directly check the nullness of the
`CFGBlock*` pointer that it wants to use.
Finally, after these changes it became clear that in
`ExprEngine::processBranch` the `else` branch
(corresponding to the case when `assumeCondition` fails) is equivalent
to the "normal" case, so I eliminated it as well.
I also update the capitalization of a few variables that are already
affected by this change.
Commit: 637a1ae85538554b98973861802e842fc30d0f91
https://github.com/llvm/llvm-project/commit/637a1ae85538554b98973861802e842fc30d0f91
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_elementwise_popcount (#118307)
Commit: 21d27b3aabf3d06f7e8b1002b34bb467f6ab66d8
https://github.com/llvm/llvm-project/commit/21d27b3aabf3d06f7e8b1002b34bb467f6ab66d8
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
A llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling.ll
Log Message:
-----------
[LoopUnroll] Add tests for loop unrolling on Apple platforms.
Add first set of tests where runtime unrolling can be highly beneficial
on Apple Silicon CPUs.
Commit: 97f94af3560d3ae046f6c3d7ec74b03d1d2493d0
https://github.com/llvm/llvm-project/commit/97f94af3560d3ae046f6c3d7ec74b03d1d2493d0
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M .github/workflows/docs.yml
Log Message:
-----------
[Github] Upload built docs as artifact from test build docs job (#118159)
This patch makes the test documentation build job upload the docs that
have been built as artifacts. This makes it much easier to take a peek
at the resulting documentation rather than just being able to see that
it builds.
Commit: 071da9261b7e94c2d2d4e9d3d4eba1f29115e8ae
https://github.com/llvm/llvm-project/commit/071da9261b7e94c2d2d4e9d3d4eba1f29115e8ae
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/alias.cpp
Log Message:
-----------
[Clang] ensure mangled names are valid identifiers before being suggested in ifunc/alias attributes notes (#118170)
Fixes #112205
---
Commit that introduced this feature -
https://github.com/llvm/llvm-project/commit/9306ef9750b7a319d59f6d3e4977e01e39b8f161
Commit: f8b4182f076f8fe55f9d5f617b5a25008a77b22f
https://github.com/llvm/llvm-project/commit/f8b4182f076f8fe55f9d5f617b5a25008a77b22f
Author: Nathan Gauër <brioche at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Basic/AddressSpaces.h
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/DirectX.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/TCE.h
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
M clang/test/SemaTemplate/address_space-dependent.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
R llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
R llvm/test/CodeGen/SPIRV/pointers/variables-storage-class-vk.ll
M llvm/test/CodeGen/SPIRV/pointers/variables-storage-class.ll
Log Message:
-----------
Revert "[SPIR-V] Fixup storage class for global private (#116636)" (#118312)
This reverts commit aa7fe1c10e5d6d0d3aacdb345fed995de413e142.
Commit: 8935165659b7c31914e86059b91c9da8389cf19a
https://github.com/llvm/llvm-project/commit/8935165659b7c31914e86059b91c9da8389cf19a
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
A llvm/test/MachineVerifier/RISCV/lit.local.cfg
M llvm/test/MachineVerifier/RISCV/subreg-liveness.mir
Log Message:
-----------
[NFCI][test] Use lit.local.cfg in test/MachineVerifier/RISCV to gate tests (#118217)
87cc4b48c08a627f330396f941b84671c5e591d5 added `REQUIRES:
riscv64-registered-target` to the only test in this directory. It seems
better (and also reflects what we do elsewhere, including in the AMDGPU/
subdir in MachineVerifier) to gate for all files in the directory via
lit.local.cfg.
Commit: fcfdabfea18b4d2dd98a1c5b52d5b33aff77ae1a
https://github.com/llvm/llvm-project/commit/fcfdabfea18b4d2dd98a1c5b52d5b33aff77ae1a
Author: Ian Wood <ianwood2024 at u.northwestern.edu>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[MLIR] Improve compose expand(collapse) pattern (#117768)
If expand(collapse) has a dimension that gets collapsed and then
expanded to the same shape, the pattern would fail to canonicalize this
to a single collapse shape. Line 341 was changed because the
expand(collapse) could be a reinterpret-cast like sequence where the
shapes differ but the rank is the same. This cannot be represented by a
single `collapse_shape` op.
Signed-off-by: Ian Wood <ianwood2024 at u.northwestern.edu>
Commit: ac7fe426163adf9123473aeb94448cf3e84f6d09
https://github.com/llvm/llvm-project/commit/ac7fe426163adf9123473aeb94448cf3e84f6d09
Author: SpencerAbson <Spencer.Abson at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Basic/arm_sve.td
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[Clang][AArch64]Refactor typespec handling in SveEmitter.cpp (#117717)
- Switch to an enumerated type approach, which is less error-prone as we
continue to add new types. This is similar to NeonEmitter.
- Fix existing faulty typespec modifiers
Commit: fed07a05454d53763c10d482cd6e853509eee252
https://github.com/llvm/llvm-project/commit/fed07a05454d53763c10d482cd6e853509eee252
Author: Paul Osmialowski <pawel.osmialowski at arm.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/test/builtins/Unit/atomic_test.c
Log Message:
-----------
[compiler-rt][tests] Make this test case pass on AArch64 (#117628)
See also D92832 and GCC bug
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80878
Commit: 05096590e0ce68bdc6d32aac9ddbe8728e7514ae
https://github.com/llvm/llvm-project/commit/05096590e0ce68bdc6d32aac9ddbe8728e7514ae
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-modifiers.cpp
M flang/test/Parser/OpenMP/affinity-clause.f90
M flang/test/Parser/OpenMP/target_device_parse.f90
M flang/test/Parser/OpenMP/target_device_unparse.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
Log Message:
-----------
[flang][OpenMP] Use new modifiers with AFFINITY/ALIGNED/DEVICE (#117786)
This is a mostly mechanical change from specific modifiers embedded
directly in a clause to the Modifier variant.
Additional comments and references to the OpenMP specs were added.
Commit: a951e76fbed642dbe3f51965d17ca566be586cc5
https://github.com/llvm/llvm-project/commit/a951e76fbed642dbe3f51965d17ca566be586cc5
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
Log Message:
-----------
[lldb] Added an exponential algorithm for the sleep time in connect_to_debug_monitor() (#118222)
Reduced MAX_ATTEMPTS to 10.
The sleep time will be 3, 3.6, 4.3, ..., 13, 15.
The total sleep time is 78 + 0.5 * MAX_CONNECT_ATTEMPTS * MAX_ATTEMPTS = 128.
Note the timeout is 600, so the rest time must be enough.
Increased the port range (12000..20000).
Commit: 582754280c73f3b3ead67603df6b896d3ad058d8
https://github.com/llvm/llvm-project/commit/582754280c73f3b3ead67603df6b896d3ad058d8
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libcxx/docs/Status/Cxx23Papers.csv
Log Message:
-----------
[libc++][NFC] Fix slightly incorrect row in the CSV files
Commit: d898ff650ae09e3ef942592aee2e87627f45d7c6
https://github.com/llvm/llvm-project/commit/d898ff650ae09e3ef942592aee2e87627f45d7c6
Author: Perry Gibson <Wheest at users.noreply.github.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M mlir/python/mlir/dialects/func.py
M mlir/test/python/dialects/func.py
Log Message:
-----------
[mlir,python] Fix case when `FuncOp.arg_attrs` is not set (#117188)
FuncOps can have `arg_attrs`, an array of dictionary attributes
associated with their arguments.
E.g.,
```mlir
func.func @main(%arg0: tensor<8xf32> {test.attr_name = "value"}, %arg1: tensor<8x16xf32>)
```
These are exposed via the MLIR Python bindings with
`my_funcop.arg_attrs`.
In this case, it would return `[{test.attr_name = "value"}, {}]`, i.e.,
`%arg1` has an empty `DictAttr`.
However, if I try and access this property from a FuncOp with an empty
`arg_attrs`, e.g.,
```mlir
func.func @main(%arg0: tensor<8xf32>, %arg1: tensor<8x16xf32>)
```
This raises the error:
```python
return ArrayAttr(self.attributes[ARGUMENT_ATTRIBUTE_NAME])
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'attempt to access a non-existent attribute'
```
This PR fixes this by returning the expected `[{}, {}]`.
Commit: 73186546f0c0209c65c4b4ef1379a4832545b871
https://github.com/llvm/llvm-project/commit/73186546f0c0209c65c4b4ef1379a4832545b871
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/test/CodeGen/RISCV/rv64-float-convert-strict.ll
M llvm/test/CodeGen/RISCV/rv64-float-convert.ll
M llvm/test/CodeGen/RISCV/rv64-half-convert-strict.ll
M llvm/test/CodeGen/RISCV/rv64-half-convert.ll
Log Message:
-----------
[LegalizeTypes][RISCV] Call setTypeListBeforeSoften from ExpandIntRes_FP_TO_XINT if the FP type needs to be softened (#118269)
This avoids an unnecessary sext.w before the libcall.
Commit: bee33b5291a28aec76e98c0da25349266c7b653c
https://github.com/llvm/llvm-project/commit/bee33b5291a28aec76e98c0da25349266c7b653c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/double-intrinsics.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-intrinsics.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
Log Message:
-----------
[RISCV][GISel] Support f32/f64 powi. (#117937)
Need to force libcall legalization to treat the integer argument as
signed so that it can be promoted to XLen in call lowering for RV64.
Alternatively we could promote the operand before converting to libcall,
but going through call lowering is closer to what SelectionDAG does.
Commit: c16c0e26236d0468a2411cb3bce219d3c70650e9
https://github.com/llvm/llvm-project/commit/c16c0e26236d0468a2411cb3bce219d3c70650e9
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIOptimizeVGPRLiveRange.cpp
Log Message:
-----------
[AMDGPU][SIOptimizeVGPRLiveRange] Add setpreservesCFG in the legacy pass flow. (#118256)
Commit: c9fa3195f0f012a5606ec3e403a1f111b3a4e0c7
https://github.com/llvm/llvm-project/commit/c9fa3195f0f012a5606ec3e403a1f111b3a4e0c7
Author: Luke Lau <luke at igalia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/rvv/compressstore.ll
Log Message:
-----------
[RISCV] Use LiveIntervals to determine if AVL dominates when coalescing (#118285)
In order to coalesce a vsetvli with a register AVL into a previous
vsetvli, we need to make sure that the AVL register is reachable at the
previous vsetvli.
Back in pre-RA vsetvli insertion we just checked to see if the two
virtual registers were the same virtual register, and then this was
hacked around in the move to post-RA. We can instead use live intervals
to check that the reaching definition is the same at both instructions.
On its own this doesn't have much of an impact, but helps a lot in
#118283 and enables coalescing in about 60 of the test cases from that
PR.
Commit: a6fa51f5ce8f31a088f04d7c14690bb0de3259f1
https://github.com/llvm/llvm-project/commit/a6fa51f5ce8f31a088f04d7c14690bb0de3259f1
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M lld/Common/ErrorHandler.cpp
Log Message:
-----------
[lld] Move handling of message separator to reportDiagnostic()
This ensures that it is also updated when calling log() and not just for
errors and warnings. This was noticed in the downstream CHERI fork where
a test using CHECK-NEXT was seeing empty lines after single-line log()
messages.
Reviewed By: MaskRay
Pull Request: https://github.com/llvm/llvm-project/pull/117587
Commit: 57452bb3a92d77f260296669269815e057b19b6e
https://github.com/llvm/llvm-project/commit/57452bb3a92d77f260296669269815e057b19b6e
Author: Raphael Moreira Zinsly <6718397+rzinsly at users.noreply.github.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
Log Message:
-----------
[NFC][RISCV] Remove CFIIndex argument from allocateStack (#117871)
Calculates CFIIndex inside RISCVFrameLowering::allocateStack instead of
sending it by argument.
Commit: 1b03747ed85cd4a6573b728674e88f4bd3fa844d
https://github.com/llvm/llvm-project/commit/1b03747ed85cd4a6573b728674e88f4bd3fa844d
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libcxx/utils/synchronize_csv_status_files.py
Log Message:
-----------
[libc++] Augment Github - CSV synchronization script to auto-create new Github issues (#118139)
This makes it easier to create the Github issues and add them to the
libc++ conformance project after a WG21 meeting.
Commit: d33dc14833b581d276a712a8425ab8f62a59c589
https://github.com/llvm/llvm-project/commit/d33dc14833b581d276a712a8425ab8f62a59c589
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/test/builtins/Unit/extendhfxf2_test.c
M compiler-rt/test/builtins/Unit/fp_test.h
Log Message:
-----------
[compiler-rt] Allow running extendhfxf2_test without int128 support
We don't need 128-bit integers here, instead rewrite the fp_test.h helpers
to avoid the need for __int128. Also change the high argument for
compareResultF80() and F80FromRep80() to be uint16_t since values greater
than this do not make any sense. This should allow the compiler to detect
accidentally swapping the arguments.
Reviewed By: biabbas, alexander-shaposhnikov
Pull Request: https://github.com/llvm/llvm-project/pull/117818
Commit: 02eaeec1ac61b3933bf10a40abdeff4e2958a4a5
https://github.com/llvm/llvm-project/commit/02eaeec1ac61b3933bf10a40abdeff4e2958a4a5
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libcxx/src/CMakeLists.txt
Log Message:
-----------
[libc++] Remove obsolete CMake variable (#118119)
That variable is not referenced anywhere anymore, so it can be removed.
Commit: 1f2aeef97bf229821b1b254d7ce4e3d1c7f8683f
https://github.com/llvm/llvm-project/commit/1f2aeef97bf229821b1b254d7ce4e3d1c7f8683f
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
A clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
A clang/test/SemaOpenACC/combined-construct-copy-clause.c
A clang/test/SemaOpenACC/combined-construct-copy-clause.cpp
A clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
A clang/test/SemaOpenACC/combined-construct-copyin-clause.c
A clang/test/SemaOpenACC/combined-construct-copyin-clause.cpp
A clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
A clang/test/SemaOpenACC/combined-construct-copyout-clause.c
A clang/test/SemaOpenACC/combined-construct-copyout-clause.cpp
A clang/test/SemaOpenACC/combined-construct-create-ast.cpp
A clang/test/SemaOpenACC/combined-construct-create-clause.c
A clang/test/SemaOpenACC/combined-construct-create-clause.cpp
M clang/test/SemaOpenACC/combined-construct-default-clause.c
M clang/test/SemaOpenACC/combined-construct-default-clause.cpp
M clang/test/SemaOpenACC/compute-construct-default-clause.c
Log Message:
-----------
[OpenACC] Enable copy/create clauses for combined constructs
This is the last set of 'no op' changes, and are all incredibly similar,
so they are being done together. They work the exact same for combined
constructs as they do for compute constructs, so this adds tests and
enables them.
Commit: de6d0d2de0e2df72bd77f29d27addf13ebfbc997
https://github.com/llvm/llvm-project/commit/de6d0d2de0e2df72bd77f29d27addf13ebfbc997
Author: Luke Quinn <lquinn2015 at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/float-fclass.ll
Log Message:
-----------
[RISCV][GISel] Add FCLASS to onlyUsesFP for register bank selection (#118021)
Bug fix FCLASS instruction in RISCV. The bug is due the fact that FCLASS
has an input float register and output GPR this caused reg bank select
regression.
Commit: 94316dd5415fbeb7ce7432620ffbbb4b2fc03237
https://github.com/llvm/llvm-project/commit/94316dd5415fbeb7ce7432620ffbbb4b2fc03237
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/saddsat.ll
M llvm/test/CodeGen/AMDGPU/ssubsat.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] saddsat/ssubsat sdag for true16 format (#118245)
saddsat and ssubsat SDAG codeGen pattern for True16 format
Commit: 3d437893c3b8431a35f5edb65409f0d0fb0e2d95
https://github.com/llvm/llvm-project/commit/3d437893c3b8431a35f5edb65409f0d0fb0e2d95
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libcxx/include/chrono
M libcxx/test/libcxx/clang_tidy.gen.py
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
Log Message:
-----------
[libc++] Re-enable Clang-tidy checks in the CI (#110026)
Now that we've gained control of our CI docker image again,
we can re-enable the clang-tidy tests.
Commit: a796f597cd445bf6577c09efcac710b568f29d92
https://github.com/llvm/llvm-project/commit/a796f597cd445bf6577c09efcac710b568f29d92
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950-read-tr.cl
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
Log Message:
-----------
AMDGPU: Allow f16/bf16 for DS_READ_TR16_B64 gfx950 builtins (#118297)
Co-authored-by: Sirish Pande <Sirish.Pande at amd.com>
Commit: 468fb5fc7ebc42820cf8a2114d20f321a9ede0ee
https://github.com/llvm/llvm-project/commit/468fb5fc7ebc42820cf8a2114d20f321a9ede0ee
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
A llvm/test/CodeGen/AMDGPU/register-coalescer--set-undef-full-reg-use-implicit-def-erase-issue109249.mir
Log Message:
-----------
RegisterCoalescer: Set undef on full register uses when coalescing implicit_def (#118321)
Previously this would delete the IMPLICIT_DEF and not introduce the undef
flag on the use operand.
Fixes sub-issue found while reducing #109294
Commit: 75452831948d86674374f645df75c543f4587635
https://github.com/llvm/llvm-project/commit/75452831948d86674374f645df75c543f4587635
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/cmake/base-config-ix.cmake
Log Message:
-----------
[compiler-rt] Don't detect a versioned clang test compiler as GCC
I was trying to build compiler-rt with /usr/bin/clang-17 and the testsuite
failed due to the code in lit.common.cfg.py:
```
# GCC-ASan uses dynamic runtime by default (since config.bits is not set).
if config.compiler_id == "GNU":
gcc_dir = os.path.dirname(config.clang)
libasan_dir = os.path.join(gcc_dir, "..", "lib" + config.bits)
push_dynamic_library_lookup_path(config, libasan_dir)
```
Fix this in two ways: First, if the test compiler matches the library
compiler, set COMPILER_RT_TEST_COMPILER_ID to CMAKE_C_COMPILER_ID. Second,
relax the regex detecting clang to allow any kind of suffix.
Reviewed By: compnerd
Pull Request: https://github.com/llvm/llvm-project/pull/117812
Commit: 681bd84563cf559fca4eea3ae8ac064e0ae833f5
https://github.com/llvm/llvm-project/commit/681bd84563cf559fca4eea3ae8ac064e0ae833f5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
A llvm/test/Transforms/InstCombine/AMDGPU/lane-index-simplify-demanded-bits.ll
Log Message:
-----------
AMDGPU: Add baseline test for lane index simplification (#117962)
Commit: b36f1c8e9b0c9b9151be15b36a0f8d59ea8fc989
https://github.com/llvm/llvm-project/commit/b36f1c8e9b0c9b9151be15b36a0f8d59ea8fc989
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/xtensa-char.c
Log Message:
-----------
[Xtensa] Default to unsigned char
This matches GCC.
Partially addresses https://github.com/llvm/llvm-project/pull/115964
Pull Request: https://github.com/llvm/llvm-project/pull/115967
Commit: 93d2a2caf63ee9c3dab8b3e0a1b54a9ba484714d
https://github.com/llvm/llvm-project/commit/93d2a2caf63ee9c3dab8b3e0a1b54a9ba484714d
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/test/CodeGen/DirectX/BufferStore-errors.ll
A llvm/test/CodeGen/DirectX/finalize-linkage-intrinsics.ll
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
Log Message:
-----------
[DirectX] Run DXILFinalizeLinkage earlier in the pipeline (#117950)
This moves DXILFinalizeLinkage before the DXIL op lowering passes so
that it doesn't end up internalizing any of the `dx.op.*` functions.
This also exposed a bug when the pass is run on a module with intrinsics
in them - marking the intrinsics as internal will fail the validator.
Fixes #117761
Commit: 0fe1f8524e02a2d28946e8356615f16166670474
https://github.com/llvm/llvm-project/commit/0fe1f8524e02a2d28946e8356615f16166670474
Author: stma247 <184293860+stma247 at users.noreply.github.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
A llvm/test/tools/llvm-cov/branch-export-lcov-unify-instances.test
M llvm/test/tools/llvm-cov/branch-export-lcov.test
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/tools/llvm-cov/CoverageExporterLcov.cpp
M llvm/tools/llvm-cov/CoverageViewOptions.h
Log Message:
-----------
[llvm-cov] Fix branch counts of template functions (#111743) (#113925)
Added option "--unify-instantiations" to llvm-cov export to combine
branch execution counts of C++ template instantiations.
on-behalf-of: @e-solutions-GmbH <info at esolutions.de>
Commit: 6baf0023ce7f880a15aa89eaea2dcbea59abfa16
https://github.com/llvm/llvm-project/commit/6baf0023ce7f880a15aa89eaea2dcbea59abfa16
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/include/flang/Common/Fortran-features.h
M flang/lib/Semantics/expression.cpp
M flang/test/Semantics/expr-errors06.f90
Log Message:
-----------
[flang] Downgrade recently added error to a warning (#117217)
An empty array shouldn't be subscripted, but sometimes they are in
zero-trip loops in real applications. So change a recently added error
message to a warning (off by default).
Commit: c1c9929028004a717d8dea3cdf416260ef97bea8
https://github.com/llvm/llvm-project/commit/c1c9929028004a717d8dea3cdf416260ef97bea8
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/include/flang/Common/Fortran-features.h
M flang/lib/Common/Fortran-features.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/call14.f90
M flang/test/Semantics/resolve58.f90
Log Message:
-----------
[flang] Allow a few irrelevant attributes, with warning (#117374)
INTENT, VALUE, and OPTIONAL attributes apply only to dummy arguments. A
couple older compilers accept them, usually with a warning, if they are
applied to names that are not dummy arguments, and they show up in some
older non-portable source code. Change these cases into stern warnings
by default.
Commit: 8115454aa05caf4ebfaa98466a8c8b7aa274cefd
https://github.com/llvm/llvm-project/commit/8115454aa05caf4ebfaa98466a8c8b7aa274cefd
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/docs/Extensions.md
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/Fortran-parsers.cpp
M flang/lib/Parser/type-parsers.h
A flang/test/Parser/decl-char-length.f90
Log Message:
-----------
[flang] Extension: accept "var*length(bounds)" (#117399)
A character length specifier in an entity declaration or a component
declaration is required by the standard to follow any array bounds or
coarray bounds that are present. Several Fortran compilers allow the
character length specifier to follow the name and appear before the
bounds.
Fixes https://github.com/llvm/llvm-project/issues/117372.
Commit: dfbc80febb45544710b12cc05f268f40ef88cd6e
https://github.com/llvm/llvm-project/commit/dfbc80febb45544710b12cc05f268f40ef88cd6e
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/lib/Parser/prescan.cpp
A flang/test/Preprocessing/bug117297.F90
Log Message:
-----------
[flang] Fix continuation when line begins with empty macro expansion (#117407)
A free form source line that begins with a macro should still be
classified as a source line, and have its continuation lines work, even
if the macro expands to an empty replacement.
Fixes https://github.com/llvm/llvm-project/issues/117297.
Commit: 9b64811e27f8377b77f8561cf678c9d2f2d67393
https://github.com/llvm/llvm-project/commit/9b64811e27f8377b77f8561cf678c9d2f2d67393
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/runtime/edit-input.cpp
Log Message:
-----------
[flang][runtime] Skip unused truncated list-directed character input (#118320)
When reading non-delimited list-directed character input, read the whole
field even if it doesn't fit into the variable.
Fixes https://github.com/llvm/llvm-project/issues/118277.
Commit: 91f5f974cb75309a94c9efc76238ef98abcf1582
https://github.com/llvm/llvm-project/commit/91f5f974cb75309a94c9efc76238ef98abcf1582
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/src/Misc.cpp
M offload/DeviceRTL/src/exports
A offload/include/Shared/RPCOpcodes.h
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/CMakeLists.txt
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/common/src/RPC.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
A offload/test/api/omp_host_call.c
R offload/test/libc/host_call.c
Log Message:
-----------
[OpenMP] Unconditionally provide an RPC client interface for OpenMP (#117933)
Summary:
This patch adds an RPC interface that lives directly in the OpenMP
device runtime. This allows OpenMP to implement custom opcodes.
Currently this is only providing the host call interface, which is the
raw version of reverse offloading. Previously this lived in `libc/` as
an extension which is not the correct place.
The interface here uses a weak symbol for the RPC client by the same
name that the `libc` interface uses. This means that it will defer to
the libc one if both are present so we don't need to set up multiple
instances.
The presense of this symbol is what controls whether or not we set up
the RPC server. Because this is an external symbol it normally won't be
optimized out, so there's a special pass in OpenMPOpt that deletes this
symbol if it is unused during linking. That means at `O0` the RPC server
will always be present now, but will be removed trivially if it's not
used at O1 and higher.
Commit: 0aef005c94f91a91edc77a4f43337950e66bc462
https://github.com/llvm/llvm-project/commit/0aef005c94f91a91edc77a4f43337950e66bc462
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
A clang/test/SemaOpenACC/combined-construct-collapse-ast.cpp
A clang/test/SemaOpenACC/combined-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
Log Message:
-----------
[OpenACC] Implement 'collapse' for combined constructs.
Most of the restrictions on 'collapse' involve the contents of the loop,
so this extends enforcement of all of that to all combined construct
loops, and alters the diagnostics to better reflect the construct it is
associated with.
Commit: 15676ec552c7028ce3c902cec19efe9c99d7f303
https://github.com/llvm/llvm-project/commit/15676ec552c7028ce3c902cec19efe9c99d7f303
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/MC/AMDGPU/gfx950_asm_features.s
M llvm/test/MC/Disassembler/AMDGPU/gfx950_dasm_vop3.txt
Log Message:
-----------
AMDGPU: Add support for V_CVT_PK_F16_F32 instruction for gfx950 (#118300)
Co-authored-by: Shilei Tian <shilei.tian at amd.com>
Commit: f3af593d6f0ed0243c4f483e120974ab2c2eb334
https://github.com/llvm/llvm-project/commit/f3af593d6f0ed0243c4f483e120974ab2c2eb334
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
Log Message:
-----------
AMDGPU: Create InstrMapping from VGPR MFMA to equivalent AGPR instruction (#117102)
This provides infrastructure for a future optimization.
Commit: eaa4eb281d4a0e34c7b4c2dac50cd151c3cb27e6
https://github.com/llvm/llvm-project/commit/eaa4eb281d4a0e34c7b4c2dac50cd151c3cb27e6
Author: David Olsen <dolsen at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
Log Message:
-----------
[CIR] Fix warning in CIRGenAction.cpp (#118389)
Fix a compiler warning in `CIRGenConsumer::HandleTranslationUnit` in
`clang/lib/CIR/FrontendAction/CIRGenAction.cpp`. The warning was about a
`default:` section in a switch statement that already covered all the
values of an enum. Delete the `default:` section.
Commit: bde79c0e27fd0fb1e31c9b8b34ae71716c51a8e8
https://github.com/llvm/llvm-project/commit/bde79c0e27fd0fb1e31c9b8b34ae71716c51a8e8
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-modifiers.cpp
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/taskloop.f90
M flang/test/Semantics/OpenMP/depend05.f90
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
Log Message:
-----------
[flang][OpenMP] Use new modifiers in DEPEND/GRAINSIZE/NUM_TASKS (#117917)
The usual changes, added more references to OpenMP specs.
Commit: a15400d05d23dd45a8ed583da857d1b02329eb40
https://github.com/llvm/llvm-project/commit/a15400d05d23dd45a8ed583da857d1b02329eb40
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/double-intrinsics.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-intrinsics.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
Log Message:
-----------
[RISCV][GISel] Support f32/f64 ldexp. (#117941)
The existing libcall lowering in LegalizerHelper.cpp did not account
for one operand being integer. Reuse the G_FPOWI code to fix this.
Commit: 0aa7892772a94b0395cb5a7fce077ab2348ecaa5
https://github.com/llvm/llvm-project/commit/0aa7892772a94b0395cb5a7fce077ab2348ecaa5
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
A clang/test/SemaOpenACC/combined-construct-tile-ast.cpp
A clang/test/SemaOpenACC/combined-construct-tile-clause.cpp
Log Message:
-----------
[OpenACC] Implement 'tile' for combined constructs
Like collapse, this clause has only mild changes that need to be made.
Most of the associated work for the RAII container was already done
previously, so this is mostly just updating the diagnostics to properly
emit the right construct.
Commit: 2c88ac9da9f842875592b232ba957da341e62ea5
https://github.com/llvm/llvm-project/commit/2c88ac9da9f842875592b232ba957da341e62ea5
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/test/CodeGen/DirectX/BufferStore.ll
Log Message:
-----------
[DirectX] Clean up extra vectors when lowering to buffer store (#116721)
DXILOpLowering runs after scalarization but `@llvm.dx.typedbuffer.store`
takes a vector, so the argument is usually an artifact. Avoid creating a
vector just to extract elements from it immediately.
Commit: 4226e0a0c75e5cfd784eff429f93101c03a1995c
https://github.com/llvm/llvm-project/commit/4226e0a0c75e5cfd784eff429f93101c03a1995c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
M llvm/unittests/Transforms/Utils/UnrollLoopTest.cpp
Log Message:
-----------
[TTI] Add SCEVExpansionBudget to loop unrolling options. (#118316)
Add an extra know to UnrollingPreferences to let backends control the
maximum budget for SCEV expansions.
This gives backends more fine-grained control on the cost of the runtime
checks for runtime unrolling.
PR: https://github.com/llvm/llvm-project/pull/118316
Commit: a6ef0debb1d60966b5bcc69f7d58a2b75c9c621d
https://github.com/llvm/llvm-project/commit/a6ef0debb1d60966b5bcc69f7d58a2b75c9c621d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libc/shared/rpc_opcodes.h
M libc/src/__support/GPU/allocator.cpp
M libc/src/__support/OSUtil/gpu/exit.cpp
M libc/src/__support/OSUtil/gpu/io.cpp
M libc/src/gpu/rpc_host_call.cpp
M libc/src/stdio/gpu/clearerr.cpp
M libc/src/stdio/gpu/fclose.cpp
M libc/src/stdio/gpu/feof.cpp
M libc/src/stdio/gpu/ferror.cpp
M libc/src/stdio/gpu/fflush.cpp
M libc/src/stdio/gpu/fgets.cpp
M libc/src/stdio/gpu/file.h
M libc/src/stdio/gpu/fopen.cpp
M libc/src/stdio/gpu/fseek.cpp
M libc/src/stdio/gpu/ftell.cpp
M libc/src/stdio/gpu/puts.cpp
M libc/src/stdio/gpu/remove.cpp
M libc/src/stdio/gpu/rename.cpp
M libc/src/stdio/gpu/ungetc.cpp
M libc/src/stdio/gpu/vfprintf_utils.h
M libc/src/stdlib/gpu/abort.cpp
M libc/src/stdlib/gpu/system.cpp
M libc/test/integration/startup/gpu/rpc_test.cpp
M libc/utils/gpu/loader/Loader.h
M libc/utils/gpu/server/rpc_server.cpp
M offload/plugins-nextgen/common/src/RPC.cpp
Log Message:
-----------
[libc][NFC] Rename RPC opcodes to better reflect their usage
Summary:
RPC_ is a generic prefix here, use LIBC_ to indicate that these are
opcodes used to implement the C library
Commit: 56cb5cbfcdc09499d366046d6ea2ea6655fc11ef
https://github.com/llvm/llvm-project/commit/56cb5cbfcdc09499d366046d6ea2ea6655fc11ef
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll
Log Message:
-----------
[RISCV] Remove RISCVISD::VNSRL_VL and adjust deinterleave lowering to match (#118391)
Instead of directly lowering to vnsrl_vl and having custom pattern
matching for that case, we can just lower to a (legal) shift and
truncate, and let generic pattern matching produce the vnsrl.
The major motivation for this is that I'm going to reuse this logic to
handle e.g. deinterleave4 w/ i8 result.
The test changes aren't particularly interesting. They're minor code
improvements - I think because we do slightly better with the
insert_subvector patterns, but that's mostly irrelevant.
Commit: c906907d871d840b176cd0101863b7be3f33dee9
https://github.com/llvm/llvm-project/commit/c906907d871d840b176cd0101863b7be3f33dee9
Author: Brian Cain <bcain at quicinc.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/cmake/caches/hexagon-linux-clangrt.cmake
Log Message:
-----------
[hexagon][cmake] Disable ctx_profile (#117965)
Since #105495, we will build sanitizer_common when
COMPILER_RT_BUILD_CTX_PROFILE is set. But we have outstanding failures
when building sanitizer_common, so for now we'll disable ctx_profile
too.
Commit: 92f5314706319a2a654a914c54ba6e73563fa906
https://github.com/llvm/llvm-project/commit/92f5314706319a2a654a914c54ba6e73563fa906
Author: Alan Phipps <a-phipps at ti.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
R llvm/test/tools/llvm-cov/branch-export-lcov-unify-instances.test
M llvm/test/tools/llvm-cov/branch-export-lcov.test
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/tools/llvm-cov/CoverageExporterLcov.cpp
M llvm/tools/llvm-cov/CoverageViewOptions.h
Log Message:
-----------
Revert "[llvm-cov] Fix branch counts of template functions (#111743)" (#118398)
Reverts llvm/llvm-project#113925
Reverting to address buildbot failures.
Commit: 1250a1db1a378736afda389c94d2846d7a254576
https://github.com/llvm/llvm-project/commit/1250a1db1a378736afda389c94d2846d7a254576
Author: Dave Lee <davelee.com at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
M lldb/test/API/commands/dwim-print/Makefile
M lldb/test/API/commands/dwim-print/TestDWIMPrint.py
R lldb/test/API/commands/dwim-print/main.c
A lldb/test/API/commands/dwim-print/main.cpp
Log Message:
-----------
[lldb] Update dwim-print to support limited variable expression paths (#117452)
`frame variable` supports nested variable access, which the API calls "variable
expression paths". This change updates `dwim-print` to support a subset of supported
variable expression paths.
Consider the expression `a->b`. In C++, the arrow operator can be overloaded, and where
that is the case, expression evaluation must be used to evaluate it, not frame variable.
Likewise, the subscript operator can be overloaded.
To avoid those cases, this change introduces a limited support for variable expression
paths. Use of the dot operator is allowed.
Additionally, this change allows `dwim-print` to directly access children of `this` and
`self` (see AllowDirectIVarAccess). This functionality is also provided by the same
`GetValueForVariableExpressionPath` method.
rdar://104348908
Commit: bd92e46204331b9af296f53abb708317e72ab7a8
https://github.com/llvm/llvm-project/commit/bd92e46204331b9af296f53abb708317e72ab7a8
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
M clang/test/CodeGenHLSL/builtins/RWStructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/RasterizerOrderedStructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl
M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
A clang/test/SemaHLSL/BuiltIns/resource_getpointer-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
Log Message:
-----------
[HLSL] Implement RWBuffer::operator[] via __builtin_hlsl_resource_getpointer (#117017)
This introduces `__builtin_hlsl_resource_getpointer`, which lowers to
`llvm.dx.resource.getpointer` and is used to implement indexing into
resources.
This will only work through the backend for typed buffers at this point,
but the changes to structured buffers should be correct as far as the
frontend is concerned.
Note: We probably want this to return a reference in the HLSL device
address space, but for now we're just using address space 0. Creating a
device address space and updating this code can be done later as
necessary.
Fixes #95956
Commit: 0c98776159cea0d1f391a8e1ac290483d4490240
https://github.com/llvm/llvm-project/commit/0c98776159cea0d1f391a8e1ac290483d4490240
Author: llvmssh <shaosenhao at huawei.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Object/RecordStreamer.h
Log Message:
-----------
Use MapVector to fix lld thinLTO "nondeterminism" issue. (#117551)
When the ModuleSymbolTable is generated, the binary consistency problem occurs due to the
data structure for collecting asm symbols was ordered by memory pointers.
Commit: b8daa45a566b15d929a812d85f3f1ff8c868c889
https://github.com/llvm/llvm-project/commit/b8daa45a566b15d929a812d85f3f1ff8c868c889
Author: Petr Hosek <phosek at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/llvm-libc-macros/time-macros.h
M libc/newhdrgen/yaml/time.yaml
M libc/spec/stdc.td
M libc/src/time/CMakeLists.txt
A libc/src/time/baremetal/CMakeLists.txt
A libc/src/time/baremetal/timespec_get.cpp
M libc/src/time/gpu/CMakeLists.txt
A libc/src/time/gpu/timespec_get.cpp
M libc/src/time/linux/CMakeLists.txt
A libc/src/time/linux/timespec_get.cpp
A libc/src/time/timespec_get.h
M libc/test/src/time/CMakeLists.txt
A libc/test/src/time/timespec_get_test.cpp
Log Message:
-----------
[libc] Implement `timespec_get` (#116102)
`timespec_get` is C standard counterpart to POSIX `clock_gettime`. On
Linux we simply use `clock_gettime`. On baremetal we introduce a new
external API `__llvm_libc_timespec_get_utc` that should be implemented
by the vendor.
Commit: 33faa8285f3dc5ca10e35770b288770b4bbc2bc1
https://github.com/llvm/llvm-project/commit/33faa8285f3dc5ca10e35770b288770b4bbc2bc1
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/CMakeLists.txt
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-modifiers.cpp
M flang/test/Parser/OpenMP/if-clause-unparse.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/lastprivate-clause.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/if-clause.f90
Log Message:
-----------
[flang][OpenMP] Use new modifiers in IF/LASTPRIVATE (#118128)
The usual changes, added more references to OpenMP specs.
Commit: da5f330e84d74aeacdbb801c46282b9eebec6793
https://github.com/llvm/llvm-project/commit/da5f330e84d74aeacdbb801c46282b9eebec6793
Author: Niels Dekker <N.Dekker at lumc.nl>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
Log Message:
-----------
[clang-tidy] Adjust size-empty doc because C++11 size() is constant-time (#117629)
>From C++11, a conforming `size()` method is guaranteed to be a
constant-time function. `empty()` is not _generally_ more efficient than
`size()`. It might even be implemented in terms of `size()`.
----
Notes:
- Microsoft's STL had implemented `empty()` as `return size() == 0`,
until May 2021: https://github.com/microsoft/STL/pull/1836/files
- The time complexity of `size()` (specifically for `std::set`) was
discussed by the library working group in 2007-2009:
https://cplusplus.github.io/LWG/issue632
Commit: 5f881b7139bba1b8cd5c09ea021c78b92d1e72c9
https://github.com/llvm/llvm-project/commit/5f881b7139bba1b8cd5c09ea021c78b92d1e72c9
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[libc] Deprecate LLVM_ENABLE_PROJECTS in favor of LLVM_ENABLE_RUNTIMES. (#117265)
We plan to make this a hard error in the LLVM 21 release.
Link: #78479
Commit: 867a1d621d1c6146dc29fa6b471407327d8f1bff
https://github.com/llvm/llvm-project/commit/867a1d621d1c6146dc29fa6b471407327d8f1bff
Author: Dimitry Andric <dimitry at andric.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
Log Message:
-----------
[sanitizer_common] mark __elf_aux_vector as weak on FreeBSD (#118110)
At some point FreeBSD introduced libsys as a wrapper between syscalls
and libc, and then linking sanitized programs started failing with:
```text
# c++ -fsanitize=address main.cc
ld: error: undefined symbol: __elf_aux_vector
>>> referenced by sanitizer_linux_libcdep.cpp:950 (/usr/src/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp:950)
>>> sanitizer_linux_libcdep.o:(__sanitizer::ReExec()) in archive /usr/lib/clang/17/lib/freebsd/libclang_rt.asan-x86_64.a
c++: error: linker command failed with exit code 1 (use -v to see invocation)
```
Mark `__elf_aux_vector` as weak in the internal sanitizer declaration,
so the linker will accept it at link time. The dynamic linker will then
take care of the symbol at run time.
Commit: fdc7ccf5432f72e6c87a78625bb55f8d4ceaea16
https://github.com/llvm/llvm-project/commit/fdc7ccf5432f72e6c87a78625bb55f8d4ceaea16
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-ilp32-ilp32f-ilp32d-common.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-lp64-lp64f-lp64d-common.ll
Log Message:
-----------
[RISCV][GISel] Allow fp128 function arguments.
Add more testing for large arguments.
Commit: f500ed5646bef11b9daa74ee79188af0de6ab0be
https://github.com/llvm/llvm-project/commit/f500ed5646bef11b9daa74ee79188af0de6ab0be
Author: Luke Lau <luke at igalia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
Log Message:
-----------
[RISCV][VLOPT] Add separate tests for getOperandInfo. NFC (#116170)
This adds separate tests for getOperandInfo to try and get better
coverage over all the possible operands.
It's done in MIR as it makes checking incompatible EEWs and EMULs
easier, which is difficult (but not impossible) to do in LLVM IR.
It tests each instruction "format", e.g. vop.vv/vwop.vv/vwop.wv etc.,
and for each format it tests the individual operands.
For each operand it tests when the EEW and EMUL match, when the EEW
doesn't match, and when the EMUL doesn't match.
Commit: 7267c85959aa2490e2950f7fb817a76af7e94043
https://github.com/llvm/llvm-project/commit/7267c85959aa2490e2950f7fb817a76af7e94043
Author: Matthias Springer <me at m-sp.org>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
R mlir/include/mlir/Dialect/Func/Transforms/DecomposeCallGraphTypes.h
M mlir/lib/Dialect/Func/Transforms/CMakeLists.txt
R mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
M mlir/test/lib/Dialect/Func/TestDecomposeCallGraphTypes.cpp
Log Message:
-----------
[mlir][Func] Delete `DecomposeCallGraphTypes.cpp` (#117424)
`DecomposeCallGraphTypes.cpp` was a workaround around missing 1:N
support in the dialect conversion. Now that 1:N support was added, the
workaround can be deleted. The test remains in place, as an example for
how to write such a transformation with the dialect conversion
framework.
Note for LLVM integration: If you are using
`DecomposeCallGraphTypes.cpp`, switch to the patterns that are used in
`TestDecomposeCallGraphTypes.cpp`.
Commit: 6faf17b7626bfdeea977a7a333c6e20ed677615d
https://github.com/llvm/llvm-project/commit/6faf17b7626bfdeea977a7a333c6e20ed677615d
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/ModuleSummaryIndex.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/test/ThinLTO/X86/import_callee_declaration.ll
Log Message:
-----------
[ThinLTO]Supports declaration import for global variables in distributed ThinLTO (#117616)
When `-import-declaration` option is enabled, declaration import is
supported for functions. https://github.com/llvm/llvm-project/pull/88024
has the context for this option.
This patch supports declaration import for global variables in
distributed ThinLTO. The motivating use case is to propagate `dso_local`
attribute of global variables across modules, to optimize global
variable access when a binary is built with
`-fno-direct-access-external-data`.
* With `-fdirect-access-external-data`, non thread-local global
variables will [have `dso_local`
attributes](https://github.com/llvm/llvm-project/blob/fe3c23b439b9a2d00442d9bc6a4ca86f73066a3d/clang/lib/CodeGen/CodeGenModule.cpp#L1730-L1746).
This optimizes the global variable access as shown by
https://gcc.godbolt.org/z/vMzWcKdh3
Commit: b2dd4fabacd72d650a15116f361b1aa0020e2368
https://github.com/llvm/llvm-project/commit/b2dd4fabacd72d650a15116f361b1aa0020e2368
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/test/ThinLTO/X86/distributed_indexes.ll
Log Message:
-----------
[NFC]Update a ThinLTO test case (#117584)
Run `function-import` pass in a similar way that it runs in a ThinLTO
distributed backend compile and checks that function alias is imported
as a definition. More accurately, the function alias
[is](https://github.com/llvm/llvm-project/blob/0c98776159cea0d1f391a8e1ac290483d4490240/llvm/lib/Transforms/IPO/FunctionImport.cpp#L1912)
a
[clone](https://github.com/llvm/llvm-project/blob/0c98776159cea0d1f391a8e1ac290483d4490240/llvm/lib/Transforms/IPO/FunctionImport.cpp#L1782)
of the aliasee function.
Commit: b80a157d12ebeebb85fa0a1e53beb5b46dc16d36
https://github.com/llvm/llvm-project/commit/b80a157d12ebeebb85fa0a1e53beb5b46dc16d36
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
A llvm/test/CodeGen/AMDGPU/v_ashr_pk.ll
Log Message:
-----------
AMDGPU: Add codegen support for gfx950 v_ashr_pk_i8/u8_i32 (#118304)
Co-authored-by: Sirish Pande <Sirish.Pande at amd.com>
Commit: 0a96161beb161933e64e188bfb0754df494c3a58
https://github.com/llvm/llvm-project/commit/0a96161beb161933e64e188bfb0754df494c3a58
Author: Dave Lee <davelee.com at gmail.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h
M lldb/source/DataFormatters/DumpValueObjectOptions.cpp
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp
Log Message:
-----------
[lldb] Simplify DumpValueObjectOptions::PointerDepth (NFC) (#117504)
`Mode::Always` and `Mode::Default` are handled identically.
`Mode::Never` is the same as having a count of 0.
Commit: 897dbdeab7e86248183f2e20cb1ae35e59551f62
https://github.com/llvm/llvm-project/commit/897dbdeab7e86248183f2e20cb1ae35e59551f62
Author: Nico Weber <thakis at chromium.org>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/bolt/unittests/Core/BUILD.gn
Log Message:
-----------
[gn] port 51003076ebc1
Commit: a2cb2088e766eaadfd6d573d379d5c692262e24f
https://github.com/llvm/llvm-project/commit/a2cb2088e766eaadfd6d573d379d5c692262e24f
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
Log Message:
-----------
[RISCV] Fix a typo in a deinterleave test
This was supposed to test a deinterleave Factor=4, Offset=1, but had an
off by one in the shuffle mask.
Commit: f71ea4bc1b01fd7e29048db82b3e21fba74e8dab
https://github.com/llvm/llvm-project/commit/f71ea4bc1b01fd7e29048db82b3e21fba74e8dab
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP][REVEC] reorderNodeWithReuses should not be called if all users of a TreeEntry are ShuffleVectorInst. (#118260)
Commit: c3536b263f253a69fb336fb0617ee33a01a5c5dd
https://github.com/llvm/llvm-project/commit/c3536b263f253a69fb336fb0617ee33a01a5c5dd
Author: Dan Gohman <dev at sunfishcode.online>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M lld/test/wasm/compress-relocs.ll
M lld/test/wasm/import-table-explicit.s
M lld/test/wasm/invalid-mvp-table-use.s
M lld/test/wasm/lto/Inputs/libcall-archive.ll
M lld/test/wasm/lto/libcall-archive.ll
M lld/test/wasm/lto/stub-library-libcall.s
M lld/test/wasm/multi-table.s
M lld/wasm/InputFiles.cpp
M lld/wasm/SyntheticSections.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/WebAssembly.td
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrBulkMemory.td
M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
M llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
M llvm/test/CodeGen/WebAssembly/call-indirect.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
M llvm/test/CodeGen/WebAssembly/disable-feature.ll
M llvm/test/CodeGen/WebAssembly/function-pointer64.ll
M llvm/test/CodeGen/WebAssembly/reference-types.ll
M llvm/test/CodeGen/WebAssembly/target-features-attrs.ll
M llvm/test/CodeGen/WebAssembly/target-features-cpus.ll
M llvm/test/CodeGen/WebAssembly/target-features-tls.ll
M llvm/test/MC/WebAssembly/extern-functype-intrinsic.ll
M llvm/test/MC/WebAssembly/function-alias.ll
M llvm/test/MC/WebAssembly/libcall.ll
Log Message:
-----------
[WebAssembly] Define call-indirect-overlong and bulk-memory-opt features (#117087)
This defines some new target features. These are subsets of existing
features that reflect implementation concerns:
- "call-indirect-overlong" - implied by "reference-types"; just the
overlong encoding for the `call_indirect` immediate, and not the actual
reference types.
- "bulk-memory-opt" - implied by "bulk-memory": just `memory.copy` and
`memory.fill`, and not the other instructions in the bulk-memory
proposal.
This is split out from https://github.com/llvm/llvm-project/pull/112035.
---------
Co-authored-by: Heejin Ahn <aheejin at gmail.com>
Commit: 7907292daa781aaba2be531a8599998f5fd3f645
https://github.com/llvm/llvm-project/commit/7907292daa781aaba2be531a8599998f5fd3f645
Author: fengfeng <153487255+fengfeng09 at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/AArch64/apply-disjoint-flag-in-dagcombine.ll
Log Message:
-----------
[DAG] Apply Disjoint flag. (#118045)
or disjoint (or disjoint (x, c0), c1)
-->
or disjont x, or (c0, c1)
Alive2: https://alive2.llvm.org/ce/z/3wPth5
---------
Signed-off-by: feng.feng <feng.feng at iluvatar.com>
Commit: 814ed93e48db4d95965258e64e8580056828a264
https://github.com/llvm/llvm-project/commit/814ed93e48db4d95965258e64e8580056828a264
Author: c8ef <c8ef at outlook.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Builtins.td
M clang/lib/AST/ExprConstant.cpp
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/Sema/constant_builtins_vector.cpp
Log Message:
-----------
[clang] constexpr built-in elementwise bitreverse function. (#118177)
Part of #51787.
This patch adds constexpr support for the built-in elementwise
bitreverse function.
Commit: 1724188c19f363c877fcf1bca86d92af3864b338
https://github.com/llvm/llvm-project/commit/1724188c19f363c877fcf1bca86d92af3864b338
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/test/tools/yaml2obj/ELF/note-section.yaml
Log Message:
-----------
[ObjectYAML][ELF] Take alignment into account when generating notes (#118157)
The [System V ABI](https://www.sco.com/developers/gabi/latest/ch5.pheader.html#note_section)
states that the note entries and their descriptor fields must be aligned
to 4 or 8 bytes for 32-bit or 64-bit objects respectively. In practice,
64-bit systems can use both alignments, with the actual format being
determined by the alignment of the segment. For example, the
[Linux gABI extension](https://github.com/hjl-tools/linux-abi/wiki/linux-abi-draft.pdf)
contains a special note on this, see 2.1.7 "Alignment of Note Sections".
This patch adjusts the format of the generated notes to the specified
section alignment. Since `llvm-readobj` was fixed in a similar way in
[D150022](https://reviews.llvm.org/D150022), "[Object] Fix handling of
Elf_Nhdr with sh_addralign=8", the generated notes can now be parsed
successfully by the tool.
Commit: fb140125ac679c33c2c663062c6409e09fc885b9
https://github.com/llvm/llvm-project/commit/fb140125ac679c33c2c663062c6409e09fc885b9
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
Log Message:
-----------
[ORC] Fix typo in comment. NFC.
Commit: 9ea993f975b045679907a0789d6fd4d7180593a0
https://github.com/llvm/llvm-project/commit/9ea993f975b045679907a0789d6fd4d7180593a0
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/lambda-capture-type-deduction.cpp
Log Message:
-----------
[Clang] Recover GLTemplateParameterList for generic lambdas in RebuildLambdaScopeInfo (#118176)
The NTTP argument appearing inside a trailing return type of a generic
lambda would have us check for potential lambda captures, where the
function needs GLTemplateParameterList of the current LSI to tell
whether the lambda is generic.
The lambda scope in this context is rebuilt by the
LambdaScopeForCallOperatorInstantiationRAII when substituting the lambda
operator during template argument deduction. Thus, I think the template
parameter list should be preserved in the rebuilding process, as it
seems otherwise innocuous to me.
Fixes #115931
Commit: eb3f1aec6eff08ce1c76259bb0801f6457a55400
https://github.com/llvm/llvm-project/commit/eb3f1aec6eff08ce1c76259bb0801f6457a55400
Author: LiqinWeng <liqin.weng at spacemit.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
M llvm/test/Analysis/CostModel/RISCV/fp-sqrt-pow.ll
M llvm/test/Analysis/CostModel/RISCV/int-bit-manip.ll
M llvm/test/Analysis/CostModel/RISCV/int-sat-math.ll
Log Message:
-----------
[TTI][RISCV] Implement cost of some intrinsics with LMUL (#117874)
Intrinsics include:
sadd_sat/ssub_sat/uadd_sat/usub_sat/fabs/fsqrt/cttz/ctlz/ctpop
Commit: 95979717e1122d4bb473efef2447ae92c24c9381
https://github.com/llvm/llvm-project/commit/95979717e1122d4bb473efef2447ae92c24c9381
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/test/tools/yaml2obj/ELF/note-section.yaml
Log Message:
-----------
Revert "[ObjectYAML][ELF] Take alignment into account when generating notes (#118157)"
This reverts commit 1724188c19f363c877fcf1bca86d92af3864b338.
Some build bots reported a failure in the updated test
Commit: fc9052ee258e35c5aaba3dc2c1419870975f3a7a
https://github.com/llvm/llvm-project/commit/fc9052ee258e35c5aaba3dc2c1419870975f3a7a
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Check __builtin_memcpy for null pointers (#118313)
Commit: 2af2634c64b1c6f34c4905b24863b930effe3b9c
https://github.com/llvm/llvm-project/commit/2af2634c64b1c6f34c4905b24863b930effe3b9c
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
Log Message:
-----------
[RISCV] Use vcompress in deinterleave2 intrinsic lowering (#118325)
This is analogous to febbf91 which added shuffle lowering using
vcompress; we can do the same thing in the deinterleave2 lowering path
which is used for scalable vectors.
Note that we can further improve this for high lmul usage by adjusting
how we materialize the mask (whose result is at most m1 with a known bit
pattern). I am deliberately staging the work so that the changes to
reduce register pressure are more easily evaluated on their own merit.
Commit: 2f5bfb41e2e0c4178627a3492beed35f8143ce2f
https://github.com/llvm/llvm-project/commit/2f5bfb41e2e0c4178627a3492beed35f8143ce2f
Author: hstk30-hw <hanwei62 at huawei.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/tools/llvm-objdump/ELF/AArch64/mattr.s
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[llvm-objdump] Default to --mattr=+all for AArch64be and AArch64_32 (#118311)
GNU objdump disassembles all unknown instructions by default.
Complement for [D128030](https://reviews.llvm.org/D128030)ă
Commit: 877b934831d491e4388b82794cded417b1b11862
https://github.com/llvm/llvm-project/commit/877b934831d491e4388b82794cded417b1b11862
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
Log Message:
-----------
[CompilerRT] Remove sanitizer support for i386 watchsim (#117013)
This patch removes remaining support for i386 simulators, watch was the
only one left though.
resolves: rdar://102741146
Commit: 295d6b18f77fc67c186c031204a82ff82cf59daa
https://github.com/llvm/llvm-project/commit/295d6b18f77fc67c186c031204a82ff82cf59daa
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/test/Transforms/InstCombine/lshr.ll
Log Message:
-----------
[InstCombine] Fold `(X * (Y << K)) u>> K -> X * Y` when highbits are not demanded (#111151)
Alive2: https://alive2.llvm.org/ce/z/Z7QgjH
Commit: 6ef4990daa1da215b25b1802f5d03cf1044f72bf
https://github.com/llvm/llvm-project/commit/6ef4990daa1da215b25b1802f5d03cf1044f72bf
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
Log Message:
-----------
Re-apply "[ORC] Track all dependencies on symbols that aren't..." with fixes.
This reapplies 427fb5cc5ac, which was reverted in 08c1a6b3e18 due to bot
failures.
The fix was to remove an incorrect assertion: In IL_emit, during the initial
worklist loop, an EDU can have all of its dependencies removed without becoming
ready (because it may still have implicit dependencies that will be added back
during the subsequent propagateExtraEmitDeps operation). The EDU will be marked
Ready at the end of IL_emit if its Dependencies set is empty at that point.
Prior to that we can only assert that it's either Emitted or Ready (which is
already covered by other assertions).
Commit: aba6bb0820b247d4caf4b5e00810909214a58053
https://github.com/llvm/llvm-project/commit/aba6bb0820b247d4caf4b5e00810909214a58053
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
[ORC][JITLink] Add jitlink::Scope::SideEffectsOnly, use it in ORC Platforms.
SideEffectsOnly is a new jitlink::Scope value that corresponds to the
JITSymbolFlags::MaterializationSideEffectsOnly flag: Symbols with this scope
can be looked up (and form part of the initial interface of a LinkGraph) but
never actually resolve to an address (so can only be looked up with a
WeaklyReferencedSymbol lookup).
Previously ObjectLinkingLayer implicitly treated JITLink symbols as having this
scope, regardless of a Symbol's actual scope, if the
MaterializationSideEffectsOnly flag was set on the corresponding symbol in the
MaterializationResponsibility object. Using an explicit scope in JITLink for
this (1) allows JITLink plugins to identify and correctly handle
side-effects-only symbols, and (2) allows raw LinkGraphs to define
side-effects-only symbols without clients having to manually modify their
`MaterializationUnit::Interface`.
Commit: 28e2a8912102ac442166a593f2efb15c5bd30346
https://github.com/llvm/llvm-project/commit/28e2a8912102ac442166a593f2efb15c5bd30346
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
Revert "[ORC][JITLink] Add jitlink::Scope::SideEffectsOnly, use it in ORC Platforms."
This reverts commit aba6bb0820b247d4caf4b5e00810909214a58053 while I investigate bot
failures (e.g. https://lab.llvm.org/buildbot/#/builders/143/builds/3848)
Commit: dac9736d05f51b47633b51d599a07ff8d1d65df3
https://github.com/llvm/llvm-project/commit/dac9736d05f51b47633b51d599a07ff8d1d65df3
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Diagnose no-constexpr memcpy/strlen versions (#118429)
Commit: de415fbb450d0e15c535f0ccc135e2368a15bf6f
https://github.com/llvm/llvm-project/commit/de415fbb450d0e15c535f0ccc135e2368a15bf6f
Author: Rajat Bajpai <rbajpai at nvidia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/fcmp-fadd-select.ll
M llvm/test/Transforms/InstCombine/fcmp-select.ll
M llvm/test/Transforms/InstCombine/fneg.ll
M llvm/test/Transforms/InstCombine/minmax-fp.ll
M llvm/test/Transforms/InstCombine/unordered-fcmp-select.ll
Log Message:
-----------
[InstCombine][FP] Fix nnan preservation for transform fcmp + sel => fmax/fmin (#117977)
Preserve `nnan` constraint only if present on both `fcmp` and `select`.
Alive2: https://alive2.llvm.org/ce/z/ZNDjzt
Commit: 45162635bf657eb0a6cdebc6398fada974981c64
https://github.com/llvm/llvm-project/commit/45162635bf657eb0a6cdebc6398fada974981c64
Author: Thorsten SchĂŒtt <schuett at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
M llvm/test/CodeGen/AArch64/extract-vector-elt.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-amdgpu-cvt-f32-ubyte.mir
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
Log Message:
-----------
[GlobalISel] Combine [s,z]ext of undef into 0 (#117439)
Alternative for https://github.com/llvm/llvm-project/pull/113764
It builds on a minimalistic approach with the legality check in match
and a blind apply. The precise patterns are used for better compile-time
and modularity. It also moves the pattern check into combiner. While
unary_undef_to_zero and propagate_undef_any_op rely on custom C++ code
for pattern matching.
Is there a limit on the number of patterns?
G_ANYEXT of undef -> undef
G_SEXT of undef -> 0
G_ZEXT of undef -> 0
The combine is not a member of the post legalizer combiner for AArch64.
Test:
llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
Commit: 789551362e20c1adf1f292a256b7276c2045d4e1
https://github.com/llvm/llvm-project/commit/789551362e20c1adf1f292a256b7276c2045d4e1
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Handle memmove like memcpy (#118431)
This is the same thing for us, except for diagnostic differences.
Commit: e776484a02194986028424ef5a5a782de0a681c2
https://github.com/llvm/llvm-project/commit/e776484a02194986028424ef5a5a782de0a681c2
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/include/llvm/Support/InstructionCost.h
Log Message:
-----------
[InstructionCost] Optimize operator==
`!(*this < RHS) && !(RHS < *this)` is difficult for the optimizer to
reason about.
Commit: 83cbb170449b17aa3e1ada514c94d9e9b4f0fca6
https://github.com/llvm/llvm-project/commit/83cbb170449b17aa3e1ada514c94d9e9b4f0fca6
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
Log Message:
-----------
[AMDGPU] Refine AMDGPUAtomicOptimizerImpl class. NFC. (#118302)
Use references instead of pointers for most state and common up some of
the initialization between the legacy and new pass manager paths.
Commit: 9692242f51eda6a8c33860d2879ffa291a27e3ca
https://github.com/llvm/llvm-project/commit/9692242f51eda6a8c33860d2879ffa291a27e3ca
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-02 (Mon, 02 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/double-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-convert.ll
Log Message:
-----------
[RISCV][GISel] Support f64->f32 fptrunc and f32->f64 fpext without D extension.
Add RUN lines to float-convert.ll and double-convert.ll without F
extension.
Commit: d09707070c7460d0887eae8f7022e816510d5eb1
https://github.com/llvm/llvm-project/commit/d09707070c7460d0887eae8f7022e816510d5eb1
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp
M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
Log Message:
-----------
Re-apply "[ORC][JITLink] Add jitlink::Scope::SideEffectsOnly" with fixes.
This reapplies aba6bb0820b, which was reverted in 28e2a891210 due to bot
failures. It contains fixes to silence warnings for uncovered switches,
and for incorrect initializer-symbol handling on ELF and COFF.
Commit: c1ad064dd3b9a1bf503bb8cd6d0d0418a05d10e8
https://github.com/llvm/llvm-project/commit/c1ad064dd3b9a1bf503bb8cd6d0d0418a05d10e8
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-binop.ll
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/pr17827.ll
Log Message:
-----------
[InstCombine] Fold `icmp spred (and X, highmask), C1` into `icmp spred X, C2` (#118197)
Alive2: https://alive2.llvm.org/ce/z/Ffg64g
Closes https://github.com/llvm/llvm-project/issues/104772.
Commit: 46446bb2d31a7e3b2f857613b190150d41734696
https://github.com/llvm/llvm-project/commit/46446bb2d31a7e3b2f857613b190150d41734696
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Diagnose non-constexpr builtin strcmp calls (#118442)
Commit: e30d304d72ac9a70671268c50ee850c2f0c42ba3
https://github.com/llvm/llvm-project/commit/e30d304d72ac9a70671268c50ee850c2f0c42ba3
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
A llvm/test/Transforms/MemCpyOpt/memset-memmove-redundant-memmove.ll
Log Message:
-----------
[MemCpyOpt] Introduce test for PR101930 (NFC)
Commit: 1d6ab189be031bf723abf35f772fbd5d4c86c612
https://github.com/llvm/llvm-project/commit/1d6ab189be031bf723abf35f772fbd5d4c86c612
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/test/Transforms/MemCpyOpt/memset-memmove-redundant-memmove.ll
Log Message:
-----------
[MemCpyOpt] Drop dead `memmove` calls on `memset`'d source data
When a memmove happens to clobber source data, and such data have
been previously memset'd, the memmove may be redundant.
Commit: 5b0f4f2cb040f472d41870ba99ae45fc1022188f
https://github.com/llvm/llvm-project/commit/5b0f4f2cb040f472d41870ba99ae45fc1022188f
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/test/Transforms/GVN/setjmp.ll
Log Message:
-----------
[BasicAA] Treat returns_twice functions as clobbering unescaped objects (#117902)
Effectively this models all the accesses that occur between the first
and second return as happening at the point of the call.
Fixes https://github.com/llvm/llvm-project/issues/116668.
Commit: a871124f8709f6b5e837c6044ce7df056f52292a
https://github.com/llvm/llvm-project/commit/a871124f8709f6b5e837c6044ce7df056f52292a
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
A flang/test/HLFIR/opt-bufferization-eval_in_mem.fir
Log Message:
-----------
[flang][hlfir] optimize hlfir.eval_in_mem bufferization (#118069)
This patch extends the optimize bufferization to deal with the new
hlfir.eval_in_mem and move the evaluation contained in its body to
operate directly over the LHS when it can prove there are no access to
the LHS inside the region (and that the LHS is contiguous).
This will allow the array function call optimization when lowering is
changed to produce an hlfir.eval_in_mem in the next patch.
Commit: cd7e65398fbbd9642573013800dc3ae1e7307f82
https://github.com/llvm/llvm-project/commit/cd7e65398fbbd9642573013800dc3ae1e7307f82
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M flang/include/flang/Lower/ConvertCall.h
M flang/include/flang/Optimizer/HLFIR/HLFIRDialect.h
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/test/HLFIR/order_assignments/where-scheduling.f90
A flang/test/Lower/HLFIR/calls-array-results.f90
M flang/test/Lower/HLFIR/where-nonelemental.f90
M flang/test/Lower/explicit-interface-results-2.f90
M flang/test/Lower/explicit-interface-results.f90
M flang/test/Lower/forall/array-constructor.f90
Log Message:
-----------
[flang] optimize array function calls using hlfir.eval_in_mem (#118070)
This patch encapsulate array function call lowering into
hlfir.eval_in_mem and allows directly evaluating the call into the LHS
when possible.
The conditions are: LHS is contiguous, not accessed inside the function,
it is not a whole allocatable, and the function results needs not to be
finalized. All these conditions are tested in the previous hlfir.eval_in_mem
optimization (#118069) that is leveraging the extension of getModRef to
handle function calls(#117164).
This yields a 25% speed-up on polyhedron channel2 benchmark (from 1min
to 45s measured on an X86-64 Zen 2).
Commit: fed3a9b8f81f5f4450e515f4499ecfda95804e95
https://github.com/llvm/llvm-project/commit/fed3a9b8f81f5f4450e515f4499ecfda95804e95
Author: Andrzej WarzyĆski <andrzej.warzynski at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
A mlir/include/mlir/IR/VectorTypes.h
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
Log Message:
-----------
[mlir] Add ScalableVectorType and FixedVectorType (#87986)
This PR adds two small convenience Vector types:
* `ScalableVectorType` and `FixedVectorType`.
The goal of these new types is two-fold:
* Enable idiomatic checks like `isa<ScalableVectorType>(...)`.
* Make the split into "Scalable" and "Fixed-wdith" vectors a bit more
explicit and more visible in the code-base.
The new types are added in mlir/include/mlir/IR (instead of e.g.
mlir/include/mlir/Dialect/Vector) so that the new types can be used
without requiring any new dependency (e.g. on the Vector dialect).
Commit: 59bb9b915ef9137709313190395da56364b92db6
https://github.com/llvm/llvm-project/commit/59bb9b915ef9137709313190395da56364b92db6
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/include/lldb/API/SBAddressRangeList.h
M lldb/include/lldb/API/SBFunction.h
M lldb/include/lldb/Core/AddressRangeListImpl.h
M lldb/include/lldb/Symbol/Function.h
M lldb/source/API/SBFunction.cpp
M lldb/source/Core/AddressRangeListImpl.cpp
A lldb/test/Shell/ScriptInterpreter/Python/sb_function_ranges.s
Log Message:
-----------
[lldb] Expose discontinuous functions through SBFunction::GetRanges (#117532)
SBFunction::GetEndAddress doesn't really make sense for discontinuous
functions, so I'm declaring it deprecated. GetStartAddress sort of makes
sense, if one uses it to find the functions entry point, so I'm keeping
that undeprecated.
I've made the test a Shell tests because these make it easier to create
discontinuous functions regardless of the host os and architecture. They
do make testing the python API harder, but I think I've managed to come
up with something not entirely unreasonable.
Commit: 78e35e4c0eea6c2f8184f7b98e6a385e981512db
https://github.com/llvm/llvm-project/commit/78e35e4c0eea6c2f8184f7b98e6a385e981512db
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
Log Message:
-----------
[ValueTracking] Fix typo in `isKnownNegative` and `MaskedValueIsZero` NFC. (#118438)
Fix typos introduced by
https://github.com/llvm/llvm-project/commit/d9e8ae7d2f74fff629a8be10835677ce8039d452
and
https://github.com/llvm/llvm-project/commit/42b6c8ed3ae44ed61af5ba81bdaa5b81a9ce61ad.
Commit: dd2b2b8bbbf4e917a84efe94cbeaaab2ed350fc9
https://github.com/llvm/llvm-project/commit/dd2b2b8bbbf4e917a84efe94cbeaaab2ed350fc9
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/test/CodeGenHLSL/builtins/GroupMemoryBarrierWithGroupSync.hlsl
A clang/test/SemaHLSL/BuiltIns/GroupMemoryBarrierWithGroupSync-errors.hlsl
Log Message:
-----------
[clang][HLSL] Add GroupMemoryBarrierWithGroupSync intrinsic (#111883)
partially fixes #70103
### Changes
* Implemented `GroupMemoryBarrierWithGroupSync` clang builtin
* Linked `GroupMemoryBarrierWithGroupSync` clang builtin with
`hlsl_intrinsics.h`
* Added sema checks for `GroupMemoryBarrierWithGroupSync` to
`CheckHLSLBuiltinFunctionCall` in
`SemaChecking.cpp`
* Add codegen for `GroupMemoryBarrierWithGroupSync` to
`EmitHLSLBuiltinExpr` in `CGBuiltin.cpp`
* Add codegen tests to
`clang/test/CodeGenHLSL/builtins/GroupMemoryBarrierWithGroupSync.hlsl`
* Add sema tests to
`clang/test/SemaHLSL/BuiltIns/GroupMemoryBarrierWithGroupSync-errors.hlsl`
### Related PRs
* [[DXIL] Add GroupMemoryBarrierWithGroupSync intrinsic
#111884](https://github.com/llvm/llvm-project/pull/111884)
* [[SPIRV] Add GroupMemoryBarrierWithGroupSync intrinsic
#111888](https://github.com/llvm/llvm-project/pull/111888)
Commit: 89a0ee89973c3d213c4bc11c26b41eab67e06da0
https://github.com/llvm/llvm-project/commit/89a0ee89973c3d213c4bc11c26b41eab67e06da0
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Handle __builtin_wcslen (#118446)
... just like strlen.
Commit: ba14dac481564000339ba22ab867617590184f4c
https://github.com/llvm/llvm-project/commit/ba14dac481564000339ba22ab867617590184f4c
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/include/lldb/Symbol/Function.h
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Symbol/Function.cpp
M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-function.s
M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
Log Message:
-----------
[lldb] Use the function block as a source for function ranges (#117996)
This is a follow-up/reimplementation of #115730. While working on that
patch, I did not realize that the correct (discontinuous) set of ranges
is already stored in the block representing the whole function. The
catch -- ranges for this block are only set later, when parsing all of
the blocks of the function.
This patch changes that by populating the function block ranges eagerly
-- from within the Function constructor. This also necessitates a
corresponding change in all of the symbol files -- so that they stop
populating the ranges of that block. This allows us to avoid some
unnecessary work (not parsing the function DW_AT_ranges twice) and also
results in some simplification of the parsing code.
Commit: 2526d5b1689389da9b194b5ec2878cfb2f4aca93
https://github.com/llvm/llvm-project/commit/2526d5b1689389da9b194b5ec2878cfb2f4aca93
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/include/lldb/Symbol/Function.h
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Symbol/Function.cpp
M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-function.s
M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
Log Message:
-----------
Revert "[lldb] Use the function block as a source for function ranges (#117996)"
This reverts commit ba14dac481564000339ba22ab867617590184f4c. I guess
"has no conflicts" doesn't mean "it will build".
Commit: bfb26202e05ee2932b4368b5fca607df01e8247f
https://github.com/llvm/llvm-project/commit/bfb26202e05ee2932b4368b5fca607df01e8247f
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
Log Message:
-----------
LV/test: clean up a test and regen with UTC (#118394)
Commit: 4849d593ab07c47f9f520bea636f62d159d57006
https://github.com/llvm/llvm-project/commit/4849d593ab07c47f9f520bea636f62d159d57006
Author: Maksim Ivanov <emaxx at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaType.cpp
M clang/test/SemaCXX/attr-lifetimebound.cpp
Log Message:
-----------
[clang] Warn [[clang::lifetimebound]] misusages on types (#118281)
Emit the "cannot be applied to types" warning instead of silently
ignoring the attribute when it's attempted to be used on a type (instead
of a function argument or the function definition).
Before this commit, the warning has been printed when the attribute was
(mis)used on a decl-specifier, but not in other places in a declarator.
Examples where the warning starts being emitted with this commit:
```
int * [[clang::lifetimebound]] x;
void f(int * [[clang::lifetimebound]] x);
void g(int * [[clang::lifetimebound]]);
```
Note that the last example is the case of an unnamed function parameter.
While in theory Clang could've supported the `[[clang::lifetimebound]]`
analysis for unnamed parameters, it doesn't currently, so the commit at
least makes the situation better by highlighting this as a warning
instead of a silent ignore - which was reported at #96034.
Commit: 0f4dc4276f8dd5c5e33c22096612702ede3c81ed
https://github.com/llvm/llvm-project/commit/0f4dc4276f8dd5c5e33c22096612702ede3c81ed
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Initialize elements in __builtin_elementwise_popcount (#118457)
Commit: 4dafb091a0336a6669e6369cb69ef1ea1b39578d
https://github.com/llvm/llvm-project/commit/4dafb091a0336a6669e6369cb69ef1ea1b39578d
Author: Julian Nagele <j.nagele at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/Config/abi-breaking.h.cmake
Log Message:
-----------
Revert "Add symbol visibility macros to abi-breaking.h.cmake" (#118464)
Reverts llvm/llvm-project#110898
This change has caused a cyclic module dependency `fatal error: cyclic
dependency in module 'LLVM_Utils': LLVM_Utils ->
LLVM_Config_ABI_Breaking -> LLVM_Utils`. Reverting for now until we the
right fix.
Commit: 7d7252590916bcd540c7bd4158b9d52af7a0d547
https://github.com/llvm/llvm-project/commit/7d7252590916bcd540c7bd4158b9d52af7a0d547
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/stack-tagging-merge-past-memcpy.mir
Log Message:
-----------
[AArch64] Fix STG instruction being moved past memcpy (#117191)
When merging STG instructions used for AArch64 stack tagging, we were
stopping on reaching a load or store instruction, but not calls, so it
was possible for an STG to be moved past a call to memcpy.
This test case (reduced from fuzzer-generated C code) was the result of
StackColoring merging allocas A and B into one stack slot, and
StackSafetyAnalysis proving that B does not need tagging, so we end up
with tagged and untagged objects in the same stack slot. The tagged
object (A) is live first, so it is important that it's memory is
restored to the background tag before it gets reused to hold B.
Commit: 9c5a84b394518cb8087eb0b14e9b55244adb61e7
https://github.com/llvm/llvm-project/commit/9c5a84b394518cb8087eb0b14e9b55244adb61e7
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-gep.ll
Log Message:
-----------
[InstCombine] Support nusw in icmp of gep with base
Proof: https://alive2.llvm.org/ce/z/omnQXt
Commit: bdc6faf775bc52b5225013312149dfba21f88aa2
https://github.com/llvm/llvm-project/commit/bdc6faf775bc52b5225013312149dfba21f88aa2
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-gep.ll
Log Message:
-----------
[InstCombine] Support nusw in icmp of two geps with same base
Proof: https://alive2.llvm.org/ce/z/BYNQ7s
Commit: 3f39c5df08d4ca1e7f852908e9fb255db24538da
https://github.com/llvm/llvm-project/commit/3f39c5df08d4ca1e7f852908e9fb255db24538da
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Reject memcpy dummy pointers after null check (#118460)
To match the diagnostic output of the current interpreter.
Commit: 51b74bb9f6457cbe53776a2a35296189c5db52f3
https://github.com/llvm/llvm-project/commit/51b74bb9f6457cbe53776a2a35296189c5db52f3
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/include/lldb/Symbol/Function.h
M lldb/source/API/SBFunction.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Symbol/Function.cpp
M lldb/test/Shell/ScriptInterpreter/Python/sb_function_ranges.s
M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-function.s
M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
Log Message:
-----------
Reapply "[lldb] Use the function block as a source for function ranges (#117996)"
This reverts commit 2526d5b1689389da9b194b5ec2878cfb2f4aca93, reapplying
ba14dac481564000339ba22ab867617590184f4c after fixing the conflict with
#117532. The change is that Function::GetAddressRanges now recomputes
the returned value instead of returning the member. This means it now
returns a value instead of a reference type.
Commit: 9a4c5a59d4ec0c582f56b221a64889c077f68376
https://github.com/llvm/llvm-project/commit/9a4c5a59d4ec0c582f56b221a64889c077f68376
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Log Message:
-----------
Revert "Re-apply [lldb] Do not use LC_FUNCTION_STARTS data to determine symbol size as symbols are created (#117079)"
This reverts commit ba668eb99c5dc37d3c5cf2775079562460fd7619.
Below test started failing again on x86_64 macOS CI. We're unsure
if this patch is the exact cause, but since this patch has broken
this test before, we speculatively revert it to see if it was indeed
the root cause.
```
FAIL: lldb-shell :: Unwind/trap_frame_sym_ctx.test (1692 of 2162)
******************** TEST 'lldb-shell :: Unwind/trap_frame_sym_ctx.test' FAILED ********************
Exit Code: 1
Command Output (stderr):
--
RUN: at line 7: /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/bin/clang --target=specify-a-target-or-use-a-_host-substitution --target=x86_64-apple-darwin22.6.0 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -fmodules-cache-path=/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/lldb-test-build.noindex/module-cache-clang/lldb-shell /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/Inputs/call-asm.c /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/Inputs/trap_frame_sym_ctx.s -o /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/tools/lldb/test/Shell/Unwind/Output/trap_frame_sym_ctx.test.tmp
+ /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/bin/clang --target=specify-a-target-or-use-a-_host-substitution --target=x86_64-apple-darwin22.6.0 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -fmodules-cache-path=/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/lldb-test-build.noindex/module-cache-clang/lldb-shell /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/Inputs/call-asm.c /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/Inputs/trap_frame_sym_ctx.s -o /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/tools/lldb/test/Shell/Unwind/Output/trap_frame_sym_ctx.test.tmp
clang: warning: argument unused during compilation: '-fmodules-cache-path=/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/lldb-test-build.noindex/module-cache-clang/lldb-shell' [-Wunused-command-line-argument]
RUN: at line 8: /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/bin/lldb --no-lldbinit -S /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/tools/lldb/test/Shell/lit-lldb-init-quiet /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/tools/lldb/test/Shell/Unwind/Output/trap_frame_sym_ctx.test.tmp -s /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/trap_frame_sym_ctx.test -o exit | /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/bin/FileCheck /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/trap_frame_sym_ctx.test
+ /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/bin/lldb --no-lldbinit -S /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/tools/lldb/test/Shell/lit-lldb-init-quiet /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/tools/lldb/test/Shell/Unwind/Output/trap_frame_sym_ctx.test.tmp -s /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/trap_frame_sym_ctx.test -o exit
+ /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/lldb-build/bin/FileCheck /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/trap_frame_sym_ctx.test
/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/trap_frame_sym_ctx.test:21:10: error: CHECK: expected string not found in input
^
<stdin>:26:64: note: scanning from here
frame #1: 0x0000000100003ee9 trap_frame_sym_ctx.test.tmp`tramp
^
<stdin>:27:2: note: possible intended match here
frame #2: 0x00007ff7bfeff6c0
^
Input file: <stdin>
Check file: /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake/llvm-project/lldb/test/Shell/Unwind/trap_frame_sym_ctx.test
-dump-input=help explains the following input dump.
Input was:
<<<<<<
.
.
.
21: 0x100003ed1 <+0>: pushq %rbp
22: 0x100003ed2 <+1>: movq %rsp, %rbp
23: (lldb) thread backtrace -u
24: * thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
25: * frame #0: 0x0000000100003ecc trap_frame_sym_ctx.test.tmp`bar
26: frame #1: 0x0000000100003ee9 trap_frame_sym_ctx.test.tmp`tramp
check:21'0 X error: no match found
27: frame #2: 0x00007ff7bfeff6c0
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:21'1 ? possible intended match
28: frame #3: 0x0000000100003ec6 trap_frame_sym_ctx.test.tmp`main + 22
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
29: frame #4: 0x0000000100003ec6 trap_frame_sym_ctx.test.tmp`main + 22
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30: frame #5: 0x00007ff8193cc41f dyld`start + 1903
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31: (lldb) exit
check:21'0 ~~~~~~~~~~~~
>>>>>>
```
Commit: f4ce7e037828eaf3720c9169e94e85b7a106deba
https://github.com/llvm/llvm-project/commit/f4ce7e037828eaf3720c9169e94e85b7a106deba
Author: Jerry-Ge <jerry.ge at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
Log Message:
-----------
[MLIR][TOSA] Update PowOp output name from z to output (#118407)
To match the latest specification:
https://www.mlplatform.org/tosa/tosa_spec.html#_pow
Signed-off-by: Jerry Ge <jerry.ge at arm.com>
Commit: 356df2dd72e8299b5de58e9390283110c19f7c76
https://github.com/llvm/llvm-project/commit/356df2dd72e8299b5de58e9390283110c19f7c76
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaType.cpp
M clang/test/SemaCXX/attr-lifetimebound.cpp
Log Message:
-----------
Revert "[clang] Warn [[clang::lifetimebound]] misusages on types (#118281)"
Temporarily revert the patch to give downstream teams some time to clean up their codebases.
This reverts commit 4849d593ab07c47f9f520bea636f62d159d57006.
Commit: 62923275565e3a0f288146f2ce0569fe2ac26bf5
https://github.com/llvm/llvm-project/commit/62923275565e3a0f288146f2ce0569fe2ac26bf5
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
R lld/CODE_OWNERS.TXT
A lld/Maintainers.md
M llvm/Maintainers.md
Log Message:
-----------
[lld] Convert CODE_OWNERS.txt to Maintainers.md (#118084)
To align with https://llvm.org/docs/DeveloperPolicy.html#maintainers
I've moved the file and changed it to markdown to match `llvm/`'s file.
Commit: aec9ecbcca2a3337a7d52130ab8f61a2ff151429
https://github.com/llvm/llvm-project/commit/aec9ecbcca2a3337a7d52130ab8f61a2ff151429
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[github] Change "code owners" note to refer to "maintainers" (#118087)
Commit: b2df0074134add80ba3a483a479601b00a9f9fc7
https://github.com/llvm/llvm-project/commit/b2df0074134add80ba3a483a479601b00a9f9fc7
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
A llvm/test/CodeGen/X86/no-trap-after-noreturn-fastisel.ll
Log Message:
-----------
[FastISel] Support unreachable with NoTrapAfterNoReturn (#118296)
Currently FastISel triggers a fallback if there is an unreachable
terminator and the TrapUnreachable option is enabled (the ISD::TRAP
selection does not actually work).
Add handling for NoTrapAfterNoReturn, in which case we don't actually
need to emit a trap. The test is just there to make sure there is no
FastISel fallback (which is why I'm not testing the case without
noreturn). We have other tests that check the actual unreachable codegen
variations.
Commit: 61c2ac03d85f731d75cda23d1918f03d0cb962dc
https://github.com/llvm/llvm-project/commit/61c2ac03d85f731d75cda23d1918f03d0cb962dc
Author: Timm BĂ€der <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
Revert "[clang][bytecode] Handle __builtin_wcslen (#118446)"
This reverts commit 89a0ee89973c3d213c4bc11c26b41eab67e06da0.
This breaks builders:
https://lab.llvm.org/buildbot/#/builders/13/builds/3885
Commit: 807544561310d49b51915f365b7521412d68c219
https://github.com/llvm/llvm-project/commit/807544561310d49b51915f365b7521412d68c219
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
A llvm/test/Transforms/LoopVectorize/load-deref-pred-neg-off.ll
Log Message:
-----------
[LoopVectorize] Add tests for dereferenceable loads in more loops (#118470)
* Adds tests for strided accesses.
* Adds tests for reverse loops.
As part of this I've moved one of the negative tests from
load-deref-pred-align.ll into a new file
(load-deref-pred-neg-off.ll) because the pointer type had a
size of 16 bits and I realised it's probably not sensible for
allocas that are >16 bits in size!
Commit: 5f99eb9b138d7059b2a1f53adea0a58314761f65
https://github.com/llvm/llvm-project/commit/5f99eb9b138d7059b2a1f53adea0a58314761f65
Author: Nathan Gauër <brioche at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
A llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
A llvm/test/CodeGen/SPIRV/pointers/variables-storage-class-vk.ll
M llvm/test/CodeGen/SPIRV/pointers/variables-storage-class.ll
Log Message:
-----------
[SPIR-V] Fixup storage class for global private (#118318)
Re-land of #116636
Adds a new address spaces: hlsl_private. Variables with such address
space will be emitted with a Private storage class.
This is useful for variables global to a SPIR-V module, since up to now,
they were still emitted with a Function storage class, which is wrong.
---------
Signed-off-by: Nathan Gauër <brioche at google.com>
Commit: 4a6ecd38218219ede3df34eeea72f3ffccec3413
https://github.com/llvm/llvm-project/commit/4a6ecd38218219ede3df34eeea72f3ffccec3413
Author: Viktoria Maximova <viktoria.maksimova at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_media_block_io/builtin-op-wrappers.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_media_block_io/cl_intel_media_block_io.ll
Log Message:
-----------
Add support for SPIR-V extension: SPV_INTEL_media_block_io (#118024)
This changes implements SPV_INTEL_media_block_io extension in SPIR-V
backend.
Commit: a63931292bad148a3498fdb30bbccb43844aee86
https://github.com/llvm/llvm-project/commit/a63931292bad148a3498fdb30bbccb43844aee86
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[X86] Fix typo of gracemont (#118486)
Commit: 81d82cac8c4cbd006bf991fd7380de2d72858d1c
https://github.com/llvm/llvm-project/commit/81d82cac8c4cbd006bf991fd7380de2d72858d1c
Author: macurtis-amd <macurtis at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Flang.cpp
A flang/test/Driver/pp-fixed-form.f90
Log Message:
-----------
[flang] Treat pre-processed input as fixed (#117563)
Fixes an issue introduced by
9fb2db1e1f42 [flang] Retain spaces when preprocessing fixed-form source
Where flang -fc1 fails to parse preprocessor output because it now
remains in fixed form.
Commit: f33536468b7f05c05c8cf8088427b0b5b665eb65
https://github.com/llvm/llvm-project/commit/f33536468b7f05c05c8cf8088427b0b5b665eb65
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-gep.ll
Log Message:
-----------
[InstCombine] Support gep nuw in icmp folds (#118472)
Unsigned icmp of gep nuw folds to unsigned icmp of offsets. Unsigned
icmp of gep nusw nuw folds to unsigned samesign icmp of offsets.
Proofs: https://alive2.llvm.org/ce/z/VEwQY8
Commit: 51a895aded890e90493be59f7af0fa5a3b9b85aa
https://github.com/llvm/llvm-project/commit/51a895aded890e90493be59f7af0fa5a3b9b85aa
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/InstructionSimplify.h
M llvm/include/llvm/Analysis/ValueTracking.h
A llvm/include/llvm/IR/CmpPredicate.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/unittests/IR/InstructionsTest.cpp
Log Message:
-----------
IR: introduce struct with CmpInst::Predicate and samesign (#116867)
Introduce llvm::CmpPredicate, an abstraction over a floating-point
predicate, and a pack of an integer predicate with samesign information,
in order to ease extending large portions of the codebase that take a
CmpInst::Predicate to respect the samesign flag.
We have chosen to demonstrate the utility of this new abstraction by
migrating parts of ValueTracking, InstructionSimplify, and InstCombine
from CmpInst::Predicate to llvm::CmpPredicate. There should be no
functional changes, as we don't perform any extra optimizations with
samesign in this patch, or use CmpPredicate::getMatching.
The design approach taken by this patch allows for unaudited callers of
APIs that take a llvm::CmpPredicate to silently drop the samesign
information; it does not pose a correctness issue, and allows us to
migrate the codebase piece-wise.
Commit: ff0babc9172b42a3e9f552d6959f9d98ae450633
https://github.com/llvm/llvm-project/commit/ff0babc9172b42a3e9f552d6959f9d98ae450633
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/literals.cpp
Log Message:
-----------
[clang][bytecode] Fix discarded pointer subtractions (#118477)
We need to pop the value.
Commit: 2a0ee090dbb9af80222bc796ac34fd4b7cba421b
https://github.com/llvm/llvm-project/commit/2a0ee090dbb9af80222bc796ac34fd4b7cba421b
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
IVDesc: strip redundant arg in getOpcode call (NFC) (#118476)
Commit: e1cb316cfd99208363b5eb9bf96430ca28020be0
https://github.com/llvm/llvm-project/commit/e1cb316cfd99208363b5eb9bf96430ca28020be0
Author: Vladislav Belov <vladislav.belov at syntacore.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/CXXInheritance.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
Reapply "[clang] Fix name lookup for dependent bases" (#118003)
Unlike the previous version
(https://github.com/llvm/llvm-project/pull/114978), this patch also
removes an unnecessary assert that causes Clang to crash when compiling
such tests. (clang/lib/AST/DeclCXX.cpp)
https://lab.llvm.org/buildbot/#/builders/52/builds/4021
```c++
template <class T>
class X {
public:
X() = default;
virtual ~X() = default;
virtual int foo(int x, int y, T &entry) = 0;
void bar() {
struct Y : public X<T> {
Y() : X() {}
int foo(int, int, T &) override {
return 42;
}
};
}
};
```
the assertions:
```c++
llvm-project/clang/lib/AST/DeclCXX.cpp:2508: void clang::CXXMethodDecl::addOverriddenMethod(const CXXMethodDecl *): Assertion `!MD->getParent()->isDependentContext() && "Can't add an overridden method to a class template!"' failed.
```
I believe that this assert is unnecessary and contradicts the logic of
this patch. After its removal, Clang was successfully built using
itself, and all tests passed.
Commit: 7802fb5f514be327576b69569556ec9096e5fdd7
https://github.com/llvm/llvm-project/commit/7802fb5f514be327576b69569556ec9096e5fdd7
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/vectors.cpp
Log Message:
-----------
[clang][bytecode] Fix `__extension__` handling for vector operators (#118482)
Don't reject them, but delegate to the subexpression.
Commit: 8c749ff8aa787049cea4d4f7331493ee17565344
https://github.com/llvm/llvm-project/commit/8c749ff8aa787049cea4d4f7331493ee17565344
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
M lldb/test/Shell/SymbolFile/DWARF/x86/find-basic-type.cpp
Log Message:
-----------
[lldb] Fix "exact match" debug_names type queries (#118465)
.. in the global namespace
The problem was the interaction of #116989 with an optimization in
GetTypesWithQuery. The optimization was only correct for non-exact
matches, but that didn't matter before this PR due to the "second layer
of defense". After that was removed, the query started returning more
types than it should.
Commit: 57907c1a96e82c17b16111b919ab7c0f3d4370ab
https://github.com/llvm/llvm-project/commit/57907c1a96e82c17b16111b919ab7c0f3d4370ab
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/return-const-ref-from-parameter.cpp
Log Message:
-----------
[clang-tidy] ignore `[[clang::lifetimebound]]` param in return-const-ref-from-parameter (#118315)
Fixed #117696
Commit: c7e14689dd8bdf4b18dccb18895a9b80c225dc53
https://github.com/llvm/llvm-project/commit/c7e14689dd8bdf4b18dccb18895a9b80c225dc53
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/CodeGen/SPIRV/debug-info/debug-type-basic.ll
Log Message:
-----------
[SPIR-V] Add XFAIL to the broken test (#118487)
The test case llvm/test/CodeGen/SPIRV/debug-info/debug-type-basic.ll
fails due to https://github.com/llvm/llvm-project/issues/118011
Commit: a7fda0e1e4dfd17ccf4a1bb80024acca2da6424e
https://github.com/llvm/llvm-project/commit/a7fda0e1e4dfd17ccf4a1bb80024acca2da6424e
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanValue.h
Log Message:
-----------
[VPlan] Introduce VPScalarPHIRecipe, use for can & EVL IV codegen (NFC). (#114305)
Introduce a general recipe to generate a scalar phi. Lower
VPCanonicalIVPHIRecipe and VPEVLBasedIVRecipe to VPScalarIVPHIrecipe
before plan execution, avoiding the need for duplicated ::execute
implementations. There are other cases that could benefit, including
in-loop reduction phis and pointer induction phis.
Builds on a similar idea as
https://github.com/llvm/llvm-project/pull/82270.
PR: https://github.com/llvm/llvm-project/pull/114305
Commit: 10223c72a9c2afc3ae86eb7995f0dc47f5f9ad44
https://github.com/llvm/llvm-project/commit/10223c72a9c2afc3ae86eb7995f0dc47f5f9ad44
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic.ll
Log Message:
-----------
[ConstraintElim] Use nusw flag for GEP decomposition
Check for nusw instead of inbounds when decomposing GEPs.
In this particular case, we can also look through multiple nusw
flags, because we will ultimately be working in the unsigned
constraint system.
Commit: db4cbe50696798e94585cafec1a24764e9dcf199
https://github.com/llvm/llvm-project/commit/db4cbe50696798e94585cafec1a24764e9dcf199
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
A llvm/test/CodeGen/SPIRV/pointers/tangled-ret.ll
M llvm/test/CodeGen/SPIRV/transcoding/OpPhi_ArgumentsPlaceholders.ll
A llvm/test/CodeGen/SPIRV/validate/sycl-tangle-group-algorithms.ll
Log Message:
-----------
[SPIR-V] Fix generation of invalid SPIR-V in cases of of bitcasts between pointers and multiple null pointers used in the input LLVM IR (#118298)
This PR resolved the following issues:
(1) There are rare but possible cases when there are bitcasts between
pointers intertwined in a sophisticated way with loads, stores, function
calls and other instructions that are part of type deduction. In this
case we must account for inserted bitcasts between pointers rather than
just ignore them.
(2) Null pointers have the same constant representation but different
types. Type info from Intrinsic::spv_track_constant() refers to the
opaque (untyped) pointer, so that each MF/v-reg pair would fall into the
same Const record in Duplicate Tracker and would be represented by a
single OpConstantNull instruction, unless we use precise pointee type
info. We must be able to distinguish one constant (null) pointer from
another to avoid generating invalid code with inconsistent types of
operands.
Commit: 4e6f812e9134a99320546d3805f628683b4ed334
https://github.com/llvm/llvm-project/commit/4e6f812e9134a99320546d3805f628683b4ed334
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
Log Message:
-----------
[mlir][llvm] Align linkage enum order with LLVM (NFC) (#118484)
This change doesn't introduce any functional differences but aligns the
implementation more closely with LLVM's representation. Previously, the
code generated a lookup table to map MLIR enums to LLVM enums due to the
lack of one-to-one correspondence. With this refactoring, the generated
code now casts directly from one enum to another.
Commit: 874b4fb6adf742344fabd7df898be31360a563b9
https://github.com/llvm/llvm-project/commit/874b4fb6adf742344fabd7df898be31360a563b9
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/test/CodeGen/SPIRV/bitcast.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_optnone.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/global-ptrtoint.ll
Log Message:
-----------
[SPIR-V] Fix emission of debug and annotation instructions and add SPV_EXT_optnone SPIR-V extension (#118402)
This PR fixes:
* emission of OpNames (added newly inserted internal intrinsics and
basic blocks)
* emission of function attributes (SRet is added)
* implementation of SPV_INTEL_optnone so that it emits OptNoneINTEL
Function Control flag, and add implementation of the SPV_EXT_optnone
SPIR-V extension.
Commit: af35e21cfe3f7cfc7ddd7a2f535e775e9205f61d
https://github.com/llvm/llvm-project/commit/af35e21cfe3f7cfc7ddd7a2f535e775e9205f61d
Author: Kelvin Li <kkwli at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M flang/unittests/Runtime/CommandTest.cpp
Log Message:
-----------
[flang] Update CommandTest for AIX (NFC) (#118403)
With the change in commit e335563, the behavior for `ECLGeneralErrorCommandErrorSync`
on AIX is the same as on Linux.
Commit: 9ad09b2930ef2e95bf8772c91f623881d1c14733
https://github.com/llvm/llvm-project/commit/9ad09b2930ef2e95bf8772c91f623881d1c14733
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
Log Message:
-----------
[AMDGPU] Refine AMDGPUCodeGenPrepareImpl class. NFC. (#118461)
Use references instead of pointers for most state, initialize it all in
the constructor, and common up some of the initialization between the
legacy and new pass manager paths.
Commit: c7babfa6a375d1094cf5e5d7ce4b36b2b9a6b717
https://github.com/llvm/llvm-project/commit/c7babfa6a375d1094cf5e5d7ce4b36b2b9a6b717
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
Log Message:
-----------
[Offload] Find libc relative to DeviceRTL path (#118497)
This was discussed as a potential solution in
https://github.com/llvm/llvm-project/pull/118173
Commit: 866b9f43a0772faee64aa421886eb101118f3167
https://github.com/llvm/llvm-project/commit/866b9f43a0772faee64aa421886eb101118f3167
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
R llvm/test/Analysis/CostModel/SystemZ/reduce-add.ll
A llvm/test/Analysis/CostModel/SystemZ/vector-reductions.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/reductions-fadd.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/reductions-fmin-fmax.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/reductions-fmul.ll
Log Message:
-----------
[SystemZ] Add realistic cost estimates for vector reduction intrinsics (#118319)
This PR adds more realistic cost estimates for these reduction
intrinsics
- `llvm.vector.reduce.umax`
- `llvm.vector.reduce.umin`
- `llvm.vector.reduce.smax`
- `llvm.vector.reduce.smin`
- `llvm.vector.reduce.fadd`
- `llvm.vector.reduce.fmul`
- `llvm.vector.reduce.fmax`
- `llvm.vector.reduce.fmin`
- `llvm.vector.reduce.fmaximum`
- `llvm.vector.reduce.fminimum`
- `llvm.vector.reduce.mul
`
The pre-existing cost estimates for `llvm.vector.reduce.add` are moved
to `getArithmeticReductionCosts` to reduce complexity in
`getVectorIntrinsicInstrCost` and enable other passes, like the SLP
vectorizer, to benefit from these updated calculations.
These are not expected to provide noticable performance improvements and
are rather provided for the sake of completeness and correctness. This
PR is in draft mode pending benchmark confirmation of this.
This also provides and/or updates cost tests for all of these
intrinsics.
This PR was co-authored by me and @JonPsson1 .
Commit: 17cfd016b4621b8ae52bc7cc27570dd6fa8c0129
https://github.com/llvm/llvm-project/commit/17cfd016b4621b8ae52bc7cc27570dd6fa8c0129
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[AMDGPU][Doc] Add `gfx950` to `gfx9-4-generic` in the document
Commit: c9fbabfdc92f12b2b0148762e6e789157a172e4d
https://github.com/llvm/llvm-project/commit/c9fbabfdc92f12b2b0148762e6e789157a172e4d
Author: mandymi <131526806+mandymimi at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
Log Message:
-----------
[ASTMatcher] Fix redundant macro expansion checks in getExpansionLocOfMacro (#117143)
A performance issue was descibed in #114521
**Root Cause**: The function getExpansionLocOfMacro is responsible for
finding the expansion location of macros. When dealing with macro
parameters, it recursively calls itself to check the expansion of macro
arguments. This recursive logic redundantly checks previous macro
expansions, leading to significant performance degradation when macros
are heavily nested.
Solution
**Modification**: Track already processed macros during recursion.
Implementation Details:
Introduced a data structure to record processed macros.
Before each recursive call, check if the macro has already been
processed to avoid redundant calculations.
**Testing**:
1. refer to #114521
Finder->addMatcher(expr(isExpandedFromMacro("NULL")).bind("E"), this);
run clang-tidy on freecad/src/Mod/Path/App/AreaPyImp.cpp
clang-tidy src/Mod/Path/App/AreaPyImp.cpp -checks=-*,testchecker
-p=build/compile_commands.json
checker runs normally
2. check-clang-unit pass
Commit: 8da490320f6dcb99b4efef2cdb3d21002db1d2f7
https://github.com/llvm/llvm-project/commit/8da490320f6dcb99b4efef2cdb3d21002db1d2f7
Author: Callum Fare <callum at codeplay.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M offload/CMakeLists.txt
M offload/cmake/OpenMPTesting.cmake
A offload/liboffload/API/APIDefs.td
A offload/liboffload/API/CMakeLists.txt
A offload/liboffload/API/Common.td
A offload/liboffload/API/Device.td
A offload/liboffload/API/OffloadAPI.td
A offload/liboffload/API/Platform.td
A offload/liboffload/API/README.md
A offload/liboffload/CMakeLists.txt
A offload/liboffload/README.md
A offload/liboffload/exports
A offload/liboffload/include/OffloadImpl.hpp
A offload/liboffload/include/generated/OffloadAPI.h
A offload/liboffload/include/generated/OffloadEntryPoints.inc
A offload/liboffload/include/generated/OffloadFuncs.inc
A offload/liboffload/include/generated/OffloadImplFuncDecls.inc
A offload/liboffload/include/generated/OffloadPrint.hpp
A offload/liboffload/src/Helpers.hpp
A offload/liboffload/src/OffloadImpl.cpp
A offload/liboffload/src/OffloadLib.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
A offload/test/tools/offload-tblgen/default_returns.td
A offload/test/tools/offload-tblgen/entry_points.td
A offload/test/tools/offload-tblgen/functions_basic.td
A offload/test/tools/offload-tblgen/functions_code_loc.td
A offload/test/tools/offload-tblgen/functions_ranged_param.td
A offload/test/tools/offload-tblgen/print_enum.td
A offload/test/tools/offload-tblgen/print_function.td
A offload/test/tools/offload-tblgen/type_tagged_enum.td
A offload/tools/offload-tblgen/APIGen.cpp
A offload/tools/offload-tblgen/CMakeLists.txt
A offload/tools/offload-tblgen/EntryPointGen.cpp
A offload/tools/offload-tblgen/FuncsGen.cpp
A offload/tools/offload-tblgen/GenCommon.hpp
A offload/tools/offload-tblgen/Generators.hpp
A offload/tools/offload-tblgen/PrintGen.cpp
A offload/tools/offload-tblgen/RecordTypes.hpp
A offload/tools/offload-tblgen/offload-tblgen.cpp
M offload/unittests/CMakeLists.txt
A offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/common/Environment.cpp
A offload/unittests/OffloadAPI/common/Environment.hpp
A offload/unittests/OffloadAPI/common/Fixtures.hpp
A offload/unittests/OffloadAPI/device/olDeviceInfo.hpp
A offload/unittests/OffloadAPI/device/olGetDevice.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceCount.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatform.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformCount.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformInfo.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformInfoSize.cpp
A offload/unittests/OffloadAPI/platform/olPlatformInfo.hpp
Log Message:
-----------
Reland of #108413: [Offload] Introduce offload-tblgen and initial new API implementation (#118503)
This is another attempt to reland the changes from #108413
The previous two attempts introduced regressions and were reverted. This
PR has been more thoroughly tested with various configurations so
shouldn't cause any problems this time. If anyone is aware of any likely
remaining problems then please let me know.
The changes are identical other than the fixes contained in the last 5
commits.
---
### New API
Previous discussions at the LLVM/Offload meeting have brought up the
need for a new API for exposing the functionality of the plugins. This
change introduces a very small subset of a new API, which is primarily
for testing the offload tooling and demonstrating how a new API can fit
into the existing code base without being too disruptive. Exact designs
for these entry points and future additions can be worked out over time.
The new API does however introduce the bare minimum functionality to
implement device discovery for Unified Runtime and SYCL. This means that
the `urinfo` and `sycl-ls` tools can be used on top of Offload. A
(rough) implementation of a Unified Runtime adapter (aka plugin) for
Offload is available
[here](https://github.com/callumfare/unified-runtime/tree/offload_adapter).
Our intention is to maintain this and use it to implement and test
Offload API changes with SYCL.
### Demoing the new API
```sh
# From the runtime build directory
$ ninja LibomptUnitTests
$ OFFLOAD_TRACE=1 ./offload/unittests/OffloadAPI/offload.unittests
```
### Open questions and future work
* Only some of the available device info is exposed, and not all the
possible device queries needed for SYCL are implemented by the plugins.
A sensible next step would be to refactor and extend the existing device
info queries in the plugins. The existing info queries are all strings,
but the new API introduces the ability to return any arbitrary type.
* It may be sensible at some point for the plugins to implement the new
API directly, and the higher level code on top of it could be made
generic, but this is more of a long-term possibility.
Commit: 50249263a173d43475a60ca658048cf3b6206aba
https://github.com/llvm/llvm-project/commit/50249263a173d43475a60ca658048cf3b6206aba
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
Log Message:
-----------
MLRegAlloc: Do not use float to count number of used registers [NFC] (#118489)
Commit: af31aa44551f1fd78aa0f177947cb523373ff2d9
https://github.com/llvm/llvm-project/commit/af31aa44551f1fd78aa0f177947cb523373ff2d9
Author: Igor Kirillov <igor.kirillov at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
Log Message:
-----------
[LV] Pre-commit tests for fixed width VF fully unrolled loop cost model change
Commit: 1f20eee6dc367bd202895e3eedb03974a628ef16
https://github.com/llvm/llvm-project/commit/1f20eee6dc367bd202895e3eedb03974a628ef16
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/test/CodeGen/SPIRV/debug-info/debug-type-basic.ll
Log Message:
-----------
[SPIR-V] Emit OpConstant instead of OpConstantNull to conform to NonSemantic.Shader.DebugInfo.100 DebugTypeBasic's flags definition (#118333)
This PR is to fix https://github.com/llvm/llvm-project/issues/118011 by
emitting OpConstant instead of OpConstantNull to conform to
NonSemantic.Shader.DebugInfo.100 DebugTypeBasic's flags definition.
Commit: 68112f0f5b2209e14aae9a891481cba5709873a2
https://github.com/llvm/llvm-project/commit/68112f0f5b2209e14aae9a891481cba5709873a2
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M libc/src/__support/OSUtil/linux/exit.cpp
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
libc: fixup include path and bazel stale comments (#118510)
Downstream builders are having issues with this local include. Use a
fuller
path that's more standard throughout the codebase.
Also some of the comments in the bazel overlay are stale. Remove them.
Reported-by: Brooks Moses <bmoses at google.com>
Commit: 56ab56c85729976f29d5de2fd73912449cb6da7c
https://github.com/llvm/llvm-project/commit/56ab56c85729976f29d5de2fd73912449cb6da7c
Author: Jim B <d3x0r at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ClangFormat.rst
M clang/lib/Format/Format.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-format/git-clang-format
Log Message:
-----------
[clang-format] Add support for `.cjs` as JavaScript file extension (#118188)
Node uses `.cjs` as an extension for 'common javascript' modules.
Commit: 5ae613c9b9dc37ec1b0a6d76714099375288d772
https://github.com/llvm/llvm-project/commit/5ae613c9b9dc37ec1b0a6d76714099375288d772
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
Log Message:
-----------
[NFC] Remove trailing white spaces in `clang/include/clang/Driver/Options.td`
Commit: afe75b4d5fcebd6fdd292ca1797de1b35cb687b0
https://github.com/llvm/llvm-project/commit/afe75b4d5fcebd6fdd292ca1797de1b35cb687b0
Author: Peter Hawkins <phawkins at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
M mlir/docs/Bindings/Python.md
M mlir/examples/standalone/python/CMakeLists.txt
R mlir/examples/standalone/python/StandaloneExtension.cpp
A mlir/examples/standalone/python/StandaloneExtensionNanobind.cpp
A mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp
R mlir/examples/standalone/python/mlir_standalone/dialects/standalone.py
A mlir/examples/standalone/python/mlir_standalone/dialects/standalone_nanobind.py
A mlir/examples/standalone/python/mlir_standalone/dialects/standalone_pybind11.py
M mlir/examples/standalone/test/python/smoketest.py
A mlir/include/mlir/Bindings/Python/Diagnostics.h
A mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
M mlir/include/mlir/Bindings/Python/PybindAdaptors.h
M mlir/lib/Bindings/Python/DialectLLVM.cpp
M mlir/lib/Bindings/Python/TransformInterpreter.cpp
M mlir/python/CMakeLists.txt
M mlir/python/mlir/dialects/python_test.py
M mlir/python/requirements.txt
M mlir/test/python/dialects/python_test.py
M mlir/test/python/lib/CMakeLists.txt
R mlir/test/python/lib/PythonTestModule.cpp
A mlir/test/python/lib/PythonTestModuleNanobind.cpp
A mlir/test/python/lib/PythonTestModulePybind11.cpp
M utils/bazel/WORKSPACE
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
A utils/bazel/third_party_build/nanobind.BUILD
A utils/bazel/third_party_build/robin_map.BUILD
Log Message:
-----------
[mlir python] Add nanobind support for standalone dialects. (#117922)
This PR allows out-of-tree dialects to write Python dialect modules
using nanobind instead of pybind11.
It may make sense to migrate in-tree dialects and some of the ODS Python
infrastructure to nanobind, but that is a topic for a future change.
This PR makes the following changes:
* adds nanobind to the CMake and Bazel build systems. We also add
robin_map to the Bazel build, which is a dependency of nanobind.
* adds a PYTHON_BINDING_LIBRARY option to various CMake functions, such
as declare_mlir_python_extension, allowing users to select a Python
binding library.
* creates a fork of mlir/include/mlir/Bindings/Python/PybindAdaptors.h
named NanobindAdaptors.h. This plays the same role, using nanobind
instead of pybind11.
* splits CollectDiagnosticsToStringScope out of PybindAdaptors.h and
into a new header mlir/include/mlir/Bindings/Python/Diagnostics.h, since
it is code that is no way related to pybind11 or for that matter,
Python.
* changed the standalone Python extension example to have both pybind11
and nanobind variants.
* changed mlir/python/mlir/dialects/python_test.py to have both pybind11
and nanobind variants.
Notes:
* A slightly unfortunate thing that I needed to do in the CMake
integration was to use FindPython in addition to FindPython3, since
nanobind's CMake integration expects the Python_ names for variables.
Perhaps there's a better way to do this.
Commit: 04996a28b7639a333c5d04bf4d10d70bda3e0173
https://github.com/llvm/llvm-project/commit/04996a28b7639a333c5d04bf4d10d70bda3e0173
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/Relocations.h
M lld/ELF/SyntheticSections.cpp
Log Message:
-----------
[ELF] Rename target-specific RelExpr enumerators
RelExpr enumerators are named `R_*`, which can be confused with ELF
relocation type names. Rename the target-specific ones to `RE_*` to
avoid confusion.
For consistency, the target-independent ones can be renamed as well, but
that's not urgent. The relocation processing mechanism with RelExpr has
non-trivial overhead compared with mold's approach, and we might make
more code into Arch/*.cpp files and decrease the enumerators.
Pull Request: https://github.com/llvm/llvm-project/pull/118424
Commit: 61bf308cf2fc32452f14861c102ace89f5f36fec
https://github.com/llvm/llvm-project/commit/61bf308cf2fc32452f14861c102ace89f5f36fec
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
M mlir/docs/Bindings/Python.md
M mlir/examples/standalone/python/CMakeLists.txt
A mlir/examples/standalone/python/StandaloneExtension.cpp
R mlir/examples/standalone/python/StandaloneExtensionNanobind.cpp
R mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp
A mlir/examples/standalone/python/mlir_standalone/dialects/standalone.py
R mlir/examples/standalone/python/mlir_standalone/dialects/standalone_nanobind.py
R mlir/examples/standalone/python/mlir_standalone/dialects/standalone_pybind11.py
M mlir/examples/standalone/test/python/smoketest.py
R mlir/include/mlir/Bindings/Python/Diagnostics.h
R mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
M mlir/include/mlir/Bindings/Python/PybindAdaptors.h
M mlir/lib/Bindings/Python/DialectLLVM.cpp
M mlir/lib/Bindings/Python/TransformInterpreter.cpp
M mlir/python/CMakeLists.txt
M mlir/python/mlir/dialects/python_test.py
M mlir/python/requirements.txt
M mlir/test/python/dialects/python_test.py
M mlir/test/python/lib/CMakeLists.txt
A mlir/test/python/lib/PythonTestModule.cpp
R mlir/test/python/lib/PythonTestModuleNanobind.cpp
R mlir/test/python/lib/PythonTestModulePybind11.cpp
M utils/bazel/WORKSPACE
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
R utils/bazel/third_party_build/nanobind.BUILD
R utils/bazel/third_party_build/robin_map.BUILD
Log Message:
-----------
Revert "[mlir python] Add nanobind support for standalone dialects." (#118517)
Reverts llvm/llvm-project#117922 because deps aren't met on some of the
post-commit build bots.
Commit: 95a4d30b0d64c544106acf306c3d3fa5fde99c02
https://github.com/llvm/llvm-project/commit/95a4d30b0d64c544106acf306c3d3fa5fde99c02
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[NFC] Remove trailing white spaces in `clang/docs/ReleaseNotes.rst`
Commit: eb257fe37ba1ea41bd162e2fbd0ee4cd33fcdcea
https://github.com/llvm/llvm-project/commit/eb257fe37ba1ea41bd162e2fbd0ee4cd33fcdcea
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
A clang/test/SemaOpenACC/combined-construct-num_gangs-ast.cpp
A clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
A clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
A clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
A clang/test/SemaOpenACC/combined-construct-vector_length-ast.cpp
A clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
Log Message:
-----------
[OpenACC] Enable 3 more clauses for combined constructs.
'num_gangs', 'num_workers', and 'vector_length' are similar to
eachother, and are all the same implementation as for compute
constructs, so this patch just enables them and adds the necessary
testing to ensure they work correctly. These will get more complicated
when they get combined with 'gang', 'worker', 'vector' and 'reduction',
but those restrictions will be implemented when those clauses are
enabled.
Commit: d1f4f6368064d8d7bf09fbd5be8d74846d532c30
https://github.com/llvm/llvm-project/commit/d1f4f6368064d8d7bf09fbd5be8d74846d532c30
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/test/ELF/systemz-gotent-relax-und-dso.s
M lld/test/ELF/systemz-gotent-relax.s
M lld/test/ELF/systemz-plt.s
M lld/test/ELF/systemz-tls-gd.s
M lld/test/ELF/systemz-tls-ld.s
M llvm/lib/Target/SystemZ/SystemZInstrFormats.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ13.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ15.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ16.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ196.td
M llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td
M llvm/test/MC/Disassembler/SystemZ/insns-pcrel.txt
M llvm/test/MC/Disassembler/SystemZ/insns.txt
M llvm/test/MC/SystemZ/insn-good-zos-pcrel.s
M llvm/test/MC/SystemZ/insn-good.s
Log Message:
-----------
[SystemZ] Use nop mnemonics for disassembly
To match the behavior of GNU binutils, output the nop family
of mnemonic aliases when disassembling.
Commit: ce416a073be6da06be7fd2d427b896b380fb3877
https://github.com/llvm/llvm-project/commit/ce416a073be6da06be7fd2d427b896b380fb3877
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M .github/workflows/docs.yml
Log Message:
-----------
[Github] fix libc documentation path (#118514)
Running `ninja docs-libc-html` produces content in
{build_dir}/libc/docs, not
{build_dir}/docs. Presubmit jobs for "Test documentation build" were
failing as
a result of commit 97f94af3560d ("[Github] Upload built docs as artifact
from
test build docs job (#118159)")
Link: #118159
Link: #117220
Commit: f44bee78c471df8f0a258c656a921a082d7e836a
https://github.com/llvm/llvm-project/commit/f44bee78c471df8f0a258c656a921a082d7e836a
Author: Greg Clayton <gclayton at fb.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h
A lldb/test/Shell/SymbolFile/DWARF/x86/dwp-index-cache.cpp
Log Message:
-----------
[lldb] Fix the DWARF index cache when index is partial. (#118390)
The ManualDWARFIndex class can create a index cache if the LLDB index
cache is enabled. This used to save the index to the same file,
regardless of wether the cache was a full index (no .debug_names) or a
partial index (have .debug_names, but not all .o files were had
.debug_names). So we could end up saving an index cache that was
partial, and then later load that partial index as if it were a full
index if the user set the 'settings set
plugin.symbol-file.dwarf.ignore-file-indexes true'. This would cause us
to ignore the .debug_names section, and if the index cache was enabled,
we could end up loading the partial index as if it were a full DWARF
index.
This patch detects when the ManualDWARFIndex is being used with
.debug_names, and saves out a cache file with a suffix of "-full" or
"-partial" to avoid this issue.
Commit: e8b9e1354accf33ced45321abdd8c8bc65d025cc
https://github.com/llvm/llvm-project/commit/e8b9e1354accf33ced45321abdd8c8bc65d025cc
Author: Augie Fackler <augie at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M utils/bazel/llvm_configs/abi-breaking.h.cmake
Log Message:
-----------
[bazel] update config.h.cmake
for 4dafb091a0336a6669e6369cb69ef1ea1b39578d
reverts 1a1de2465d8399b178149e7e23c7450fdc5dde9f
Commit: 2a1a02461a8d4ae9f560a4215fe85a1f085b4d82
https://github.com/llvm/llvm-project/commit/2a1a02461a8d4ae9f560a4215fe85a1f085b4d82
Author: Luke Riddle <35970909+lukejriddle at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/bindings/interface/SBMemoryRegionInfoListExtensions.i
M lldb/test/API/python_api/find_in_memory/TestFindInMemory.py
Log Message:
-----------
Make SBMemoryRegionInfoList iterable with Python SWIG (#117358)
This PR fixes a simple SWIG issue with SBMemoryRegionInfoList not being
iterable out-of-the-box. This is mostly because of limitations to the
`lldb_iter` function, which doesn't allow for specifying arguments to
the size / iter functions passed.
Before:
```
(lldb) script
Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D.
>>> for region in lldb.process.GetMemoryRegions():
... print(region)
...
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/opt/llvm/stable/Toolchains/llvm-sand.xctoolchain/usr/lib/python3.10/site-packages/lldb/__init__.py", line 114, in lldb_iter
yield elem(i)
TypeError: SBMemoryRegionInfoList.GetMemoryRegionAtIndex() missing 1 required positional argument: 'region_info'
```
After:
```
(lldb) script
Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D.
>>> for region in lldb.process.GetMemoryRegions():
... print(region)
...
[0x0000000000200000-0x00000000002cf000 R--]
[0x00000000002cf000-0x0000000000597000 R-X]
[0x0000000000597000-0x00000000005ad000 R--]
[0x00000000005ad000-0x00000000005b1000 RW-]
[0x00000000005b1000-0x0000000000b68000 RW-]
[0x000000007fff7000-0x000000008fff7000 RW-]
[0x000002008fff7000-0x000010007fff8000 RW-]
[0x0000503000000000-0x0000503000010000 RW-]
[0x0000503e00000000-0x0000503e00010000 RW-]
[0x0000504000000000-0x0000504000010000 RW-]
[0x0000504e00000000-0x0000504e00010000 RW-]
[0x000050d000000000-0x000050d000010000 RW-]
[0x000050de00000000-0x000050de00010000 RW-]
[0x000050e000000000-0x000050e000010000 RW-]
[0x000050ee00000000-0x000050ee00010000 RW-]
[0x0000511000000000-0x0000511000010000 RW-]
[0x0000511e00000000-0x0000511e00010000 RW-]
[0x0000513000000000-0x0000513000010000 RW-]
...
```
Commit: 935bbbbde4b2661ed7f8f2975a39bda360572572
https://github.com/llvm/llvm-project/commit/935bbbbde4b2661ed7f8f2975a39bda360572572
Author: Zaara Syeda <syzaara at ca.ibm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
M llvm/test/CodeGen/PowerPC/aix-xcoff-rodata.ll
M llvm/test/CodeGen/PowerPC/aix-xcoff-used-with-stringpool.ll
M llvm/test/CodeGen/PowerPC/mergeable-string-pool-exceptions.ll
M llvm/test/CodeGen/PowerPC/mergeable-string-pool-tls.ll
Log Message:
-----------
[PPC] Remove missed cases of ppc-merge-string-pool (#117626)
PPCMergeStringPool was replaced with GlobalMerge with commit aaa37d6.
Some cases of option ppc-merge-string-pool were missed being removed.
Commit: 0ca8a593e5da5d00100db8f735b4c4babeb36eb8
https://github.com/llvm/llvm-project/commit/0ca8a593e5da5d00100db8f735b4c4babeb36eb8
Author: Alex Langford <alangford at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/include/lldb/Target/Platform.h
Log Message:
-----------
[lldb][NFC] Remove unused field Platform::m_remote_url (#118411)
Related:
https://discourse.llvm.org/t/rfc-lldb-a-proposal-to-refactor-platform/82697
Commit: 0c6457b781ae8365ef2169376ae78675b5b4896b
https://github.com/llvm/llvm-project/commit/0c6457b781ae8365ef2169376ae78675b5b4896b
Author: Mason Remy <masonr at microsoft.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/TableGen/intrinsic-overload-conflict.td
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
Log Message:
-----------
[LLVM][TableGen] Refine overloaded intrinsic suffix check (#117957)
Previously the check comments indicated that [pi][0-9]+ would match as a
type suffix, however the check itself was looking for [pi][0-9]* and
hence an 'i' suffix in isolation was being considered as a type suffix
despite it not having a bitwidth.
This change makes the check consistent with the comment and looks for
[pi][0-9]+
Commit: deed1b0664e85cd3bb33451a81db52459d9f7663
https://github.com/llvm/llvm-project/commit/deed1b0664e85cd3bb33451a81db52459d9f7663
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
Log Message:
-----------
[SystemZ] Fix address parsing in HLASM mode
When parsing an address that contains only a single register
for an instruction that actually has both a base and an index
register, the parsed register is treated as base by AsmParser.
This is correct when emulating the GNU assembler, but not when
emulating HLASM, as the latter treat the register as index in
this case.
Commit: 9791f258079a4334c61c64cb62d9746a3db2c25c
https://github.com/llvm/llvm-project/commit/9791f258079a4334c61c64cb62d9746a3db2c25c
Author: Aidan Goldfarb <47676355+AidanGoldfarb at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/include/clang/Basic/Features.def
M clang/test/Sema/enum.c
Log Message:
-----------
[clang][sema] Add support and documentation for `__has_extension(c_fixed_enum)` (#117507)
This PR addresses #116880
Updated
[LanguageExtensions.rst](https://github.com/llvm/llvm-project/blob/main/clang/docs/LanguageExtensions.rst)
to include support for C++11 enumerations with a fixed underlying type
in C. Included a note that this is only a language extension prior to
C23.
Updated
[Features.def](https://github.com/llvm-mirror/clang/blob/master/include/clang/Basic/Features.def)
to support for `__has_extension(c_fixed_enum)` by added it as a feature
(for C23) and an extension (for <C23).
Updated
[enum.c](https://github.com/llvm/llvm-project/blob/main/clang/test/Sema/enum.c)
to ensure support of C++11 enumerations with a fixed underlying type in
both <C23 and C23, as well as the functionality of
`__has_extension(c_fixed_enum)`.
---
In enum.c, I encountered a warning when testing enumerations with a
fixed underlying type in pre-C23 modes. Specifically, the test produces
the warning: `enumeration types with a fixed underlying type are a C23
extension`. I am unsure if this warning is expected behavior, as
enumerations with a fixed underlying type should behave identically in
pre-C23 and C23 modes. I expected that adding `c_fixed_enum` as an
extension would fix this warning. Feedback on whether this is correct or
requires adjustment would be appreciated.
I was also unsure of the best location for the additions in
`Features.def`, I would appreciate advice on this as well
Note that this is my first PR to LLVM, so please liberally critique it!
Commit: acf3b1aa932b2237c181686e52bc61584a80a3ff
https://github.com/llvm/llvm-project/commit/acf3b1aa932b2237c181686e52bc61584a80a3ff
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
A llvm/include/llvm/CodeGen/DroppedVariableStats.h
M llvm/include/llvm/Passes/StandardInstrumentations.h
M llvm/lib/CodeGen/CMakeLists.txt
A llvm/lib/CodeGen/DroppedVariableStats.cpp
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/unittests/CodeGen/CMakeLists.txt
A llvm/unittests/CodeGen/DroppedVariableStatsIRTest.cpp
M llvm/unittests/IR/CMakeLists.txt
R llvm/unittests/IR/DroppedVariableStatsTest.cpp
Log Message:
-----------
Reland [NFC] Move DroppedVariableStats to its own file and redesign it to be extensible. (#117042)
Moved the IR unit test to the CodeGen folder to resolve linker errors:
`error: undefined reference to 'vtable for
llvm::DroppedVariableStatsIR'`
This patch is trying to reland
https://github.com/llvm/llvm-project/pull/115563
Commit: 4dd5ac906f9efdba3034b70acdda406348dc6f53
https://github.com/llvm/llvm-project/commit/4dd5ac906f9efdba3034b70acdda406348dc6f53
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
Log Message:
-----------
[RISCV] Improve coverage for spread(N) shuffles
I'd already included a few cases for spread(N) in the decompress(N) variants,
but rename for clarity and add a couple more edge cases.
i.e. spread(N, 0) produces a, undef, b, undef, ...
Commit: b8805c88ce09fe8cc7e469162cbef05722559566
https://github.com/llvm/llvm-project/commit/b8805c88ce09fe8cc7e469162cbef05722559566
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Clang-format a few lines to remove diff in a nearby patch
Commit: 4b9bf660f3a3db3b22dd33aa5b23986748b09ec3
https://github.com/llvm/llvm-project/commit/4b9bf660f3a3db3b22dd33aa5b23986748b09ec3
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
Log Message:
-----------
[gn build] Port acf3b1aa932b
Commit: 25b1896686177673dcd548489e92c7880d576948
https://github.com/llvm/llvm-project/commit/25b1896686177673dcd548489e92c7880d576948
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/test/Sema/enum.c
Log Message:
-----------
Fix test for bots where -std=c99 is the default
Amends 9791f258079a4334c61c64cb62d9746a3db2c25c
This addresses the issue found by:
https://lab.llvm.org/buildbot/#/builders/144/builds/13023
Commit: f7151248579330df8ea68003f60b778149e0f262
https://github.com/llvm/llvm-project/commit/f7151248579330df8ea68003f60b778149e0f262
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] Fix the vscode-uninstall command
The command was using the wrong publisher name ("llvm" rather than
"llvm-vs-code-extensions") resulting in the command complaining:
```
npm run vscode-uninstall
> lldb-dap at 0.2.6 vscode-uninstall
> code --uninstall-extension llvm.lldb-dap
Extension 'llvm.lldb-dap' is not installed.
Make sure you use the full extension ID, including the publisher, e.g.: ms-dotnettools.csharp
```
Commit: 0ccd18ead138e9efc56b6c16ded6c3f4df86ae91
https://github.com/llvm/llvm-project/commit/0ccd18ead138e9efc56b6c16ded6c3f4df86ae91
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/index/BackgroundRebuild.cpp
Log Message:
-----------
Typo fix; NFC
Commit: 384562495bae44be053c1bbd40c359ef4b82d803
https://github.com/llvm/llvm-project/commit/384562495bae44be053c1bbd40c359ef4b82d803
Author: John Harrison <harjohn at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/include/lldb/Host/Socket.h
M lldb/include/lldb/Host/common/TCPSocket.h
M lldb/include/lldb/Host/posix/DomainSocket.h
M lldb/source/Host/common/TCPSocket.cpp
M lldb/source/Host/posix/DomainSocket.cpp
M lldb/unittests/Host/SocketTest.cpp
Log Message:
-----------
[lldb] For a host socket, add a method to print the listening address. (#118330)
This is most useful if you are listening on an address like
'localhost:0' and want to know the resolved ip + port of the socket
listener.
Commit: fc11b6790e7439edc5399d1c9626c538d5520e6c
https://github.com/llvm/llvm-project/commit/fc11b6790e7439edc5399d1c9626c538d5520e6c
Author: nawrinsu <nawrin.sultana at intel.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Update LLVM maintainers for OpenMP runtime (#118521)
Commit: cd04653c4e7d66e9d3cc8e442c4fd6ef124702a9
https://github.com/llvm/llvm-project/commit/cd04653c4e7d66e9d3cc8e442c4fd6ef124702a9
Author: wldfngrs <wldfngrs at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/newhdrgen/yaml/math.yaml
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/sincosf16_utils.h
A libc/src/math/generic/sinf16.cpp
M libc/src/math/generic/tanpif16.cpp
A libc/src/math/sinf16.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/sinf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/sinf16_test.cpp
Log Message:
-----------
[libc][math][c23] Add sinf16 C23 math function (#116674)
Co-authored-by: OverMighty <its.overmighty at gmail.com>
Commit: 2d57333da432921762323718351a21532867588c
https://github.com/llvm/llvm-project/commit/2d57333da432921762323718351a21532867588c
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M flang/lib/Lower/ConvertExprToHLFIR.cpp
Log Message:
-----------
[flang] Fix crash in HLFIR generation (#118399)
Structure constructors with multiple components would crash when
components were from parent types. The search for the right parent
component must be done anew for each component.
Fixes https://github.com/llvm/llvm-project/issues/118270,
https://github.com/llvm/llvm-project/issues/96994, and
https://github.com/llvm/llvm-project/issues/105848.
Commit: d6cd214dd6ae35ea50be4fdc296ef9091f762375
https://github.com/llvm/llvm-project/commit/d6cd214dd6ae35ea50be4fdc296ef9091f762375
Author: Teresa Johnson <tejohnson at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
Log Message:
-----------
[ThinLTO][LowerTypeTests] Don't compute address taken set unless CFI (NFC) (#118508)
The AddressTaken set used for CFI with regular LTO was being computed on
the ExportSummary regardless of whether any CFI metadata existed. In the
case of ThinLTO, the ExportSummary is the global summary index for the
target, and the lack of guard in this code meant this was being computed
on the ThinLTO index even when there was an empty regular LTO module,
since the backend is called on the combined module to generate the
expected output file (normally this is trivial as there is no IR).
Move the computation of the AddressTaken set into the condition checking
for CFI to avoid this overhead. This change resulted in a 20% speedup in
the thin link of a large target. It looks like the outer loop has
existed here for several years, but likely became a larger overhead
after the inner loop was added very recently in PR113987.
I will send a separate patch to refactor the ThinLTO backend handling to
avoid invoking the opt pipeline if the module is empty, in case there
are other summary-based analyses in some of the passes now or in the
future. This change is still desireable as by default regular LTO
modules contain summaries, or we can have split thin and regular LTO
modules, and if they don't involve CFI these would still unnecessarily
compute the AddressTaken set.
Commit: fdd09e9de579e6915d467c1b72efb8c653739602
https://github.com/llvm/llvm-project/commit/fdd09e9de579e6915d467c1b72efb8c653739602
Author: Rashmi Mudduluru <r_mudduluru at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
Log Message:
-----------
[ASTMatchers] AST matcher support for ObjC pointers (#117021)
Add `ObjCInterfaceDecl` to the list of types supported by the `hasType`
and `hasDeclaration` matchers, `ObjCObjectPointerType` to the list of
types supported by `pointee`.
These AST matcher improvements will help the new WebKit checker for
unsafe casts
([https://github.com/llvm/llvm-project/pull/114606](https://github.com/llvm/llvm-project/pull/114606))
match on unsafe Objective-C pointer casts.
Commit: e0ae7793fca0c78919bc41ffd407acb62146ad47
https://github.com/llvm/llvm-project/commit/e0ae7793fca0c78919bc41ffd407acb62146ad47
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
R libc/config/baremetal/api.td
R libc/config/gpu/api.td
R libc/config/linux/api.td
R libc/config/public_api.td
M libc/docs/dev/header_generation.rst
M libc/docs/gpu/building.rst
M libc/include/CMakeLists.txt
R libc/spec/bsd_ext.td
R libc/spec/gnu_ext.td
R libc/spec/gpu_ext.td
R libc/spec/linux.td
R libc/spec/llvm_libc_ext.td
R libc/spec/llvm_libc_stdfix_ext.td
R libc/spec/posix.td
R libc/spec/spec.td
R libc/spec/stdc.td
R libc/spec/stdc_ext.td
M libc/test/src/CMakeLists.txt
R libc/utils/HdrGen/CMakeLists.txt
R libc/utils/HdrGen/Command.cpp
R libc/utils/HdrGen/Command.h
R libc/utils/HdrGen/Generator.cpp
R libc/utils/HdrGen/Generator.h
R libc/utils/HdrGen/IncludeFileCommand.cpp
R libc/utils/HdrGen/IncludeFileCommand.h
R libc/utils/HdrGen/Main.cpp
R libc/utils/HdrGen/PrototypeTestGen/CMakeLists.txt
R libc/utils/HdrGen/PrototypeTestGen/PrototypeTestGen.cpp
R libc/utils/HdrGen/PublicAPICommand.cpp
R libc/utils/HdrGen/PublicAPICommand.h
R libc/utils/HdrGen/README.md
R libc/utils/LibcTableGenUtil/APIIndexer.cpp
R libc/utils/LibcTableGenUtil/APIIndexer.h
R libc/utils/LibcTableGenUtil/CMakeLists.txt
M llvm/CMakeLists.txt
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[libc] delete hdrgen (#117220)
Thanks to the effort of @RoseZhang03 and @aaryanshukla under the
guidance of
@michaelrj-google and @amykhuang, we now have newhdrgen and no longer
have a
dependency on TableGen and thus LLVM in order to start bootstrapping a
full
build.
This PR removes:
- LIBC_HDRGEN_EXE; the in tree newhdrgen is the only hdrgen that can be
used.
- LIBC_USE_NEW_HEADER_GEN; newhdrgen is the default and only option.
- LIBC_HDRGEN_ONLY; there is no need to have a distinct build step for
old
hdrgen.
- libc-api-test and libc-api-test-tidy build targets.
- Deletes all .td files.
It does not rename newhdrgen to just hdrgen. Will follow up with a
distinct PR
for that.
Link: #117209
Link: #117254
Fixes: #117208
Commit: a0c4f854cad2b97e44a1b58dc1fd982e1c4d60f3
https://github.com/llvm/llvm-project/commit/a0c4f854cad2b97e44a1b58dc1fd982e1c4d60f3
Author: Michael Jones <michaelrj at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M libc/src/__support/ctype_utils.h
M libc/src/__support/high_precision_decimal.h
M libc/src/__support/integer_literals.h
M libc/src/__support/integer_to_string.h
M libc/src/__support/str_to_float.h
M libc/src/__support/str_to_integer.h
M libc/src/ctype/isxdigit.cpp
M libc/src/ctype/isxdigit_l.cpp
M libc/src/ctype/toupper.cpp
M libc/src/ctype/toupper_l.cpp
M libc/src/stdio/printf_core/fixed_converter.h
M libc/src/stdio/printf_core/float_dec_converter.h
M libc/src/stdio/printf_core/float_hex_converter.h
M libc/src/stdio/printf_core/float_inf_nan_converter.h
M libc/src/stdio/printf_core/int_converter.h
M libc/src/stdio/scanf_core/converter_utils.h
M libc/src/stdio/scanf_core/float_converter.cpp
M libc/src/stdio/scanf_core/int_converter.cpp
M libc/src/stdio/scanf_core/ptr_converter.cpp
M libc/test/UnitTest/MemoryMatcher.cpp
M libc/test/src/__support/CPP/stringview_test.cpp
M libc/test/src/ctype/isalnum_test.cpp
M libc/test/src/ctype/isalpha_test.cpp
M libc/test/src/ctype/isdigit_test.cpp
M libc/test/src/ctype/islower_test.cpp
M libc/test/src/ctype/isupper_test.cpp
M libc/test/src/ctype/isxdigit_test.cpp
M libc/test/src/ctype/tolower_test.cpp
M libc/test/src/ctype/toupper_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/string/strcmp_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
Log Message:
-----------
[libc] Change ctype to be encoding independent (#110574)
The previous implementation of the ctype functions assumed ASCII.
This patch changes to a switch/case implementation that looks odd, but
actually is easier for the compiler to understand and optimize.
Commit: 249755cedb17ffa707253edcef1a388f807caa35
https://github.com/llvm/llvm-project/commit/249755cedb17ffa707253edcef1a388f807caa35
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/DroppedVariableStats.h
M llvm/include/llvm/CodeGen/MachineFunctionPass.h
M llvm/lib/CodeGen/DroppedVariableStats.cpp
M llvm/lib/CodeGen/MachineFunctionPass.cpp
M llvm/unittests/CodeGen/CMakeLists.txt
A llvm/unittests/CodeGen/DroppedVariableStatsMIRTest.cpp
Log Message:
-----------
Reland "Add a pass to collect dropped var stats for MIR" (#117044)
Moved the MIR Test to the unittests/CodeGen folder
This is patch is part of a stack of patches, and follows
https://github.com/llvm/llvm-project/pull/117042
I moved the MIR test to the unittests/CodeGen folder
I am trying to reland https://github.com/llvm/llvm-project/pull/115566
Commit: 51553227f010e3a9a439b2e57af15a6797f69a90
https://github.com/llvm/llvm-project/commit/51553227f010e3a9a439b2e57af15a6797f69a90
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M offload/CMakeLists.txt
M offload/cmake/OpenMPTesting.cmake
R offload/liboffload/API/APIDefs.td
R offload/liboffload/API/CMakeLists.txt
R offload/liboffload/API/Common.td
R offload/liboffload/API/Device.td
R offload/liboffload/API/OffloadAPI.td
R offload/liboffload/API/Platform.td
R offload/liboffload/API/README.md
R offload/liboffload/CMakeLists.txt
R offload/liboffload/README.md
R offload/liboffload/exports
R offload/liboffload/include/OffloadImpl.hpp
R offload/liboffload/include/generated/OffloadAPI.h
R offload/liboffload/include/generated/OffloadEntryPoints.inc
R offload/liboffload/include/generated/OffloadFuncs.inc
R offload/liboffload/include/generated/OffloadImplFuncDecls.inc
R offload/liboffload/include/generated/OffloadPrint.hpp
R offload/liboffload/src/Helpers.hpp
R offload/liboffload/src/OffloadImpl.cpp
R offload/liboffload/src/OffloadLib.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
R offload/test/tools/offload-tblgen/default_returns.td
R offload/test/tools/offload-tblgen/entry_points.td
R offload/test/tools/offload-tblgen/functions_basic.td
R offload/test/tools/offload-tblgen/functions_code_loc.td
R offload/test/tools/offload-tblgen/functions_ranged_param.td
R offload/test/tools/offload-tblgen/print_enum.td
R offload/test/tools/offload-tblgen/print_function.td
R offload/test/tools/offload-tblgen/type_tagged_enum.td
R offload/tools/offload-tblgen/APIGen.cpp
R offload/tools/offload-tblgen/CMakeLists.txt
R offload/tools/offload-tblgen/EntryPointGen.cpp
R offload/tools/offload-tblgen/FuncsGen.cpp
R offload/tools/offload-tblgen/GenCommon.hpp
R offload/tools/offload-tblgen/Generators.hpp
R offload/tools/offload-tblgen/PrintGen.cpp
R offload/tools/offload-tblgen/RecordTypes.hpp
R offload/tools/offload-tblgen/offload-tblgen.cpp
M offload/unittests/CMakeLists.txt
R offload/unittests/OffloadAPI/CMakeLists.txt
R offload/unittests/OffloadAPI/common/Environment.cpp
R offload/unittests/OffloadAPI/common/Environment.hpp
R offload/unittests/OffloadAPI/common/Fixtures.hpp
R offload/unittests/OffloadAPI/device/olDeviceInfo.hpp
R offload/unittests/OffloadAPI/device/olGetDevice.cpp
R offload/unittests/OffloadAPI/device/olGetDeviceCount.cpp
R offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
R offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
R offload/unittests/OffloadAPI/platform/olGetPlatform.cpp
R offload/unittests/OffloadAPI/platform/olGetPlatformCount.cpp
R offload/unittests/OffloadAPI/platform/olGetPlatformInfo.cpp
R offload/unittests/OffloadAPI/platform/olGetPlatformInfoSize.cpp
R offload/unittests/OffloadAPI/platform/olPlatformInfo.hpp
Log Message:
-----------
Revert "Reland of #108413: [Offload] Introduce offload-tblgen and initial new API implementation" (#118541)
Reverts llvm/llvm-project#118503
Broke bot
https://lab.llvm.org/staging/#/builders/131/builds/9701/steps/5/logs/stdio
Commit: d8b5af45040431c44c1766aa505a6edb786ef81b
https://github.com/llvm/llvm-project/commit/d8b5af45040431c44c1766aa505a6edb786ef81b
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/DroppedVariableStats.h
M llvm/include/llvm/CodeGen/MachineFunctionPass.h
M llvm/lib/CodeGen/DroppedVariableStats.cpp
M llvm/lib/CodeGen/MachineFunctionPass.cpp
M llvm/unittests/CodeGen/CMakeLists.txt
R llvm/unittests/CodeGen/DroppedVariableStatsMIRTest.cpp
Log Message:
-----------
Revert "Reland "Add a pass to collect dropped var stats for MIR" (#117044)"
This reverts commit 249755cedb17ffa707253edcef1a388f807caa35.
Broke https://lab.llvm.org/buildbot/#/builders/160/builds/9420
Note: This is test shard 99 of 154.
[==========] Running 2 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 1 test from DroppedVariableStatsMIR
[ RUN ] DroppedVariableStatsMIR.InlinedAt
--
exit: -11
Commit: 80987ef4b609301c0f4cf2de62f91aff6d32418f
https://github.com/llvm/llvm-project/commit/80987ef4b609301c0f4cf2de62f91aff6d32418f
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
R llvm/include/llvm/CodeGen/DroppedVariableStats.h
M llvm/include/llvm/Passes/StandardInstrumentations.h
M llvm/lib/CodeGen/CMakeLists.txt
R llvm/lib/CodeGen/DroppedVariableStats.cpp
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/unittests/CodeGen/CMakeLists.txt
R llvm/unittests/CodeGen/DroppedVariableStatsIRTest.cpp
M llvm/unittests/IR/CMakeLists.txt
A llvm/unittests/IR/DroppedVariableStatsTest.cpp
Log Message:
-----------
Revert "Reland [NFC] Move DroppedVariableStats to its own file and redesign it to be extensible. (#117042)"
This reverts commit acf3b1aa932b2237c181686e52bc61584a80a3ff.
Broke https://lab.llvm.org/buildbot/#/builders/76/builds/5002
tools/clang/lib/CodeGen/CMakeFiles/obj.clangCodeGen.dir/BackendUtil.cpp.o:(.toc+0x258): undefined reference to `vtable for llvm::DroppedVariableStatsIR'
Commit: 9bf6365237f3a8a401afc0a69d2fb6d1b809ce68
https://github.com/llvm/llvm-project/commit/9bf6365237f3a8a401afc0a69d2fb6d1b809ce68
Author: Lee Wei <lee10202013 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/Transforms/ObjCARC/allocas.ll
M llvm/test/Transforms/ObjCARC/basic.ll
M llvm/test/Transforms/ObjCARC/cfg-hazards.ll
M llvm/test/Transforms/ObjCARC/contract-testcases.ll
M llvm/test/Transforms/ObjCARC/empty-block.ll
M llvm/test/Transforms/ObjCARC/path-overflow.ll
M llvm/test/Transforms/Reassociate/2011-01-26-UseAfterFree.ll
M llvm/test/Transforms/Reassociate/2012-06-08-InfiniteLoop.ll
M llvm/test/Transforms/Reassociate/add_across_block_crash.ll
M llvm/test/Transforms/Reassociate/infloop-deadphi.ll
M llvm/test/Transforms/Reassociate/reassociate-landingpad.ll
M llvm/test/Transforms/SCCP/2004-12-10-UndefBranchBug.ll
M llvm/test/Transforms/SCCP/2006-10-23-IPSCCP-Crash.ll
M llvm/test/Transforms/SCCP/2008-01-27-UndefCorrelate.ll
M llvm/test/Transforms/SCCP/PR26044.ll
M llvm/test/Transforms/SCCP/crash.ll
M llvm/test/Transforms/SCCP/domtree-update.ll
M llvm/test/Transforms/SCCP/fp-bc-icmp-const-fold.ll
M llvm/test/Transforms/SCCP/ipsccp-preserve-pdt.ll
M llvm/test/Transforms/SCCP/pr49582-iterator-invalidation.ll
M llvm/test/Transforms/SCCP/return-zapped.ll
M llvm/test/Transforms/SCCP/solve-after-each-resolving-undefs-for-function.ll
M llvm/test/Transforms/SCCP/switch-constantfold-crash.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reorder-fmuladd-crash.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_7zip.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_bullet.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_bullet3.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_dequeue.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_flop7.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_lencod-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_lencod.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_mandeltext.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_sim4b1.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_smallpt.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_vectorizeTree.ll
M llvm/test/Transforms/SLPVectorizer/X86/cse.ll
M llvm/test/Transforms/SLPVectorizer/X86/memory-runtime-checks.ll
M llvm/test/Transforms/SLPVectorizer/X86/no-scheduled-instructions.ll
M llvm/test/Transforms/SLPVectorizer/X86/ordering.ll
M llvm/test/Transforms/SLPVectorizer/X86/partail.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi_overalignedtype.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr16571.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_unsupported.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_repeated_ops.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_with_reordered_users.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/reuse-extracts-in-wider-vect.ll
M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
M llvm/test/Transforms/SLPVectorizer/X86/value-bug-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/value-bug.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
M llvm/test/Transforms/SLPVectorizer/slp-umax-rdx-matcher-crash.ll
M llvm/test/Transforms/Scalarizer/crash-bug.ll
M llvm/test/Transforms/Scalarizer/dbgloc-bug-inseltpoison.ll
M llvm/test/Transforms/Scalarizer/dbgloc-bug.ll
M llvm/test/Transforms/Scalarizer/phi-unreachable-pred.ll
M llvm/test/Transforms/SimpleLoopUnswitch/2011-06-02-CritSwitch.ll
M llvm/test/Transforms/SimpleLoopUnswitch/2012-04-30-LoopUnswitch-LPad-Crash.ll
M llvm/test/Transforms/SimpleLoopUnswitch/2015-09-18-Addrspace.ll
M llvm/test/Transforms/SimpleLoopUnswitch/delete-dead-blocks.ll
M llvm/test/Transforms/SimpleLoopUnswitch/formDedicatedAfterTrivial1.ll
M llvm/test/Transforms/SimpleLoopUnswitch/guards.ll
M llvm/test/Transforms/SimpleLoopUnswitch/pr37888.ll
M llvm/test/Transforms/SimpleLoopUnswitch/preserve-analyses.ll
M llvm/test/Transforms/SimplifyCFG/2004-12-10-SimplifyCFGCrash.ll
M llvm/test/Transforms/SimplifyCFG/2006-06-12-InfLoop.ll
M llvm/test/Transforms/SimplifyCFG/branch-on-undef.ll
M llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
M llvm/test/Transforms/SimplifyCFG/pr34131.ll
M llvm/test/Transforms/Sink/dead-user.ll
M llvm/test/Transforms/SpeculativeExecution/PR46267.ll
M llvm/test/Transforms/StructurizeCFG/loop-continue-phi.ll
Log Message:
-----------
[llvm] Remove `br i1 undef` from some regression tests [NFC] (#118419)
This PR removes tests with `br i1 undef` under
`llvm/tests/Transforms/ObjCARC, Reassociate, SCCP, SLPVectorizer...`.
After this PR, I'll continue to fix tests under `llvm/tests/CodeGen`,
which has more UB tests than `llvm/tests/Transforms`.
Commit: fef54d0393fda144a23d764f96d42f5e1d17ab3e
https://github.com/llvm/llvm-project/commit/fef54d0393fda144a23d764f96d42f5e1d17ab3e
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
A llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
A llvm/lib/Target/AMDGPU/AMDGPURegBankSelect.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-regbanklegalize.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-regbankselect.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.mir
Log Message:
-----------
AMDGPU/GlobalISel: Add skeletons for new register bank select passes (#112862)
New register bank select for AMDGPU will be split in two passes:
- AMDGPURegBankSelect: select banks based on machine uniformity analysis
- AMDGPURegBankLegalize: lower instructions that can't be inst-selected
with register banks assigned by AMDGPURegBankSelect.
AMDGPURegBankLegalize is similar to legalizer but with context of
uniformity analysis. Does not change already assigned banks.
Main goal of AMDGPURegBankLegalize is to provide high level table-like
overview of how to lower generic instructions based on available target
features and uniformity info (uniform vs divergent).
See RegBankLegalizeRules.
Summary of new features:
At the moment register bank select assigns register bank to output
register using simple algorithm:
- one of the inputs is vgpr output is vgpr
- all inputs are sgpr output is sgpr.
When function does not contain divergent control flow propagating
register banks like this works. In general, first point is still correct
but second is not when function contains divergent control flow.
Examples:
- Phi with uniform inputs that go through divergent branch
- Instruction with temporal divergent use.
To fix this AMDGPURegBankSelect will use machine uniformity analysis
to assign vgpr to each divergent and sgpr to each uniform instruction.
But some instructions are only available on VALU (for example floating
point instructions before gfx1150) and we need to assign vgpr to them.
Since we are no longer propagating register banks we need to ensure that
uniform instructions get their inputs in sgpr in some way.
In AMDGPURegBankLegalize uniform instructions that are only available on
VALU will be reassigned to vgpr on all operands and read-any-lane vgpr
output to original sgpr output.
Commit: 45ff28746f5f6350a95d8d9a3e3b3a62b932bce9
https://github.com/llvm/llvm-project/commit/45ff28746f5f6350a95d8d9a3e3b3a62b932bce9
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/Analysis/ConstraintSystem.h
M llvm/test/Transforms/ConstraintElimination/constraint-overflow.ll
Log Message:
-----------
[ConstraintSystem] Fix signed overflow in negate.
Use AddOverflow for potentially overflowing addition to fixed signed
integer overflow.
Compile-time impact is in the noise
https://llvm-compile-time-tracker.com/compare.php?from=bfb26202e05ee2932b4368b5fca607df01e8247f&to=195b0707148b567c674235e59712458e7ce1bb0e&stat=instructions:u
Commit: 69e9ceb04343ee661b53a49d61158a0e81250d32
https://github.com/llvm/llvm-project/commit/69e9ceb04343ee661b53a49d61158a0e81250d32
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
Log Message:
-----------
[gn build] Port 80987ef4b609
Commit: 7417ba67305747469e9636af68476faf12eefbcc
https://github.com/llvm/llvm-project/commit/7417ba67305747469e9636af68476faf12eefbcc
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
Log Message:
-----------
[gn build] Port fef54d0393fd
Commit: b5b15c1973935da943e8cee26dc961c6dbe339b9
https://github.com/llvm/llvm-project/commit/b5b15c1973935da943e8cee26dc961c6dbe339b9
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/docs/tools/dump_ast_matchers.py
Log Message:
-----------
[ast matcher][NFC] make dump_ast_matchers.py run in any path (#117942)
Commit: d5956fb8f999e60af8bede8b17b02ca3a7b7cf4f
https://github.com/llvm/llvm-project/commit/d5956fb8f999e60af8bede8b17b02ca3a7b7cf4f
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M bolt/lib/Passes/VeneerElimination.cpp
M bolt/test/AArch64/veneer-lld-abs.s
Log Message:
-----------
[BOLT][AArch64] Add support for short LLD thunks/veneers (#118422)
When a callee function is closer than 256MB from its call site, LLD
linker can strategically create a short thunk for the function with a
single branch instruction (that covers +/-128MB). Detect and convert
such thunks into direct calls in BOLT.
Commit: a9bf16d961e9bb0923b401bc26697c6ca707a1f5
https://github.com/llvm/llvm-project/commit/a9bf16d961e9bb0923b401bc26697c6ca707a1f5
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp
M clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/SVals.cpp
Log Message:
-----------
[StaticAnalyzer] Migrate away from PointerUnion::{is,get} (NFC) (#118421)
Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:
// FIXME: Replace the uses of is(), get() and dyn_cast() with
// isa<T>, cast<T> and the llvm::dyn_cast<T>
I'm not touching PointerUnion::dyn_cast for now because it's a bit
complicated; we could blindly migrate it to dyn_cast_if_present, but
we should probably use dyn_cast when the operand is known to be
non-null.
Commit: c8060423fe153fcb8febbebc4a043123b7a29a7b
https://github.com/llvm/llvm-project/commit/c8060423fe153fcb8febbebc4a043123b7a29a7b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M libcxx/include/__atomic/atomic.h
Log Message:
-----------
[libc++] Drop dependency on __functional/operations.h from <atomic> (#117302)
This should reduce the preprocessed size of the atomic header and other
headers in the synchronization library.
Commit: 5522d2462ed261a9c60fda2d56c65978a70a1793
https://github.com/llvm/llvm-project/commit/5522d2462ed261a9c60fda2d56c65978a70a1793
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
Log Message:
-----------
[flang][cuda] Allow AbstractResult to run in gpu.module (#118529)
in CUDA Fortran, device function are converted to `gpu.func` inside the
`gpu.module` operation. Update the AbstractResult pass to be able to run
on `func.func` and `gpu.func` operations inside the `gpu.module`.
Commit: 0c8928d456ac3ef23ed25bfc9e5d491dd7b62a11
https://github.com/llvm/llvm-project/commit/0c8928d456ac3ef23ed25bfc9e5d491dd7b62a11
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
A 0001-Reland-Add-a-pass-to-collect-dropped-var-stats-for-M.patch
A 0001-Reland-NFC-Move-DroppedVariableStats-to-its-own-file.patch
A llvm/include/llvm/CodeGen/DroppedVariableStats.h
M llvm/include/llvm/Passes/StandardInstrumentations.h
M llvm/lib/CodeGen/CMakeLists.txt
A llvm/lib/CodeGen/DroppedVariableStats.cpp
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/unittests/CodeGen/CMakeLists.txt
A llvm/unittests/CodeGen/DroppedVariableStatsIRTest.cpp
M llvm/unittests/IR/CMakeLists.txt
R llvm/unittests/IR/DroppedVariableStatsTest.cpp
Log Message:
-----------
Reland "[NFC] Move DroppedVariableStats to its own file and redesign it to be extensible. (#117042)" (#118546)
Removed the virtual destructor in the derived
class DroppedVariableStatsIR
Commit: 1e7171f692d0fad37aad0674c6b7c904540a9a0c
https://github.com/llvm/llvm-project/commit/1e7171f692d0fad37aad0674c6b7c904540a9a0c
Author: David Green <david.green at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/concat-vector.ll
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
Log Message:
-----------
[AArch64] Add tablegen patterns for concat(extract-high, extract-high) (#118286)
A `concat(extract-high(x), extract-high(y))` is the top half of x
inserted into the bottom half of y. This patch adds a tablegen pattern
to make sure that we generate a single i64 lane insert.
Commit: e2472d3b120659ba7cd0e0dd0c6bf1260957fe47
https://github.com/llvm/llvm-project/commit/e2472d3b120659ba7cd0e0dd0c6bf1260957fe47
Author: Matthias Braun <matze at braunis.de>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/test/CodeGen/attr-target-x86.c
Log Message:
-----------
Rework attr-target-x86 test (#117091)
Rework the attr-target-x86 test so the CHECK lines for the attributes
are next to their corresponding `__attribute__`.
Commit: b206ba1867763a2b09e33649446599538c84d334
https://github.com/llvm/llvm-project/commit/b206ba1867763a2b09e33649446599538c84d334
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
Log Message:
-----------
[gn build] Port 0c8928d456ac
Commit: f2fa9ac6169758268bc16c46ec80da2e88ad7f2c
https://github.com/llvm/llvm-project/commit/f2fa9ac6169758268bc16c46ec80da2e88ad7f2c
Author: k-kashapov <52855633+k-kashapov at users.noreply.github.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Log Message:
-----------
[nfc][MSan] Change for-loop to ArgNo instead of drop_begin (#117553)
As discussed in
https://github.com/llvm/llvm-project/pull/109284#discussion_r1838830571
Changed for loop to use `ArgNo` instead of `drop_begin` to keep loop
code consistent with other helpers.
Co-authored-by: Kamil Kashapov <kashapov at ispras.ru>
Commit: c7d38591be8b5c581c228313d2972cb758221cc2
https://github.com/llvm/llvm-project/commit/c7d38591be8b5c581c228313d2972cb758221cc2
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/ASTMatchers/Dynamic/Registry.cpp
Log Message:
-----------
[ast matcher] add `ExportDecl` in dynamically matchers (#118258)
Commit: ea6cdb9a0708330089d583ce20aeaf81eec94ff7
https://github.com/llvm/llvm-project/commit/ea6cdb9a0708330089d583ce20aeaf81eec94ff7
Author: Matthias Braun <matze at braunis.de>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/Basic/Targets/X86.cpp
M clang/test/CodeGen/attr-target-x86.c
Log Message:
-----------
allow prefer 256 bit attribute target (#117092)
This allows
`__attribute__((target("prefer-256-bit")))` /
`__attribute__((target("no-prefer-256-bit")))` to create variants of a
functions with 256/512 bit vector sizes within the same application.
Commit: c8b7ec2edd8d84729070e455002d1e78bdceddc5
https://github.com/llvm/llvm-project/commit/c8b7ec2edd8d84729070e455002d1e78bdceddc5
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/test/Lexer/gnu-flags.c
M clang/test/Preprocessor/macro_fn.c
Log Message:
-----------
Define a diagnostic group for missing variadic macro arguments (#116855)
Make the new diagnostic group a subgroup of the following diagnostic
groups:
-Wpre-c23-compat
-Wgnu-zero-variadic-macro-arguments
-Wc++20-extensions
-Wc23-extensions
This change is needed as 5231005193afb8db01afe9a8a1aa308d25f60ba1 made
it impossible to use -Wno-gnu-zero-variadic-macro-argumentsis to silence
the warning.
rdar://139234984
Commit: 1afb81dfaf902c1c42bd91fec1a7385e6e1529d3
https://github.com/llvm/llvm-project/commit/1afb81dfaf902c1c42bd91fec1a7385e6e1529d3
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/StructuralHash.h
M llvm/lib/CodeGen/MachineStableHash.cpp
M llvm/lib/IR/StructuralHash.cpp
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-nsconst.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-objc.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-string.ll
A llvm/test/CodeGen/AArch64/cgdata-outline-gvar.ll
Log Message:
-----------
[StructuralHash] Global Variable (#118412)
This update enhances the implementation of structural hashing for global
variables, using their initial contents. Private global variables or
constants are often used for metadata, where their names are not unique.
This can lead to the creation of different hash results although they
could be merged by the linker as they are effectively identical.
- Refine the hashing of GlobalVariables for strings or certain
Objective-C metadata cases that have section names. This can be further
extended to other scenarios.
- Expose StructuralHash for GlobalVariable so that this API can be
utilized by MachineStableHashing, which is also employed in the global
function outliner.
This change significantly improves size reduction by an additional 1% on
the LLD binary when the global function outliner and merger are enabled
together. As discussed in the RFC
https://discourse.llvm.org/t/loh-conflicting-with-machineoutliner/83279/8?u=kyulee-com,
if we disable or relocate the LOH pass, the size impact could increase
to 4%.
Commit: a201ba1b57aa57df8e31603b496793fa39d31936
https://github.com/llvm/llvm-project/commit/a201ba1b57aa57df8e31603b496793fa39d31936
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][Vector] Add support for 0-d shapes in extract-shape_cast folder (#116650)
The extract <-> shape cast folder was conservatively asserting and
failing on 0-d vectors. This pr fixes this.
This pr also adds more tests for 0d cases and updates related tests to
better reflect what they test.
Commit: e9dc6c5fbb6d2c2c93095acb6ff4ca0b515057ed
https://github.com/llvm/llvm-project/commit/e9dc6c5fbb6d2c2c93095acb6ff4ca0b515057ed
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/MachineOperand.cpp
Log Message:
-----------
CodeGen: Don't assert when printing null GlobalAddress operands (#115531)
Commit: 35cce408eef1a253df12c0023c993d78b180b1f3
https://github.com/llvm/llvm-project/commit/35cce408eef1a253df12c0023c993d78b180b1f3
Author: Dan Gohman <dev at sunfishcode.online>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Basic/Targets/WebAssembly.cpp
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/WebAssembly/WebAssembly.td
M llvm/test/CodeGen/WebAssembly/target-features-cpus.ll
Log Message:
-----------
[WebAssembly] Support the new "Lime1" CPU (#112035)
This adds WebAssembly support for the new [Lime1 CPU].
First, this defines some new target features. These are subsets of
existing
features that reflect implementation concerns:
- "call-indirect-overlong" - implied by "reference-types"; just the
overlong
encoding for the `call_indirect` immediate, and not the actual reference
types.
- "bulk-memory-opt" - implied by "bulk-memory": just `memory.copy` and
`memory.fill`, and not the other instructions in the bulk-memory
proposal.
Next, this defines a new target CPU, "lime1", which enables
mutable-globals,
bulk-memory-opt, multivalue, sign-ext, nontrapping-fptoint,
extended-const,
and call-indirect-overlong. Unlike the default "generic" CPU, "lime1" is
meant
to be frozen, and followed up by "lime2" and so on when new features are
desired.
[Lime1 CPU]:
https://github.com/WebAssembly/tool-conventions/blob/main/Lime.md#lime1
---------
Co-authored-by: Heejin Ahn <aheejin at gmail.com>
Commit: 410cbe3cf28913cca2fc61b3437306b841d08172
https://github.com/llvm/llvm-project/commit/410cbe3cf28913cca2fc61b3437306b841d08172
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/CodeGen/amdgpu-address-spaces.cpp
M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
A clang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_abi_version_600.bc
A clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_abi_version_600.bc
M clang/test/Driver/hip-device-libs.hip
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M libc/cmake/modules/prepare_libc_gpu_build.cmake
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
A llvm/test/CodeGen/AMDGPU/default_amdhsa_code_object_version.ll
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
[AMDGPU] Use COV6 by default (#118515)
Commit: 259bdc0033d1abacc80ad34f0a8ed86f6e218571
https://github.com/llvm/llvm-project/commit/259bdc0033d1abacc80ad34f0a8ed86f6e218571
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
R 0001-Reland-Add-a-pass-to-collect-dropped-var-stats-for-M.patch
R 0001-Reland-NFC-Move-DroppedVariableStats-to-its-own-file.patch
R llvm/include/llvm/CodeGen/DroppedVariableStats.h
M llvm/include/llvm/Passes/StandardInstrumentations.h
M llvm/lib/CodeGen/CMakeLists.txt
R llvm/lib/CodeGen/DroppedVariableStats.cpp
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/unittests/CodeGen/CMakeLists.txt
R llvm/unittests/CodeGen/DroppedVariableStatsIRTest.cpp
M llvm/unittests/IR/CMakeLists.txt
A llvm/unittests/IR/DroppedVariableStatsTest.cpp
Log Message:
-----------
Revert "Reland "[NFC] Move DroppedVariableStats to its own file and redesign it to be extensible. (#117042)" (#118546)"
This reverts commit 0c8928d456ac3ef23ed25bfc9e5d491dd7b62a11.
Broke Bot: https://lab.llvm.org/buildbot/#/builders/76/builds/5008
error: undefined reference to `vtable for llvm::DroppedVariableStatsIR'
Commit: 67d8e1754d7707c90aa15a15ea5bbb430108a162
https://github.com/llvm/llvm-project/commit/67d8e1754d7707c90aa15a15ea5bbb430108a162
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
Log Message:
-----------
[gn build] Port 259bdc0033d1
Commit: 14a259f85b6cbe6827677d94990c8803e31c847d
https://github.com/llvm/llvm-project/commit/14a259f85b6cbe6827677d94990c8803e31c847d
Author: Owen Anderson <resistor at mac.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
A llvm/test/Transforms/GlobalOpt/malloc-promote-addrspace.ll
Log Message:
-----------
GlobalOpt: Use the correct address space when creating a "*.init" global. (#118562)
Commit: 68bcba6d7a1cc18996c0bcb7c62267c62d2040d0
https://github.com/llvm/llvm-project/commit/68bcba6d7a1cc18996c0bcb7c62267c62d2040d0
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/CodeGen/amdgpu-address-spaces.cpp
M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
R clang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_abi_version_600.bc
R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_abi_version_600.bc
R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_abi_version_600.bc
M clang/test/Driver/hip-device-libs.hip
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M libc/cmake/modules/prepare_libc_gpu_build.cmake
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
R llvm/test/CodeGen/AMDGPU/default_amdhsa_code_object_version.ll
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
Revert "[AMDGPU] Use COV6 by default (#118515)"
This reverts commit 410cbe3cf28913cca2fc61b3437306b841d08172 because some
buildbots are not ready yet.
Commit: 6a0d6fc2e92bcfb7cb01a4c6cdd751a9b4b4c159
https://github.com/llvm/llvm-project/commit/6a0d6fc2e92bcfb7cb01a4c6cdd751a9b4b4c159
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/StructuralHash.h
M llvm/lib/CodeGen/MachineStableHash.cpp
M llvm/lib/IR/StructuralHash.cpp
R llvm/test/CodeGen/AArch64/cgdata-merge-gvar-nsconst.ll
R llvm/test/CodeGen/AArch64/cgdata-merge-gvar-objc.ll
R llvm/test/CodeGen/AArch64/cgdata-merge-gvar-string.ll
R llvm/test/CodeGen/AArch64/cgdata-outline-gvar.ll
Log Message:
-----------
Revert "[StructuralHash] Global Variable (#118412)"
This reverts commit 1afb81dfaf902c1c42bd91fec1a7385e6e1529d3.
Commit: 46de3a7064250bd2dfc7f8dc6e300474afa9fa97
https://github.com/llvm/llvm-project/commit/46de3a7064250bd2dfc7f8dc6e300474afa9fa97
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/include/clang/AST/Type.h
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaType.cpp
A clang/test/AST/HLSL/ArrayOutArgExpr.hlsl
M clang/test/CodeGenHLSL/ArrayAssignable.hlsl
A clang/test/CodeGenHLSL/BasicFeatures/ArrayOutputArguments.hlsl
M clang/test/SemaHLSL/ArrayTemporary.hlsl
A clang/test/SemaHLSL/Language/ArrayOutputArgs-errors.hlsl
Log Message:
-----------
[HLSL] get inout/out ABI for array parameters working (#111047)
Get inout/out parameters working for HLSL Arrays.
Utilizes the fix from #109323, and corrects the assignment behavior
slightly to allow for Non-LValues on the RHS.
Closes #106917
---------
Co-authored-by: Chris B <beanz at abolishcrlf.org>
Commit: f6f16b5f541773bb074dd042746456deff169de2
https://github.com/llvm/llvm-project/commit/f6f16b5f541773bb074dd042746456deff169de2
Author: Augie Fackler <augie at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
Log Message:
-----------
[bazel] update for a0c4f854cad2b97e44a1b58dc1fd982e1c4d60f3
Commit: caa8aa551bf8d2f29e76aad4ac6dcea6940eef13
https://github.com/llvm/llvm-project/commit/caa8aa551bf8d2f29e76aad4ac6dcea6940eef13
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[SelectionDAG] Rename CallOptions::IsSExt to IsSigned. NFC (#118574)
This is eventually passed to shouldSignExtendTypeInLibCall which calls
it IsSigned.
Commit: 3dc97557d1ac0cd7924b9679efbfc8f916f5365e
https://github.com/llvm/llvm-project/commit/3dc97557d1ac0cd7924b9679efbfc8f916f5365e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M libc/CMakeLists.txt
M llvm/cmake/modules/CrossCompile.cmake
Log Message:
-----------
[libc] Fix the GPU build when building inside the NATIVE project (#118573)
Summary:
We use the NATIVE directory for cross-compiling tools that need to be
run on the host. This was not forwarding the CMake arguments we used to
check if this was a GPU compile that created its own tools. Forward that
and simplify.
Fixes https://github.com/llvm/llvm-project/issues/118558
Commit: e08e5e2c426467342dbe79fbf3ea9723c17a07d1
https://github.com/llvm/llvm-project/commit/e08e5e2c426467342dbe79fbf3ea9723c17a07d1
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/test/Transforms/remove-dead-values.mlir
Log Message:
-----------
[mlir][transforms] Use `isExternal` instead of `isDeclaration` for `FunctionOpInterface` (#116573)
This PR fixes a bug in `RemoveDeadValues` where the
`FunctionOpInterface` does not have the `isDeclaration` method. As a
result, we should use the `isExternal` method instead. Fixes #116347.
Commit: a93b77ce49978dd8fb0d60d9aec8e300b67ce0b8
https://github.com/llvm/llvm-project/commit/a93b77ce49978dd8fb0d60d9aec8e300b67ce0b8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
Log Message:
-----------
[memprof] Fix IndexedMemProfRecord::clear (#118533)
This patch ensures that IndexedMemProfRecord::clear clears every field
of IndexedMemProfRecord.
This fix is not critical at the moment. The only use of this function
is in RecordWriterTrait::EmitData to release the memory we are done
with. That is, we never clear the data structure for the purpose of
reusing it.
Commit: c1afcaf33b03638fd533d14b0d3f65cd5c50755c
https://github.com/llvm/llvm-project/commit/c1afcaf33b03638fd533d14b0d3f65cd5c50755c
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
Log Message:
-----------
[RISCV] Match deinterleave(4,8) shuffles to SHL/TRUNC when legal (#118509)
We can extend the existing SHL+TRUNC lowering used for deinterleave2 for
deinterleave4, and deinterleave8 when the result types are small enough
to allow the shift to be legal. On RV64, this means i8 and i16 results
for deinterleave4 and i8 results for deinterleave8.
Commit: f947d5afd951fe0883e8afe2d00c00d6a97e29bd
https://github.com/llvm/llvm-project/commit/f947d5afd951fe0883e8afe2d00c00d6a97e29bd
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
Log Message:
-----------
[RISCV] Reduce redundancy in vnsrl tests
Triggered by discussion on pr118509.
Commit: 95566af789d208b8fc422644ab282a43911041f2
https://github.com/llvm/llvm-project/commit/95566af789d208b8fc422644ab282a43911041f2
Author: Max Winkler <max.enrico.winkler at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang/lib/AST/MicrosoftMangle.cpp
A clang/test/CodeGenCXX/ms-uneval-context-crash.cpp
Log Message:
-----------
[Clang][AST] Fix MS Mangle concept uneval context template instantiation crash (#117845)
Fixes https://github.com/llvm/llvm-project/issues/115990.
MSVC mangling got inadvertently broken here,
https://github.com/llvm/llvm-project/pull/83997, when it was fixed what
decl context a lambda is apart of for uneval contexts.
https://godbolt.org/z/K6jb5v145 for reference.
Given the following code snippet
```
template <typename T>
concept C = requires(const T& t)
{
{ T::test([](){}) };
};
template<typename T, typename = void>
struct Widget;
template <C T>
struct Widget<T> {};
struct Baz
{
template<typename F>
static constexpr decltype(auto) test(F&& f) {}
};
void test()
{
Widget<Baz> w;
}
```
`Baz::test` has a deduced return type which means we must instantiate
that template even in an unevaluated context.
The lambda inside the concept is within the decl context of `struct
Widget<T> {};`. So we end up needing to mangle a name of
`Baz::test<Widget<template-type-0-0>::lambda()>>()` since the lambda
isn't apart of an instantiated substituted class `Widget` yet at the
point the lambda is instantiated.
Upon template instantation of `test` we end up asking for the mangled
name so we can add this instantiation to `CodeGenModule::DefferredDecls`
since `test` is now referenced but not yet used.
I think the longer term more correct solution is to key `DefferedDecls`
off of something else than the mangled name to avoid having to mangle
names for instantations that are referenced but will never be used since
they are only instantiated from an unevaluated context.
As a fix for the regression I just created a custom mangling scheme for
this case since MSVC has no comparable naming scheme as such a template
will never be emitted into the resulting obj as it will never be used.
Commit: 982575fd0668aca94d400ea575c1b5d3ea398e37
https://github.com/llvm/llvm-project/commit/982575fd0668aca94d400ea575c1b5d3ea398e37
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/COFF/Config.h
M lld/COFF/Driver.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
M lld/COFF/Symbols.cpp
M lld/COFF/Symbols.h
Log Message:
-----------
[lld-link] Add context-aware diagnostic functions (#118430)
Similar to #112319 for ELF. While there is some initial boilerplate, it
can simplify some call sites that use Twine, especially when a printed
element uses `ctx` or toString.
Commit: 442ee78cb414cd7101482bb677e62631e94e5480
https://github.com/llvm/llvm-project/commit/442ee78cb414cd7101482bb677e62631e94e5480
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lldb/tools/lldb-dap/README.md
Log Message:
-----------
[lldb-dap] Fix Markdown tables in README.md
The markdown tables in the README aren't getting rendered correctly on
the LLDB-DAP page in the Visual Studio arketplace [1]. This is a
somewhat speculative fix as the table itself appears to be correct. Even
if this change doesn't fix it, the new formatting significantly improves
the readability.
[1] https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.lldb-dap
Commit: 3e11ae69abd17a80759ae1d9565d555f6a869304
https://github.com/llvm/llvm-project/commit/3e11ae69abd17a80759ae1d9565d555f6a869304
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/DebugUtils.h
M llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/DebugUtils.cpp
Log Message:
-----------
[ORC] Merge ostream operators for SymbolStringPtrs into SymbolStringPool.h. NFC.
These are simple and commonly used. Having them in the SymbolStringPool header
saves clients from having to #include "DebugUtils.h" everywhere.
Commit: 932c5249ff6b3f31f3b67d944cf5ead156b5dd2c
https://github.com/llvm/llvm-project/commit/932c5249ff6b3f31f3b67d944cf5ead156b5dd2c
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/MachineOperand.cpp
Log Message:
-----------
[CodeGen] Fix warning after #115531
Commit: bc66e9aaa69cf50634929f3bf10e40b336a6abb6
https://github.com/llvm/llvm-project/commit/bc66e9aaa69cf50634929f3bf10e40b336a6abb6
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/PDB.cpp
Log Message:
-----------
[lld-link] Replace message(...) with Msg(ctx)
to avoid the global ctx.
Commit: 4f41862c5a5241654a37ee994ed0074a815d3633
https://github.com/llvm/llvm-project/commit/4f41862c5a5241654a37ee994ed0074a815d3633
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/StructuralHash.h
M llvm/lib/CodeGen/MachineStableHash.cpp
M llvm/lib/IR/StructuralHash.cpp
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-nsconst.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-objc.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-string.ll
A llvm/test/CodeGen/AArch64/cgdata-outline-gvar.ll
Log Message:
-----------
Reapply "[StructuralHash] Global Variable (#118412)"
This reverts commit 6a0d6fc2e92bcfb7cb01a4c6cdd751a9b4b4c159.
Commit: 109e4a147faa80aa0ef4da92da203dd6732ee415
https://github.com/llvm/llvm-project/commit/109e4a147faa80aa0ef4da92da203dd6732ee415
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/vector-tuple-zeroinitializer.ll
Log Message:
-----------
[RISCV] Handle zeroinitializer of vector tuple Type (#113995)
It doesn't make sense to add a new generic ISD to handle riscv tuple
type. Instead we use `SPLAT_VECTOR` for ISD and further lower to
`VMV_V_X`.
Note: If there's `visitSPLAT_VECTOR` in generic DAG combiner, it needs
to skip riscv vector tuple type.
Stack on https://github.com/llvm/llvm-project/pull/114329
Commit: 9c9d4b9e73c19842c4fde581cec0295abed8c977
https://github.com/llvm/llvm-project/commit/9c9d4b9e73c19842c4fde581cec0295abed8c977
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/Shared/CMakeLists.txt
A llvm/lib/ExecutionEngine/Orc/Shared/SymbolStringPool.cpp
Log Message:
-----------
[ORC] Move ostream operator for SymbolStringPtrBase into OrcShared.
This will allow clients outside ORC (e.g. JITLink) to use the operator without
taking a dependence on ORC.
Commit: 5e7c88bf4cca17080dd50556b4b57efa2ca569b0
https://github.com/llvm/llvm-project/commit/5e7c88bf4cca17080dd50556b4b57efa2ca569b0
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Shared/BUILD.gn
Log Message:
-----------
[gn build] Port 9c9d4b9e73c1
Commit: b076fbb8443d93fd4a6815cb9828559e5af14cfb
https://github.com/llvm/llvm-project/commit/b076fbb8443d93fd4a6815cb9828559e5af14cfb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsISelLowering.h
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
Log Message:
-----------
[TargetLowering] Use Type* instead of EVT in shouldSignExtendTypeInLibCall. (#118587)
I want to use this function for GISel too so Type * is a better common
interface. All of the callers already convert EVT to Type * as needed
by calling lowering anyway.
Commit: 7be3326200ef382705d8e6b2d7dc5378af96b34a
https://github.com/llvm/llvm-project/commit/7be3326200ef382705d8e6b2d7dc5378af96b34a
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/XRefs.h
M clang-tools-extra/clangd/index/Background.cpp
M clang-tools-extra/clangd/index/Background.h
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/Index.cpp
M clang-tools-extra/clangd/index/Index.h
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/MemIndex.h
M clang-tools-extra/clangd/index/Merge.cpp
M clang-tools-extra/clangd/index/Merge.h
M clang-tools-extra/clangd/index/ProjectAware.cpp
M clang-tools-extra/clangd/index/Ref.h
M clang-tools-extra/clangd/index/Serialization.cpp
M clang-tools-extra/clangd/index/Serialization.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/SymbolCollector.h
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/dex/Dex.h
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Client.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/Service.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.h
M clang-tools-extra/clangd/index/remote/server/Server.cpp
M clang-tools-extra/clangd/test/index-serialization/Inputs/sample.idx
M clang-tools-extra/clangd/test/type-hierarchy-ext.test
M clang-tools-extra/clangd/test/type-hierarchy.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DexTests.cpp
M clang-tools-extra/clangd/unittests/FileIndexTests.cpp
M clang-tools-extra/clangd/unittests/IndexTests.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/TestWorkspace.cpp
Log Message:
-----------
[clangd] Re-land "support outgoing calls in call hierarchy" (#117673)
Co-authored-by: Quentin Chateau <quentin.chateau at gmail.com>
Commit: 52aff97f40c19671be7d1f5eecc2985ebf260a49
https://github.com/llvm/llvm-project/commit/52aff97f40c19671be7d1f5eecc2985ebf260a49
Author: Anutosh Bhat <andersonbhat491 at gmail.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/wasm/Driver.cpp
Log Message:
-----------
[lld][wasm] Clear lazyBitcodeFiles while resetting context (#118440)
Hi @sbc100
I was looking into a use case involving the link function (which got my
attention to reset).
I see that `lazyBitcodeFiles` variable was introduced here
https://github.com/llvm/llvm-project/pull/114327 but I don't see it
being reset while destroying the context eventually. Hopefully this
should be the correct way to address it.
Commit: 1534f456945060e27861000f5f2b16bc1b9e0c1e
https://github.com/llvm/llvm-project/commit/1534f456945060e27861000f5f2b16bc1b9e0c1e
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/COFF/DebugTypes.cpp
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld-link] Replace warn(...) with Warn(ctx)
Commit: 59bc03cf8e9df134e591c989abb1c068e4201008
https://github.com/llvm/llvm-project/commit/59bc03cf8e9df134e591c989abb1c068e4201008
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M lld/COFF/PDB.cpp
Log Message:
-----------
[lld-link] Simplify warnUnusable. NFC
Commit: 92ed7e292443de1d89754a59a533ded160d544eb
https://github.com/llvm/llvm-project/commit/92ed7e292443de1d89754a59a533ded160d544eb
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassRegistry.def
Log Message:
-----------
[CodeGen][PM] Use errs() instead of dbgs() in printer passes (#118469)
Printing passes is not exactly a debug activity, it is used in release (and dbgs() is errs() in release)
Commit: ff281f7d37ead15bdbdbfccb4b82ea93013b1a00
https://github.com/llvm/llvm-project/commit/ff281f7d37ead15bdbdbfccb4b82ea93013b1a00
Author: ronryvchin <94285266+ronryvchin at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M compiler-rt/include/profile/InstrProfData.inc
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
A llvm/test/Transforms/PGOProfile/loop_entries_gen.ll
A llvm/test/Transforms/PGOProfile/loop_entries_use.ll
M llvm/tools/llvm-profdata/llvm-profdata.cpp
Log Message:
-----------
[PGO] Add option to always instrumenting loop entries (#116789)
This patch extends the PGO infrastructure with an option to prefer the
instrumentation of loop entry blocks.
This option is a generalization of
https://github.com/llvm/llvm-project/commit/19fb5b467bb97f95eace1f3637d2d1041cebd3ce,
and helps to cover cases where the loop exit is never executed.
An example where this can occur are event handling loops.
Note that change does NOT change the default behavior.
Commit: 5cd3e9736266a86f730f6cfbdb83226b6c78b149
https://github.com/llvm/llvm-project/commit/5cd3e9736266a86f730f6cfbdb83226b6c78b149
Author: Luke Lau <luke at igalia.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
M llvm/test/MachineVerifier/RISCV/subreg-liveness.mir
M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vmv.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveP600/vmv.s
Log Message:
-----------
[RISCV] Mark vmvNr.v as implicitly using vtype (#118414)
This was pointed out in
https://github.com/llvm/llvm-project/pull/118283#issuecomment-2512895919.
We cannot move these between vtype definitions as they depend on SEW and
require vill to be clear.
Commit: 94d6b1cce5bb9449971a027e352385e72b059a3a
https://github.com/llvm/llvm-project/commit/94d6b1cce5bb9449971a027e352385e72b059a3a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/XRefs.cpp
Log Message:
-----------
[clangd] Fix warnings
This patch fixes:
clang-tools-extra/clangd/XRefs.cpp:2360:11: error: unused type alias
'SK' [-Werror,-Wunused-local-typedef]
clang-tools-extra/clangd/XRefs.cpp:2361:10: error: unused variable
'Kind' [-Werror,-Wunused-variable]
Commit: 154c7c0bf272adc67d3ffc541a01fe8025843fd2
https://github.com/llvm/llvm-project/commit/154c7c0bf272adc67d3ffc541a01fe8025843fd2
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/lambda-capture-type-deduction.cpp
Log Message:
-----------
[Clang] Don't add top-level const qualifiers to captured function types (#118050)
This aligns with the logic in `TreeTransform::RebuildQualifiedType()`
where we refrain from adding const qualifiers to function types.
Previously, we seemed to overlook this edge case when copy-capturing a
variable that is of function type within a const-qualified lambda.
This issue also reveals other related problems as in incorrect type
printout and a suspicious implementation in DeduceTemplateArguments. I
decide to leave them in follow-up work.
Fixes #84961
Commit: b1a48af56a62b8c0d5636c9404251700264fcd70
https://github.com/llvm/llvm-project/commit/b1a48af56a62b8c0d5636c9404251700264fcd70
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/PowerPC/pr38087.ll
M llvm/test/CodeGen/X86/avx10_2fptosi_satcvtds.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
M llvm/test/CodeGen/X86/freeze-vector.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/widen_conv-3.ll
Log Message:
-----------
[DAG] SimplifyDemandedVectorElts - add handling for INT<->FP conversions (#117884)
Commit: 455b4fd01ae9b2a78be98bcd26db2b700709c545
https://github.com/llvm/llvm-project/commit/455b4fd01ae9b2a78be98bcd26db2b700709c545
Author: Mariusz Sikora <mariusz.sikora at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
M llvm/test/CodeGen/AMDGPU/multilevel-break.ll
M llvm/test/CodeGen/AMDGPU/nested-loop-conditions.ll
Log Message:
-----------
[AMDGPU] Emit amdgcn.if.break in the same BB as amdgcn.loop (#118081)
Before this change if.break was placed in wrong loop level which
resulted in accumulating values only from last iteration of the inner
loop.
Commit: 2a30bfcef368667247ebbe30be84f73b92dbe800
https://github.com/llvm/llvm-project/commit/2a30bfcef368667247ebbe30be84f73b92dbe800
Author: Markus Böck <markus.boeck02 at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/include/mlir/IR/OpImplementation.h
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/Linalg/transform-ops-invalid.mlir
M mlir/test/Dialect/SCF/invalid.mlir
M mlir/test/Dialect/SPIRV/IR/memory-ops.mlir
M mlir/test/Dialect/Tensor/invalid.mlir
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir] Improve error message when number of operands and types differ (#118488)
If using a variadic operand, the error message given if the number of
types and operands do not match would be along the lines of:
```
3 operands present, but expected 2
```
This error message is confusing for multiple reasons, particular for
beginners:
* If the intention is to have 3 operands, it does not point out why it
expects 2. The user may actually just want to add a type to the type
list
* It reads as if a verifier error rather than a parser error, giving the
impression the Op only supports 2 operands.
This PR attempts to improve the error message by first noting the issue
("number of operands and types mismatch") and mentioning how many
operands and types it received.
Commit: 4df18ab7da17953277c7879782a37f4ed8e39beb
https://github.com/llvm/llvm-project/commit/4df18ab7da17953277c7879782a37f4ed8e39beb
Author: Konrad Kleine <kkleine at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/unittests/Target/LLVM/CMakeLists.txt
Log Message:
-----------
[mlir] Specify deps via `LLVM_LINK_COMPONENTS` (#118542)
This specifies the dependencies to link against with
`LLVM_LINK_COMPONENTS` for the
`mlir/test/Target/LLVM/MLIRTargetLLVMTests` binary.
Before, the dependencies where directly added to the
`target_link_libraries()` call which caused the problems I describe
next.
When doing a build of LLVM with MLIR I want to link against `libLLVM.so`
instead of statically linking `libLLVMSupport.a`. MLIR on the other side
seems to statically link against `libLLVMSupport.a` because when I link
to the shared library `libLLVM.so` I get:
```
CommandLine Error: Option 'aarch64-ptrauth-auth-checks' registered more than once!
```
This error indicates that the `Support` library is linked twice in the
`MLIRTargetLLVMTest` binary.
Here's the creation of the `MLIRTargetLLVMTest` binary before (Notice
the `libLLVMSupport.a`):
```
[6535/6847] : && /usr/bin/clang++ -O2 -flto=thin -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS --config=/usr/lib/rpm/redhat/redhat-hardened-clang.cfg -fstack-protector-strong -mbranch-protection=standard -fasynchronous-unwind-tables -D_DEFAULT_SOURCE -Dasm=__asm__ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wundef -Werror=mismatched-tags -O2 -g -DNDEBUG -Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now --config=/usr/lib/rpm/redhat/redhat-hardened-clang-ld.cfg -flto=thin -ffat-lto-objects -Wl,--build-id=sha1 -Wl,--gc-sections -fno-lto tools/mlir/unittests/Target/LLVM/CMakeFiles/MLIRTargetLLVMTests.dir/SerializeNVVMTarget.cpp.o tools/mlir/unittests/Target/LLVM/CMakeFiles/MLIRTargetLLVMTests.dir/SerializeROCDLTarget.cpp.o tools/mlir/unittests/Target/LLVM/CMakeFiles/MLIRTargetLLVMTests.dir/SerializeToLLVMBitcode.cpp.o -o tools/mlir/unittests/Target/LLVM/MLIRTargetLLVMTests -Wl,-rpath,/builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/lib64 lib64/libllvm_gtest_main.a lib64/libllvm_gtest.a lib64/libMLIRTargetLLVM.a lib64/libMLIRNVVMTarget.a lib64/libMLIRROCDLTarget.a lib64/libMLIRGPUDialect.a lib64/libMLIRNVVMDialect.a lib64/libMLIRLLVMDialect.a lib64/libMLIRLLVMToLLVMIRTranslation.a lib64/libMLIRBuiltinToLLVMIRTranslation.a lib64/libMLIRNVVMToLLVMIRTranslation.a lib64/libMLIRROCDLToLLVMIRTranslation.a lib64/libMLIRGPUToLLVMIRTranslation.a lib64/libLLVMAArch64CodeGen.a lib64/libLLVMAArch64Desc.a lib64/libLLVMAArch64Info.a -lpthread lib64/libMLIRTargetLLVM.a lib64/libMLIRROCDLDialect.a lib64/libMLIRExecutionEngineUtils.a lib64/libMLIRGPUDialect.a lib64/libMLIRMemRefDialect.a lib64/libMLIRArithUtils.a lib64/libMLIRDialectUtils.a lib64/libMLIRComplexDialect.a lib64/libMLIRArithAttrToLLVMConversion.a lib64/libMLIRArithDialect.a lib64/libMLIRCastInterfaces.a lib64/libMLIRDialect.a lib64/libMLIRInferIntRangeCommon.a lib64/libMLIRUBDialect.a lib64/libMLIRShapedOpInterfaces.a lib64/libMLIRTargetLLVMIRExport.a lib64/libMLIRDLTIDialect.a lib64/libMLIRLLVMIRTransforms.a lib64/libMLIRNVVMDialect.a lib64/libMLIRLLVMDialect.a lib64/libMLIRFuncDialect.a lib64/libMLIRTransforms.a lib64/libMLIRMemorySlotInterfaces.a lib64/libMLIRCopyOpInterface.a lib64/libMLIRRuntimeVerifiableOpInterface.a lib64/libMLIRTranslateLib.a lib64/libMLIRParser.a lib64/libMLIRBytecodeReader.a lib64/libMLIRAsmParser.a lib64/libMLIRTransformUtils.a lib64/libMLIRSubsetOpInterface.a lib64/libMLIRValueBoundsOpInterface.a lib64/libMLIRDestinationStyleOpInterface.a lib64/libMLIRRewrite.a lib64/libMLIRRewritePDL.a lib64/libMLIRPDLToPDLInterp.a lib64/libMLIRPass.a lib64/libMLIRAnalysis.a lib64/libMLIRControlFlowInterfaces.a lib64/libMLIRInferIntRangeInterface.a lib64/libMLIRCallInterfaces.a lib64/libMLIRDataLayoutInterfaces.a lib64/libMLIRViewLikeInterface.a lib64/libMLIRLoopLikeInterface.a lib64/libMLIRPresburger.a lib64/libMLIRPDLInterpDialect.a lib64/libMLIRFunctionInterfaces.a lib64/libMLIRPDLDialect.a lib64/libMLIRSideEffectInterfaces.a lib64/libMLIRInferTypeOpInterface.a lib64/libMLIRIR.a lib64/libMLIRSupport.a lib64/libLLVM.so.19.1 lib64/libLLVMAArch64Utils.a lib64/libLLVMAsmPrinter.a lib64/libLLVMCFGuard.a lib64/libLLVMGlobalISel.a lib64/libLLVMSelectionDAG.a lib64/libLLVMCodeGen.a lib64/libLLVMScalarOpts.a lib64/libLLVMAggressiveInstCombine.a lib64/libLLVMInstCombine.a lib64/libLLVMBitWriter.a lib64/libLLVMObjCARCOpts.a lib64/libLLVMCodeGenTypes.a lib64/libLLVMTarget.a lib64/libLLVMVectorize.a lib64/libLLVMTransformUtils.a lib64/libLLVMAnalysis.a lib64/libLLVMProfileData.a lib64/libLLVMSymbolize.a lib64/libLLVMDebugInfoDWARF.a lib64/libLLVMDebugInfoPDB.a lib64/libLLVMObject.a lib64/libLLVMMCParser.a lib64/libLLVMMC.a lib64/libLLVMIRReader.a lib64/libLLVMBitReader.a lib64/libLLVMAsmParser.a lib64/libLLVMTextAPI.a lib64/libLLVMDebugInfoCodeView.a lib64/libLLVMDebugInfoMSF.a lib64/libLLVMDebugInfoBTF.a lib64/libLLVMCore.a lib64/libLLVMBinaryFormat.a lib64/libLLVMRemarks.a lib64/libLLVMBitstreamReader.a lib64/libLLVMTargetParser.a lib64/libLLVMSupport.a lib64/libLLVMDemangle.a -lrt -ldl -lm /usr/lib64/libz.so /usr/lib64/libzstd.so && :
```
Here's the full error:
```
[24/25] cd /builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/tools/mlir/test && /usr/bin/python3 /builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/./bin/llvm-lit -vv /builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/tools/mlir/test
: CommandLine Error: Option 'aarch64-ptrauth-auth-checks' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
llvm-lit: /builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/utils/lit/lit/formats/googletest.py:38: warning: unable to discover google-tests in '/builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/tools/mlir/unittests/Target/LLVM/./MLIRTargetLLVMTests': Command '['/builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/tools/mlir/unittests/Target/LLVM/./MLIRTargetLLVMTests', '--gtest_list_tests', '--gtest_filter=-*DISABLED_*']' died with <Signals.SIGABRT: 6>.. Process output: b''
error: filter did not match any tests (of 2704 discovered). Use '--allow-empty-runs' to suppress this error.
FAILED: tools/mlir/test/CMakeFiles/check-mlir /builddir/build/BUILD/llvm-19.1.3-build/llvm-project-19.1.3.src/llvm/redhat-linux-build/tools/mlir/test/CMakeFiles/check-mlir
```
Here's the CMake invocation:
```
/usr/bin/cmake -S . -B redhat-linux-build -DCMAKE_C_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_Fortran_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF -DCMAKE_INSTALL_PREFIX:PATH=/usr -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib64 -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DLIB_SUFFIX=64 -DBUILD_SHARED_LIBS:BOOL=ON -G Ninja '' -DCLANG_BUILD_EXAMPLES:BOOL=OFF -DCLANG_CONFIG_FILE_SYSTEM_DIR=/etc/clang/ -DCLANG_DEFAULT_PIE_ON_LINUX=OFF -DCLANG_DEFAULT_UNWINDLIB=libgcc -DCLANG_ENABLE_ARCMT:BOOL=ON -DCLANG_ENABLE_STATIC_ANALYZER:BOOL=ON -DCLANG_INCLUDE_DOCS:BOOL=ON -DCLANG_INCLUDE_TESTS:BOOL=ON -DCLANG_LINK_CLANG_DYLIB=ON -DCLANG_PLUGIN_SUPPORT:BOOL=ON '-DCLANG_REPOSITORY_STRING=Fedora 19.1.3-5.fc42' -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR=../clang-tools-extra -DCLANG_RESOURCE_DIR=../lib/clang/19 -DCOMPILER_RT_INCLUDE_TESTS:BOOL=OFF -DCOMPILER_RT_INSTALL_PATH=/usr/lib/clang/19 -DLLVM_ENABLE_DOXYGEN:BOOL=OFF -DLLVM_ENABLE_SPHINX:BOOL=ON -DLLVM_BUILD_DOCS:BOOL=ON -DSPHINX_EXECUTABLE=/usr/bin/sphinx-build-3 -DSPHINX_OUTPUT_HTML:BOOL=OFF -DSPHINX_OUTPUT_MAN:BOOL=ON -DSPHINX_WARNINGS_AS_ERRORS=OFF -DLLDB_DISABLE_CURSES:BOOL=OFF -DLLDB_DISABLE_LIBEDIT:BOOL=OFF -DLLDB_DISABLE_PYTHON:BOOL=OFF -DLLDB_ENFORCE_STRICT_TEST_REQUIREMENTS:BOOL=ON -DLLVM_APPEND_VC_REV:BOOL=OFF -DLLVM_BUILD_EXAMPLES:BOOL=OFF -DLLVM_BUILD_EXTERNAL_COMPILER_RT:BOOL=ON -DLLVM_BUILD_LLVM_DYLIB:BOOL=ON -DLLVM_BUILD_RUNTIME:BOOL=ON -DLLVM_BUILD_TOOLS:BOOL=ON -DLLVM_BUILD_UTILS:BOOL=ON -DLLVM_COMMON_CMAKE_UTILS=/usr/share/llvm/cmake -DLLVM_DEFAULT_TARGET_TRIPLE=aarch64-redhat-linux-gnu -DLLVM_DYLIB_COMPONENTS=all -DLLVM_ENABLE_EH=ON -DLLVM_ENABLE_FFI:BOOL=ON -DLLVM_ENABLE_LIBCXX:BOOL=OFF -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON '-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra;lld;lldb;mlir' -DLLVM_ENABLE_RTTI:BOOL=ON '-DLLVM_ENABLE_RUNTIMES=compiler-rt;openmp;offload' -DLLVM_ENABLE_ZLIB:BOOL=ON -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR -DLLVM_INCLUDE_BENCHMARKS=OFF -DLLVM_INCLUDE_EXAMPLES:BOOL=ON -DLLVM_INCLUDE_TOOLS:BOOL=ON -DLLVM_INCLUDE_UTILS:BOOL=ON -DLLVM_INSTALL_TOOLCHAIN_ONLY:BOOL=OFF -DLLVM_INSTALL_UTILS:BOOL=ON -DLLVM_LINK_LLVM_DYLIB:BOOL=ON -DLLVM_PARALLEL_LINK_JOBS=1 -DLLVM_TARGETS_TO_BUILD=all -DLLVM_TOOLS_INSTALL_DIR:PATH=bin -DLLVM_UNREACHABLE_OPTIMIZE:BOOL=OFF -DLLVM_USE_PERF:BOOL=ON -DLLVM_UTILS_INSTALL_DIR:PATH=bin -DMLIR_INCLUDE_DOCS:BOOL=ON -DMLIR_INCLUDE_TESTS:BOOL=ON -DMLIR_INCLUDE_INTEGRATION_TESTS:BOOL=OFF -DMLIR_INSTALL_AGGREGATE_OBJECTS=OFF -DMLIR_BUILD_MLIR_C_DYLIB=ON -DMLIR_ENABLE_BINDINGS_PYTHON:BOOL=ON -DOPENMP_INSTALL_LIBDIR=lib64 -DLIBOMP_INSTALL_ALIASES=OFF -DLLVM_BUILD_TESTS:BOOL=ON -DLLVM_INCLUDE_TESTS:BOOL=ON -DLLVM_INSTALL_GTEST:BOOL=ON -DLLVM_LIT_ARGS=-vv -DLLVM_UNITTEST_LINK_FLAGS=-fno-lto -DBUILD_SHARED_LIBS:BOOL=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_LINKER_BUILD_ID:BOOL=ON -DOFFLOAD_INSTALL_LIBDIR=lib64 -DPython3_EXECUTABLE=/usr/bin/python3 -DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON -DPPC_LINUX_DEFAULT_IEEELONGDOUBLE=ON -DLLVM_LIBDIR_SUFFIX=64 -DLLVM_BINUTILS_INCDIR=/usr/include -DLLVM_VERSION_SUFFIX=
```
Commit: 3b0cb8979624bc052587712650bfd52f77eb69d3
https://github.com/llvm/llvm-project/commit/3b0cb8979624bc052587712650bfd52f77eb69d3
Author: MĂ©szĂĄros Gergely <gergely.meszaros at intel.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/tools/clang-repl/CMakeLists.txt
Log Message:
-----------
[clang-repl][CMake][MSVC] Use LINKER: instead of `-Wl` (#118518)
This should be more portable, and avoids passing the option to
`clang-cl` when linking, because `clang-cl` accepts any `-W` flags
(normally warning flags) during linking (#118516).
Commit: d9b4bdbff597d0ed98dd82674e456ac4c751a6a0
https://github.com/llvm/llvm-project/commit/d9b4bdbff597d0ed98dd82674e456ac4c751a6a0
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/LiveDebugVariables.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/lib/CodeGen/RegAllocBasic.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocGreedy.h
M llvm/lib/CodeGen/StackSlotColoring.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Target/LoongArch/LoongArchDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[CodeGen][NewPM] Port LiveDebugVariables to NPM (#115468)
The existing analysis was already a pimpl wrapper.
I have extracted legacy pass logic to a LDVImpl wrapper named
`LiveDebugVariables` which is the analysis::Result now. This controls
whether to activate the LDV (depending on `-live-debug-variables` and
DIsubprogram) itself.
The legacy and new analysis only construct the LiveDebugVariables.
VirtRegRewriter will test this.
Commit: 2137ded301adb430e0616cd835da9838e4fd79ce
https://github.com/llvm/llvm-project/commit/2137ded301adb430e0616cd835da9838e4fd79ce
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/Maintainers.md
A openmp/Maintainers.md
Log Message:
-----------
[OpenMP] Add Maintainers.md file
Commit: bba2507c19ff678c5d7b18e0b220406be87451fe
https://github.com/llvm/llvm-project/commit/bba2507c19ff678c5d7b18e0b220406be87451fe
Author: MĂ©szĂĄros Gergely <gergely.meszaros at intel.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M compiler-rt/CMakeLists.txt
M compiler-rt/lib/asan/CMakeLists.txt
Log Message:
-----------
[compiler-rt][MSVC][CMake] Wrap Linker flags for ICX (#118496)
RFC:
https://discourse.llvm.org/t/rfc-cmake-linker-flags-need-wl-equivalent-for-intel-c-icx-on-windows/82446
My previous pass missed some flags because I used
`-Werror=unknown-argument`, but `/D`, `/I` and `/O` are accepted by
clang (even when only linking), but mean different things than intended
for `link.exe`.
Commit: 720864907d1acd9766b5f8140065938c1083cba8
https://github.com/llvm/llvm-project/commit/720864907d1acd9766b5f8140065938c1083cba8
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
Log Message:
-----------
[TOSA] Use attributes for unsigned rescale (#118075)
Unsigned integer types are uncommon enough in MLIR that there is no
operation to cast a scalar from signless to unsigned and vice versa.
Currently tosa.rescale uses builtin.unrealized_conversion_cast which
does not lower. Instead, this commit introduces optional attributes to
indicate unsigned input or output, named similarly to those in the TOSA
specification. This is more in line with the rest of MLIR where specific
operations rather than values are signed/unsigned.
Commit: 73731d6873b6fb0757c3065aaf2452eaccd0eebc
https://github.com/llvm/llvm-project/commit/73731d6873b6fb0757c3065aaf2452eaccd0eebc
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
A llvm/test/TableGen/dag-isel-instrument.td
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
Log Message:
-----------
[llvm-tblgen] Increase Coverage Index Size (#118329)
Commit: f68b0e36997322eeda8fd199ea80deb1b49c5410
https://github.com/llvm/llvm-project/commit/f68b0e36997322eeda8fd199ea80deb1b49c5410
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/AArch64/or-load.ll
M llvm/test/Transforms/AggressiveInstCombine/X86/or-load.ll
Log Message:
-----------
[AggressiveInstCombine] Use APInt and avoid truncation when folding loads
A miscompilation issue has been addressed with improved handling.
Fixes: https://github.com/llvm/llvm-project/issues/118467.
Commit: 46829e5430aa3f086389549538d5289769d67076
https://github.com/llvm/llvm-project/commit/46829e5430aa3f086389549538d5289769d67076
Author: LiqinWeng <liqin.weng at spacemit.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/cttz_elts.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-or.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/vp-intrinsics.ll
Log Message:
-----------
[RISCV][CostModel] Correct the cost of some reductions (#118072)
Reductions include: and/or/max/min
Commit: 69b47845403e78f61987945033e1fd72e9dc044a
https://github.com/llvm/llvm-project/commit/69b47845403e78f61987945033e1fd72e9dc044a
Author: Rin Dobrescu <irina.dobrescu at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/test/tools/llvm-mca/AArch64/Neoverse/512tvb-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-zero-lat-movs.s
Log Message:
-----------
[AArch64] Fix scheduling information for arithmetic and logical instructions. (#113542)
This patch corrects scheduling information relating to Neoverse-V2
arithmetic and logical instructions.
Commit: 2c739dfd53fde0995f91c8a2c11ec803041bac86
https://github.com/llvm/llvm-project/commit/2c739dfd53fde0995f91c8a2c11ec803041bac86
Author: Hugo Trachino <hugo.trachino at huawei.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
Log Message:
-----------
[MLIR][Arith] Add ExpandOps to convertArithToLLVM (#117305)
Arith Floor and Ceil ops would not get lowered when running
--convert-arith-to-llvm.
Commit: 5cbc42142714a31ecb4ef7f674ba577946202e6e
https://github.com/llvm/llvm-project/commit/5cbc42142714a31ecb4ef7f674ba577946202e6e
Author: Dmitri Gribenko <gribozavr at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Port 9c9d4b9e73c1
Commit: 03aae4fbaea4d3bf9364bc04bcbb5898816ab5ae
https://github.com/llvm/llvm-project/commit/03aae4fbaea4d3bf9364bc04bcbb5898816ab5ae
Author: Jerry-Ge <jerry.ge at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
Log Message:
-----------
[MLIR][TOSA] Update CustomOp input and output names (#118408)
Update input name from input to input_list
Update output name from outputs to output_list
To match specification:
https://www.mlplatform.org/tosa/tosa_spec.html#_custom
Signed-off-by: Jerry Ge <jerry.ge at arm.com>
Commit: caf8942cd9e52fca35992ab34af0a1cec1866759
https://github.com/llvm/llvm-project/commit/caf8942cd9e52fca35992ab34af0a1cec1866759
Author: Kai Sasaki <lewuathe at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
A mlir/test/Transforms/invalid-outer-loop-size.mlir
M mlir/test/lib/Dialect/SCF/TestLoopParametricTiling.cpp
Log Message:
-----------
[mlir][transform] Guard parametric loop tiling pass from no option (#118254)
`test-extract-fixed-outer-loops` pass always crash without any
`test-outer-loop-sizes` option. We need to keep the pass from crash by
checking the option existence.
Fix https://github.com/llvm/llvm-project/issues/61716,
https://github.com/llvm/llvm-project/issues/116360
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 2202f0e093d84081ff098c6720bc8e2302a56061
https://github.com/llvm/llvm-project/commit/2202f0e093d84081ff098c6720bc8e2302a56061
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/store-constant.ll
Log Message:
-----------
[SLP][X86] Add test coverage for #111126
This needs to be expanded to a wider range of tests but for now just focus on #111126
Commit: 78db4e9f7b93953e425b3b69636925a557bff7eb
https://github.com/llvm/llvm-project/commit/78db4e9f7b93953e425b3b69636925a557bff7eb
Author: Jan JeÄmen <JanJecmen at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
Log Message:
-----------
[NFC][IRCE] Don't require LoopStructure to determine IRCE profitability (#116384)
This refactoring hoists the profitability check earlier in the pipeline,
so that for loops that are not profitable to transform there is no
iteration over the basic blocks or LoopStructure computation.
Motivated by PR #104659 that tweaks how the profitability of individual
branches is evaluated.
Commit: 4b5e7fa4de54e00df007ae5e2675393fd046aa59
https://github.com/llvm/llvm-project/commit/4b5e7fa4de54e00df007ae5e2675393fd046aa59
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
A clang/lib/AST/ByteCode/BitcastBuffer.cpp
A clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/Boolean.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/CMakeLists.txt
A clang/test/AST/ByteCode/builtin-bit-cast-bitfields.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
A clang/unittests/AST/ByteCode/BitcastBuffer.cpp
M clang/unittests/AST/ByteCode/CMakeLists.txt
Log Message:
-----------
[clang][bytecode] Handle bitcasts involving bitfields (#116843)
Copy the data one bit at a time, leaving optimizations for future work.
Adds a BitcastBuffer that takes care of pushing the bits in the right
order.
Commit: 4675db5f394ebadd8a56bb17e2344da5c7779a68
https://github.com/llvm/llvm-project/commit/4675db5f394ebadd8a56bb17e2344da5c7779a68
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
A llvm/test/CodeGen/AArch64/extract-vector-cmp.ll
M llvm/test/CodeGen/X86/vselect.ll
Log Message:
-----------
[DAGCombiner] Add support for scalarising extracts of a vector setcc (#117566)
For IR like this:
%icmp = icmp ult <4 x i32> %a, splat (i32 5)
%res = extractelement <4 x i1> %icmp, i32 1
where there is only one use of %icmp we can take a similar approach
to what we already do for binary ops such add, sub, etc. and convert
this into
%ext = extractelement <4 x i32> %a, i32 1
%res = icmp ult i32 %ext, 5
For AArch64 targets at least the scalar boolean result will almost
certainly need to be in a GPR anyway, since it will probably be
used by branches for control flow. I've tried to reuse existing code
in scalarizeExtractedBinop to also work for setcc.
NOTE: The optimisations don't apply for tests such as
extract_icmp_v4i32_splat_rhs in the file
CodeGen/AArch64/extract-vector-cmp.ll
because scalarizeExtractedBinOp only works if one of the input
operands is a constant.
Commit: adf892d743d91afc1af7893f97c770db31c26916
https://github.com/llvm/llvm-project/commit/adf892d743d91afc1af7893f97c770db31c26916
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/AST/ByteCode/BUILD.gn
Log Message:
-----------
[gn build] Port 4b5e7fa4de54
Commit: 52b9d0beb6225d1ffe89e2921774f0df0b3e7969
https://github.com/llvm/llvm-project/commit/52b9d0beb6225d1ffe89e2921774f0df0b3e7969
Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
Log Message:
-----------
Revert "[MLIR][Arith] Add ExpandOps to convertArithToLLVM (#117305)"
Failing bot:
* https://lab.llvm.org/buildbot/#/builders/138/builds/729
Also, not all discussions have been resolved:
* https://github.com/llvm/llvm-project/pull/117305#discussion_r1861194201
This reverts commit 2c739dfd53fde0995f91c8a2c11ec803041bac86.
Commit: 54db16221c92eb52efbea90ad5b5d2a1d00cda3e
https://github.com/llvm/llvm-project/commit/54db16221c92eb52efbea90ad5b5d2a1d00cda3e
Author: Timm BĂ€der <tbaeder at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
R clang/lib/AST/ByteCode/BitcastBuffer.cpp
R clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/Boolean.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/CMakeLists.txt
R clang/test/AST/ByteCode/builtin-bit-cast-bitfields.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
R clang/unittests/AST/ByteCode/BitcastBuffer.cpp
M clang/unittests/AST/ByteCode/CMakeLists.txt
Log Message:
-----------
Revert "[clang][bytecode] Handle bitcasts involving bitfields (#116843)"
This reverts commit 4b5e7fa4de54e00df007ae5e2675393fd046aa59.
This breaks builders:
https://lab.llvm.org/buildbot/#/builders/154/builds/8464
I guess some more testing on 32 bit hosts is needed.
Commit: a30f7e190b8a4b6cdb9d9c050be4af660f237931
https://github.com/llvm/llvm-project/commit/a30f7e190b8a4b6cdb9d9c050be4af660f237931
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/AST/ByteCode/BUILD.gn
Log Message:
-----------
[gn build] Port 54db16221c92
Commit: ecbe4d1e360e25c0634a3a62fbd01e8df5bb0c1b
https://github.com/llvm/llvm-project/commit/ecbe4d1e360e25c0634a3a62fbd01e8df5bb0c1b
Author: John Brawn <john.brawn at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/test/CodeGen/X86/cx-complex-range.c
M clang/test/CodeGen/cx-complex-range.c
M clang/test/CodeGen/matrix-type-operators-fast-math.c
M clang/test/CodeGen/nofpclass.c
M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
M clang/test/CodeGenHIP/printf_nonhostcall.cpp
M clang/test/Headers/__clang_hip_math_ocml_rounded_ops.hip
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/Operator.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/test/Assembler/fast-math-flags.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Transforms/InstCombine/fpcast.ll
Log Message:
-----------
[IR] Allow fast math flags on fptrunc and fpext (#115894)
This consists of:
* Make these instructions part of FPMathOperator.
* Adjust bitcode/ir readers/writers to expect fast math flags on these
instructions.
* Make IRBuilder set the fast math flags on these instructions.
* Update langref and release notes.
* Update a bunch of tests. Some of these are due to InstCombineCasts
incorrectly adding fast math flags to fptrunc, which will be fixed in a
later patch.
Commit: 12ca72ba7f11fb880794a37cffdea5f47e3062f4
https://github.com/llvm/llvm-project/commit/12ca72ba7f11fb880794a37cffdea5f47e3062f4
Author: Timm BĂ€der <tbaeder at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
A clang/lib/AST/ByteCode/BitcastBuffer.cpp
A clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/Boolean.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/CMakeLists.txt
A clang/test/AST/ByteCode/builtin-bit-cast-bitfields.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
A clang/unittests/AST/ByteCode/BitcastBuffer.cpp
M clang/unittests/AST/ByteCode/CMakeLists.txt
Log Message:
-----------
Reapply "[clang][bytecode] Handle bitcasts involving bitfields (#116843)"
This reverts commit 54db16221c92eb52efbea90ad5b5d2a1d00cda3e.
Check for existence of __SIZOEF_INT128__ so we don't run those
tests on targets that don't have int128.
Commit: 8c46413f343d0a5b8db48d958890b9038f03b70d
https://github.com/llvm/llvm-project/commit/8c46413f343d0a5b8db48d958890b9038f03b70d
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/utils/vim/ftplugin/llvm.vim
Log Message:
-----------
[vim] Improve iskeyword for LLVM IR (#117905)
This patch sets the 'iskeyword' variable to characters found in LLVM IR
identifiers. Keywords are used in many places in vim, most notably being
treated as word boundaries for commands like 'w' and '*'. The aim with
this is to improve the navigability and editability of LLVM IR files as
now one is able to: skip over entire identifiers with motions (e.g.,
`w/e/b`); yank/delete whole identifiers (e.g., `diw`); highlight/search
for the identifier under the cursor (`*`), etc.
More complicated LLVM identifiers including quotation marks are not
supported. The 'iskeyword' variable is just a list of characters, not a
regex, and including quotation marks and all the characters permitted in
quoted identifiers would expand the scope to almost everything and
become less usable. These types of identifiers are rare by comparison.
Note that this does change how words are considered across the entire
LLVM IR file, so including strings, comments, names, etc. Given that the
majority of editing/navigating LLVM IR is working with and across
values, this is arguably a worthwhile trade-off.
Commit: 4d70f5fe130d129efc0157342fb027f7b7b3bc22
https://github.com/llvm/llvm-project/commit/4d70f5fe130d129efc0157342fb027f7b7b3bc22
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/AST/ByteCode/BUILD.gn
Log Message:
-----------
[gn build] Port 12ca72ba7f11
Commit: 04b26f0eb7c3822fd5349b31e5ad544ea5a7929e
https://github.com/llvm/llvm-project/commit/04b26f0eb7c3822fd5349b31e5ad544ea5a7929e
Author: MichaĆ GĂłrny <mgorny at gentoo.org>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M offload/CMakeLists.txt
M offload/cmake/OpenMPTesting.cmake
M offload/plugins-nextgen/CMakeLists.txt
M offload/plugins-nextgen/amdgpu/CMakeLists.txt
M offload/plugins-nextgen/common/CMakeLists.txt
M offload/test/CMakeLists.txt
Log Message:
-----------
[offload] Standalone build fixes (#118173)
A fair number of fixes to get standalone builds of offload working â
mostly copying missing bits from openmp. It's almost ready â I still
need to figure out why some of the tsts aren't linking to the right
libraries.
Commit: 0adab6b1af5b1874099b1e97fdcea2ce5020d79a
https://github.com/llvm/llvm-project/commit/0adab6b1af5b1874099b1e97fdcea2ce5020d79a
Author: SpencerAbson <Spencer.Abson at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/Basic/Targets/AArch64.cpp
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/init-aarch64.c
A clang/test/Sema/aarch64-sve-intrinsics/acle_neon_sve_bridge.cpp
Log Message:
-----------
[AArch64][Clang] Define __ARM_NEON_SVE_BRIDGE unconditionally (#118272)
The meaning of `__ARM_NEON_SVE_BRIDGE` was changed here:
https://github.com/ARM-software/acle/pull/362
Such that it should be defined to `1` if the `arm_neon_sve_bridge.h`
header file is available, which is the case for Clang.
Commit: 041e5c96c4bd247a3dd6099f49143ee66d9205d8
https://github.com/llvm/llvm-project/commit/041e5c96c4bd247a3dd6099f49143ee66d9205d8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
Log Message:
-----------
[X86] getMemoryOpCost - ensure we pass through OpInfo / Instruction args to base getMemoryOpCost calls
Nothing really uses these yet, but we shouldn't be losing the info.
We can also pass on the OpInfo arg to the getMemoryOpCost constant load call to indicate if its constant/uniform/pow2 etc.
Prep cleanup for #111126
Commit: 148fdc519cd25b36db9da61a6c6cabe86268dc58
https://github.com/llvm/llvm-project/commit/148fdc519cd25b36db9da61a6c6cabe86268dc58
Author: Thorsten SchĂŒtt <schuett at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
A llvm/test/MachineVerifier/test_abd_su.mir
M llvm/test/TableGen/GlobalISelEmitter.td
Log Message:
-----------
[GlobalISel] Add G_ABDS and G_ABDU instructions (#118122)
The DAG has the same instructions: the signed and unsigned absolute
difference of it's input. For AArch64, they map to uabd and sabd for
Neon and SVE. The Neon and SVE instructions will require custom
patterns.
They are pseudo opcodes and are not imported by the IRTranslator. We
need combines to create them.
PowerPC, ARM, and AArch64 have native instructions.
/// i.e trunc(abs(sext(Op0) - sext(Op1))) becomes abds(Op0, Op1)
/// or trunc(abs(zext(Op0) - zext(Op1))) becomes abdu(Op0, Op1)
For GlobalISel, we are going to write the combines in MIR patterns.
see:
llvm/test/CodeGen/AArch64/abd-combine.ll
- [ ] combine into abd
- [ ] legalize and add td patterns
Commit: 9d952422b49b4519a293744533735967d43995b0
https://github.com/llvm/llvm-project/commit/9d952422b49b4519a293744533735967d43995b0
Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Semantics/OpenMP/do21.f90
Log Message:
-----------
[Flang][OpenMP] Issue an error for loop directive without a loop (#118039)
Fixes #107500
Commit: 75af62839b60a10439e8a31362d234b02c3958ba
https://github.com/llvm/llvm-project/commit/75af62839b60a10439e8a31362d234b02c3958ba
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic.ll
Log Message:
-----------
[ConstraintElim] Add tests for gep nuw (NFC)
Commit: 140df02aa2917fd9971af3bbf3145e513c1a8b2b
https://github.com/llvm/llvm-project/commit/140df02aa2917fd9971af3bbf3145e513c1a8b2b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/store-constant.ll
Log Message:
-----------
[SLP][X86] Update test coverage for #111126
I'd copied the test case from #118016 instead of the original #111126 test case
Commit: a88653a2cd4f22ff2ac4cb25214caf3e5fd27aff
https://github.com/llvm/llvm-project/commit/a88653a2cd4f22ff2ac4cb25214caf3e5fd27aff
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/IR/Operator.cpp
M llvm/test/Transforms/GVN/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/gep-vector-indices.ll
M llvm/test/Transforms/InstSimplify/gep.ll
Log Message:
-----------
[LLVM][IR] When evaluating GEP offsets don't assume ConstantInt is a scalar. (#117162)
Commit: 920ea4af64d92486b75dc13e25bff32deda287b4
https://github.com/llvm/llvm-project/commit/920ea4af64d92486b75dc13e25bff32deda287b4
Author: Nathan Gauër <brioche at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
Log Message:
-----------
[SPIR-V] Replace assert with report_fatal (#118617)
Irreducible must always be rejected, not only in debug builds.
Signed-off-by: Nathan Gauër <brioche at google.com>
Commit: 026fbe519e16a4993601d2bac509e182081fc068
https://github.com/llvm/llvm-project/commit/026fbe519e16a4993601d2bac509e182081fc068
Author: Maksim Ivanov <emaxx at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/www/hacking.html
Log Message:
-----------
[clang][www] Remove ClangDataFormat.py from docs (#117943)
The script was removed in
https://github.com/llvm/llvm-project/pull/96385.
Instead, mention the LLVM formatter as it's still very useful for
Clang's code.
Commit: 2e85138c0d06c0cc17569d375ce7a75e60cc6dd0
https://github.com/llvm/llvm-project/commit/2e85138c0d06c0cc17569d375ce7a75e60cc6dd0
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/include/clang/AST/AttrIterator.h
M clang/lib/CodeGen/CGLoopInfo.cpp
Log Message:
-----------
[clang][NFC] Generalize getSpecificAttr for const attributes (#116606)
This patch allows using `getSpecificAttr` for getting `const`
attributes. Previously, if users of this API would want to get a const
Attribute pointer, they had to pass `getSpecificAttr<const XYZ>()`, to
get it compile. It feels like an arbitrary limitation as the constness
was already encoded in the Attribute container's value type.
Commit: 8271195de05742ed7079d7882fbebc2daecbd7e2
https://github.com/llvm/llvm-project/commit/8271195de05742ed7079d7882fbebc2daecbd7e2
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/SemaCXX/new-delete.cpp
Log Message:
-----------
[Clang] Deleting an incomplete enum type is not an error (#118455)
The changes introduced in #97733 accidentally prevented to delete an
incomplete enum (the validity of which has been confirmed by CWG2925
Fixes #99278
Commit: 99b862efba9c2db5ec0aa32f62b5bc78df61d7a4
https://github.com/llvm/llvm-project/commit/99b862efba9c2db5ec0aa32f62b5bc78df61d7a4
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/ARM/vector-trunc.ll
Log Message:
-----------
[DAGISel][ARM] Fix vector truncate combine for big-endian (#118101)
This DAG combine was incorrect for big-endian targets, because it
assumes that when a bitcast changes the lane width, the
least-significant bits of the wider lanes are in the lower-numbered
lanes of the smaller type, which is only true for little-endian.
Commit: 7235ac90517b61f8a5b5bd4e6a55437c094d6156
https://github.com/llvm/llvm-project/commit/7235ac90517b61f8a5b5bd4e6a55437c094d6156
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lld/COFF/Writer.cpp
A lld/test/COFF/deploadflag-cfg-short.s
Log Message:
-----------
[LLD][COFF] Check load config size before setting its DependentLoadFlags (#118535)
Merge prepareLoadConfig and checkLoadConfigGuardData to share helper
macros.
Commit: 7b6e0d9fc3993f3e3df596fd16d97e2ed2e1d0aa
https://github.com/llvm/llvm-project/commit/7b6e0d9fc3993f3e3df596fd16d97e2ed2e1d0aa
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/test/Transforms/LowerMatrixIntrinsics/dot-product-transpose-int.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/transpose-opts-lifting.ll
Log Message:
-----------
[Matrix] Use DenseMap for ShapeMap instead of ValueMap. (#118282)
ValueMap automatically updates entries with the new value if they have
been RAUW. This can lead to instructions that are expected to not have
shape info to be added to the map (e.g. shufflevector as in the added
test case).
This leads to incorrect results. Originally it was used for transpose
optimizations, but they now all use updateShapeAndReplaceAllUsesWith,
which takes care of updating the shape info as needed.
This fixes a crash in the newly added test cases.
PR: https://github.com/llvm/llvm-project/pull/118282
Commit: a608607fd70503c20854bbc0f6f5182b51489b4f
https://github.com/llvm/llvm-project/commit/a608607fd70503c20854bbc0f6f5182b51489b4f
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic.ll
Log Message:
-----------
[ConstraintElim] Add support for decomposing gep nuw (#118639)
ConstraintElimination currently only supports decomposing gep nusw with
non-negative indices (with "non-negative" possibly being enforced via
pre-condition).
Add support for gep nuw, which directly gives us the necessary
guarantees for the decomposition.
Commit: 3b904ae5ac5e9d759f3629e9a6b98f14bbfb304c
https://github.com/llvm/llvm-project/commit/3b904ae5ac5e9d759f3629e9a6b98f14bbfb304c
Author: JĂ©rĂŽme Duval <jerome.duval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M libunwind/src/CMakeLists.txt
M libunwind/src/UnwindCursor.hpp
Log Message:
-----------
[libunwind][Haiku] Improve support (#115462)
* Signal frame unwinding on x86_64 from X512
* Header search for commpage_defs.h on non-standard paths
Unwind supported tests pass on Haiku x86_64
---------
Co-authored-by: Trung Nguyen <trungnt282910 at gmail.com>
Commit: 7aec6dc477f8148ed066d10dfc7a012a51b6599c
https://github.com/llvm/llvm-project/commit/7aec6dc477f8148ed066d10dfc7a012a51b6599c
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/Record.h
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Initialize bases when bitcasting (#117179)
Base pointers do not get passed to the callback, so initialize them when iterating bases.
Commit: 4e80c532c613cc93a43dcf71eaf6a30f96c27b6c
https://github.com/llvm/llvm-project/commit/4e80c532c613cc93a43dcf71eaf6a30f96c27b6c
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/test/API/commands/register/register/aarch64_sme_z_registers/za_dynamic_resize/Makefile
M lldb/test/API/commands/register/register/aarch64_sve_registers/rw_access_dynamic_resize/Makefile
M lldb/test/API/functionalities/process_save_core_minidump/Makefile
M lldb/test/API/tools/lldb-dap/threads/Makefile
Log Message:
-----------
[lldb][tests] Fix passing pthread library to a linker for some API tests (#118530)
Specify ENABLE_THREADS := YES within test's Makefile instead of passing
-lpthread explicitly via the compiler's CFLAGS options.
Refactoring fix.
Co-authored-by: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Commit: 4a7abfe0a7b9b43cc60115caab810f4c24e53f1c
https://github.com/llvm/llvm-project/commit/4a7abfe0a7b9b43cc60115caab810f4c24e53f1c
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/sub-gep.ll
Log Message:
-----------
[InstCombine] Preserve nuw in OptimizePointerDifference
If both the geps and the subs are nuw the new sub is also nuw.
Proof: https://alive2.llvm.org/ce/z/mM8UvF
Commit: ba43a102a929eb8aae60580e14f3192a705e1805
https://github.com/llvm/llvm-project/commit/ba43a102a929eb8aae60580e14f3192a705e1805
Author: cmtice <cmtice at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/source/ValueObject/ValueObject.cpp
Log Message:
-----------
[LLDB] Fix error returns in CastToBasicType and CastToEnumType in ValueObject. (#117401)
Update the error returns in ValueObject::CastToBasicType and
ValueObject::CastToEnumType to create new errors and return a
ValueObjectConstResult with the error, rather tnan updating the error in
(and returning) the input ValueObject.
Commit: b79007d8a6fed51ec2e06aeaec31968122cfcd09
https://github.com/llvm/llvm-project/commit/b79007d8a6fed51ec2e06aeaec31968122cfcd09
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/IR/Operator.cpp
M llvm/unittests/IR/InstructionsTest.cpp
Log Message:
-----------
[IR] Fix accumulateConstantOffset() on zero-index GEP
These are degenerate but not malformed, so make sure we don't
crash.
Commit: 66ed8fb9739402ae51b790a3541a07dfa85ff174
https://github.com/llvm/llvm-project/commit/66ed8fb9739402ae51b790a3541a07dfa85ff174
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Log Message:
-----------
[InstCombine] Fix use after free
Make sure we only access cached nowrap flags.
Commit: 95e44d3670f402e0cb9b78fa3cce20d8edc1ac77
https://github.com/llvm/llvm-project/commit/95e44d3670f402e0cb9b78fa3cce20d8edc1ac77
Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/sse41-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse41-intrinsics-i386.ll
Log Message:
-----------
[msan] Add handling for sse41_round_pd/sse41_round_ps (#118441)
Add handling for sse41_round_pd/sse41_round_ps similarly to
maybeHandleSimpleNomemIntrinsic.
Test plan: ninja check-all
Commit: 1b95e76d8f10725f73c706881ccc49669e151f38
https://github.com/llvm/llvm-project/commit/1b95e76d8f10725f73c706881ccc49669e151f38
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Log Message:
-----------
[Instrumentation] Fix a warning
This patch fixes:
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp:3840:14:
error: unused variable 'NumArgOperands' [-Werror,-Wunused-variable]
Commit: 85d15bd130930c96533419b0fc2e66d86b84af42
https://github.com/llvm/llvm-project/commit/85d15bd130930c96533419b0fc2e66d86b84af42
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/Transforms/SLPVectorizer/X86/store-constant.ll
Log Message:
-----------
[TTI][X86] getMemoryOpCost - reduced costs when loading uniform values due to value reuse (#118642)
Similar to what we do for broadcast shuffles, when legalising load costs, if the value is known to be uniform, then we will only load a single vector and reuse this across the split legalised registers.
Fixes #111126
Commit: 0a2116f4f96efc83bc729f0ed1a3d944b86cf1cb
https://github.com/llvm/llvm-project/commit/0a2116f4f96efc83bc729f0ed1a3d944b86cf1cb
Author: Andrea Faulds <andrea.faulds at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
Log Message:
-----------
[mlir][spirv][vector] Support converting vector.from_elements to SPIR-V (#118540)
Closes #118098.
Commit: d5ba143a6d8e8726c900dbfc381dab0e7d8b6a65
https://github.com/llvm/llvm-project/commit/d5ba143a6d8e8726c900dbfc381dab0e7d8b6a65
Author: John Harrison <harjohn at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/source/Host/common/TCPSocket.cpp
M lldb/unittests/Host/SocketTest.cpp
Log Message:
-----------
[lldb] Correct an issue when using Socket to listen on `localhost:0` on ipv4 and ipv6. (#118565)
On systems supporting ting ipv4 and ipv6 the second socket to initialize
will not update the listening address correctly after the call to `bind`.
This results in the second address listed in
`Socket::GetListeningConnectionURI` to have port `:0`, which is
incorrect.
To fix this, correct which address is used to detect the port and update
the unit tests to cover this use case.
Additionally, I updated the SocketTest's to only parameterize tests that
can work on ipv4 or ipv6. This means tests like
`SocketTest::DecodeHostAndPort` are only run once, instead of twice
since they do not change behavior based on parameters.
I also included a new unit test to cover listening on `localhost:0`,
validating both sockets correctly list the updated port.
Commit: 06c831d7fbb02600ded1f793eaaa142d849db2a2
https://github.com/llvm/llvm-project/commit/06c831d7fbb02600ded1f793eaaa142d849db2a2
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/docs/dev/header_generation.rst
M libc/docs/dev/source_tree_layout.rst
A libc/hdrgen/CMakeLists.txt
A libc/hdrgen/class_implementation/classes/enumeration.py
A libc/hdrgen/class_implementation/classes/function.py
A libc/hdrgen/class_implementation/classes/macro.py
A libc/hdrgen/class_implementation/classes/object.py
A libc/hdrgen/class_implementation/classes/type.py
A libc/hdrgen/gpu_headers.py
A libc/hdrgen/header.py
A libc/hdrgen/tests/expected_output/test_header.h
A libc/hdrgen/tests/input/test_small.h.def
A libc/hdrgen/tests/input/test_small.yaml
A libc/hdrgen/tests/test_integration.py
A libc/hdrgen/yaml/arpa/inet.yaml
A libc/hdrgen/yaml/assert.yaml
A libc/hdrgen/yaml/ctype.yaml
A libc/hdrgen/yaml/dirent.yaml
A libc/hdrgen/yaml/dlfcn.yaml
A libc/hdrgen/yaml/elf.yaml
A libc/hdrgen/yaml/errno.yaml
A libc/hdrgen/yaml/fcntl.yaml
A libc/hdrgen/yaml/features.yaml
A libc/hdrgen/yaml/fenv.yaml
A libc/hdrgen/yaml/float.yaml
A libc/hdrgen/yaml/gpu/rpc.yaml
A libc/hdrgen/yaml/inttypes.yaml
A libc/hdrgen/yaml/limits.yaml
A libc/hdrgen/yaml/link.yaml
A libc/hdrgen/yaml/locale.yaml
A libc/hdrgen/yaml/malloc.yaml
A libc/hdrgen/yaml/math.yaml
A libc/hdrgen/yaml/pthread.yaml
A libc/hdrgen/yaml/sched.yaml
A libc/hdrgen/yaml/search.yaml
A libc/hdrgen/yaml/setjmp.yaml
A libc/hdrgen/yaml/signal.yaml
A libc/hdrgen/yaml/spawn.yaml
A libc/hdrgen/yaml/stdbit.yaml
A libc/hdrgen/yaml/stdckdint.yaml
A libc/hdrgen/yaml/stdfix.yaml
A libc/hdrgen/yaml/stdint.yaml
A libc/hdrgen/yaml/stdio.yaml
A libc/hdrgen/yaml/stdlib.yaml
A libc/hdrgen/yaml/string.yaml
A libc/hdrgen/yaml/strings.yaml
A libc/hdrgen/yaml/sys/auxv.yaml
A libc/hdrgen/yaml/sys/epoll.yaml
A libc/hdrgen/yaml/sys/ioctl.yaml
A libc/hdrgen/yaml/sys/mman.yaml
A libc/hdrgen/yaml/sys/prctl.yaml
A libc/hdrgen/yaml/sys/random.yaml
A libc/hdrgen/yaml/sys/resource.yaml
A libc/hdrgen/yaml/sys/select.yaml
A libc/hdrgen/yaml/sys/sendfile.yaml
A libc/hdrgen/yaml/sys/socket.yaml
A libc/hdrgen/yaml/sys/stat.yaml
A libc/hdrgen/yaml/sys/statvfs.yaml
A libc/hdrgen/yaml/sys/syscall.yaml
A libc/hdrgen/yaml/sys/time.yaml
A libc/hdrgen/yaml/sys/types.yaml
A libc/hdrgen/yaml/sys/utsname.yaml
A libc/hdrgen/yaml/sys/wait.yaml
A libc/hdrgen/yaml/termios.yaml
A libc/hdrgen/yaml/threads.yaml
A libc/hdrgen/yaml/time.yaml
A libc/hdrgen/yaml/uchar.yaml
A libc/hdrgen/yaml/unistd.yaml
A libc/hdrgen/yaml/wchar.yaml
A libc/hdrgen/yaml_functions_sorted.py
A libc/hdrgen/yaml_to_classes.py
M libc/include/CMakeLists.txt
R libc/newhdrgen/CMakeLists.txt
R libc/newhdrgen/class_implementation/classes/enumeration.py
R libc/newhdrgen/class_implementation/classes/function.py
R libc/newhdrgen/class_implementation/classes/macro.py
R libc/newhdrgen/class_implementation/classes/object.py
R libc/newhdrgen/class_implementation/classes/type.py
R libc/newhdrgen/gpu_headers.py
R libc/newhdrgen/header.py
R libc/newhdrgen/tests/expected_output/test_header.h
R libc/newhdrgen/tests/input/test_small.h.def
R libc/newhdrgen/tests/input/test_small.yaml
R libc/newhdrgen/tests/test_integration.py
R libc/newhdrgen/yaml/arpa/inet.yaml
R libc/newhdrgen/yaml/assert.yaml
R libc/newhdrgen/yaml/ctype.yaml
R libc/newhdrgen/yaml/dirent.yaml
R libc/newhdrgen/yaml/dlfcn.yaml
R libc/newhdrgen/yaml/elf.yaml
R libc/newhdrgen/yaml/errno.yaml
R libc/newhdrgen/yaml/fcntl.yaml
R libc/newhdrgen/yaml/features.yaml
R libc/newhdrgen/yaml/fenv.yaml
R libc/newhdrgen/yaml/float.yaml
R libc/newhdrgen/yaml/gpu/rpc.yaml
R libc/newhdrgen/yaml/inttypes.yaml
R libc/newhdrgen/yaml/limits.yaml
R libc/newhdrgen/yaml/link.yaml
R libc/newhdrgen/yaml/locale.yaml
R libc/newhdrgen/yaml/malloc.yaml
R libc/newhdrgen/yaml/math.yaml
R libc/newhdrgen/yaml/pthread.yaml
R libc/newhdrgen/yaml/sched.yaml
R libc/newhdrgen/yaml/search.yaml
R libc/newhdrgen/yaml/setjmp.yaml
R libc/newhdrgen/yaml/signal.yaml
R libc/newhdrgen/yaml/spawn.yaml
R libc/newhdrgen/yaml/stdbit.yaml
R libc/newhdrgen/yaml/stdckdint.yaml
R libc/newhdrgen/yaml/stdfix.yaml
R libc/newhdrgen/yaml/stdint.yaml
R libc/newhdrgen/yaml/stdio.yaml
R libc/newhdrgen/yaml/stdlib.yaml
R libc/newhdrgen/yaml/string.yaml
R libc/newhdrgen/yaml/strings.yaml
R libc/newhdrgen/yaml/sys/auxv.yaml
R libc/newhdrgen/yaml/sys/epoll.yaml
R libc/newhdrgen/yaml/sys/ioctl.yaml
R libc/newhdrgen/yaml/sys/mman.yaml
R libc/newhdrgen/yaml/sys/prctl.yaml
R libc/newhdrgen/yaml/sys/random.yaml
R libc/newhdrgen/yaml/sys/resource.yaml
R libc/newhdrgen/yaml/sys/select.yaml
R libc/newhdrgen/yaml/sys/sendfile.yaml
R libc/newhdrgen/yaml/sys/socket.yaml
R libc/newhdrgen/yaml/sys/stat.yaml
R libc/newhdrgen/yaml/sys/statvfs.yaml
R libc/newhdrgen/yaml/sys/syscall.yaml
R libc/newhdrgen/yaml/sys/time.yaml
R libc/newhdrgen/yaml/sys/types.yaml
R libc/newhdrgen/yaml/sys/utsname.yaml
R libc/newhdrgen/yaml/sys/wait.yaml
R libc/newhdrgen/yaml/termios.yaml
R libc/newhdrgen/yaml/threads.yaml
R libc/newhdrgen/yaml/time.yaml
R libc/newhdrgen/yaml/uchar.yaml
R libc/newhdrgen/yaml/unistd.yaml
R libc/newhdrgen/yaml/wchar.yaml
R libc/newhdrgen/yaml_functions_sorted.py
R libc/newhdrgen/yaml_to_classes.py
M libc/src/math/docs/add_math_function.md
Log Message:
-----------
[libc] rename newhdrgen to just hdrgen (#118545)
Link: #117208
Fixes: #117254
Commit: 9e662066388318dbce65514c98aa5c9d70d7d264
https://github.com/llvm/llvm-project/commit/9e662066388318dbce65514c98aa5c9d70d7d264
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
A llvm/include/llvm/Transforms/Utils/ExtraPassManager.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
Log Message:
-----------
[Passes] Generalize ShouldRunExtraVectorPasses to allow re-use (NFCI). (#118323)
Generalize ShouldRunExtraVectorPasses to ShouldRunExtraPasses, to allow
re-use for other transformations.
PR: https://github.com/llvm/llvm-project/pull/118323
Commit: e2c3d16282aca0f7e13f58170140647632d627c9
https://github.com/llvm/llvm-project/commit/e2c3d16282aca0f7e13f58170140647632d627c9
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/docs/CodingStandards.rst
Log Message:
-----------
[NFC] Eliminate need of Emacs tag and file name in file header (#118553)
- Simplify file header to not require file name and C++ Emacs tag.
See
https://discourse.llvm.org/t/is-c-in-header-files-still-relevant/83124/1
Commit: 87c21bf0644c640e34c3eaa2e9a7c97eda0bf4a4
https://github.com/llvm/llvm-project/commit/87c21bf0644c640e34c3eaa2e9a7c97eda0bf4a4
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
Log Message:
-----------
[AMDGPU] Preserve `noundef` and `range` during kernel argument loads (#118395)
This commit ensures than noundef (which is frequently a prerequisite for
other annotations) and range() annotations on kernel arguments are
copied onto their corresponding load from the kernel argument structure.
Commit: 4639a9a06387b7ae3b21255d2ac3545e6b183236
https://github.com/llvm/llvm-project/commit/4639a9a06387b7ae3b21255d2ac3545e6b183236
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lld/COFF/DebugTypes.cpp
M lld/COFF/Driver.cpp
M lld/COFF/ICF.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/PDB.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld-link] Replace log(...) with Log
Commit: bb9bb686741feeb2c65097ef750126477f96ff30
https://github.com/llvm/llvm-project/commit/bb9bb686741feeb2c65097ef750126477f96ff30
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-unsupported.mlir
Log Message:
-----------
[mlir][spirv] Handle vectors of integers of unsupported width (#118663)
Fixes: https://github.com/llvm/llvm-project/issues/118612
Commit: a8f927161bc25fe70d367c64e44211a15767d03e
https://github.com/llvm/llvm-project/commit/a8f927161bc25fe70d367c64e44211a15767d03e
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
Log Message:
-----------
[mlir][Vector] Fix vector.extract lowering to llvm for 0-d vectors (#117731)
The current implementation of lowering to llvm for vector.extract
incorrectly assumes that if the number of indices is zero, the operation
can be folded away. This PR removes this condition and relies on the
folder to do it instead.
This PR also unifies the logic for scalar extracts and slice extracts,
which as a side effect also enables vector.extract lowering for n-d
vector.extract with dynamic inner most dimension. (This was only
prevented by a conservative check in the old implementation)
Commit: ef164ecedf01dc87805b62b7d14a91da42453d69
https://github.com/llvm/llvm-project/commit/ef164ecedf01dc87805b62b7d14a91da42453d69
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M .github/workflows/docs.yml
Log Message:
-----------
[libc++][libunwind] Fix documentation CI job after #118159 (#118555)
Commit: ed2db3be619ddc0f459ab5ea4ad6ee36e006b759
https://github.com/llvm/llvm-project/commit/ed2db3be619ddc0f459ab5ea4ad6ee36e006b759
Author: Renaud Kauffmann <rkauffmann at nvidia.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/test/Fir/CUDA/cuda-constructor-2.f90
Log Message:
-----------
[flang][cuda] Do not register global constants (#118582)
Global constants have no symbols in library files. They are replaced
with literal constants during lowering before kernels are moved into a
GPU module. Do not register them because they will result in unresolved
symbols.
Commit: ff5953804ea5b430710b07f1dae395bfcf6d35d0
https://github.com/llvm/llvm-project/commit/ff5953804ea5b430710b07f1dae395bfcf6d35d0
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
M lldb/tools/lldb-dap/src-ts/extension.ts
R lldb/tools/lldb-dap/src-ts/types.ts
Log Message:
-----------
[lldb-dap] Support finding the lldb-dap binary (#118547)
Support finding the lldb-dap binary with `xcrun` on Darwin or in PATH on
all other platforms.
Unfortunately, this PR is larger than I would like because it removes
the `lldbDapOptions`. I believe these options are not necessary, and as
previously implemented, they caused a spurious warning with this change.
The problem was that the options were created before the custom factory.
By moving the creation logic into the factory, we make sure it's only
called after the factory has been registered. The upside is that this
simplifies the code and removes a level of indirection.
Commit: b8d857efac57dc508873e8edbad44595f1980cd0
https://github.com/llvm/llvm-project/commit/b8d857efac57dc508873e8edbad44595f1980cd0
Author: bernhardu <bernhardu at mailbox.org>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M compiler-rt/lib/interception/tests/interception_win_test.cpp
Log Message:
-----------
[win/asan] Populate test for function GetInstructionSize. (#118204)
This puts the content of GetInstructionSize into a test.
There are 5 cases missing, which I have already or would like to propose
a fix later.
Commit: e51a0b2e26b7c8c790ee4bf1176ba571bbe0d440
https://github.com/llvm/llvm-project/commit/e51a0b2e26b7c8c790ee4bf1176ba571bbe0d440
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst-2.ll
Log Message:
-----------
[llvm][AArch64] Fix a crash in performPostLD1Combine (#118538)
rdar://138004275
Commit: 842d56315108a10a0b5f866d7a44dc676f5d2586
https://github.com/llvm/llvm-project/commit/842d56315108a10a0b5f866d7a44dc676f5d2586
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M .github/workflows/libcxx-restart-preempted-jobs.yaml
Log Message:
-----------
[libc++][CI] Also restart failed jobs when they fail for a spurious reason
Since we moved to a Docker-in-Docker setup, CI jobs sometimes fail due
to the Docker VM dying with 'context cancelled' errors. This is currently
not recognized as a spurious failure, which leads to the job not being
automatically restarted. This patch fixes that.
This commit only adds a test job with the new logic since this workflow
triggers on workflow_run, which means that the changes need to be on
`main` before they can be tested. Once this is tested to work properly,
I'll make it the default definition for the workflow.
Commit: fe4bba65785072047f4dadba9b77f3cdf37e4ace
https://github.com/llvm/llvm-project/commit/fe4bba65785072047f4dadba9b77f3cdf37e4ace
Author: Oliver Hunt <github at nerget.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
Add support for referencable labels for attribute documentation (#118428)
The existing mechanism being used is to manually add a reference in the
documentation. These references link to the beginning of the text rather
than the heading for the attribute which is what this PR allows.
---------
Co-authored-by: Sirraide <aeternalmail at gmail.com>
Commit: d057b53a7db43f33f4a9fd832115e613ebe0a67b
https://github.com/llvm/llvm-project/commit/d057b53a7db43f33f4a9fd832115e613ebe0a67b
Author: Dmitry Sidorov <dmitry.sidorov at intel.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_bf16.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_checked.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_get_coord.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_packed.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_prefetch.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_tf32.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_cooperative_matrix/cooperative_matrix.ll
Log Message:
-----------
[SPIR-V] Add SPV_INTEL_joint_matrix extension (#118578)
The spec is available here:
https://github.com/intel/llvm/pull/12497
The PR doesn't add OpCooperativeMatrixApplyFunctionINTEL instruction as
it's still experimental and not properly tested E2E.
The PR also fixes few bugs in the related code:
1. CooperativeMatrixMulAddKHR optional operand must be literal, not a
constant;
2. Fixed available capabilities table creation for a case, when a single
extension adds few capabilities, that occupy not contiguous op codes.
---------
Signed-off-by: Sidorov, Dmitry <dmitry.sidorov at intel.com>
Commit: cd92c6a89541cbbb67b39142d93a76caae0f79bf
https://github.com/llvm/llvm-project/commit/cd92c6a89541cbbb67b39142d93a76caae0f79bf
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
A flang/test/Fir/CUDA/cuda-target-rewrite.mlir
Log Message:
-----------
[flang][cuda] Run target rewrite in gpu.module (#118592)
Apply signature conversion for `func.func` in the gpu.module. More work
will need to be done for gpu.func op and implement the NVVM ABI for
conversion in the gpu module.
Commit: 7748492c3749b7ba0b1d1a0203d2641413ec5d9b
https://github.com/llvm/llvm-project/commit/7748492c3749b7ba0b1d1a0203d2641413ec5d9b
Author: Brian Cain <bcain at quicinc.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonDepInstrInfo.td
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/test/CodeGen/Hexagon/trap-crash.ll
Log Message:
-----------
[hexagon] Add support for llvm.debugtrap (#117049)
Also: set `hasSideEffects` on `Y2_break` instruction.
Commit: 8c36a823c2cc39740f7711da2d08ef85b0ace314
https://github.com/llvm/llvm-project/commit/8c36a823c2cc39740f7711da2d08ef85b0ace314
Author: hidekisaito <hidekido at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
Log Message:
-----------
Fix to account for multiple ISA enumeration (#118676)
Commit: 77908345d06e05816c5e46b2c092022f9f6c90cf
https://github.com/llvm/llvm-project/commit/77908345d06e05816c5e46b2c092022f9f6c90cf
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/test/CodeGen/X86/fsxor-alignment.ll
Log Message:
-----------
[X86] fsxor-alignment.ll - add nounwind to prevent cfi noise in an upcoming change
Commit: 2567feaa13416d1d8c90c1dca6a176a57622c1d6
https://github.com/llvm/llvm-project/commit/2567feaa13416d1d8c90c1dca6a176a57622c1d6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/test/CodeGen/X86/combine-fabs.ll
M llvm/test/CodeGen/X86/combine-fneg.ll
Log Message:
-----------
[X86] Add fabs/fneg rmw style test coverage for #117557
Missed opportunity to avoid use of fpu for store(fabs(load()) style patterns
Commit: 2757dc33ee4eea977d2194fa0ca79f7627b39030
https://github.com/llvm/llvm-project/commit/2757dc33ee4eea977d2194fa0ca79f7627b39030
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
R flang/test/Fir/CUDA/cuda-target-rewrite.mlir
Log Message:
-----------
Revert "[flang][cuda] Run target rewrite in gpu.module" (#118679)
Reverts llvm/llvm-project#118592
Commit: 3dcc52d4646494664f2cec0b2475811947d449b0
https://github.com/llvm/llvm-project/commit/3dcc52d4646494664f2cec0b2475811947d449b0
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
Log Message:
-----------
[flang][OpenMP] Add comments to IsContiguous, improve formatting, NFC
Commit: ee9e7867178bee16cc0976a83a8303c99c2f5326
https://github.com/llvm/llvm-project/commit/ee9e7867178bee16cc0976a83a8303c99c2f5326
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/intrin.h
M clang/test/CodeGen/arm64-microsoft-intrinsics.c
Log Message:
-----------
[aarch64] Add support for the __{inc|add}x18{byte|word|dword|qword intrinsics (#117752)
Adds support for the following MSVC intrinsics:
* `__addx18byte`
* `__addx18word`
* `__addx18dword`
* `__addx18qword`
* `__incx18byte`
* `__incx18word`
* `__incx18dword`
* `__incx18qword`
These are documented at:
<https://learn.microsoft.com/en-us/cpp/intrinsics/arm64-intrinsics?view=msvc-170>
Commit: 7347e5e89a671d675ba144e181e3d24bd072f527
https://github.com/llvm/llvm-project/commit/7347e5e89a671d675ba144e181e3d24bd072f527
Author: Amr Hesham <amr96 at programmer.net>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaExpr.cpp
M clang/test/Analysis/reference.cpp
M clang/test/Sema/warn-stringcompare.c
M clang/test/SemaCXX/deprecated.cpp
A clang/test/SemaCXX/warn-array-comparion.cpp
M clang/test/SemaCXX/warn-self-comparisons.cpp
Log Message:
-----------
[Clang] Add '-Warray-compare' flag for C++ below version 20 (#118031)
Currently, we support `-wdeprecated-array-compare` for C++20 or above
and don't report any warning for older versions, this PR supports
`-Warray-compare` for older versions and for GCC compatibility.
Fixes #114770
Commit: e3446b9a079f1d911c96ae84d899d9ccd55a9951
https://github.com/llvm/llvm-project/commit/e3446b9a079f1d911c96ae84d899d9ccd55a9951
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
Log Message:
-----------
[OpenACC] Fix bug with worker/vector/gang clause inside another
The original implementation rejected some valid constructs. The rule is
supposed to be:
Gang-on-Kernel cannot have a gang in its region
Worker cannot have a worker or gang in its region
Vector cannot have worker, gang, or vector in its region.
The previous implementation improperly implemented that vector wasnt'
allowed in the other two. This patch fixes it and adds testing for it.
Commit: fd02693fb61ecc7630c66f9bad62bcdb143b9b91
https://github.com/llvm/llvm-project/commit/fd02693fb61ecc7630c66f9bad62bcdb143b9b91
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
A flang/test/Fir/CUDA/cuda-target-rewrite.mlir
Log Message:
-----------
Reland "[flang][cuda] Run target rewrite in gpu.module" (#118682)
#118679
Commit: 0d1e762da7ad22e31e98cf372a692027ff0bb610
https://github.com/llvm/llvm-project/commit/0d1e762da7ad22e31e98cf372a692027ff0bb610
Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/abs.ll
Log Message:
-----------
[InstSimplify] Refine `abs(min/undef, true)` to `poison` (#118669)
Calls to `@llvm.abs(undef, i1 true)` and `@llvm.abs(INT_MIN, i1 true)`
can be optimized to `poison` instead of `undef`.
[Alive2](https://alive2.llvm.org/ce/z/Hg-2ug)
Commit: 4cf2cf18c97d17c8e5662955c7048d072c711415
https://github.com/llvm/llvm-project/commit/4cf2cf18c97d17c8e5662955c7048d072c711415
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/double-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
Log Message:
-----------
[RISCV][GISel] Stop over promoting G_SITOFP/UITOFP libcalls on RV64. (#118597)
When we have legal instructions we want to promote to sXLen and let isel
pattern matching removing the and/sext_inreg.
When using a libcall we want to use a 'si' libcall for small types
instead of 'di'. To match the RV64 ABI, we need to sign extend `unsigned
int` arguments. We reuse the shouldSignExtendTypeInLibCall hook from
SelectionDAG.
Commit: 4b11ff72ab85c32e86e63b4d5e2c563eb85c2ccd
https://github.com/llvm/llvm-project/commit/4b11ff72ab85c32e86e63b4d5e2c563eb85c2ccd
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/test/Fir/CUDA/cuda-target-rewrite.mlir
Log Message:
-----------
[flang][cuda] Fix test cuda-target-rewrite.mlir
Fix after buildbots issue
Commit: 095c3c9d6ec349815563d47f951d4590b3d18333
https://github.com/llvm/llvm-project/commit/095c3c9d6ec349815563d47f951d4590b3d18333
Author: cmtice <cmtice at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
A lldb/test/API/commands/target/anon-struct/Makefile
A lldb/test/API/commands/target/anon-struct/TestTargetVarAnonStruct.py
A lldb/test/API/commands/target/anon-struct/main.cpp
Log Message:
-----------
[LLDB] Fix crash in TypeSystemClang::GetIndexofChildMemberWithName. (#117808)
LLDB can crash in TypeSystemClang::GetIndexOfChildMemberWithName, at a
point where it pushes an index onto the child_indexes vector, tries to
call itself recursively, then tries to pop the entry from child_indexes.
The problem is that the recursive call can clear child_indexes, so that
this code ends up trying to pop an already empty vector. This change
saves the old vector before the push, then restores the saved vector
rather than trying to pop.
Commit: c282d790243cf56e3ac8487b1b47430673957112
https://github.com/llvm/llvm-project/commit/c282d790243cf56e3ac8487b1b47430673957112
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
Log Message:
-----------
[flang][OpenMP] Use range-for to iterate over SymbolSourceMap, NFC
Avoid iterators, use structured bindings to unpack the [key, value]
pairs.
Commit: 9302043bef24519b95ffce86569ca7c7c97300e9
https://github.com/llvm/llvm-project/commit/9302043bef24519b95ffce86569ca7c7c97300e9
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/tools/lldb-dap/README.md
Log Message:
-----------
[lldb-dap] Fix links to LLVM issue tracker and pull requests (#118681)
Currently, the link to the issue tracker takes you to the Github source
repository, rather than the Github issue tracker. This fixes the link
and includes the lldb-dap label in both the issue and PR URL.
Commit: 9c5217c4edf945838ecf70ebc6004cc40c097232
https://github.com/llvm/llvm-project/commit/9c5217c4edf945838ecf70ebc6004cc40c097232
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/list.h
M compiler-rt/lib/scudo/standalone/secondary.h
Log Message:
-----------
[scudo] Use internal list to manage the LRU cache (#117946)
Commit: c3d15188cfe243900895a4f2c4f36b84e14928b7
https://github.com/llvm/llvm-project/commit/c3d15188cfe243900895a4f2c4f36b84e14928b7
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/lib/ProfileData/MemProfReader.cpp
Log Message:
-----------
[memprof] Move YAML traits to MemProf.h (NFC) (#118668)
This patch moves the MemProf YAML traits to MemProf.h so that the YAML
writer can access them from outside MemProfReader.cpp in the future.
Commit: a6e7749ea9e60f6b76b367d18ed90d09ea441581
https://github.com/llvm/llvm-project/commit/a6e7749ea9e60f6b76b367d18ed90d09ea441581
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
Log Message:
-----------
[RISCV] Improve lowering of spread(2) shuffles (#118658)
A spread(2) shuffle is just a interleave with an undef lane. The
existing lowering was reusing the even lane for the undef value. This
was entirely legal, but non-optimal.
Commit: 048fc2bc102cff806613592829ff275c0f2b826f
https://github.com/llvm/llvm-project/commit/048fc2bc102cff806613592829ff275c0f2b826f
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/MC/MCRegisterInfo.h
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/MC/MCRegisterInfo.cpp
M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
M llvm/test/CodeGen/AArch64/nested-iv-regalloc.mir
M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
Log Message:
-----------
[LiveIntervals] Ignore artificial regs when adding kill flags (#116963)
If parts of a physical register for a given liverange, as assigned by
the register allocator, can be used to store other values not
represented by this liverange, then `LiveIntervals::addKillFlags`
normally avoids adding a kill flag on the use of this register
when the value's liverange ends.
However, if all the other regunits are artificial, then we can
still safely add the kill flag, since those parts of the register
can never be accessed independently.
Commit: d57892a2a153ab71a796f07e39d939eae6910c21
https://github.com/llvm/llvm-project/commit/d57892a2a153ab71a796f07e39d939eae6910c21
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
R llvm/test/CodeGen/AArch64/extract-vector-cmp.ll
M llvm/test/CodeGen/X86/vselect.ll
Log Message:
-----------
Revert "[DAGCombiner] Add support for scalarising extracts of a vector setcc" (#118693)
Reverts llvm/llvm-project#117566
Breaks libc++ tests with HWASAN
https://lab.llvm.org/buildbot/#/builders/55/builds/3959
Commit: 5e769fb2342f2ff5986f62cc50550b8b4ab1985f
https://github.com/llvm/llvm-project/commit/5e769fb2342f2ff5986f62cc50550b8b4ab1985f
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
A libc/config/windows/headers.txt
Log Message:
-----------
[libc] add headers.txt for windows (#118675)
Link:
https://github.com/llvm/llvm-project/pull/117220#issuecomment-2518126598
---------
Co-authored-by: Michael Jones <michaelrj at google.com>
Commit: e84c918cb42f9f0d1f7fda44bfacdaae13723e64
https://github.com/llvm/llvm-project/commit/e84c918cb42f9f0d1f7fda44bfacdaae13723e64
Author: Andrzej WarzyĆski <andrzej.warzynski at arm.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/include/mlir/IR/VectorTypes.h
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
Log Message:
-----------
[mlir] Use new VectorType wrappers CommonTypeConstraints.td (#118645)
As a follow-on for #87986, moves the VectorType convenience wrappers
(`FixedVectorType` and `ScalableVectorType`) to BuiltinTypes.h. This
allows us to use the new wrappers in "CommonTypeConstraints.td".
Commit: e0f52538c9739d945e316eac0ddd92d26e4e380a
https://github.com/llvm/llvm-project/commit/e0f52538c9739d945e316eac0ddd92d26e4e380a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
Log Message:
-----------
AMDGPU: Change bitop3 intrinsic operand to i32 (#118647)
Commit: 431581b22a5269c2cd05c0a8e2155072d52f85a7
https://github.com/llvm/llvm-project/commit/431581b22a5269c2cd05c0a8e2155072d52f85a7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
AMDGPU: Simplify definition of bitop3 operand. NFC. (#118648)
Co-authored-by: Jay Foad <jay.foad at amd.com>
Commit: 7954a0514ba7de40dba6c598af830fd1b7a8bf0c
https://github.com/llvm/llvm-project/commit/7954a0514ba7de40dba6c598af830fd1b7a8bf0c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/tbaa-reference.cpp
M clang/test/CodeGenCXX/template-instantiation.cpp
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M clang/unittests/CodeGen/TBAAMetadataTest.cpp
Log Message:
-----------
[Clang] Enable -fpointer-tbaa by default. (#117244)
Support for more precise TBAA metadata has been added a while ago
(behind the -fpointer-tbaa flag). The more precise TBAA metadata allows
treating accesses of different pointer types as no-alias.
This helps to remove more redundant loads and stores in a number of
workloads.
Some highlights on the impact across llvm-test-suite's MultiSource,
SPEC2006 & SPEC2017 include:
* +2% more NoAlias results for memory accesses
* +3% more stores removed by DSE,
* +4% more loops vectorized.
This closes a relatively big gap to GCC, which has been supporting
disambiguating based on pointer types for a long time.
(https://clang.godbolt.org/z/K7Wbhrz4q)
Pointer-TBAA support for pointers to builtin types has been added in
https://github.com/llvm/llvm-project/pull/76612.
Support for user-defined types has been added in
https://github.com/llvm/llvm-project/pull/110569.
There are 2 recent PRs with bug fixes for special cases uncovered during
testing:
* https://github.com/llvm/llvm-project/pull/116991
* https://github.com/llvm/llvm-project/pull/116596
PR: https://github.com/llvm/llvm-project/pull/117244
Commit: ce0f11325e0c62c5b81391589e9b93b412a85bc1
https://github.com/llvm/llvm-project/commit/ce0f11325e0c62c5b81391589e9b93b412a85bc1
Author: Augie Fackler <augie at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/XRefs.h
M clang-tools-extra/clangd/index/Background.cpp
M clang-tools-extra/clangd/index/Background.h
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/Index.cpp
M clang-tools-extra/clangd/index/Index.h
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/MemIndex.h
M clang-tools-extra/clangd/index/Merge.cpp
M clang-tools-extra/clangd/index/Merge.h
M clang-tools-extra/clangd/index/ProjectAware.cpp
M clang-tools-extra/clangd/index/Ref.h
M clang-tools-extra/clangd/index/Serialization.cpp
M clang-tools-extra/clangd/index/Serialization.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/SymbolCollector.h
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/dex/Dex.h
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Client.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/Service.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.h
M clang-tools-extra/clangd/index/remote/server/Server.cpp
M clang-tools-extra/clangd/test/index-serialization/Inputs/sample.idx
M clang-tools-extra/clangd/test/type-hierarchy-ext.test
M clang-tools-extra/clangd/test/type-hierarchy.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DexTests.cpp
M clang-tools-extra/clangd/unittests/FileIndexTests.cpp
M clang-tools-extra/clangd/unittests/IndexTests.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/TestWorkspace.cpp
Log Message:
-----------
Revert "[clangd] Re-land "support outgoing calls in call hierarchy" (#117673)"
This reverts commit 7be3326200ef382705d8e6b2d7dc5378af96b34a.
Per https://protobuf.dev/programming-guides/dos-donts/#add-required
this will re-land tomorrow without the required fields.
Commit: 2e425bf629f80c8f8582c266d25a384e7549198d
https://github.com/llvm/llvm-project/commit/2e425bf629f80c8f8582c266d25a384e7549198d
Author: Zequan Wu <zequanwu at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
A lldb/test/Shell/SymbolFile/DWARF/x86/simplified-template-names.cpp
M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Log Message:
-----------
Reapply "[lldb][dwarf] Compute fully qualified names on simplified template names with DWARFTypePrinter (#117071)"
9de73b20404f0b2db1cbf70d164cfe0789d5bb94 lands a fix to DWARFTypePrinter that is used by lldb in this change.
Commit: ac5dd455caaf286625f61b604291f2eaed9702f0
https://github.com/llvm/llvm-project/commit/ac5dd455caaf286625f61b604291f2eaed9702f0
Author: George Stagg <georgestagg at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/MC/WasmObjectWriter.cpp
A llvm/test/MC/WebAssembly/init-array.s
Log Message:
-----------
[WebAssembly] Support multiple `.init_array` fragments when writing Wasm objects (#111008)
Commit: 6003be7ef14bd95647e1ea6ec9685c1310f8ce58
https://github.com/llvm/llvm-project/commit/6003be7ef14bd95647e1ea6ec9685c1310f8ce58
Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Lower/PFTBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
M flang/include/flang/Runtime/exceptions.h
M flang/include/flang/Tools/TargetSetup.h
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/target.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
M flang/runtime/exceptions.cpp
M flang/test/Evaluate/fold-ieee.f90
M flang/test/Evaluate/folding18.f90
A flang/test/Lower/Intrinsics/ieee_underflow.f90
Log Message:
-----------
[flang] IEEE_GET_UNDERFLOW_MODE, IEEE_SET_UNDERFLOW_MODE (#118551)
Implement IEEE_GET_UNDERFLOW_MODE and IEEE_SET_UNDERFLOW_MODE. Update
IEEE_SUPPORT_UNDERFLOW_CONTROL to enable support for indvidual REAL
kinds.
Commit: e6bd00c0f7017cf9652fec573d6554a3a95d4e28
https://github.com/llvm/llvm-project/commit/e6bd00c0f7017cf9652fec573d6554a3a95d4e28
Author: Marina Taylor <marina_taylor at apple.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Analysis/InlineCost.cpp
Log Message:
-----------
[Inliner] Add a helper around `SimplifiedValues.lookup`. NFCI (#118646)
Commit: 7efd6139f2d1139e3b434a21992967531f469acc
https://github.com/llvm/llvm-project/commit/7efd6139f2d1139e3b434a21992967531f469acc
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/include/flang/Optimizer/Transforms/CUFOpConversion.h
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-data-transfer.fir
A flang/test/Fir/CUDA/cuda-global-addr.mlir
Log Message:
-----------
[flang][cuda] Get device address in fir.declare (#118591)
Add pattern that update fir.declare memref when it comes from a device
global and is not a descriptor. In that case, we recover the device
address that needs to be used in ops like `fir.array_coor` and so on.
Commit: a7da702377ef857a6b2dccf5f07f77b489be1dd1
https://github.com/llvm/llvm-project/commit/a7da702377ef857a6b2dccf5f07f77b489be1dd1
Author: lntue <lntue at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M libc/src/__support/macros/optimization.h
M libc/src/math/generic/atan2f.cpp
M libc/src/math/generic/inv_trigf_utils.h
Log Message:
-----------
[libc][math] Add small code size options for atan2f. (#118532)
Commit: 35c7df1a219e99bc0e2aa2034e77f4e9c90566d3
https://github.com/llvm/llvm-project/commit/35c7df1a219e99bc0e2aa2034e77f4e9c90566d3
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/include/clang/Basic/BuiltinsARM.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/intrin0.h
M clang/test/CodeGen/ms-intrinsics.c
Log Message:
-----------
[aarch64][arm] Add support for the _Interlocked[Compare]ExchangePointer_{acq|nf|rel} MS intrinsics (#117645)
Adds support for the following MSVC intrinsics:
* `_InterlockedCompareExchangePointer_acq`
* `_InterlockedCompareExchangePointer_rel`
* `_InterlockedExchangePointer_acq`
* `_InterlockedExchangePointer_nf`
* `_InterlockedExchangePointer_rel`
These are documented at:
<https://learn.microsoft.com/en-us/cpp/intrinsics/arm64-intrinsics?view=msvc-170#interlocked-intrinsics>
NOTE: `_InterlockedCompareExchangePointer_nf` is not being added since
it already exists, although it was incorrectly added for all
architectures instead of being Arm & AArch64 specific.
This change also unifies how the pointer and non-pointer interlocked
compare-exchange intrinsics are being handled.
Commit: 261d4bbb3bb847b90b9734daefe13618dea91613
https://github.com/llvm/llvm-project/commit/261d4bbb3bb847b90b9734daefe13618dea91613
Author: Luke Quinn <quic_lquinn at quicinc.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
M llvm/test/CodeGen/RISCV/double-zfa.ll
M llvm/test/CodeGen/RISCV/float-zfa.ll
M llvm/test/CodeGen/RISCV/half-zfa.ll
Log Message:
-----------
[RISCV] f32 roundeven pattern missed for Zfa (#118672)
f32 roundeven pattern was missing from RISCVInstrInfoZfa.td. Tests for
roundeven.f32/f16/f64 were missing.
Commit: 004e75ef17c76598f7307adbe9a39d5ae6d5375a
https://github.com/llvm/llvm-project/commit/004e75ef17c76598f7307adbe9a39d5ae6d5375a
Author: AdityaK <hiraditya at msn.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/test/Driver/linux-ld.c
Log Message:
-----------
Pack relocations for Android API >= 28 (#117624)
Patch copied from:
https://github.com/android/ndk/issues/909#issuecomment-649872696
Fixes: https://github.com/android/ndk/issues/909
Commit: 8cffab821c4b96c73fc4ad5e8ca2417ced953c5a
https://github.com/llvm/llvm-project/commit/8cffab821c4b96c73fc4ad5e8ca2417ced953c5a
Author: Petr Hosek <phosek at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/cmake/caches/Fuchsia.cmake
Log Message:
-----------
[Fuchsia] Remove libc from LLVM_ENABLE_PROJECTS (#118704)
This was only needed for old hdrgen which is no longer being used.
Commit: b86a5993bc7be59b49879a0e768f53b7330f71b2
https://github.com/llvm/llvm-project/commit/b86a5993bc7be59b49879a0e768f53b7330f71b2
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/cmake/modules/CrossCompile.cmake
Log Message:
-----------
[libc] remove references to LIBC_HDRGEN_EXE (#118670)
Further cleanups from old hdrgen removal. I didn't realize there were
cmake
variables related to old hdrgen spread out throughout more of the source
tree.
Link: #117220
Link: #117208
Commit: e6aec2c12095cc7debd1a8004c8535eef41f4c36
https://github.com/llvm/llvm-project/commit/e6aec2c12095cc7debd1a8004c8535eef41f4c36
Author: Jun Wang <jwang86 at yahoo.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M llvm/lib/Target/AMDGPU/AMDGPUAttributes.def
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
A llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-globalisel.ll
A llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
Log Message:
-----------
[AMDGPU] Infer amdgpu-no-flat-scratch-init attribute in AMDGPUAttributor (#94647)
The AMDGPUAnnotateKernelFeatures pass infers the "amdgpu-calls" and
"amdgpu-stack-objects" attributes, which are used to infer whether we
need to initialize flat scratch. This is, however, not precise. Instead,
we should use AMDGPUAttributor and infer amdgpu-no-flat-scratch-init on
kernels. Refer to https://github.com/llvm/llvm-project/issues/63586 .
Commit: 1b4cdc401a19e7c9f7679c94540a41340eb4e548
https://github.com/llvm/llvm-project/commit/1b4cdc401a19e7c9f7679c94540a41340eb4e548
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
Log Message:
-----------
[AMDGPU][True16][MC]update vop3 dasm test with latest script (#118686)
This is a NFC. Update dasm test for VOP3 using latest update script
Commit: a2fc276ed2556c5da59f8b039bbb6d97f3003134
https://github.com/llvm/llvm-project/commit/a2fc276ed2556c5da59f8b039bbb6d97f3003134
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
Log Message:
-----------
[libc] Remove complicated header guards on HSA include
Summary:
This is much more standard now, we already require new HSA with what we
use, so no point checking for this.
Commit: 2fea1ccb6221238674562533684c51b63de248d4
https://github.com/llvm/llvm-project/commit/2fea1ccb6221238674562533684c51b63de248d4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
Log Message:
-----------
[RISCV][GISel] Correct the widening predicate for G_SITOFP/G_UITOFP.
This happened to coincidentally work due to D and Zfh both depending
on the F extension.
It breaks when I tried to add fp128 libcall support.
Commit: f50ce316ec434f1e2f061287a48d85acde801a3d
https://github.com/llvm/llvm-project/commit/f50ce316ec434f1e2f061287a48d85acde801a3d
Author: Matthias Springer <me at m-sp.org>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
M llvm/lib/Support/APFloat.cpp
Log Message:
-----------
[llvm][NFC] `APFloat`: Add missing semantics to enum (#117291)
* Add missing semantics to the `Semantics` enum.
* Move all documentation of the semantics to the header file.
* Also rename some functions for consistency.
Commit: fc201d6133bef41b306cc39da0e4aed2112656b0
https://github.com/llvm/llvm-project/commit/fc201d6133bef41b306cc39da0e4aed2112656b0
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-gep.ll
Log Message:
-----------
Revert "[InstCombine] Support gep nuw in icmp folds" (#118698)
Reverts llvm/llvm-project#118472
Breaks profile tests on i386
https://lab.llvm.org/buildbot/#/builders/66/builds/7009
Commit: 758107f70a78d8d9c97438264c06ae7aa9e7cc5f
https://github.com/llvm/llvm-project/commit/758107f70a78d8d9c97438264c06ae7aa9e7cc5f
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
Log Message:
-----------
[RISCV] Improve spread(N) shuffle testing
Rework them now that spread(2) is special cased to ensure we still have
non-zero shift coverage.
Commit: 09f4c26262a35c1e428cf8b01b6239c6f605a4c1
https://github.com/llvm/llvm-project/commit/09f4c26262a35c1e428cf8b01b6239c6f605a4c1
Author: Roland McGrath <mcgrathr at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/test/Driver/fuchsia.c
Log Message:
-----------
[Driver][Fuchsia] Avoid "argument unused" warnings (#118416)
There should not be an error or warning reported for using
redundant options to control what goes into the link. For
example, -nolibc -nostdlib.
Commit: 1ef9410a96c1d9669a6feaf03fcab8d0a4a13bd5
https://github.com/llvm/llvm-project/commit/1ef9410a96c1d9669a6feaf03fcab8d0a4a13bd5
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M llvm/lib/Target/AMDGPU/AMDGPUAttributes.def
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
R llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-globalisel.ll
R llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
Log Message:
-----------
Revert "[AMDGPU] Infer amdgpu-no-flat-scratch-init attribute in AMDGPUAttributor (#94647)"
This reverts commit e6aec2c12095cc7debd1a8004c8535eef41f4c36. Commit breaks "ninja check-llvm" on x86 host.
Commit: 659834df0e86ac6e605a50118c12e99cfb61eb19
https://github.com/llvm/llvm-project/commit/659834df0e86ac6e605a50118c12e99cfb61eb19
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M libc/docs/fenv.rst
M libc/docs/setjmp.rst
M libc/docs/signal.rst
M libc/docs/stdbit.rst
M libc/docs/threads.rst
M libc/utils/docgen/docgen.py
M libc/utils/docgen/setjmp.json
Log Message:
-----------
docgen refresh (#118709)
- **[libc][docgen] Use Macro for macro table name**
- **fix setjmp json, otherwise can't regen**
- **regen all docs**
Commit: 17f99accf23e1486404b6833a18d0d78a1ecd098
https://github.com/llvm/llvm-project/commit/17f99accf23e1486404b6833a18d0d78a1ecd098
Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/test/Evaluate/fold-ieee.f90
M flang/test/Evaluate/folding18.f90
R flang/test/Lower/Intrinsics/ieee_underflow.f90
Log Message:
-----------
[flang] build test fix/suppression (#118716)
Commit: 32b821cab3064ae9a77a0f1d9916a286c7543735
https://github.com/llvm/llvm-project/commit/32b821cab3064ae9a77a0f1d9916a286c7543735
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/AST/MicrosoftMangle.cpp
Log Message:
-----------
[AST] Fix a warning
This patch fixes:
clang/lib/AST/MicrosoftMangle.cpp:1006:11: error: enumeration value
'S_PPCDoubleDoubleLegacy' not handled in switch [-Werror,-Wswitch]
Commit: df43af40ec1d139caa5cb870c7e35ff6b91cdbc3
https://github.com/llvm/llvm-project/commit/df43af40ec1d139caa5cb870c7e35ff6b91cdbc3
Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/test/Evaluate/fold-ieee.f90
Log Message:
-----------
Vkd1 (#118721)
Commit: af4ae12780099d3df0b89bccc80fd69b240f345e
https://github.com/llvm/llvm-project/commit/af4ae12780099d3df0b89bccc80fd69b240f345e
Author: Chris Apple <cja-private at pm.me>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
A compiler-rt/test/rtsan/fork_exec.cpp
Log Message:
-----------
[rtsan] Add fork/execve interceptors (#117198)
Commit: 970d6d20967258528980c9b7feaaf3dd3acf9aa3
https://github.com/llvm/llvm-project/commit/970d6d20967258528980c9b7feaaf3dd3acf9aa3
Author: pcc <peter at pcc.me.uk>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M lld/ELF/Relocations.cpp
M lld/ELF/Relocations.h
M lld/ELF/Writer.cpp
M lld/test/ELF/pack-dyn-relocs-ifunc.s
Log Message:
-----------
ELF: Have __rela_iplt_{start,end} surround .rela.iplt with --pack-dyn-relocs=android.
In #86751 we moved the IRELATIVE relocations to .rela.plt when
--pack-dyn-relocs=android was enabled but we neglected to also move
the __rela_iplt_{start,end} symbols. As a result, static binaries
linked with this flag were unable to find their IRELATIVE relocations.
Fix it by having the symbols surround the correct section.
Reviewers: MaskRay, smithp35
Reviewed By: MaskRay
Pull Request: https://github.com/llvm/llvm-project/pull/118585
Commit: 7d1c661381d36018fd105f4ad4c2d6dc45e7288b
https://github.com/llvm/llvm-project/commit/7d1c661381d36018fd105f4ad4c2d6dc45e7288b
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/common.h
M flang/include/flang/Runtime/allocatable.h
M flang/include/flang/Runtime/allocator-registry.h
M flang/include/flang/Runtime/descriptor.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/runtime/CUDA/allocatable.cpp
M flang/runtime/CUDA/allocator.cpp
M flang/runtime/CUDA/descriptor.cpp
M flang/runtime/allocatable.cpp
M flang/runtime/array-constructor.cpp
M flang/runtime/descriptor.cpp
M flang/test/HLFIR/elemental-codegen.fir
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/polymorphic.f90
M flang/unittests/Runtime/CUDA/Allocatable.cpp
M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang/unittests/Runtime/CUDA/Memory.cpp
Log Message:
-----------
[flang] Allow to pass an async id to allocate the descriptor (#118713)
This is a patch in preparation for the support stream ordered memory
allocator in CUDA Fortran.
This patch adds an asynchronous id to the AllocatableAllocate runtime
function and to Descriptor::Allocate so it can be passed down to the
registered allocator. It is up to the allocator to use this value or
not.
A follow up patch will implement that asynchronous allocator for CUDA
Fortran.
Commit: 00d8ea3a4c8eba9aa0f14c352192e94cc40f8e2d
https://github.com/llvm/llvm-project/commit/00d8ea3a4c8eba9aa0f14c352192e94cc40f8e2d
Author: hev <wangrui at loongson.cn>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/test/CodeGen/LoongArch/fp16-promote.ll
Log Message:
-----------
[LoongArch] Supports FP_TO_SINT operation for fp16 (#118303)
Fixes #118301
Commit: 740ac4f0ffbab304e3f74ce8d1d0505479d0f800
https://github.com/llvm/llvm-project/commit/740ac4f0ffbab304e3f74ce8d1d0505479d0f800
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/test/tools/yaml2obj/ELF/note-section.yaml
Log Message:
-----------
Reland "[ObjectYAML][ELF] Take alignment into account when generating notes" (#118434)
This relands #118157 with a fix for the use of an uninitialized
variable and additional tests.
The System V ABI
(https://www.sco.com/developers/gabi/latest/ch5.pheader.html#note_section)
states that the note entries and their descriptor fields must be aligned
to 4 or 8 bytes for 32-bit or 64-bit objects respectively. In practice,
64-bit systems can use both alignments, with the actual format being
determined by the alignment of the segment. For example, the Linux
gABI extension (https://github.com/hjl-tools/linux-abi/wiki/linux-abi-draft.pdf)
contains a special note on this, see 2.1.7 "Alignment of Note Sections".
This patch adjusts the format of the generated notes to the specified
section alignment. Since `llvm-readobj` was fixed in a similar way in
https://reviews.llvm.org/D150022, "[Object] Fix handling of Elf_Nhdr
with sh_addralign=8", the generated notes can now be parsed
successfully by the tool.
Commit: f98c9a9b3665c75a6bf01577734f16185710009d
https://github.com/llvm/llvm-project/commit/f98c9a9b3665c75a6bf01577734f16185710009d
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
Log Message:
-----------
[mutation analyzer][NFC] combine `ConditionalOperator` `BinaryConditionalOperator` (#118602)
Commit: 7b8cf147addf7d3fb4630475c40153226f5fdbd0
https://github.com/llvm/llvm-project/commit/7b8cf147addf7d3fb4630475c40153226f5fdbd0
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[memprof] Update YAML traits for writer purposes (#118720)
For Frames, we prefer the inline notation for the brevity.
For PortableMemInfoBlock, we go through all member fields and print
out those that are populated.
Commit: 7f72d71de7c3b7d36d9f463b1459a6d2f6c989e6
https://github.com/llvm/llvm-project/commit/7f72d71de7c3b7d36d9f463b1459a6d2f6c989e6
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-sections.mlir
M mlir/test/Target/LLVMIR/openmp-wsloop-reduction-cleanup.mlir
Log Message:
-----------
[OpenMP][OMPIRBuilder] Refactor reduction initialization logic into one util (#118447)
This refactors the logic needed to emit init logic for reductions by
moving some duplicated code into a shared util. The logic for doing is
quite involved and is needed for any construct that has reductions.
Moreover, when a construct has both private and reduction clauses, both
sets of clauses need to cooperate with each other when emitting the
logic needed for allocation and initialization. Therefore, this PR
clearly sets the boundaries for the logic needed to initialize
reductions.
Commit: 50f8580e2cded758627b8d9478b56d5443aa6d7c
https://github.com/llvm/llvm-project/commit/50f8580e2cded758627b8d9478b56d5443aa6d7c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[memprof] Add IndexedMemProfData::addFrame (#118724)
This patch adds a helper function to replace an idiom like:
FrameId Id = F.hash();
MemProfData.Frames.try_emplace(Id, F);
// Do something with Id.
Commit: 0993335134dd893bcad31f7a4a24b00b7c11476a
https://github.com/llvm/llvm-project/commit/0993335134dd893bcad31f7a4a24b00b7c11476a
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-todo.mlir
A mlir/test/Target/LLVMIR/openmp-wsloop-private.mlir
Log Message:
-----------
[OpenMP][OMPIRBuilder] Add delayed privatization support for `wsloop` (#118463)
Extend MLIR to LLVM lowering by adding support for `omp.wsloop` for
delayed privatization. This also refactors a few bit of code to isolate
the logic needed for `firstprivate` initialization in a shared util that
can be used across constructs that need it. The same is done for
`dealloc`
regions.
Parent PR: https://github.com/llvm/llvm-project/pull/118447. Only latest
commit is relevant for this PR.
Commit: 44be794658f9cd477ffd718b0322d1970c534274
https://github.com/llvm/llvm-project/commit/44be794658f9cd477ffd718b0322d1970c534274
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
A clang/test/AST/ByteCode/amdgpu-nullptr.cl
Log Message:
-----------
[clang][bytecode] Not all null pointers are 0 (#118601)
Get the Value from the ASTContext instead.
Commit: a996a15b4c5287892f79c0ae029ea9319c8e44a5
https://github.com/llvm/llvm-project/commit/a996a15b4c5287892f79c0ae029ea9319c8e44a5
Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/cmake/caches/CrossWinToARMLinux.cmake
Log Message:
-----------
[CMake] Allow parametrizing of the static libraries in Cross ARM CMake cache. NFC. (#118737)
In order to support the cross-arm remote tests for LLDB project
(see 'lldb-remote-linux-*' public builders for details).
Commit: dba0861cd7aa2717b0f36c76d77c097765f6ad57
https://github.com/llvm/llvm-project/commit/dba0861cd7aa2717b0f36c76d77c097765f6ad57
Author: Ben Shi <2283975856 at qq.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/AVR/AVRInstrFormats.td
M llvm/lib/Target/AVR/AVRInstrInfo.td
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.h
M llvm/test/CodeGen/AVR/inline-asm/loadstore.ll
Log Message:
-----------
[AVR] Simplify eocoding of load/store instructions (#118279)
Fixes https://github.com/llvm/llvm-project/issues/113774
Commit: 3e0e1c13ce96dfe291ffaf9edc9876cdd5016a0d
https://github.com/llvm/llvm-project/commit/3e0e1c13ce96dfe291ffaf9edc9876cdd5016a0d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/fp128.ll
Log Message:
-----------
[RISCV][GISel] Support fp128 arithmetic and conversion for RV64. (#118707)
We can support these via libcalls in libgcc/compiler-rt or integer
operations for fneg/fabs/fcopysign. fp128 values will be passed in two
64-bit GPRs according to the psABI.
Supporting RV32 requires sret which is not supported by libcall handling
in LegalizerHelper.cpp yet. It doesn't call canLowerReturn.
Commit: abc27039be63ce31afe42fc10510921b559db4fe
https://github.com/llvm/llvm-project/commit/abc27039be63ce31afe42fc10510921b559db4fe
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Pass __builtin_memcpy size along (#118649)
To DoBitCastPtr, so we know how many bytes we want to read.
Commit: 0629e9e352fa8a2204e6165c61ce617f7096778e
https://github.com/llvm/llvm-project/commit/0629e9e352fa8a2204e6165c61ce617f7096778e
Author: Renat Idrisov <4032256+parsifal-47 at users.noreply.github.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/test/Transforms/remove-dead-values.mlir
Log Message:
-----------
[MLIR] Removing dead values for branches (#117501)
Fixing RemoveDeadValues to properly remove arguments from
BranchOpInterface operations.
This is a follow-up for:
https://github.com/llvm/llvm-project/pull/117405
cc: @joker-eph @codemzs
---------
Co-authored-by: Renat Idrisov <parsifal-47 at users.noreply.github.com>
Commit: 71ac1eb50955fdcddfb77f2daa9a213839ff1a3e
https://github.com/llvm/llvm-project/commit/71ac1eb50955fdcddfb77f2daa9a213839ff1a3e
Author: Thorsten SchĂŒtt <schuett at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
M llvm/test/CodeGen/AArch64/extract-vector-elt.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-amdgpu-cvt-f32-ubyte.mir
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
Log Message:
-----------
Revert "[GlobalISel] Combine [s,z]ext of undef into 0" (#118746)
Reverts llvm/llvm-project#117439
Commit: f7560ee97b7441eb3f5b2d0744aad857fafa5855
https://github.com/llvm/llvm-project/commit/f7560ee97b7441eb3f5b2d0744aad857fafa5855
Author: Iuri Chaer <ichaer at splunk.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/Format/CMakeLists.txt
Log Message:
-----------
[clang-format] Add cmake target clang-format-style-options for updating ClangFormatStyleOptions.rst (#111513)
* Create a new `clang-format-style-options` build target which
re-generates ClangFormatStyleOptions.rst from its source header files.
As discussed in
https://github.com/llvm/llvm-project/pull/96804#discussion_r1718407404
---------
Co-authored-by: Owen Pan <owenpiano at gmail.com>
Commit: 6bec1806c9cc90f6e72fc04698f4221c86c5f95e
https://github.com/llvm/llvm-project/commit/6bec1806c9cc90f6e72fc04698f4221c86c5f95e
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/lib/Format/CMakeLists.txt
Log Message:
-----------
[clang-format] Add plurals.txt to DEPENDS of style_options_depends
Commit: a9a4a83b6132f076fd14ac31268deaa4bf1381d5
https://github.com/llvm/llvm-project/commit/a9a4a83b6132f076fd14ac31268deaa4bf1381d5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2024-12-04 (Wed, 04 Dec 2024)
Changed paths:
M clang/docs/tools/dump_format_style.py
A clang/test/Format/docs_updated.test
M clang/test/Format/lit.local.cfg
Log Message:
-----------
[clang-format] Add test to ensure formatting options docs are updated (#118154)
This patch adds a lit test to clang format to ensure that the
ClangFormatStyleOptions doc page has been updated appropriately. The
test just runs the automatic update script and diffs the outputs to
ensure they are the same.
Commit: 636beb6a2833ee0290935f679252c1b662721b31
https://github.com/llvm/llvm-project/commit/636beb6a2833ee0290935f679252c1b662721b31
Author: Feng Zou <feng.zou at intel.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/ELF/Arch/X86_64.cpp
M lld/test/ELF/invalid/broken-relaxation-x64.test
M lld/test/ELF/pack-dyn-relocs-tls-x86-64.s
M lld/test/ELF/tls-opt.s
A lld/test/ELF/x86-64-tls-ie-err.s
M lld/test/ELF/x86-64-tls-ie-local.s
Log Message:
-----------
[X86][LLD] Handle R_X86_64_CODE_6_GOTTPOFF relocation type (#117675)
For
add %reg1, name at GOTTPOFF(%rip), %reg2
add name at GOTTPOFF(%rip), %reg1, %reg2
{nf} add %reg1, name at GOTTPOFF(%rip), %reg2
{nf} add name at GOTTPOFF(%rip), %reg1, %reg2
{nf} add name at GOTTPOFF(%rip), %reg
add
R_X86_64_CODE_6_GOTTPOFF = 50
in #117277.
Linker can treat R_X86_64_CODE_6_GOTTPOFF as R_X86_64_GOTTPOFF or
convert the instructions above to
add $name at tpoff, %reg1, %reg2
add $name at tpoff, %reg1, %reg2
{nf} add $name at tpoff, %reg1, %reg2
{nf} add $name at tpoff, %reg1, %reg2
{nf} add $name at tpoff, %reg
if the first byte of the instruction at the relocation offset - 6 is
0x62 (namely, encoded w/EVEX prefix) when possible.
Binutils patch: bminor/binutils-gdb at 5bc71c2
Binutils mailthread:
https://sourceware.org/pipermail/binutils/2024-February/132351.html
ABI discussion:
https://groups.google.com/g/x86-64-abi/c/FhEZjCtDLFw/m/VHDjN4orAgAJ
Blog: https://kanrobert.github.io/rfc/All-about-APX-relocation
Commit: fd3907ccb583df99e9c19d2fe84e4e7c52d75de9
https://github.com/llvm/llvm-project/commit/fd3907ccb583df99e9c19d2fe84e4e7c52d75de9
Author: Callum Fare <callum at codeplay.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M offload/CMakeLists.txt
M offload/cmake/OpenMPTesting.cmake
A offload/liboffload/API/APIDefs.td
A offload/liboffload/API/CMakeLists.txt
A offload/liboffload/API/Common.td
A offload/liboffload/API/Device.td
A offload/liboffload/API/OffloadAPI.td
A offload/liboffload/API/Platform.td
A offload/liboffload/API/README.md
A offload/liboffload/CMakeLists.txt
A offload/liboffload/README.md
A offload/liboffload/exports
A offload/liboffload/include/OffloadImpl.hpp
A offload/liboffload/include/generated/OffloadAPI.h
A offload/liboffload/include/generated/OffloadEntryPoints.inc
A offload/liboffload/include/generated/OffloadFuncs.inc
A offload/liboffload/include/generated/OffloadImplFuncDecls.inc
A offload/liboffload/include/generated/OffloadPrint.hpp
A offload/liboffload/src/Helpers.hpp
A offload/liboffload/src/OffloadImpl.cpp
A offload/liboffload/src/OffloadLib.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
A offload/test/tools/offload-tblgen/default_returns.td
A offload/test/tools/offload-tblgen/entry_points.td
A offload/test/tools/offload-tblgen/functions_basic.td
A offload/test/tools/offload-tblgen/functions_code_loc.td
A offload/test/tools/offload-tblgen/functions_ranged_param.td
A offload/test/tools/offload-tblgen/print_enum.td
A offload/test/tools/offload-tblgen/print_function.td
A offload/test/tools/offload-tblgen/type_tagged_enum.td
A offload/tools/offload-tblgen/APIGen.cpp
A offload/tools/offload-tblgen/CMakeLists.txt
A offload/tools/offload-tblgen/EntryPointGen.cpp
A offload/tools/offload-tblgen/FuncsGen.cpp
A offload/tools/offload-tblgen/GenCommon.hpp
A offload/tools/offload-tblgen/Generators.hpp
A offload/tools/offload-tblgen/PrintGen.cpp
A offload/tools/offload-tblgen/RecordTypes.hpp
A offload/tools/offload-tblgen/offload-tblgen.cpp
M offload/unittests/CMakeLists.txt
A offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/common/Environment.cpp
A offload/unittests/OffloadAPI/common/Environment.hpp
A offload/unittests/OffloadAPI/common/Fixtures.hpp
A offload/unittests/OffloadAPI/device/olDeviceInfo.hpp
A offload/unittests/OffloadAPI/device/olGetDevice.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceCount.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatform.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformCount.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformInfo.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformInfoSize.cpp
A offload/unittests/OffloadAPI/platform/olPlatformInfo.hpp
Log Message:
-----------
Reland #118503: [Offload] Introduce offload-tblgen and initial new API implementation (#118614)
Reland #118503. Added a fix for builds with `-DBUILD_SHARED_LIBS=ON`
(see last commit). Otherwise the changes are identical.
---
### New API
Previous discussions at the LLVM/Offload meeting have brought up the
need for a new API for exposing the functionality of the plugins. This
change introduces a very small subset of a new API, which is primarily
for testing the offload tooling and demonstrating how a new API can fit
into the existing code base without being too disruptive. Exact designs
for these entry points and future additions can be worked out over time.
The new API does however introduce the bare minimum functionality to
implement device discovery for Unified Runtime and SYCL. This means that
the `urinfo` and `sycl-ls` tools can be used on top of Offload. A
(rough) implementation of a Unified Runtime adapter (aka plugin) for
Offload is available
[here](https://github.com/callumfare/unified-runtime/tree/offload_adapter).
Our intention is to maintain this and use it to implement and test
Offload API changes with SYCL.
### Demoing the new API
```sh
# From the runtime build directory
$ ninja LibomptUnitTests
$ OFFLOAD_TRACE=1 ./offload/unittests/OffloadAPI/offload.unittests
```
### Open questions and future work
* Only some of the available device info is exposed, and not all the
possible device queries needed for SYCL are implemented by the plugins.
A sensible next step would be to refactor and extend the existing device
info queries in the plugins. The existing info queries are all strings,
but the new API introduces the ability to return any arbitrary type.
* It may be sensible at some point for the plugins to implement the new
API directly, and the higher level code on top of it could be made
generic, but this is more of a long-term possibility.
Commit: 41cde465acfddb44d400b0a53bb57960762312a2
https://github.com/llvm/llvm-project/commit/41cde465acfddb44d400b0a53bb57960762312a2
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/CodeGen/ptrauth-function-attributes.c
M clang/test/Driver/aarch64-ptrauth.c
Log Message:
-----------
[PAC][Driver] Add `-faarch64-jump-table-hardening` flag (#113149)
The flag is placed together with pointer authentication flags since they
serve the same security purpose of protecting against attacks on control
flow. The flag is not ABI-affecting and might be enabled separately if
needed, but it's also intended to be enabled as part of pauth-enabled
environments (e.g. pauthtest).
See also codegen implementation #97666.
Commit: a9eb8f0e3dbaf16b6bd83eecb960b6ea8ecaa8c3
https://github.com/llvm/llvm-project/commit/a9eb8f0e3dbaf16b6bd83eecb960b6ea8ecaa8c3
Author: Benjamin Maxwell <macdue at dueutil.tech>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
M mlir/test/Dialect/ArmSME/vector-legalization.mlir
Log Message:
-----------
[mlir][ArmSME] Fix crash on empty vector.mask in arm-sme-vector-legalization (#118613)
Fixes #118449
Commit: 3a8ada67ff45aec5696d72212d516593c3d32893
https://github.com/llvm/llvm-project/commit/3a8ada67ff45aec5696d72212d516593c3d32893
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[clang][NFC] Fix miscellaneous typos in release notes
Commit: 5d38a3406b11c70e6f0d1a880b78ed404aba2c36
https://github.com/llvm/llvm-project/commit/5d38a3406b11c70e6f0d1a880b78ed404aba2c36
Author: Christian Kandeler <christian.kandeler at qt.io>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/XRefs.cpp
Log Message:
-----------
[clangd] Consolidate two functions converting index to LSP locations (#117885)
Commit: 61fe67a4017375fd675f75652e857e837f77fa51
https://github.com/llvm/llvm-project/commit/61fe67a4017375fd675f75652e857e837f77fa51
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/XRefs.h
M clang-tools-extra/clangd/benchmarks/IndexBenchmark.cpp
M clang-tools-extra/clangd/index/Background.cpp
M clang-tools-extra/clangd/index/Background.h
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/Index.cpp
M clang-tools-extra/clangd/index/Index.h
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/MemIndex.h
M clang-tools-extra/clangd/index/Merge.cpp
M clang-tools-extra/clangd/index/Merge.h
M clang-tools-extra/clangd/index/ProjectAware.cpp
M clang-tools-extra/clangd/index/Ref.h
M clang-tools-extra/clangd/index/Serialization.cpp
M clang-tools-extra/clangd/index/Serialization.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/SymbolCollector.h
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/dex/Dex.h
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Client.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/Service.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.h
M clang-tools-extra/clangd/index/remote/server/Server.cpp
M clang-tools-extra/clangd/test/index-serialization/Inputs/sample.idx
M clang-tools-extra/clangd/test/type-hierarchy-ext.test
M clang-tools-extra/clangd/test/type-hierarchy.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DexTests.cpp
M clang-tools-extra/clangd/unittests/FileIndexTests.cpp
M clang-tools-extra/clangd/unittests/IndexTests.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/TestWorkspace.cpp
Log Message:
-----------
[clangd] support outgoing calls in call hierarchy (#117673)
This reverts commit ce0f11325e0c62c5b81391589e9b93b412a85bc1.
Commit: c7ef0ac9fd28cb55b8c7c91a890b365cc688f9a9
https://github.com/llvm/llvm-project/commit/c7ef0ac9fd28cb55b8c7c91a890b365cc688f9a9
Author: Kadir Cetinkaya <kadircet at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
Log Message:
-----------
[clangd] Drop required attributes from ContainedRef protos
Per https://protobuf.dev/programming-guides/dos-donts/#add-required this
is discouraged and we already handle errors when marshalling protos.
This also ensures new message types are consistent with the rest in the
file.
Commit: a2acb2ff8b5307bb6b973820c4ededf1ddc49bb2
https://github.com/llvm/llvm-project/commit/a2acb2ff8b5307bb6b973820c4ededf1ddc49bb2
Author: Andrzej WarzyĆski <andrzej.warzynski at arm.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorize-tensor-extract-masked.mlir
M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir
Log Message:
-----------
[mlir][linalg] Fix vectorization of tensor.extract (#118105)
The example below demonstrates a "scalar read followed by a broadcast"
pattern for `tensor.extract`:
```mlir
#map = affine_map<(d0, d1, d2) -> (d0, d1, d2)>
func.func @scalar_broadcast(
%init : tensor<1x1x3xi32>,
%src: tensor<1x3x2x4xi32>,
%idx :index) -> tensor<1x1x3xi32> {
%c0 = arith.constant 0 :index
%res = linalg.generic {
indexing_maps = [#map],
iterator_types = ["parallel", "parallel", "parallel"]}
outs(%init : tensor<1x1x3xi32>) {
^bb0(%out: i32):
%val = tensor.extract %src[%idx, %idx, %idx, %idx] : tensor<1x3x2x4xi32>
linalg.yield %val : i32
} -> tensor<1x1x3xi32>
return %res : tensor<1x1x3xi32>
}
```
The default masking path within the Linalg vectorizer, which assumes an
identity masking map, is not suitable here. Indeed:
* identity != broadcast.
This patch ensures masking is handled in the `vectorizeTensorExtract`
hook, which has the necessary context for proper handling.
Fixes #116197
Commit: 2e51e150e161bd5fb5b8adb8655744a672ced002
https://github.com/llvm/llvm-project/commit/2e51e150e161bd5fb5b8adb8655744a672ced002
Author: Yuanqiang Liu <liuyuanqiang.yqliu at bytedance.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/include/mlir-c/Pass.h
M mlir/lib/Bindings/Python/Pass.cpp
M mlir/lib/CAPI/IR/Pass.cpp
M mlir/python/mlir/_mlir_libs/_mlir/passmanager.pyi
M mlir/test/python/pass_manager.py
Log Message:
-----------
[MLIR][Python] enhance python ir printing with pringing flags (#117836)
Close https://github.com/llvm/llvm-project/pull/65854
Commit: 6caf9f82365a4b377c8ed22e737be14170f2ec9f
https://github.com/llvm/llvm-project/commit/6caf9f82365a4b377c8ed22e737be14170f2ec9f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-fabs.ll
M llvm/test/CodeGen/X86/combine-fneg.ll
M llvm/test/CodeGen/X86/fsxor-alignment.ll
Log Message:
-----------
[X86] combineStore - fold scalar float store(fabs/fneg(load())) -> store(and/xor(load(),c)) (#118680)
As noted on #117557 - its not worth performing scalar float fabs/fneg on the fpu if we're not doing any other fp ops.
This is currently limited to store + load pairs - I could try to extend this further if necessary, but we need to be careful that we don't end up in an infinite loop with the DAGCombiner foldBitcastedFPLogic combine.
Fixes #117557
Commit: 15de77db91c199f9431e81d0b85bb6984d1c5296
https://github.com/llvm/llvm-project/commit/15de77db91c199f9431e81d0b85bb6984d1c5296
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
Log Message:
-----------
[lldb] (Prepare to) speed up dwarf indexing (#118657)
Indexing a single DWARF unit is a fairly small task, which means the
overhead of enqueueing a task for each unit is not negligible (mainly
because introduces a lot of synchronization points for queue management,
memory allocation etc.). This is particularly true if the binary was
built with type units, as these are usually very small.
This essentially brings us back to the state before
https://reviews.llvm.org/D78337, but the new implementation is built on
the llvm ThreadPool, and I've added a small improvement -- we now
construct one "index set" per thread instead of one per unit, which
should lower the memory usage (fewer small allocations) and make the
subsequent merge step faster.
On its own this patch doesn't actually change the performance
characteristics because we still have one choke point -- progress
reporting. I'm leaving that for a separate patch, but I've tried that
simply removing the progress reporting gives us about a 30-60% speed
boost.
Commit: 487a070bebdc1252b83e45f8990704b31c6264f1
https://github.com/llvm/llvm-project/commit/487a070bebdc1252b83e45f8990704b31c6264f1
Author: WANG Rui <wangrui at loongson.cn>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem-div32.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit tests for sign-extension removal with div32 enabled
Commit: 0772a0bd29afa33520abf1c5a8bae09a718954b2
https://github.com/llvm/llvm-project/commit/0772a0bd29afa33520abf1c5a8bae09a718954b2
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
Revert "[memprof] Update YAML traits for writer purposes (#118720)"
This reverts commit 7b8cf147addf7d3fb4630475c40153226f5fdbd0.
Breaks building on macOS
https://lab.llvm.org/buildbot/#/builders/190/builds/10737
https://lab.llvm.org/buildbot/#/builders/23/builds/5491
https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-cmake-RA-incremental/6076/
Commit: 65ced158e912d2ddda75897914802056e78acf74
https://github.com/llvm/llvm-project/commit/65ced158e912d2ddda75897914802056e78acf74
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/ELF/Arch/RISCV.cpp
M lld/docs/ReleaseNotes.rst
M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV.def
Log Message:
-----------
[RISCV] Remove R_RISCV_RVC_LUI Relocation (#118714)
This was removed from the ABI in riscv-non-isa/riscv-elf-psabi-doc#398.
It is not emitted by LLVM, and seems to have been an internal
implementation detail in binutils.
This is a follow-up to 26ec5da744b8 which removed previous binutils
internal relocations when they were removed from the ABI.
The LLD implementation was not tested when it was added in
https://reviews.llvm.org/D39322
Commit: 17dfdd3a86e0759ce67e54ca53f6174769ed7285
https://github.com/llvm/llvm-project/commit/17dfdd3a86e0759ce67e54ca53f6174769ed7285
Author: Timm BĂ€der <tbaeder at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/test/AST/ByteCode/builtin-bit-cast-bitfields.cpp
Log Message:
-----------
[clang][bytecode][tests] Specify triple in bitfields tests
This still breaks on 32bit hosts otherwise.
See https://github.com/llvm/llvm-project/pull/116843
Commit: 0cda970ecc8a885acf7298a61370a1368b0ea39b
https://github.com/llvm/llvm-project/commit/0cda970ecc8a885acf7298a61370a1368b0ea39b
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
A flang/include/flang/Common/Fortran-consts.h
M flang/include/flang/Common/Fortran.h
M flang/include/flang/Common/format.h
A flang/include/flang/Common/target-rounding.h
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Runtime/cpp-type.h
M flang/include/flang/Runtime/type-code.h
M flang/runtime/format.h
M flang/runtime/non-tbp-dio.h
M flang/runtime/type-info.h
M flang/unittests/Evaluate/fp-testing.cpp
M flang/unittests/Evaluate/fp-testing.h
M flang/unittests/Runtime/Complex.cpp
Log Message:
-----------
[Flang][NFC] Split common headers to reduce dependencies. (#110244)
Fortran.h and target.h are defining symbols where some are used by both, the Fortran runtime (Flang-RT) and Fortran compiler (Flang), and others are used by Flang only. With the upcoming refactoring of the Fortran runtime into its own subproject (#110217), move the declarations that are used by both into new headers to minimize the amount of code that will need to be shared by Flang-RT and Flang.
Details:
* `Fortran.h`: Flang-RT only uses some enum definitions out of this file, but not `AsFortran` which is defined in `Fortran.cpp`. Moving the enums into `Fortran-consts.h` allows keeping `Fortran.cpp` within Flang.
* `target.h`: Contains some floating-point definitions that is used by the non-GTest unittests in `fp-testing.h`. Flang-RT also uses some non-GTest as well. Moving those definitions avoids the dependence on the entire FortranEvaluate library.
Commit: 722a5684326207d11bffb85ce422c8831d09c611
https://github.com/llvm/llvm-project/commit/722a5684326207d11bffb85ce422c8831d09c611
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/CodeGen/X86/combine-fabs.ll
M llvm/test/CodeGen/X86/combine-fneg.ll
Log Message:
-----------
[X86] Add test coverage for f16/bf16 fabs/fneg load-store tests
Future extension to #118680
Commit: ed9915ffdf4cfe58b939111d12819d1ef19a075c
https://github.com/llvm/llvm-project/commit/ed9915ffdf4cfe58b939111d12819d1ef19a075c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/CodeGen/X86/fp16-libcalls.ll
Log Message:
-----------
[X86] fp16-libcalls.ll - regenerate test checks with vpternlog comments
Commit: dd7a3d4d798e30dfe53b5bbbbcd9a23c24ea1af9
https://github.com/llvm/llvm-project/commit/dd7a3d4d798e30dfe53b5bbbbcd9a23c24ea1af9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-fabs.ll
M llvm/test/CodeGen/X86/combine-fneg.ll
M llvm/test/CodeGen/X86/fp16-libcalls.ll
Log Message:
-----------
[X86] Extend #118680 - support f16/bf16 fabs/fneg load-store patterns
Commit: 3740fac0d4640c05ba960be97d14cbd375a7c733
https://github.com/llvm/llvm-project/commit/3740fac0d4640c05ba960be97d14cbd375a7c733
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/Format/CMakeLists.txt
Log Message:
-----------
Revert "[clang-format] Add cmake target clang-format-style-options for updating ClangFormatStyleOptions.rst (#111513)"
Breaks the build when docs are not enabled.
This reverts commit f7560ee97b7441eb3f5b2d0744aad857fafa5855.
This reverts commit 6bec1806c9cc90f6e72fc04698f4221c86c5f95e.
Commit: 59720dc703f7f207d013b065d0ed7d3af7168bcc
https://github.com/llvm/llvm-project/commit/59720dc703f7f207d013b065d0ed7d3af7168bcc
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-mul.ll
Log Message:
-----------
[InstCombine] Fold `icmp spred (X *nsw Z), (Y *nsw Z) -> icmp pred Z, 0` if `scmp(X, Y)` is known (#118726)
```
icmp spred (X *nsw Z), (Y *nsw Z) -> icmp swap(spred) Z, 0 if X s< Y
icmp spred (X *nsw Z), (Y *nsw Z) -> icmp spred Z, 0 if X s> Y
```
Alive2: https://alive2.llvm.org/ce/z/F2D0GE
Commit: 71bbafba31699bdabe289654d157ae961432e52a
https://github.com/llvm/llvm-project/commit/71bbafba31699bdabe289654d157ae961432e52a
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/COFFLinkerContext.h
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Writer.cpp
A lld/test/COFF/arm64x-loadconfig.s
Log Message:
-----------
[LLD][COFF] Add basic ARM64X dynamic relocations support (#118035)
This modifies the machine field in the hybrid view to be AMD64, aligning
it with expectations from ARM64EC modules. While this provides initial
support, additional relocations will be necessary for full
functionality. Many of these cases depend on implementing separate
namespace support first.
Move clearing of the .reloc section from addBaserels to assignAddresses
to ensure it is always cleared, regardless of the relocatable
configuration. This change also clarifies the reasoning for adding the
dynamic relocations chunk in that location.
Commit: b6217f67a422d2c0e24bcfa80cf663b610a0cfc4
https://github.com/llvm/llvm-project/commit/b6217f67a422d2c0e24bcfa80cf663b610a0cfc4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Fix bitcasting from null pointers (#116999)
Commit: db9057edca0fe14987fb892f52bc51441316892c
https://github.com/llvm/llvm-project/commit/db9057edca0fe14987fb892f52bc51441316892c
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/MachineScheduler.cpp
Log Message:
-----------
[Sched] Skip MemOp with unknown size when clustering (#118443)
In #83875, we changed the type of `Width` to `LocationSize`. To get
the clsuter bytes, we use `LocationSize::getValue()` to calculate
the value.
But when `Width` is an unknown size `LocationSize`, an assertion
"Getting value from an unknown LocationSize!" will be triggered.
This patch simply skips MemOp with unknown size to fix this issue
and keep the logic the same as before.
This issue was found when implementing software pipeliner for
RISC-V in #117546. The pipeliner may clone some memory operations
with `BeforeOrAfterPointer` size.
Commit: 44433147d62ef0b918c8925874a407ecec15193f
https://github.com/llvm/llvm-project/commit/44433147d62ef0b918c8925874a407ecec15193f
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/index/MemIndex.h
M clang-tools-extra/clangd/index/dex/Dex.h
Log Message:
-----------
[NFC] Fix uninitialized scalar field in constructor. (#118324)
Non-static class field is not initialized in constructor.
Commit: da6099c9adadffb58e0edca253b1f29db77627f6
https://github.com/llvm/llvm-project/commit/da6099c9adadffb58e0edca253b1f29db77627f6
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/test/Semantics/test_symbols.py
Log Message:
-----------
[flang][test] Recognize !$acc and !$omp spelled with capital letters (#118666)
If there are any continuation lines in the source, they will be printed
by the unparser with capital letters (at least in case of OpenMP). To
avoid having them stripped out, recognize their spellings using capital
letters as well.
---------
Co-authored-by: Michael Kruse <github at meinersbur.de>
Commit: ffb1c21bd4697ab5a6f11e2f2eba4fefaa298f2a
https://github.com/llvm/llvm-project/commit/ffb1c21bd4697ab5a6f11e2f2eba4fefaa298f2a
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
A llvm/test/Transforms/LowerMatrixIntrinsics/transpose-opts-lifting-constant-folds.ll
Log Message:
-----------
[Matrix] Fix crash in liftTranspose when instructions are folded.
Builder.Create(F)Add may constant fold the inputs, return a constant
instead of an instruction. Account for that instead of crashing.
Commit: ff78cd5f3d6ae8e7084f0aff4df4164ff5a38af9
https://github.com/llvm/llvm-project/commit/ff78cd5f3d6ae8e7084f0aff4df4164ff5a38af9
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/include/flang/Lower/AbstractConverter.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
A flang/test/Lower/OpenMP/delayed-privatization-default-init.f90
M flang/test/Lower/OpenMP/delayed-privatization-pointer.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
A flang/test/Lower/do_concurrent_local_default_init.f90
Log Message:
-----------
[flang] fix private pointers and default initialized variables (#118494)
Both OpenMP privatization and DO CONCURRENT LOCAL lowering was incorrect
for pointers and derived type with default initialization.
For pointers, the descriptor was not established with the rank/type
code/element size, leading to undefined behavior if any inquiry was made
to it prior to a pointer assignment (and if/when using the runtime for
pointer assignments, the descriptor must have been established).
For derived type with default initialization, the copies were not
default initialized.
Commit: f85be32613a3b7078d4a4618f0995bcab353d050
https://github.com/llvm/llvm-project/commit/f85be32613a3b7078d4a4618f0995bcab353d050
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZOperands.td
Log Message:
-----------
[SystemZ] SIMM32 is a signed constant (#118634)
A follow-up to PR #117181: SIMM32 must use getSignedTargetConstant(),
too.
Commit: 462cb3cd6cecd0511ecaf0e3ebcaba455ece587d
https://github.com/llvm/llvm-project/commit/462cb3cd6cecd0511ecaf0e3ebcaba455ece587d
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/test/CodeGen/AArch64/ls64-inline-asm.c
M clang/test/CodeGen/AArch64/pure-scalable-args.c
M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma.c
M clang/test/CodeGen/SystemZ/zos-mixed-ptr-sizes.c
M clang/test/CodeGen/arm64_32-vaarg.c
M clang/test/CodeGen/attr-counted-by-pr110385.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/math-libcalls-tbaa.c
M clang/test/CodeGen/union-tbaa1.c
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenCXX/auto-var-init.cpp
M clang/test/CodeGenCXX/microsoft-abi-dynamic-cast.cpp
M clang/test/CodeGenCXX/microsoft-abi-typeid.cpp
M clang/test/CodeGenOpenCL/amdgpu-nullptr.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Analysis/BasicAA/featuretest.ll
M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
M llvm/test/Transforms/Coroutines/coro-async.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca-opaque-ptr.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-value.ll
M llvm/test/Transforms/Coroutines/coro-retcon-resume-values.ll
M llvm/test/Transforms/Coroutines/coro-swifterror.ll
M llvm/test/Transforms/InstCombine/2007-03-25-BadShiftMask.ll
M llvm/test/Transforms/InstCombine/2009-01-08-AlignAlloca.ll
M llvm/test/Transforms/InstCombine/AArch64/dmb-intrinsics.ll
M llvm/test/Transforms/InstCombine/X86/x86-addsub-inseltpoison.ll
M llvm/test/Transforms/InstCombine/X86/x86-addsub.ll
M llvm/test/Transforms/InstCombine/array.ll
M llvm/test/Transforms/InstCombine/assume-align.ll
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume-redundant.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/InstCombine/call-cast-target.ll
M llvm/test/Transforms/InstCombine/cast_phi.ll
M llvm/test/Transforms/InstCombine/cast_ptr.ll
M llvm/test/Transforms/InstCombine/catchswitch-phi.ll
M llvm/test/Transforms/InstCombine/compare-alloca.ll
M llvm/test/Transforms/InstCombine/compare-unescaped.ll
M llvm/test/Transforms/InstCombine/dependent-ivs.ll
M llvm/test/Transforms/InstCombine/extractvalue.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstCombine/fsh.ll
M llvm/test/Transforms/InstCombine/gep-addrspace.ll
M llvm/test/Transforms/InstCombine/gep-canonicalize-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-combine-loop-invariant.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-vector-indices.ll
M llvm/test/Transforms/InstCombine/gepphigep.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/inbounds-gep.ll
M llvm/test/Transforms/InstCombine/indexed-gep-compares.ll
M llvm/test/Transforms/InstCombine/intptr1.ll
M llvm/test/Transforms/InstCombine/intptr7.ll
M llvm/test/Transforms/InstCombine/load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/mem-par-metadata-memcpy.ll
M llvm/test/Transforms/InstCombine/memccpy.ll
M llvm/test/Transforms/InstCombine/memcpy_alloca.ll
M llvm/test/Transforms/InstCombine/mempcpy.ll
M llvm/test/Transforms/InstCombine/memset2.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/phi-equal-incoming-pointers.ll
M llvm/test/Transforms/InstCombine/phi-timeout.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/ptr-replace-alloca.ll
M llvm/test/Transforms/InstCombine/ptrmask.ll
M llvm/test/Transforms/InstCombine/remove-loop-phi-multiply-by-zero.ll
M llvm/test/Transforms/InstCombine/select-cmp-br.ll
M llvm/test/Transforms/InstCombine/select-gep.ll
M llvm/test/Transforms/InstCombine/sink_sideeffecting_instruction.ll
M llvm/test/Transforms/InstCombine/snprintf-2.ll
M llvm/test/Transforms/InstCombine/snprintf-3.ll
M llvm/test/Transforms/InstCombine/snprintf-4.ll
M llvm/test/Transforms/InstCombine/snprintf.ll
M llvm/test/Transforms/InstCombine/sprintf-1.ll
M llvm/test/Transforms/InstCombine/stpncpy-1.ll
M llvm/test/Transforms/InstCombine/str-int.ll
M llvm/test/Transforms/InstCombine/strlcpy-1.ll
M llvm/test/Transforms/InstCombine/strlen-1.ll
M llvm/test/Transforms/InstCombine/struct-assign-tbaa-2.ll
M llvm/test/Transforms/InstCombine/sub.ll
M llvm/test/Transforms/InstCombine/unpack-fca.ll
M llvm/test/Transforms/InstCombine/vec_gep_scalar_arg-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vec_gep_scalar_arg.ll
M llvm/test/Transforms/InstCombine/vscale_gep.ll
M llvm/test/Transforms/InstCombine/wcslen-1.ll
M llvm/test/Transforms/InstCombine/wcslen-3.ll
M llvm/test/Transforms/InstCombine/wcslen-5.ll
M llvm/test/Transforms/LoopUnroll/AArch64/runtime-unroll-generic.ll
M llvm/test/Transforms/LoopUnroll/ARM/upperbound.ll
M llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
M llvm/test/Transforms/LoopUnroll/peel-loop.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll
M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-no-scalar-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
M llvm/test/Transforms/LoopVectorize/histograms.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-3.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/loop-scalars.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/runtime-check.ll
M llvm/test/Transforms/LoopVectorize/scalar_after_vectorization.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/LoopVectorize/vector-geps.ll
M llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM1.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/loopflatten.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/predicated-reduction.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sinking-vs-if-conversion.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
M llvm/test/Transforms/PhaseOrdering/X86/excessive-unrolling.ll
M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions2.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions3.ll
M llvm/test/Transforms/PhaseOrdering/X86/pixel-splat.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr50555.ll
M llvm/test/Transforms/PhaseOrdering/X86/preserve-access-group.ll
M llvm/test/Transforms/PhaseOrdering/X86/simplifycfg-late.ll
M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
M llvm/test/Transforms/PhaseOrdering/X86/spurious-peeling.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
M llvm/test/Transforms/PhaseOrdering/X86/vec-load-combine.ll
M llvm/test/Transforms/PhaseOrdering/X86/vec-shift.ll
M llvm/test/Transforms/PhaseOrdering/X86/vector-reduction-known-first-value.ll
M llvm/test/Transforms/PhaseOrdering/basic.ll
M llvm/test/Transforms/PhaseOrdering/bitcast-store-branch.ll
M llvm/test/Transforms/PhaseOrdering/dce-after-argument-promotion-loads.ll
M llvm/test/Transforms/PhaseOrdering/gvn-replacement-vs-hoist.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
M llvm/test/Transforms/PhaseOrdering/lto-argpromotion-ipsccp.ll
M llvm/test/Transforms/PhaseOrdering/lto-licm.ll
M llvm/test/Transforms/PhaseOrdering/pr39282.ll
M llvm/test/Transforms/PhaseOrdering/pr98799-inline-simplifycfg-ub.ll
M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
M llvm/test/Transforms/PhaseOrdering/simplifycfg-options.ll
M llvm/test/Transforms/PhaseOrdering/single-iteration-loop-sroa.ll
M llvm/test/Transforms/PhaseOrdering/switch_with_geps.ll
M llvm/test/Transforms/RewriteStatepointsForGC/intrinsics.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-cost.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
M llvm/test/Transforms/SLPVectorizer/WebAssembly/no-vectorize-rotate.ll
M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/X86/opt.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-instcombine.ll
M llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/uniform-unswitch.ll
M llvm/test/Transforms/SimplifyCFG/Hexagon/switch-to-lookup-table.ll
Log Message:
-----------
[InstCombine] Infer nusw + nneg -> nuw for getelementptr (#111144)
If the gep is nusw (usually via inbounds) and the offset is
non-negative, we can infer nuw.
Proof: https://alive2.llvm.org/ce/z/ihztLy
Commit: 8e6634444876a59c1352a4d62704e93b23b7c5ae
https://github.com/llvm/llvm-project/commit/8e6634444876a59c1352a4d62704e93b23b7c5ae
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/Support/Debug.h
M llvm/unittests/Support/DebugTest.cpp
Log Message:
-----------
[Support] Use macro var args to allow templates within DEBUG_WITH_TYPE (#117614)
Use variadic args with DEBUG_WITH_TYPE("name", ...) macros to resolve a
compilation failure that occurs when using a comma within the last macro
argument. Commas come up when instantiating templates such as
SmallMapVector that require multiple template args.
Commit: 1f932825f9c1a63e1badaae2dbd5305485dfc010
https://github.com/llvm/llvm-project/commit/1f932825f9c1a63e1badaae2dbd5305485dfc010
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
Log Message:
-----------
[MLIR][EmitC] arith-to-emitc: Fix lowering of fptoui (#118504)
`arith.fptoui %arg0 : f32 to i16` was lowered to
```
%0 = emitc.cast %arg0 : f32 to ui32
emitc.cast %0 : ui32 to i16
```
and is now lowered to
```
%0 = emitc.cast %arg0 : f32 to ui16
emitc.cast %0 : ui16 to i16
```
Commit: bb03a184705953c55f141f9731275c421bdc7769
https://github.com/llvm/llvm-project/commit/bb03a184705953c55f141f9731275c421bdc7769
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/Transforms/SCCP/pr45185-range-predinfo.ll
Log Message:
-----------
[SCCP] Regenerate test checks (NFC)
The checks generated by old UTC version fail on this test due to
missing signature matching, so regenerate it with a newer one.
Commit: f9f7c42ca68f0721fffddde67de14732c2007b39
https://github.com/llvm/llvm-project/commit/f9f7c42ca68f0721fffddde67de14732c2007b39
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
Log Message:
-----------
[AMDGPU] Refine AMDGPULateCodeGenPrepare class. NFC. (#118792)
Use references instead of pointers for most state and initialize it all
in the constructor, and similarly for the LiveRegOptimizer class.
Commit: 6b5c67bd166f1cb5d92d01136474b023b576e19a
https://github.com/llvm/llvm-project/commit/6b5c67bd166f1cb5d92d01136474b023b576e19a
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
A llvm/test/CodeGen/PowerPC/pr118695.ll
Log Message:
-----------
[PowerPC][Backend] using signed extend value instead of zero extend value for isIntS34Immediate() (#118703)
The patch fix the issue
https://github.com/llvm/llvm-project/issues/118695
Commit: f1d81dbd0573502134270495aa43e3ffb3193ab0
https://github.com/llvm/llvm-project/commit/f1d81dbd0573502134270495aa43e3ffb3193ab0
Author: Ilya Biryukov <ibiryukov at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/prune-non-affecting-module-map-repeated-textual.cpp
Log Message:
-----------
[ASTWriter] Do not allocate source location space for module maps used only for textual headers (#116374)
This is a follow up to #112015 and it reduces the unnecessary
duplication of source locations further.
We do not need to allocate source location space in the serialized PCMs
for module maps used only to find textual headers. Those module maps are
never referenced from anywhere in the serialized ASTs and are re-read in
other compilations.
This change should not affect correctness of Clang compilations or
clang-scan-deps in any way.
We do need the InputFile entry in the serialized AST because
clang-scan-deps relies on it. The previous patch introduced a mechanism
to do exactly that.
We have found that to finally remove any duplication of module maps we
use internally in our build system.
Commit: d25d0405410dc2e22575009cd9209a2206fbcbfe
https://github.com/llvm/llvm-project/commit/d25d0405410dc2e22575009cd9209a2206fbcbfe
Author: Pravin Jagtap <Pravin.Jagtap at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
Log Message:
-----------
[AMDGPU][NFC] Autogenerate gfx950 hazard tests. (#118794)
Commit: f7685af4a5bd188e6d548967d818d8569f10a70d
https://github.com/llvm/llvm-project/commit/f7685af4a5bd188e6d548967d818d8569f10a70d
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
M llvm/test/Transforms/InstCombine/gepphigep.ll
M llvm/test/Transforms/InstCombine/indexed-gep-compares.ll
M llvm/test/Transforms/InstCombine/intptr1.ll
M llvm/test/Transforms/InstCombine/intptr2.ll
M llvm/test/Transforms/InstCombine/intptr3.ll
M llvm/test/Transforms/InstCombine/intptr4.ll
M llvm/test/Transforms/InstCombine/intptr5.ll
M llvm/test/Transforms/InstCombine/known-phi-recurse.ll
M llvm/test/Transforms/InstCombine/phi-equal-incoming-pointers.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/LoopUnroll/peel-loop.ll
M llvm/test/Transforms/LoopUnroll/unroll-cleanup.ll
M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sinking-vs-if-conversion.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mean_q7.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr38280.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-reduce.ll
Log Message:
-----------
[InstCombine] Move gep of phi fold into separate function
This makes sure that an early return during this fold doesn't end
up skipping later gep folds.
Commit: 707e08917d66f858adc252ed151a0749e457e5db
https://github.com/llvm/llvm-project/commit/707e08917d66f858adc252ed151a0749e457e5db
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
Log Message:
-----------
[LoopVectorize] Restore cost check lines in test (NFC)
Accidentally dropped these while updating the test.
Commit: 3a4b9f38915625c68c78b62de48a3de8b97c5043
https://github.com/llvm/llvm-project/commit/3a4b9f38915625c68c78b62de48a3de8b97c5043
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
A clang/test/SemaOpenACC/combined-construct-gang-ast.cpp
A clang/test/SemaOpenACC/combined-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
Log Message:
-----------
[OpenACC] Implement 'gang' clause for Combined Constructs
This one is a bit complicated, as it has some interesting interactions,
as 'gang' Sema is required to look at its containing compute construct.
Except in the case of a combined construct, they are the same. This
resulted in a large refactor of the checking code for CheckGangExpr,
plus some additional work on the diagnostics for its interaction with
'num_gangs' and 'vector'/'worker'.
Commit: f7e8be7c66b53a126c8cba9ac81b5b77d873aa1e
https://github.com/llvm/llvm-project/commit/f7e8be7c66b53a126c8cba9ac81b5b77d873aa1e
Author: Samira Bazuzi <bazuzi at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/Lex/Lexer.cpp
M clang/unittests/Lex/LexerTest.cpp
Log Message:
-----------
Skip escaped newlines before checking for whitespace in Lexer::getRawToken. (#117548)
The Lexer used in getRawToken is not told to keep whitespace, so when it
skips over escaped newlines, it also ignores whitespace, regardless of
getRawToken's IgnoreWhiteSpace parameter.
Instead of letting this case fall through to lexing, check
for whitespace after skipping over any escaped newlines.
Commit: 59a9e4d8a450529d02e7f08e21c40f8c547b2ebd
https://github.com/llvm/llvm-project/commit/59a9e4d8a450529d02e7f08e21c40f8c547b2ebd
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/intrinsic-vector-match.ll
Log Message:
-----------
[RISCV] Update matchSplatAsGather to convert vectors if they have different sizes (#117878)
This patch updates the matchSplatAsGather function so we can handle vectors of different sizes. The goal is to improve the code gen for @llvm.experimental.vector.match on RISCV.
Currently, we use a scalar extract and splat instead of vrgather, and the patch changes that.
Commit: 3bd3fa64283ea4bb2a893ed5a8d4d0438e761aba
https://github.com/llvm/llvm-project/commit/3bd3fa64283ea4bb2a893ed5a8d4d0438e761aba
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZOperands.td
Log Message:
-----------
[NFC][SystemZ] Use SExt for signed constants (#118803)
Use SExt instead of ZExt in XForms which produce a signed value. This is
only to make it clear that the XForm handles a signed value.
Commit: d09632ba819d21b12cdf0ec107209c0c5cbf100d
https://github.com/llvm/llvm-project/commit/d09632ba819d21b12cdf0ec107209c0c5cbf100d
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Log Message:
-----------
[InstCombine] Remove nusw handling in ptrtoint of gep fold (NFCI) (#118804)
Now that #111144 infers gep nuw, we no longer have to repeat the
inference in this fold.
Commit: 2bd3174226958a5a646ea4bc69a6afa21f1e6262
https://github.com/llvm/llvm-project/commit/2bd3174226958a5a646ea4bc69a6afa21f1e6262
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
A llvm/test/Transforms/SCCP/gep-nuw.ll
Log Message:
-----------
[SCCP] Add tests for gep nuw inference (NFC)
Commit: f59b600c21add076d6a876f29f94990b24b8e321
https://github.com/llvm/llvm-project/commit/f59b600c21add076d6a876f29f94990b24b8e321
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.h
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ParsedAST.h
M clang-tools-extra/clangd/TUScheduler.cpp
M clang-tools-extra/clangd/TUScheduler.h
M clang-tools-extra/clangd/support/DirectiveTree.cpp
M clang-tools-extra/modularize/ModuleAssistant.cpp
Log Message:
-----------
[NFC] Complete proper copying and resource cleanup in classes. (#118655)
Provide, where missing, a copy constructor, a copy assignment operator
or a destructor to prevent potential issues that can arise.
Commit: d457100a8152cc2ebf8cd219caae92cc0f591156
https://github.com/llvm/llvm-project/commit/d457100a8152cc2ebf8cd219caae92cc0f591156
Author: Chris White <chriswhiteiodev at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/SemaCXX/warn-unused-private-field.cpp
Log Message:
-----------
[Clang] Fix -Wunused-private-field false negative with defaulted comparison operators (#116871)
Fix -Wunused-private-field incorrectly suppressing warnings for friend
defaulted comparison operators. The warning should only be suppressed
when the defaulted comparison is a class member function.
Fixes #116270
Commit: 97fd435eea1040c818c3f2330a3399180396bf0a
https://github.com/llvm/llvm-project/commit/97fd435eea1040c818c3f2330a3399180396bf0a
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
Log Message:
-----------
[rtsan] intercept accept4 syscall. (#117278)
Commit: 34a076c46fafe6bd5fee48426195d3d9e66b8482
https://github.com/llvm/llvm-project/commit/34a076c46fafe6bd5fee48426195d3d9e66b8482
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV][NFC] Don't set UnrollAndJamInnerLoopThreshold in getUnrollingPreferences (#118572)
This has no effect since its the default value used in
llvm::gatherUnrollingPreferences.
Commit: 8a90b5b31776957cb9cfa4f9547d19544640c5cc
https://github.com/llvm/llvm-project/commit/8a90b5b31776957cb9cfa4f9547d19544640c5cc
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/test/Semantics/test_symbols.py
Log Message:
-----------
[flang][test] Change re.I to flags=re.I in re.sub
Follow-up to da6099c9ad. As a positional argument, the `re.I` was in
place of `count`, not `flags`.
Commit: 27eaa8a40ef338bea611f693fa8e810b1fc8d78d
https://github.com/llvm/llvm-project/commit/27eaa8a40ef338bea611f693fa8e810b1fc8d78d
Author: Maurice Heumann <MauriceHeumann at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
A llvm/test/Transforms/InstCombine/shl-twice-constant.ll
Log Message:
-----------
[InstCombine] Prevent infinite loop with two shifts (#118806)
The following pattern: `(C2 << X) << C1` will usually be transformed
into `(C2 << C1) << X`, essentially swapping `X` and `C1`.
However, this should only be done when `C1` is an immediate constant,
otherwise thiscan lead to both constants being swapped forever.
This fixes #118798.
Commit: e7412a5035062356f111e159cc2ed42893db2573
https://github.com/llvm/llvm-project/commit/e7412a5035062356f111e159cc2ed42893db2573
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/usubsat.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] uaddsat/usubsat sdag for true16 format (#118708)
uaddsat and usubsat SDAG codeGen pattern for True16 format witth
V_ADD/SUB_NC_U16
Commit: fdb90cef75cad0f46f06f1316eaf39358773b468
https://github.com/llvm/llvm-project/commit/fdb90cef75cad0f46f06f1316eaf39358773b468
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/docs/ctype.rst
M libc/docs/fenv.rst
M libc/docs/setjmp.rst
M libc/docs/signal.rst
M libc/docs/stdbit.rst
M libc/docs/threads.rst
M libc/utils/docgen/docgen.py
M libc/utils/docgen/signal.json
Log Message:
-----------
[libc][docgen] update to POSIX.1-2024 (#118717)
The recently ratified POSIX.1-2024 is newer than POSIX.1-2017.
Commit: bda02096d3b3c19e69b9f70ca8ff161d8173fec0
https://github.com/llvm/llvm-project/commit/bda02096d3b3c19e69b9f70ca8ff161d8173fec0
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
[ProfileData] Add InstrProfWriter::writeBinaryIds (NFC) (#118754)
The patch makes InstrProfWriter::writeImpl less monolithic by adding
InstrProfWriter::writeBinaryIds to serialize binary IDs. This way,
InstrProfWriter::writeImpl can simply call the new function instead of
handling all the details within writeImpl.
Commit: b6c0f1bfa79a3a32d841ac5ab1f94c3aee3b5d90
https://github.com/llvm/llvm-project/commit/b6c0f1bfa79a3a32d841ac5ab1f94c3aee3b5d90
Author: Luke Lau <luke at igalia.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/inline-asm-v-constraint.ll
M llvm/test/CodeGen/RISCV/rvv/abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
M llvm/test/CodeGen/RISCV/rvv/compressstore.ll
M llvm/test/CodeGen/RISCV/rvv/constant-folding-crash.ll
M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/expandload.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fshr-fshl-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-mask-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1up.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fold-scalar-load-crash.ll
M llvm/test/CodeGen/RISCV/rvv/fshr-fshl-vp.ll
M llvm/test/CodeGen/RISCV/rvv/inline-asm.ll
M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/llrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/lrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/masked-tama.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/pr88576.ll
M llvm/test/CodeGen/RISCV/rvv/rint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector-csr.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/strided-vpstore.ll
M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vcpop.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-reassociations.ll
M llvm/test/CodeGen/RISCV/rvv/vector-splice.ll
M llvm/test/CodeGen/RISCV/rvv/vfabs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfirst.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfneg-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfpext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmfeq.ll
M llvm/test/CodeGen/RISCV/rvv/vmfge.ll
M llvm/test/CodeGen/RISCV/rvv/vmfgt.ll
M llvm/test/CodeGen/RISCV/rvv/vmfle.ll
M llvm/test/CodeGen/RISCV/rvv/vmflt.ll
M llvm/test/CodeGen/RISCV/rvv/vmfne.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmsbf.ll
M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsif.ll
M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
M llvm/test/CodeGen/RISCV/rvv/vmsof.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll
M llvm/test/CodeGen/RISCV/rvv/vp-cttz-elts.ll
M llvm/test/CodeGen/RISCV/rvv/vp-select.ll
M llvm/test/CodeGen/RISCV/rvv/vp-splice-mask-fixed-vectors.ll
M llvm/test/CodeGen/RISCV/rvv/vp-splice-mask-vectors.ll
M llvm/test/CodeGen/RISCV/rvv/vpgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vpload.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vpstore.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrgatherei16-subreg-liveness.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-bf16.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-int.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
M llvm/test/CodeGen/RISCV/rvv/vsext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vzext-vp.ll
Log Message:
-----------
[RISCV] Clear vill for whole vector register moves in vsetvli insertion (#118283)
This is an alternative to #117866 that works by demanding a valid vtype
instead of using a separate pass.
The main advantage of this is that it allows coalesceVSETVLIs to just
reuse an existing vsetvli later in the block.
To do this we need to first transfer the vsetvli info to some arbitrary
valid state in transferBefore when we encounter a vector copy. Then we
add a new vill demanded field that will happily accept any other known
vtype, which allows us to coalesce these where possible.
Note we also need to check for vector copies in computeVLVTYPEChanges,
otherwise the pass will completely skip over functions that only have
vector copies and nothing else.
This is one part of a fix for #114518. We still need to check if there's
other cases where vector copies/whole register moves that are inserted
after vsetvli insertion.
Commit: 83ccaad4735d029295c5cad0f28786341c1348b7
https://github.com/llvm/llvm-project/commit/83ccaad4735d029295c5cad0f28786341c1348b7
Author: Valentin Clement (ăăŹăłăżă€ăł ăŻăŹăĄăł) <clementval at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/runtime/CUDA/allocator.cpp
M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
Log Message:
-----------
[flang][cuda] Use async id for device stream allocation (#118733)
When stream is specified use cudaMallocAsync with the specified stream
Commit: 245f26a3d3048ea85f625849adf8a016fc9524ca
https://github.com/llvm/llvm-project/commit/245f26a3d3048ea85f625849adf8a016fc9524ca
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/hdrgen/yaml/sys/mman.yaml
M libc/include/sys/syscall.h.def
M libc/src/sys/mman/CMakeLists.txt
M libc/src/sys/mman/linux/CMakeLists.txt
R libc/src/sys/mman/linux/process_mrelease.cpp
R libc/src/sys/mman/process_mrelease.h
M libc/test/src/sys/mman/linux/CMakeLists.txt
R libc/test/src/sys/mman/linux/process_mrelease_test.cpp
Log Message:
-----------
[libc] revert all process_mrelease changes (#118650)
Revert as its test is unstable.
https://github.com/llvm/llvm-project/issues/118057
Commit: 0964328c2960159f66ad232bb2257fbabab3c0ec
https://github.com/llvm/llvm-project/commit/0964328c2960159f66ad232bb2257fbabab3c0ec
Author: John Harrison <harjohn at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lldb/unittests/Host/SocketTest.cpp
M lldb/unittests/TestingSupport/Host/SocketTestUtilities.cpp
M lldb/unittests/TestingSupport/Host/SocketTestUtilities.h
Log Message:
-----------
[lldb] Fix the SocketTest failure on unsupported hosts (#118673)
The test `SocketTest::TCPListen0MultiListenerGetListeningConnectionURI`
is failing on hosts that do not map `localhost` to both an ipv4 and ipv6
address. For example this build
https://lab.llvm.org/buildbot/#/builders/195/builds/1909.
To fix this, I added a helper to validate if the host has an /etc/hosts
entry for both ipv4 and ipv6, otherwise we skip the test.
Commit: b8c4fb00e6ab424e22b275ad73186e2971eacd88
https://github.com/llvm/llvm-project/commit/b8c4fb00e6ab424e22b275ad73186e2971eacd88
Author: Pravin Jagtap <Pravin.Jagtap at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
Log Message:
-----------
[AMDGPU] Add hazard tests for cvt scale of fp4. (#118813)
Commit: 3f0cc068cef26e820b3acbd21b3577817e4bf4ca
https://github.com/llvm/llvm-project/commit/3f0cc068cef26e820b3acbd21b3577817e4bf4ca
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
M flang/test/HLFIR/minloc-elemental.fir
A flang/test/HLFIR/opt-bufferization-non-realloc-assignment.fir
M flang/test/Integration/OpenMP/workshare-axpy.f90
Log Message:
-----------
[flang] Assume matching shapes in elemental assignment with non-realloc lhs. (#118552)
The optimized bufferization pass cannot optimize very simple cases of
elemental
assignments, because of the suboptimal checks order. This patch relies
on the fact that in a legal program the lhs and rhs of an assignment
have matching shapes, when lhs is not an allocatable and rhs is a result
of an elemental array operation.
Commit: cc46d0bee967989c12a0040bb3cab1319ae50e79
https://github.com/llvm/llvm-project/commit/cc46d0bee967989c12a0040bb3cab1319ae50e79
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
A flang/test/HLFIR/simplify-hlfir-intrinsics-sum.fir
Log Message:
-----------
[flang] Expand SUM(DIM=CONSTANT) into an hlfir.elemental. (#118556)
An array SUM with the specified constant DIM argument
may be expanded into hlfir.elemental with a reduction loop
inside it processing all elements of the specified dimension.
The expansion allows further optimization of the cases like
`A=SUM(B+1,DIM=1)` in the optimized bufferization pass
(given that it can prove there are no read/write conflicts).
Commit: 3da843bae179374e74e2601a8549e473b0080dc6
https://github.com/llvm/llvm-project/commit/3da843bae179374e74e2601a8549e473b0080dc6
Author: Max191 <44243577+Max191 at users.noreply.github.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Dialect/SCF/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
Log Message:
-----------
[mlir] Add ValueBoundsOpInterfaceImpl for scf.forall (#118817)
Adds a ValueBoundsOpInterface implementation for scf.forall ops. The
implementation supports bounding for both induction variables, results,
and block args of the forall op. Induction variables are given upper and
lower bounds based on the lower and upper loop bounds, and dimensions of
the results and init block arguments are constrained to be equal to the
matching dims of the shared_outs operand.
Signed-off-by: Max Dawkins <maxdawkins19 at gmail.com>
Co-authored-by: Max Dawkins <maxdawkins19 at gmail.com>
Commit: 409edc64d18837c5d47764888400ed2921a03918
https://github.com/llvm/llvm-project/commit/409edc64d18837c5d47764888400ed2921a03918
Author: wwwatermiao <chenmiao32 at huawei.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_ld1_vnum.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_st1_vnum.c
Log Message:
-----------
[AArch64][SME] Fix bug on SMELd1St1 (#118109)
Patch[1] has update intrinsic interface for ld1/st1, while based on
ARM's document, "If the intrinsic also has a vnum argument, the ZA slice
number is calculated by adding vnum to slice.". But the "vnum" did not
work for our realization now, this patch fix this point.
[1]https://github.com/llvm/llvm-project/commit/ee31ba0dd923c3a4628cf3887e137843e43c8b22
Commit: 41c33cbf360462143e13b51b17a9e4ce9c893837
https://github.com/llvm/llvm-project/commit/41c33cbf360462143e13b51b17a9e4ce9c893837
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-ilp32-ilp32f-ilp32d-common.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-lp64-lp64f-lp64d-common.ll
Log Message:
-----------
[RISCV][GISel] Enable support for ArrayType arguments if the element type is also supported.
This allows us to handle small coerced structs that are passed as
[2 x i64]. This is one of the last big reasons for -O0 fallbacks
in some of my testing.
Commit: 24699841448914b5afd45a80d4334e2b4b951f96
https://github.com/llvm/llvm-project/commit/24699841448914b5afd45a80d4334e2b4b951f96
Author: Pravin Jagtap <Pravin.Jagtap at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
Log Message:
-----------
[AMDGPU][NFC] Delete duplicate decl and impl defines. (#118843)
Commit: 8ab2730c0a09f16324dd7aa76e9792fe70df35c9
https://github.com/llvm/llvm-project/commit/8ab2730c0a09f16324dd7aa76e9792fe70df35c9
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M .github/workflows/libcxx-restart-preempted-jobs.yaml
Log Message:
-----------
[libc++] Rename test job for restarting preempted jobs
Commit: 6b0785390d02193d81d8db7fb12279ffa4651afe
https://github.com/llvm/llvm-project/commit/6b0785390d02193d81d8db7fb12279ffa4651afe
Author: dklochkov-intel <denis.klochkov at intel.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Preprocessor/sycl-macro.cpp
Log Message:
-----------
[SYCL] Change SYCL version according to standard (#114790)
Version of SYCL was changed according to the latest agreement:
The lower 2 digits are not formally specified, but we plan to use these
to identify the month in which we submit the specification for
ratification, which is similar to the C++ macro __cplusplus.
Since the SYCL 2020 specification was submitted for ratification in
December of 2020, the macro's value is now 202012 for SYCL 2020.
see PR for details
https://github.com/KhronosGroup/SYCL-Docs/pull/634
Commit: 1e5c1a342e87961513da84a55cb7a3c3ba22b354
https://github.com/llvm/llvm-project/commit/1e5c1a342e87961513da84a55cb7a3c3ba22b354
Author: Chandler Carruth <chandlerc at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/test/CodeGen/ignore-overflow-pattern.c
Log Message:
-----------
Make the `CHECK` lines here resistent to `chandlerc` (#118736)
Specifically, usernames containing `handle`, such as `chandlerc`, often
end up in paths, including the path of this test file which contains the
word `overflow`. Combined, they create a match for `handle.*overflow` in
the filename on my system (but likely not many others), leading this
test to mysteriously fail for unfortunate usernames like mine. =D
No discussion of the amount of time I spent debugging this please. =[
Commit: abb6919a63c7ef017bb4f9c86057adcdb8129964
https://github.com/llvm/llvm-project/commit/abb6919a63c7ef017bb4f9c86057adcdb8129964
Author: Alex Langford <alangford at apple.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lldb/test/API/functionalities/vtable/TestVTableValue.py
Log Message:
-----------
[lldb] Add additional assertions to TestVTableValue.test_overwrite_vtable (#118719)
If this test fails, you're likely going to see something like "Assertion
Error: A != B" which doesn't really give much explanation for why this
failed.
Instead of ignoring the error, we should assert that it succeeded. This
will lead to a better error message, for example:
`AssertionError: 'memory write failed for 0x102d7c018' is not success`
Commit: cb6a02abe21fb399e86863dd69e865d0ddaa6838
https://github.com/llvm/llvm-project/commit/cb6a02abe21fb399e86863dd69e865d0ddaa6838
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-gang-ast.cpp
A clang/test/SemaOpenACC/combined-construct-worker-ast.cpp
A clang/test/SemaOpenACC/combined-construct-worker-clause.cpp
Log Message:
-----------
[OpenACC] Implement 'worker' clause for combined constructs
This is very similar to 'gang', except with fewer restrictions, and only an
interaction with 'num_workers', plus disallowing 'gang' and 'worker' in
its associated statement. This patch implements this, the same as how
'gang' implemented it.
Commit: 51a5b77b57ab3061f4a7fbcf858d7304cd9ccdce
https://github.com/llvm/llvm-project/commit/51a5b77b57ab3061f4a7fbcf858d7304cd9ccdce
Author: Rashmi Mudduluru <r_mudduluru at apple.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
A clang/lib/StaticAnalyzer/Checkers/WebKit/MemoryUnsafeCastChecker.cpp
A clang/test/Analysis/Checkers/WebKit/memory-unsafe-cast.cpp
A clang/test/Analysis/Checkers/WebKit/memory-unsafe-cast.mm
Log Message:
-----------
[Webkit Checkers] Introduce a Webkit checker for memory unsafe casts (#114606)
This PR introduces a new checker
`[alpha.webkit.MemoryUnsafeCastChecker]` that warns all downcasts from a base type to a derived type.
rdar://137766829
Commit: 0adff0af20c7d9bae8bd8bdf402506c10369ead1
https://github.com/llvm/llvm-project/commit/0adff0af20c7d9bae8bd8bdf402506c10369ead1
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/config/windows/entrypoints.txt
M libc/hdr/CMakeLists.txt
M libc/hdr/time_macros.h
M libc/hdr/types/clockid_t.h
A libc/include/llvm-libc-macros/windows/CMakeLists.txt
A libc/include/llvm-libc-macros/windows/time-macros-ext.h
M libc/src/CMakeLists.txt
M libc/src/__support/time/CMakeLists.txt
A libc/src/__support/time/clock_gettime.h
M libc/src/__support/time/linux/CMakeLists.txt
M libc/src/__support/time/linux/clock_conversion.h
M libc/src/__support/time/linux/clock_gettime.cpp
R libc/src/__support/time/linux/clock_gettime.h
A libc/src/__support/time/windows/CMakeLists.txt
A libc/src/__support/time/windows/clock_gettime.cpp
M libc/src/time/CMakeLists.txt
M libc/src/time/linux/CMakeLists.txt
M libc/src/time/linux/clock.cpp
M libc/src/time/linux/clock_gettime.cpp
M libc/src/time/linux/gettimeofday.cpp
R libc/src/time/linux/time.cpp
M libc/src/time/linux/timespec_get.cpp
A libc/src/time/time.cpp
M libc/test/src/CMakeLists.txt
M libc/test/src/__support/threads/linux/raw_mutex_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/time_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][windows] start time API implementation (#117775)
Add a `clock_gettime` emulation layer and use it to implement the `time`
entrypoint.
For windows, the monotonic clock is emulated using `QPC`.
The realtime clock is emulated using `GetSystemTimePreciseAsFileTime`.
Commit: 2c397fae288fc7df2e01b2a1f461f8488936f569
https://github.com/llvm/llvm-project/commit/2c397fae288fc7df2e01b2a1f461f8488936f569
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn
Log Message:
-----------
[gn build] Port 51a5b77b57ab
Commit: 2214e02378185cec51eedb68c028342c8c19740b
https://github.com/llvm/llvm-project/commit/2214e02378185cec51eedb68c028342c8c19740b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[RISCV] Fix typos in RISCVVLOptimizer.cpp. NFC
Commit: 91354fb1469620cc92c4bf1a11444b2e7f13d54d
https://github.com/llvm/llvm-project/commit/91354fb1469620cc92c4bf1a11444b2e7f13d54d
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExceptionSpec.cpp
A clang/test/SemaCXX/noexcept-destroying-delete.cpp
Log Message:
-----------
[C++20] Destroying delete can cause a type to be noexcept when deleting (#118687)
Given a `noexcept` operator with an operand that calls `delete`, Clang
was not considering whether the selected `operator delete` function was
a destroying delete or not when inspecting whether the deleted object
type has a throwing destructor. Thus, the operator would return `false`
for a type with a potentially throwing destructor even though that
destructor would not be called due to the destroying delete. Clang now
takes the kind of delete operator into consideration.
Fixes #118660
Commit: 66a0a081338d9942997d1620db5c37c9c72ec3f3
https://github.com/llvm/llvm-project/commit/66a0a081338d9942997d1620db5c37c9c72ec3f3
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
Log Message:
-----------
[RISCV] Extract spread(2,4,8) shuffle lowering from interleave(2) (#118822)
This is a prep patch for improving spread(4,8) shuffles. I also think it
improves the readability of the existing code, but the primary
motivation is simply staging work.
Commit: c54616ea481aa8fb48e113f4832b6df8ca8b2a99
https://github.com/llvm/llvm-project/commit/c54616ea481aa8fb48e113f4832b6df8ca8b2a99
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-todo.mlir
R mlir/test/Target/LLVMIR/openmp-wsloop-private.mlir
Log Message:
-----------
Revert "[OpenMP][OMPIRBuilder] Add delayed privatization support for `wsloop` (#118463)" (#118848)
Commit: 8a6f1abe16577b79dd4bdf52082f3c84c5630e86
https://github.com/llvm/llvm-project/commit/8a6f1abe16577b79dd4bdf52082f3c84c5630e86
Author: Mateusz MikuĆa <mati865 at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/Writer.cpp
M lld/test/COFF/dependentflags.test
Log Message:
-----------
[LLD] [COFF] Print a warning when using /dependentloadflag without load config (#117400)
As per request in https://github.com/llvm/llvm-project/pull/113814.
Commit: 0550480fe6a908496255b8f508868a2799a75249
https://github.com/llvm/llvm-project/commit/0550480fe6a908496255b8f508868a2799a75249
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M compiler-rt/test/asan/TestCases/Linux/global-overflow-bfd.cpp
Log Message:
-----------
Disable test broken by #117624 (#118858)
The test fails after #117624
https://lab.llvm.org/buildbot/#/builders/186/builds/4581
Commit: 9fd052a1223c19245664922c68c101a79cb694f0
https://github.com/llvm/llvm-project/commit/9fd052a1223c19245664922c68c101a79cb694f0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/config/windows/entrypoints.txt
M libc/hdr/CMakeLists.txt
M libc/hdr/time_macros.h
M libc/hdr/types/clockid_t.h
R libc/include/llvm-libc-macros/windows/CMakeLists.txt
R libc/include/llvm-libc-macros/windows/time-macros-ext.h
M libc/src/CMakeLists.txt
M libc/src/__support/time/CMakeLists.txt
R libc/src/__support/time/clock_gettime.h
M libc/src/__support/time/linux/CMakeLists.txt
M libc/src/__support/time/linux/clock_conversion.h
M libc/src/__support/time/linux/clock_gettime.cpp
A libc/src/__support/time/linux/clock_gettime.h
R libc/src/__support/time/windows/CMakeLists.txt
R libc/src/__support/time/windows/clock_gettime.cpp
M libc/src/time/CMakeLists.txt
M libc/src/time/linux/CMakeLists.txt
M libc/src/time/linux/clock.cpp
M libc/src/time/linux/clock_gettime.cpp
M libc/src/time/linux/gettimeofday.cpp
A libc/src/time/linux/time.cpp
M libc/src/time/linux/timespec_get.cpp
R libc/src/time/time.cpp
M libc/test/src/CMakeLists.txt
M libc/test/src/__support/threads/linux/raw_mutex_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/time_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Revert "[libc][windows] start time API implementation (#117775)"
This reverts commit 0adff0af20c7d9bae8bd8bdf402506c10369ead1.
Breaks the GPU build
Commit: a821937b6d29f874d2561c6ef073faeed302b1a9
https://github.com/llvm/llvm-project/commit/a821937b6d29f874d2561c6ef073faeed302b1a9
Author: Peng Liu <winner245 at hotmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libcxx/test/std/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp
M libcxx/test/std/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
A libcxx/test/support/increasing_allocator.h
Log Message:
-----------
[libc++][test] Refactor increasing_allocator (#115671)
The increasing_allocator<T> class, originally introduced to test shrink_to_fit()
for std::vector, std::vector<bool>, and std::basic_string, has duplicated
definitions across several test files. Given the potential utility of this
class for capacity-related tests in various sequence containers, this patch
refactors the definition of increasing_allocator<T> into a single, reusable
location.
Commit: 22774bbea1dfa0aeb51a4e6b4332dfaca9f58b1a
https://github.com/llvm/llvm-project/commit/22774bbea1dfa0aeb51a4e6b4332dfaca9f58b1a
Author: Luke Quinn <quic_lquinn at quicinc.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/double-zfa.ll
A llvm/test/CodeGen/RISCV/GlobalISel/float-zfa.ll
A llvm/test/CodeGen/RISCV/GlobalISel/half-zfa.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
Log Message:
-----------
[RISCV][GISel] Add Zfa FP legalization and full tests for 9 insn (#118723)
ceil, floor, round, roundeven, trunc, rint, nearbyint, maximum, minimum.
Commit: e84f79e925bf49600e24e0d11e20c282037e4a2c
https://github.com/llvm/llvm-project/commit/e84f79e925bf49600e24e0d11e20c282037e4a2c
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
Log Message:
-----------
[libc++][docs] Use --show-all in the sample command-line to run benchmarks
It's really not useful at all to run benchmarks without --show-all since
you don't get the benchmark output. And since --show-all is the suggested
default way to run benchmarks, it's not necessary anymore to mention it
right below.
Commit: 6018820c48322ee9db4971efa9b048f16521d753
https://github.com/llvm/llvm-project/commit/6018820c48322ee9db4971efa9b048f16521d753
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
A llvm/test/CodeGen/NVPTX/i1-icmp.ll
Log Message:
-----------
[NVPTX] Fix lowering of i1 SETCC (#115035)
Add DAG legalization support for expanding i1 SETCC nodes using
appropriate logical operations to simulate integer comparisons. Use
these expansions to handle i1 SETCC in NVPTX.
fixes #58428 and #57405
Commit: 2393ab65edda14cc416068ebee0b512228723877
https://github.com/llvm/llvm-project/commit/2393ab65edda14cc416068ebee0b512228723877
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libcxx/include/__memory/compressed_pair.h
A libcxx/test/libcxx/containers/associative/reference_comparator_abi.compile.pass.cpp
Log Message:
-----------
[libc++] Fix unintended ABI break in associative containers with reference comparators (#118685)
While reference comparators are a terrible idea and it's not entirely
clear whether they are supported, fixing the unintended ABI break is
straightforward so we should do it as a first step.
Fixes #118559
Commit: 1d3f9f886288d9be08772ed348c382a479cf857f
https://github.com/llvm/llvm-project/commit/1d3f9f886288d9be08772ed348c382a479cf857f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Log Message:
-----------
[SelectionDAG] Stop storing EVTs in a function scoped static std::set. (#118715)
EVTs potentially contain a Type * that points into memory owned by an
LLVMContext. Storing them in a function scoped static means they may
outlive the LLVMContext they point to.
This std::set is used to unique single element VT lists containing a
single extended EVT. Single element VT list with a simple EVT are
uniqued by a separate cache indexed by the MVT::SimpleValueType enum. VT
lists with more than one element are uniqued by a FoldingSet owned by
the SelectionDAG object.
This patch moves the single element cache into SelectionDAG so that it
will be destroyed when SelectionDAG is destroyed.
Fixes #88233
Commit: 698d83218565d60580d7c71e0fce89a38134a5c6
https://github.com/llvm/llvm-project/commit/698d83218565d60580d7c71e0fce89a38134a5c6
Author: Owen Anderson <resistor at mac.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/DataLayout.h
M llvm/lib/IR/DataLayout.cpp
Log Message:
-----------
DataLayout: Fix latent issues with getMaxIndexSizeInBits (#118740)
Because it was implemented in terms of getMaxIndexSize, it was always
rounding the values up to a multiple of 8. Additionally, it was using
the PointerSpec's BitWidth rather than its IndexBitWidth, which was
self-evidently incorrect.
Since getMaxIndexSize was only used by getMaxIndexSizeInBits, and its
name and function seem niche and somewhat confusing, go ahead and remove
it until a concrete need for it arises.
Commit: 3a7d1b5c1643881704d3f6bdc6b9b3c7e16b09a8
https://github.com/llvm/llvm-project/commit/3a7d1b5c1643881704d3f6bdc6b9b3c7e16b09a8
Author: Tristan Ross <tristan.ross at midstall.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
[libc] Include CheckCXXCompilerFlag when checking compiler features (#118862)
Includes `CheckCXXCompilerFlag` so when building LLVM libc is built
standalone, it actually works and doesn't complain about
`check_cxx_compiler_flag` not being defined.
Commit: dbd920b290697b06b4fa1f5c1b37a0d6b91e1559
https://github.com/llvm/llvm-project/commit/dbd920b290697b06b4fa1f5c1b37a0d6b91e1559
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
Reapply [memprof] Update YAML traits for writer purposes (#118720)
For Frames, we prefer the inline notation for the brevity.
For PortableMemInfoBlock, we go through all member fields and print
out those that are populated.
This iteration works around the unavailability of
ScalarTraits<uintptr_t> on macOS.
Commit: 6f21401ae969eb3cdf66c7c84b52c90ca71c21bd
https://github.com/llvm/llvm-project/commit/6f21401ae969eb3cdf66c7c84b52c90ca71c21bd
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M compiler-rt/test/asan/TestCases/Linux/global-overflow-bfd.cpp
Log Message:
-----------
Remove fixme about BFD and Android
Follow up to #118858
Commit: cfa582e8aaa791b52110791f5e6504121aaf62bf
https://github.com/llvm/llvm-project/commit/cfa582e8aaa791b52110791f5e6504121aaf62bf
Author: Owen Anderson <resistor at mac.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
A llvm/test/Transforms/InstCombine/printf-addrspace.ll
Log Message:
-----------
SimplifyLibCalls: Use default globals address space when building new global strings. (#118729)
Writing a test for this transitively exposed a number of places in
BuildLibCalls where
we were failing to propagate address spaces properly, which are
additionally fixed.
Commit: a9aff440d9dde3a636a4ccff3d5f7eaf25836c34
https://github.com/llvm/llvm-project/commit/a9aff440d9dde3a636a4ccff3d5f7eaf25836c34
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
R libc/docs/complex.rst
R libc/docs/ctype.rst
R libc/docs/date_and_time.rst
R libc/docs/fenv.rst
A libc/docs/headers/complex.rst
A libc/docs/headers/ctype.rst
A libc/docs/headers/fenv.rst
A libc/docs/headers/index.rst
A libc/docs/headers/math/index.rst
A libc/docs/headers/math/log.rst
A libc/docs/headers/math/stdfix.rst
A libc/docs/headers/search.rst
A libc/docs/headers/setjmp.rst
A libc/docs/headers/signal.rst
A libc/docs/headers/stdbit.rst
A libc/docs/headers/stdio.rst
A libc/docs/headers/strings.rst
A libc/docs/headers/threads.rst
A libc/docs/headers/time.rst
M libc/docs/index.rst
R libc/docs/libc_search.rst
R libc/docs/math/index.rst
R libc/docs/math/log.rst
R libc/docs/math/stdfix.rst
R libc/docs/setjmp.rst
R libc/docs/signal.rst
R libc/docs/stdbit.rst
R libc/docs/stdio.rst
R libc/docs/strings.rst
R libc/docs/threads.rst
M libc/utils/docgen/docgen.py
Log Message:
-----------
[libc][docs] reorganize documentation (#118836)
This commit does a few things:
* creates libc/docs/headers/ and moves all user API related headers under it.
* updates paths and docgen
* updates the top level index to put these headers under a new "Implementation
Status" tab.
* rename some of the files to be foo.rst for foo.h (except strings, which is
currently a mix of string.h and stdlib.h)
* update the heading of some files to be in the form foo.h.
Commit: 7329086d4ef7e92103309a2c659bbeabdee9e655
https://github.com/llvm/llvm-project/commit/7329086d4ef7e92103309a2c659bbeabdee9e655
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
A libc/docs/headers/assert.rst
A libc/docs/headers/errno.rst
M libc/docs/headers/index.rst
A libc/docs/headers/locale.rst
A libc/utils/docgen/assert.json
A libc/utils/docgen/errno.json
A libc/utils/docgen/locale.json
Log Message:
-----------
[libc][docs] stub out assert, errno, and locale (#118852)
[libc][docs] stub out assert, errno, and locale
These were the remaining c89 library headers (besides string.h and
stdlib.h; I
will split strings.rst in a follow up commit).
The macro support detection in docgen doesn't quite work for some of
these
headers. Add the stubs for these headers for now, and fix up docgen
later.
See the "NIST publication":
Link: https://www.open-std.org/jtc1/sc22/wg14/www/projects.html
Commit: 426aecb7e9370b4f2f42d6c59652794b4bfd2fea
https://github.com/llvm/llvm-project/commit/426aecb7e9370b4f2f42d6c59652794b4bfd2fea
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M libunwind/src/Unwind-sjlj.c
Log Message:
-----------
[libunwind] Fix a typo in debug print (#118856)
Commit: 68e75eebec4cf5fc7eef7d9525b276c4ff5e1b17
https://github.com/llvm/llvm-project/commit/68e75eebec4cf5fc7eef7d9525b276c4ff5e1b17
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/test/CodeGen/PowerPC/saddo-ssubo.ll
Log Message:
-----------
[PPC] Custom lower ssubo for i64 (#118711)
This is a follow-up patch to improve the codegen for ssubo node for i64
in 64-bit mode by custom lowering.
Commit: 63dfe70b224b562f4e5a4e8367353127684584df
https://github.com/llvm/llvm-project/commit/63dfe70b224b562f4e5a4e8367353127684584df
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] move AST_MATCHER to anonymous namespace in InfiniteLoopCheck (#118820)
Commit: e6cf5d2863b77895ae7183952514bedd9e8dde16
https://github.com/llvm/llvm-project/commit/e6cf5d2863b77895ae7183952514bedd9e8dde16
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/config/windows/entrypoints.txt
M libc/hdr/CMakeLists.txt
M libc/hdr/time_macros.h
M libc/hdr/types/clockid_t.h
A libc/include/llvm-libc-macros/windows/CMakeLists.txt
A libc/include/llvm-libc-macros/windows/time-macros-ext.h
M libc/src/CMakeLists.txt
M libc/src/__support/time/CMakeLists.txt
A libc/src/__support/time/clock_gettime.h
A libc/src/__support/time/gpu/CMakeLists.txt
A libc/src/__support/time/gpu/clock_gettime.cpp
A libc/src/__support/time/gpu/time_utils.cpp
A libc/src/__support/time/gpu/time_utils.h
M libc/src/__support/time/linux/CMakeLists.txt
M libc/src/__support/time/linux/clock_conversion.h
M libc/src/__support/time/linux/clock_gettime.cpp
R libc/src/__support/time/linux/clock_gettime.h
A libc/src/__support/time/windows/CMakeLists.txt
A libc/src/__support/time/windows/clock_gettime.cpp
M libc/src/time/CMakeLists.txt
M libc/src/time/gpu/CMakeLists.txt
M libc/src/time/gpu/clock.cpp
M libc/src/time/gpu/clock_gettime.cpp
M libc/src/time/gpu/nanosleep.cpp
R libc/src/time/gpu/time_utils.cpp
R libc/src/time/gpu/time_utils.h
M libc/src/time/linux/CMakeLists.txt
M libc/src/time/linux/clock.cpp
M libc/src/time/linux/clock_gettime.cpp
M libc/src/time/linux/gettimeofday.cpp
R libc/src/time/linux/time.cpp
M libc/src/time/linux/timespec_get.cpp
A libc/src/time/time.cpp
M libc/test/src/CMakeLists.txt
M libc/test/src/__support/threads/linux/raw_mutex_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/time_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Reapply "[libc][windows] start time API implementation (#117775)" (#118886)
Commit: 2ccf7ed277df28651b94bbee9fccefdf22fb074f
https://github.com/llvm/llvm-project/commit/2ccf7ed277df28651b94bbee9fccefdf22fb074f
Author: Jared Wyles <jared.wyles at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M .gitignore
M bolt/include/bolt/Core/BinaryContext.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/JITLinkLinker.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
M bolt/unittests/Core/MemoryMaps.cpp
M llvm/include/llvm/ExecutionEngine/JITLink/COFF.h
M llvm/include/llvm/ExecutionEngine/JITLink/COFF_x86_64.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_aarch32.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_aarch64.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_i386.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_loongarch.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_ppc64.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_riscv.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_x86_64.h
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO_arm64.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO_x86_64.h
M llvm/include/llvm/ExecutionEngine/JITLink/TableManager.h
M llvm/include/llvm/ExecutionEngine/Orc/ExecutorProcessControl.h
M llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h
M llvm/lib/ExecutionEngine/JITLink/COFF.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/COFF_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/DefineExternalSectionStartAndEndSymbols.h
M llvm/lib/ExecutionEngine/JITLink/ELF.cpp
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_i386.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_ppc64.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
M llvm/lib/ExecutionEngine/JITLink/MachO.cpp
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/PerGraphGOTAndPLTStubsBuilder.h
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/PerfSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp
M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
M llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
M llvm/lib/ExecutionEngine/Orc/LazyObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectFileInterface.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/SectCreate.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
M llvm/unittests/ExecutionEngine/JITLink/AArch32ErrorTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/EHFrameSupportTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/JITLinkTestUtils.cpp
M llvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/MachOLinkGraphTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/MemoryManagerErrorTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/StubsTests.cpp
M llvm/unittests/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/MapperJITLinkMemoryManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/ObjectLinkingLayerTest.cpp
Log Message:
-----------
[JITLink] Switch to SymbolStringPtr for Symbol names (#115796)
Use SymbolStringPtr for Symbol names in LinkGraph. This reduces string interning
on the boundary between JITLink and ORC, and allows pointer comparisons (rather
than string comparisons) between Symbol names. This should improve the
performance and readability of code that bridges between JITLink and ORC (e.g.
ObjectLinkingLayer and ObjectLinkingLayer::Plugins).
To enable use of SymbolStringPtr a std::shared_ptr<SymbolStringPool> is added to
LinkGraph and threaded through to its construction sites in LLVM and Bolt. All
LinkGraphs that are to have symbol names compared by pointer equality must point
to the same SymbolStringPool instance, which in ORC sessions should be the pool
attached to the ExecutionSession.
---------
Co-authored-by: Lang Hames <lhames at gmail.com>
Commit: 2dba66b8536506cb2f41a86a01e74819c40c53a4
https://github.com/llvm/llvm-project/commit/2dba66b8536506cb2f41a86a01e74819c40c53a4
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M libc/docs/index.rst
Log Message:
-----------
[libc] document supported os ranges (#118863)
Commit: 794afe0b860a8d695bae34ea2889871ec89ca774
https://github.com/llvm/llvm-project/commit/794afe0b860a8d695bae34ea2889871ec89ca774
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
Log Message:
-----------
[ORC] Remove an unused variable.
Commit: 37b10af6a0c0f39ac102dda4490f447122b550ef
https://github.com/llvm/llvm-project/commit/37b10af6a0c0f39ac102dda4490f447122b550ef
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/RISCVGISel.td
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb-zbkb.ll
Log Message:
-----------
[RISCV][GISel] Use correct shift width for GIShiftMask32 ComplexOperandMatcher.
We should use 32 instead of XLen. This allows us to remove
'and X, 31' from the shift amount.
Commit: 1a8960490182540da6860c981d4f433f7583c03c
https://github.com/llvm/llvm-project/commit/1a8960490182540da6860c981d4f433f7583c03c
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopc-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopc.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopc-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopc.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
Log Message:
-----------
[AMDGPU][True16][MC] create true16/fake16 mc tests for more vop3 test file (#118859)
This is a NFC.
Create and duplicate test file for true16/fake16 mc test and update with
+real-true16/-real-true16 flags properly.
This is for preparing more test changes for true16 flows
Commit: 244b207d3c2e5a2a72cd4470829ac39c653c406a
https://github.com/llvm/llvm-project/commit/244b207d3c2e5a2a72cd4470829ac39c653c406a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lldb/tools/lldb-dap/package-lock.json
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] Add attach & corefile templates (#118894)
Commit: e33b00a218967c684068b33f23d7cb58b995c55d
https://github.com/llvm/llvm-project/commit/e33b00a218967c684068b33f23d7cb58b995c55d
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/test/MachO/bp-section-orderer.s
Log Message:
-----------
[InstrProf][lld] Extend test to confirm order_file takes precedense over BP (#118889)
When both `-order_file` and `--irpgo-profile-sort=` (soon to be
`-bp-startup-sort=function` in
https://github.com/llvm/llvm-project/pull/118594) are used, we want to
confirm that symbols in the orderfile take precedence.
Commit: 6410edcb67e9dcf0b539005ff7425dec493028da
https://github.com/llvm/llvm-project/commit/6410edcb67e9dcf0b539005ff7425dec493028da
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/CMakeLists.txt
Log Message:
-----------
[examples] Add missing dependence on OrcShared.
Hopefully this will fix the linker error in
https://lab.llvm.org/buildbot/#/builders/80/builds/7248.
Commit: e60a939a51252df594a0a9922cd511e5d9c2bd6e
https://github.com/llvm/llvm-project/commit/e60a939a51252df594a0a9922cd511e5d9c2bd6e
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
Log Message:
-----------
[RISCV] Use zext and shift for spread(4,8) when types allow (#118893)
For a spread with an element type small enough, we can use a zext and
shift to perform the shuffle. For e8, this covers spread(2,4,8), and for
e16 covers spread(2,4). Note that spread(2) is already covered by the
existing interleave logic, and is simply listed for completeness in the
prior description.
Commit: a9b399aeef57224cfe699c2804a01363142f1f68
https://github.com/llvm/llvm-project/commit/a9b399aeef57224cfe699c2804a01363142f1f68
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/test/Dialect/GPU/canonicalize.mlir
Log Message:
-----------
[MLIR][GPU] Fix memref.dim folding with out-of-bound index (#118890)
Fixes #118760
Commit: 2b855dd97092e2178ac5c470a804a17ec440d7e5
https://github.com/llvm/llvm-project/commit/2b855dd97092e2178ac5c470a804a17ec440d7e5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVPostRAExpandPseudoInsts.cpp
Log Message:
-----------
[RISCV] Correct the pass name for RISCVPostRAExpandPseudo.
riscv-expand-pseudolisimm32 -> riscv-post-ra-expand-pseudoa
Commit: 9ccde12f5eeb91152900082a2ae839e2a9702b31
https://github.com/llvm/llvm-project/commit/9ccde12f5eeb91152900082a2ae839e2a9702b31
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/test/AST/ast-dump-cxx2b-deducing-this.cpp
Log Message:
-----------
[clang] Compute accurate begin location for CallExpr with explicit object parameter (#117841)
The explicit object parameter is written before the callee expression,
so the begin location should come from the explicit object parameter.
Fixes https://github.com/llvm/llvm-project/issues/116335
Commit: 8201ae2aa662a1bcba80751f3ef162f228f626f7
https://github.com/llvm/llvm-project/commit/8201ae2aa662a1bcba80751f3ef162f228f626f7
Author: Lang Hames <lhames at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
M llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp
Log Message:
-----------
[ORC] Provide default MemoryAccess in SimpleRemoteEPC, add WritePointers impl.
Make EPCGenericMemoryAccess the default implementation for the MemoryAccess
object in SimpleRemoteEPC, and add support for the WritePointers operation to
OrcTargetProcess (previously this operation was unimplemented and would have
triggered an error if accessed in a remote-JIT setup).
No testcase yet: This functionality requires cross-process JITing to test (or a
much more elaborate unit-test setup). It can be tested once the new top-level
ORC runtime project lands.
Commit: eb49788bd935b2335f73fd2a4124c82e683bd9b0
https://github.com/llvm/llvm-project/commit/eb49788bd935b2335f73fd2a4124c82e683bd9b0
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
[Offload][AMDGPU] Allow COV6 images (#118909)
Commit: d20731ce6bc97e2cc0d6be502ca174c14d563de2
https://github.com/llvm/llvm-project/commit/d20731ce6bc97e2cc0d6be502ca174c14d563de2
Author: abhishek-kaushik22 <abhishek.kaushik at intel.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/Target/X86/X86TileConfig.cpp
Log Message:
-----------
[CGData][GlobalIsel][Legalizer][DAG][MC][AsmParser][X86][AMX] Use `std::move` to avoid copy (#118068)
Commit: 27e458c8cbec27d48ee73623c4b5bbf6bba407cb
https://github.com/llvm/llvm-project/commit/27e458c8cbec27d48ee73623c4b5bbf6bba407cb
Author: Renaud Kauffmann <rkauffmann at nvidia.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M flang/include/flang/Optimizer/Transforms/CUFCommon.h
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/lib/Optimizer/Transforms/CUFCommon.cpp
M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-constructor-2.f90
M flang/test/Fir/CUDA/cuda-global-addr.mlir
M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
Log Message:
-----------
[flang][cuda] Distinguish constant fir.global from globals with a #cuf.cuda<constant> attribute (#118912)
1. In `CufOpConversion` `isDeviceGlobal` was renamed
`isRegisteredGlobal` and moved to the common file. `isRegisteredGlobal`
excludes constant `fir.global` operation from registration. This is to
avoid calls to `_FortranACUFGetDeviceAddress` on globals which do not
have any symbols in the runtime. This was done for
`_FortranACUFRegisterVariable` in #118582, but also needs to be done
here after #118591
2. `CufDeviceGlobal` no longer adds the `#cuf.cuda<constant>` attribute
to the constant global. As discussed in #118582 a module variable with
the #cuf.cuda<constant> attribute is not a compile time constant. Yet,
the compile time constant also needs to be copied into the GPU module.
The candidates for copy to the GPU modules are
- the globals needing regsitrations regardless of their uses in device
code (they can be referred to in host code as well)
- the compile time constant when used in device code
3. The registration of "constant" module device variables (
#cuf.cuda<constant>) can be restored in `CufAddConstructor`
Commit: d88a0c7322a42227e45ebc09b98132490d6a67b5
https://github.com/llvm/llvm-project/commit/d88a0c7322a42227e45ebc09b98132490d6a67b5
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[memprof] Rename Inline to IsInlineFrame in YAML (#118901)
This patch makes the YAML field name match the struct field name.
Commit: b5bd19211118c6d43bc525a4e3fb65d2c750d61e
https://github.com/llvm/llvm-project/commit/b5bd19211118c6d43bc525a4e3fb65d2c750d61e
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/ExternalASTSource.h
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/ExternalASTSource.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/Sema/MultiplexExternalSemaSource.cpp
M clang/lib/Serialization/ASTCommon.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/CMakeLists.txt
A clang/lib/Serialization/TemplateArgumentHasher.cpp
A clang/lib/Serialization/TemplateArgumentHasher.h
M clang/test/Modules/odr_hash.cpp
A clang/test/Modules/recursive-instantiations.cppm
M clang/test/OpenMP/target_parallel_ast_print.cpp
M clang/test/OpenMP/target_teams_ast_print.cpp
M clang/test/OpenMP/task_ast_print.cpp
M clang/test/OpenMP/teams_ast_print.cpp
M clang/unittests/Serialization/CMakeLists.txt
A clang/unittests/Serialization/LoadSpecLazilyTest.cpp
Log Message:
-----------
[Serialization] Support load lazy specialization lazily
Currently all the specializations of a template (including
instantiation, specialization and partial specializations) will be
loaded at once if we want to instantiate another instance for the
template, or find instantiation for the template, or just want to
complete the redecl chain.
This means basically we need to load every specializations for the
template once the template declaration got loaded. This is bad since
when we load a specialization, we need to load all of its template
arguments. Then we have to deserialize a lot of unnecessary
declarations.
For example,
```
// M.cppm
export module M;
export template <class T>
class A {};
export class ShouldNotBeLoaded {};
export class Temp {
A<ShouldNotBeLoaded> AS;
};
// use.cpp
import M;
A<int> a;
```
We should a specialization ` A<ShouldNotBeLoaded>` in `M.cppm` and we
instantiate the template `A` in `use.cpp`. Then we will deserialize
`ShouldNotBeLoaded` surprisingly when compiling `use.cpp`. And this
patch tries to avoid that.
Given that the templates are heavily used in C++, this is a pain point
for the performance.
This patch adds MultiOnDiskHashTable for specializations in the
ASTReader. Then we will only deserialize the specializations with the
same template arguments. We made that by using ODRHash for the template
arguments as the key of the hash table.
To review this patch, I think `ASTReaderDecl::AddLazySpecializations`
may be a good entry point.
The patch was reviewed in
https://github.com/llvm/llvm-project/pull/83237 but that PR is a stacked
PR. But I feel the intention of the stacked PRs get lost during the
review process. So I feel it is better to merge the commits into a
single commit instead of merging them in the PR page. It is better for
us to cherry-pick and revert.
Commit: 548678ef84bad940caf1610287d7a0e3bdfdae61
https://github.com/llvm/llvm-project/commit/548678ef84bad940caf1610287d7a0e3bdfdae61
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Serialization/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/Serialization/BUILD.gn
Log Message:
-----------
[gn build] Port b5bd19211118
Commit: 5e0844a969a10c1d99ce809c69f17383389c48d1
https://github.com/llvm/llvm-project/commit/5e0844a969a10c1d99ce809c69f17383389c48d1
Author: MichaĆ GĂłrny <mgorny at gentoo.org>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[llvm] Pass FFI CMake options through to runtimes (for offload) (#118807)
Pass the FFI-related CMake options through to runtimes, since offload is
building against libffi. This is needed when the system requires custom
`LIBFFI_INCLUDE` to build (e.g. on Gentoo where the headers are
installed to `/usr/lib*/libffi/include`).
Commit: b54ba5361e8e9e16b70ee509cd3f9d2ed539e63b
https://github.com/llvm/llvm-project/commit/b54ba5361e8e9e16b70ee509cd3f9d2ed539e63b
Author: MichaĆ GĂłrny <mgorny at gentoo.org>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
Log Message:
-----------
[offload] Add gfx1012 (Navi 14) to AMDGPU models list (#118857)
Fixes #118824
Commit: 74d29c6393df606e98e7c42b9a97f56f335e3ffb
https://github.com/llvm/llvm-project/commit/74d29c6393df606e98e7c42b9a97f56f335e3ffb
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/docs/tools/dump_format_style.py
Log Message:
-----------
[clang-format] Open plurals.txt in read-only mode in dump_format_style.py
Commit: 398f3b368af9bced530e65c02bb38136d7f69caf
https://github.com/llvm/llvm-project/commit/398f3b368af9bced530e65c02bb38136d7f69caf
Author: Dave Lee <davelee.com at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/utils/lldbDataFormatters.py
Log Message:
-----------
[lldb] Add synthetic formatter for llvm::Expected (#118758)
Adds a synthetic formatter for `llvm::Expected<T>`. The synthetic value
will have a single child, either `value` or `error`.
Commit: f0b09dfd4c84fe8ffbc726da39ee5255e1a22a2f
https://github.com/llvm/llvm-project/commit/f0b09dfd4c84fe8ffbc726da39ee5255e1a22a2f
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/lib/Format/CMakeLists.txt
Log Message:
-----------
[clang-format] Add cmake target clang-format-style-options
This new custom target is for running dump_format_style.py to update
ClangFormatStyleOptions.rst if any of its dependencies changes.
Commit: 8d225f10efe55e281b2967367073f3fdfd39cab1
https://github.com/llvm/llvm-project/commit/8d225f10efe55e281b2967367073f3fdfd39cab1
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/CallGraphSort.cpp
M lld/COFF/CallGraphSort.h
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld-link] Replace error(...) with Err
Commit: 36c294013cbb4ef46dfd652df1ea0bff5d20462d
https://github.com/llvm/llvm-project/commit/36c294013cbb4ef46dfd652df1ea0bff5d20462d
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/DebugTypes.cpp
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld-link] Remove unneeded Twine when using COFFSyncStream
Commit: 94fbe7e3ae7c0ce4e9a7d801e7700457a36f731d
https://github.com/llvm/llvm-project/commit/94fbe7e3ae7c0ce4e9a7d801e7700457a36f731d
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Replace TreeEntry::setOperandsInOrder with VLOperands. (#113880)
To reduce repeated code, TreeEntry::setOperandsInOrder will be replaced
by VLOperands.
Arg_size will be provided to make sure other operands will not be
reorderd when VL[0] is IntrinsicInst (because APO is a boolean value).
In addition, BoUpSLP::reorderInputsAccordingToOpcode will also be
removed since it is simple.
Commit: 9a5946cdba91ce9801643711186dbffddda9f111
https://github.com/llvm/llvm-project/commit/9a5946cdba91ce9801643711186dbffddda9f111
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/docs/tools/dump_format_help.py
Log Message:
-----------
[clang-format] Add --directory option to dump_format_help.py
Commit: 8b844de3c9c70f25bb79787158b8dc5b8fc11293
https://github.com/llvm/llvm-project/commit/8b844de3c9c70f25bb79787158b8dc5b8fc11293
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/DebugTypes.cpp
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
M lld/COFF/MapFile.cpp
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld-link] Replace fatal(...) with Fatal
Commit: eeb55d3af63e10c573d4bb1f0fe69a55eafa52cb
https://github.com/llvm/llvm-project/commit/eeb55d3af63e10c573d4bb1f0fe69a55eafa52cb
Author: vporpo <vporpodas at google.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Update MemDGNode chain upon instr creation (#116896)
The DAG maintains a chain of MemDGNodes that links together all the
nodes that may touch memroy.
Whenever a new instruction gets created we need to make sure that this
chain gets updated. If the new instruction touches memory then its
corresponding MemDGNode should be inserted into the chain.
Commit: fb2cbc00e0b27bc25afd8c831151333a41820bc0
https://github.com/llvm/llvm-project/commit/fb2cbc00e0b27bc25afd8c831151333a41820bc0
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/tools/clang-format/git-clang-format
Log Message:
-----------
[clang-format] Reformat Python script git-clang-format with black
Commit: 983f88c1ec9cee51cf0fb4e6a0f00074a7cf1b60
https://github.com/llvm/llvm-project/commit/983f88c1ec9cee51cf0fb4e6a0f00074a7cf1b60
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/MinGW.cpp
M lld/COFF/MinGW.h
M lld/COFF/PDB.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Symbols.cpp
M lld/COFF/Symbols.h
Log Message:
-----------
[lld-link] Use COFFSyncStream
Add a operator<< overload for Symbol *.
Commit: c7caab2238399346591271a86ef4cc59fe86a7b4
https://github.com/llvm/llvm-project/commit/c7caab2238399346591271a86ef4cc59fe86a7b4
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M lld/COFF/InputFiles.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Writer.cpp
Log Message:
-----------
[lld-link] Simplify some << toString
Commit: f7261e9bbe335a512179624e1419a27e5aa9ce75
https://github.com/llvm/llvm-project/commit/f7261e9bbe335a512179624e1419a27e5aa9ce75
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M llvm/tools/dsymutil/dsymutil.cpp
Log Message:
-----------
[dsymutil] Emit a warning instead of an error when using fat64 header (#118898)
Universal Mach-O files can't have an archicture slice that starts beyond
the 4GB boundary. However, we support generating universal binaries with
a fat64 header, but older tools may not understand this format.
Currently, unless -fat64 is passed, dsymutil will error out when it
encounters a slice that would exceeds the 4GB limit. Now that more tools
(like LLDB and CoreSymbolication) understand the fat64 header format,
this patch changes the default behavior to use the fat64 header and
emits a warning instead. The warning can be silenced by passing the
-fat64 flag. The goal is to eventually remove the warning altogether.
rdar://140998416
Commit: 35619c791d1f5128d16c7a8e099e8856e12ab39c
https://github.com/llvm/llvm-project/commit/35619c791d1f5128d16c7a8e099e8856e12ab39c
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
Log Message:
-----------
[RISCV] Add tune info for mem* expansion (#118439)
So that CPUs can tune these options.
Commit: dca2ed31278c444f839e3e04fde0c21b62451d4a
https://github.com/llvm/llvm-project/commit/dca2ed31278c444f839e3e04fde0c21b62451d4a
Author: WANG Rui <wangrui at loongson.cn>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/test/CodeGen/LoongArch/sextw-removal.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit tests for sign-extension removal with vectors
Commit: e25c556abeb9ae5f82da42cd26b9dae8462a7197
https://github.com/llvm/llvm-project/commit/e25c556abeb9ae5f82da42cd26b9dae8462a7197
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-12-05 (Thu, 05 Dec 2024)
Changed paths:
M clang/tools/clang-format/git-clang-format
Log Message:
-----------
[clang-format][NFC] Reformat git-clang-format with `black -l80`
Commit: da24c02466e4d3201887806e038eb71f45bd08ee
https://github.com/llvm/llvm-project/commit/da24c02466e4d3201887806e038eb71f45bd08ee
Author: Anutosh Bhat <andersonbhat491 at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/Interpreter/Interpreter.cpp
Log Message:
-----------
[clang-repl] Remove redundant shared flag while running clang-repl in browser (#118107)
While running clang-repl in the browser, we would be interested in this
cc1 command
`
"" -cc1 -triple wasm32-unknown-emscripten -emit-obj -disable-free
-clear-ast-before-backend -disable-llvm-verifier -discard-value-names
-main-file-name "<<< inputs >>>" -mrelocation-model static
-mframe-pointer=none -ffp-contract=on -fno-rounding-math
-mconstructor-aliases -target-cpu generic -debugger-tuning=gdb
-fdebug-compilation-dir=/ -v -fcoverage-compilation-dir=/ -resource-dir
/lib/clang/19 -internal-isystem /include/wasm32-emscripten/c++/v1
-internal-isystem /include/c++/v1 -internal-isystem
/lib/clang/19/include -internal-isystem /include/wasm32-emscripten
-internal-isystem /include -std=c++17 -fdeprecated-macro -ferror-limit
19 -fvisibility=default -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf
-fcxx-exceptions -fexceptions -fincremental-extensions -o "<<< inputs
>>>.o" -x c++ "<<< inputs >>>"
`
As can be seen `shared` is anyway overwritten by `static` which is also
what would be provided by default. Hence we can get rid of the shared
flag here.
Commit: f7ff3cde96c4b81b032c58cafee7bf77233f5517
https://github.com/llvm/llvm-project/commit/f7ff3cde96c4b81b032c58cafee7bf77233f5517
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M libcxx/include/__numeric/gcd_lcm.h
M libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
Log Message:
-----------
[libc++] Fix sub-overflow in std::gcd implementation (#117984)
Fix #117249
Commit: edbebda4542976e7b002393cc41783f53d427b3a
https://github.com/llvm/llvm-project/commit/edbebda4542976e7b002393cc41783f53d427b3a
Author: Jakub Chlanda <jakub at codeplay.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[AMDGPU] Assert previous SGPR exists when bundling preloaded args (#118802)
This came up from a downstream static analysis tool.
Commit: 487396864975fe03ce67bef934b0a4544921259f
https://github.com/llvm/llvm-project/commit/487396864975fe03ce67bef934b0a4544921259f
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M libc/benchmarks/CMakeLists.txt
R libc/benchmarks/automemcpy/CMakeLists.txt
R libc/benchmarks/automemcpy/README.md
R libc/benchmarks/automemcpy/include/automemcpy/CodeGen.h
R libc/benchmarks/automemcpy/include/automemcpy/FunctionDescriptor.h
R libc/benchmarks/automemcpy/include/automemcpy/RandomFunctionGenerator.h
R libc/benchmarks/automemcpy/include/automemcpy/ResultAnalyzer.h
R libc/benchmarks/automemcpy/lib/CMakeLists.txt
R libc/benchmarks/automemcpy/lib/CodeGen.cpp
R libc/benchmarks/automemcpy/lib/CodeGenMain.cpp
R libc/benchmarks/automemcpy/lib/RandomFunctionGenerator.cpp
R libc/benchmarks/automemcpy/lib/ResultAnalyzer.cpp
R libc/benchmarks/automemcpy/lib/ResultAnalyzerMain.cpp
R libc/benchmarks/automemcpy/unittests/CMakeLists.txt
R libc/benchmarks/automemcpy/unittests/CodeGenTest.cpp
R libc/benchmarks/automemcpy/unittests/ResultAnalyzerTest.cpp
M libc/docs/dev/source_tree_layout.rst
Log Message:
-----------
[libc] Remove automemcpy folder (#118781)
The build is currently broken and we don't have the resources to keep it
up to date :-/
Commit: efe4bfa623d40f8221f449c3dd38392101a53599
https://github.com/llvm/llvm-project/commit/efe4bfa623d40f8221f449c3dd38392101a53599
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/lib/Sema/SemaDecl.cpp
Log Message:
-----------
[AST] Include clang/Basic/DiagnosticComment.h instead of clang/AST/CommentDiagnostic.h (#117499)
Since:
commit d076608d58d1ec55016eb747a995511e3a3f72aa
Author: Richard Trieu <rtrieu at google.com>
Date: Sat Dec 8 05:05:03 2018 +0000
clang/AST/CommentDiagnostic.h has been forwarding to
clang/Basic/DiagnosticComment.h. This patch includes
clang/Basic/DiagnosticComment.h instead of
clang/AST/CommentDiagnostic.h.
Commit: f893b475004fdea48288f329124817325e659792
https://github.com/llvm/llvm-project/commit/f893b475004fdea48288f329124817325e659792
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/include/clang/Basic/arm_mve.td
M clang/test/CodeGen/arm-mve-intrinsics/vadc.c
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/test/CodeGen/Thumb2/mve-intrinsics/vadc.ll
M llvm/test/CodeGen/Thumb2/mve-vadc-vsbc-spill.ll
Log Message:
-----------
[ARM] Fix instruction selection for MVE vsbciq intrinsic (#118284)
There were two bugs in the implementation of the MVE vsbciq (subtract
with carry across vector, with initial carry value) intrinsics:
* The VSBCI instruction behaves as if the carry-in is always set, but we
were selecting it when the carry-in is clear.
* The vsbciq intrinsics should generate IR with the carry-in set, but
they were leaving it clear.
These two bugs almost cancelled each other out, but resulted in
incorrect code when the vsbcq intrinsics (with a carry-in) were used,
and the carry-in was a compile time constant.
Commit: 2d8e8dd2b83da113dd94f01c67fb8b3e3ce38cc9
https://github.com/llvm/llvm-project/commit/2d8e8dd2b83da113dd94f01c67fb8b3e3ce38cc9
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/test/Driver/arm-cortex-cpus-2.c
M clang/test/Misc/target-invalid-cpu-note/arm.c
M llvm/include/llvm/TargetParser/ARMTargetParser.def
M llvm/lib/Target/ARM/ARMProcessors.td
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/test/CodeGen/ARM/build-attributes.ll
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[ARM] Add Cortex-A510 CPU for AArch32 (#118811)
This core was originally AArch64-only, but the r1p0 revision added
optional support for AArch32 at EL0.
TRM: https://developer.arm.com/documentation/101604/0103
Commit: 055f1a77f664d73c38ddcbaa74b3131e04881c3d
https://github.com/llvm/llvm-project/commit/055f1a77f664d73c38ddcbaa74b3131e04881c3d
Author: bernhardu <bernhardu at mailbox.org>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M compiler-rt/lib/interception/interception_win.cpp
Log Message:
-----------
[win/asan] Avoid warnings in interception_win.cpp. (#118143)
warning: format specifies type 'void *' but the argument has type 'uptr'
(aka 'unsigned long long') [-Wformat] (observed at x86_64, in
AllocateTrampolineRegion)
warning: format specifies type 'char *' but the argument has type
'RVAPtr<char>' [-Wformat] (observed at x86_64, in
InternalGetProcAddress)
Commit: b569ec6de6a0c57d6c4b675df7d7e3e28a9f4904
https://github.com/llvm/llvm-project/commit/b569ec6de6a0c57d6c4b675df7d7e3e28a9f4904
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/test/CodeGen/attr-counted-by.c
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/test/Analysis/LazyCallGraph/blockaddress.ll
M llvm/test/Transforms/SCCP/conditions-iter-order.ll
M llvm/test/Transforms/SCCP/gep-nuw.ll
M llvm/test/Transforms/SCCP/ipsccp-ssa-copy-nested-conds.ll
M llvm/test/Transforms/SCCP/pr45185-range-predinfo.ll
M llvm/test/Transforms/SCCP/widening.ll
Log Message:
-----------
[SCCP] Infer nuw for gep nusw with non-negative offsets (#118819)
If the GEP is nusw/inbounds and has all-non-negative offsets infer nuw
as well.
This doesn't have measurable compile-time impact.
Proof: https://alive2.llvm.org/ce/z/ihztLy
Commit: 489db6538e5c90190cfdc50e497b4916af46dfe1
https://github.com/llvm/llvm-project/commit/489db6538e5c90190cfdc50e497b4916af46dfe1
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/test/CodeGen/SPIRV/debug-info/debug-type-basic.ll
M llvm/test/CodeGen/SPIRV/opencl/vload2.ll
M llvm/test/CodeGen/SPIRV/transcoding/spirv-event-null.ll
Log Message:
-----------
[SPIR-V] Emit Alignment decoration for alloca instructions and improve type inference (#118520)
This PR is to fix the following issues:
* the SPIR-V Backend didn't generate Alignment decoration for alloca
instructions,
* we need to use types from demangled function declarations to specify
types for opaque pointers.
Commit: e9fb0ad21dd3593bf641e4fb0aec6d641cb511f3
https://github.com/llvm/llvm-project/commit/e9fb0ad21dd3593bf641e4fb0aec6d641cb511f3
Author: Dmitri Gribenko <gribozavr at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/bolt/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Port 2ccf7ed277df28651b94bbee9fccefdf22fb074f
Commit: 3eed8479a895253307c6d87a38bb5acf314c6505
https://github.com/llvm/llvm-project/commit/3eed8479a895253307c6d87a38bb5acf314c6505
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingMerge.c
Log Message:
-----------
[profile] Fix bounds checks in profile merging (#118782)
These bounds checks work on the result of the pointer addition -- but
the pointer addition already asserts that no overflow may occur, so the
checks are optimized away after #118472. Avoid this by performing the
addition in a way that permits overflow.
Commit: 72aefbb5d06f3b82ded6fa499c3994f5d03aba57
https://github.com/llvm/llvm-project/commit/72aefbb5d06f3b82ded6fa499c3994f5d03aba57
Author: Lily Wang <94091114+LilyWangLL at users.noreply.github.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M lldb/tools/lldb-dap/ProgressEvent.h
Log Message:
-----------
[lldb] Include `<chrono>` for `system_clock` and `now` (#118059)
I am a member of Microsoft vcpkg, due to there are new changes merged by
microsoft/STL#5105, which revealed a conformance issue in `llvm`. It
must add include `<chrono>` to fix this error.
Compiler error with this STL change:
```
D:\b\llvm\src\org-18.1.6-e754cb1d0b.clean\lldb\tools\lldb-dap\ProgressEvent.h(79): error C2039: 'system_clock': is not a member of 'std::chrono'
D:\b\llvm\src\org-18.1.6-e754cb1d0b.clean\lldb\tools\lldb-dap\ProgressEvent.cpp(134): error C3083: 'system_clock': the symbol to the left of a '::' must be a type
D:\b\llvm\src\org-18.1.6-e754cb1d0b.clean\lldb\tools\lldb-dap\ProgressEvent.cpp(134): error C2039: 'now': is not a member of 'std::chrono'
```
Commit: 6f5bffdfc0476d50a4dbcdba6946893ea3b0e2c8
https://github.com/llvm/llvm-project/commit/6f5bffdfc0476d50a4dbcdba6946893ea3b0e2c8
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/test/mlir-tblgen/op-default-builder.td
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[mlir-tblgen] Relax builder ambiguity check (#118310)
The mlir-tblgen tool prevents the parameter of the build() constructor
for the first default-valued attribute of an operation from having a
default value to avoid ambiguity with the corresponding build()
constructor taking unwrapped value. However it does so even when earlier
wrapped unwrappable attribute would lift the ambiguity. This commit
relax the logic accordingly, which allows to remove a manual constructor
in Arith dialect.
Commit: 3eb7ccec58ae5c7360c6b871952f5f5d7f0a1860
https://github.com/llvm/llvm-project/commit/3eb7ccec58ae5c7360c6b871952f5f5d7f0a1860
Author: Andrzej WarzyĆski <andrzej.warzynski at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/test/Dialect/Linalg/decompose-tensor-pack.mlir
M mlir/test/Dialect/Linalg/decompose-tensor-unpack.mlir
Log Message:
-----------
[mlir][linalg] Add tests for tensor.unpack decomposition (#118786)
This commit adds additional tests and documentation for
`DecomposeOuterUnitDimsUnPackOpPattern` to ensure symmetry with its
counterpart for `tensor.pack`, `DecomposeOuterUnitDimsPackOpPattern`.
The new tests aim to improve implementation, documentation, and test
coverage for tensor.unpack. They cover the following scenarios:
* Static tile sizes: A simple `tensor.unpack` case
(`@simple_unpack_static_tiles`).
* Dynamic tile size: `tensor.unpack` with a single dynamic tile size
(`@simple_unpack_dynamic_tile`).
* Transpose: `tensor.unpack` with dynamic tile size and transpose
(`@simple_unpack_dynamic_tile_transpose`), currently commented out due
to some missing logic (see below)
* Scalable tile size: `tensor.unpack` with a scalable inner tile size
(@simple_unpack_scalable_tile).
Notes:
The test `@simple_unpack_dynamic_tile_transpose` is commented out
because the logic for capturing dynamic sizes for `tensor::EmptyOp` when
some tile sizes are dynamic is incomplete. This missing functionality
will be addressed in a follow-up patch.
Commit: 6f190cabe0a0409aecbf000ee78aa786dfc715f7
https://github.com/llvm/llvm-project/commit/6f190cabe0a0409aecbf000ee78aa786dfc715f7
Author: Dmitri Gribenko <gribozavr at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Port e6cf5d2863b77895ae7183952514bedd9e8dde16
Commit: 91d6e10cca4ea8d50927aba024f33c9076785d3a
https://github.com/llvm/llvm-project/commit/91d6e10cca4ea8d50927aba024f33c9076785d3a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/ConstantInitBuilder.cpp
Log Message:
-----------
[CodeGen] Migrate away from PointerUnion::{is,get} (NFC) (#118600)
Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:
// FIXME: Replace the uses of is(), get() and dyn_cast() with
// isa<T>, cast<T> and the llvm::dyn_cast<T>
I'm not touching PointerUnion::dyn_cast for now because it's a bit
complicated; we could blindly migrate it to dyn_cast_if_present, but
we should probably use dyn_cast when the operand is known to be
non-null.
Commit: 2c7ece2e8cf58d607f870ca9f02302df8aaa75d4
https://github.com/llvm/llvm-project/commit/2c7ece2e8cf58d607f870ca9f02302df8aaa75d4
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/LiveStacks.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveStacks.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RegAllocBasic.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocPBQP.cpp
M llvm/lib/CodeGen/StackSlotColoring.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMarkLastScratchLoad.cpp
M llvm/lib/Target/LoongArch/LoongArchDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[CodeGen][NewPM] Port LiveStacks analysis to NPM (#118778)
Commit: 28bba0d717a43ea3f01689625577197889374965
https://github.com/llvm/llvm-project/commit/28bba0d717a43ea3f01689625577197889374965
Author: Chandler Carruth <chandlerc at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/cmake/modules/CheckCompilerVersion.cmake
M llvm/docs/GettingStarted.rst
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
Bump minimum MSVC version by one dot release to VS 2019 16.8 (#118833)
This is a small change, but unblocks using longer string literals in
LLVM's source code, and hopefully isn't disruptive.
Discussed in an RFC here:
https://discourse.llvm.org/t/rfc-raising-minimum-msvc-version-by-one-dot-release/
Commit: 3d7260b44168cfc8d49e84b884ba0f403d23c1b6
https://github.com/llvm/llvm-project/commit/3d7260b44168cfc8d49e84b884ba0f403d23c1b6
Author: Mateusz MikuĆa <mati865 at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M lld/MinGW/Driver.cpp
M lld/MinGW/Options.td
M lld/test/MinGW/driver.test
Log Message:
-----------
[LLD] [MinGW] Implement --dependent-load-flag option (#113814)
Implement MSVC's `/DEPENDENTLOADFLAG` as `--dependent-load-flag` and
forward it to COFF.
ld.bfd doesn't support it, yet at least, but if they later add support for something similar, hopefully theyâd agree to the same option name.
There is no solid need for it yet, but it's being considered:
https://github.com/msys2/MINGW-packages/pull/22216#issuecomment-2428417546
Commit: 49abcd207fe26ea0fc7170e66f1b0b22f1d853d3
https://github.com/llvm/llvm-project/commit/49abcd207fe26ea0fc7170e66f1b0b22f1d853d3
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/GCMetadata.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/CodeGen/LiveRegMatrix.cpp
M llvm/lib/CodeGen/LiveStacks.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
Log Message:
-----------
[CodeGen][PM] Initialize analyses with isAnalysis=true (#118779)
Analyses should be marked as analyses.
Otherwise they are prone to get ignored by the legacy analysis cache mechanism and get scheduled redundantly.
Commit: 82c93b6f19bf9db75ac6e4100b9f1b4f2a7df67f
https://github.com/llvm/llvm-project/commit/82c93b6f19bf9db75ac6e4100b9f1b4f2a7df67f
Author: Akshay Deodhar <adeodhar at nvidia.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
A llvm/test/Analysis/ScalarEvolution/trip-count-phi-increment.ll
Log Message:
-----------
[SCEV] Simplify SCEVExpr for PHI to SCEV for operand if operands are identical (#115945)
Helps SCEV analyze some special phi nodes, allowing the computation of
loop trip count in cases like the following:
https://godbolt.org/z/xGs1d81TW
Commit: 3dbff90b16b5964b9fa468438ff40985be5c1ade
https://github.com/llvm/llvm-project/commit/3dbff90b16b5964b9fa468438ff40985be5c1ade
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] matchPMADDWD/matchPMADDWD_2 - update to use SDPatternMatch matching. NFCI.
Prep work for #118433
Commit: 1126bef609e7afa77105308406d74d4e459ee0a5
https://github.com/llvm/llvm-project/commit/1126bef609e7afa77105308406d74d4e459ee0a5
Author: James Chesterman <James.Chesterman at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-partial-reduce-wide-add.ll
Log Message:
-----------
[AArch64][SVE] Only generate wide adds when SVE2 or StreamingSVE is available (#118838)
Commit: 2a4c74cc8451f0ba34baaee203afb941a498f6b3
https://github.com/llvm/llvm-project/commit/2a4c74cc8451f0ba34baaee203afb941a498f6b3
Author: David Green <david.green at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Processors.td
A llvm/test/tools/llvm-mca/AArch64/Cortex/X1-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/X2-sve-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/X3-sve-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/X4-sve-instructions.s
Log Message:
-----------
[AArch64] Update the scheduling model for Cortex-X1/2/3/4 (#118826)
These Neoverse-V scheduling models more closely match the Cortex-X
series cpus with 4 vector pipelines, even if they do not match exactly.
Commit: 9a24f2198ec02960c9e9afedace96ba6afa9c5b1
https://github.com/llvm/llvm-project/commit/9a24f2198ec02960c9e9afedace96ba6afa9c5b1
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/FunctionComparator.h
M llvm/lib/Transforms/Utils/FunctionComparator.cpp
A llvm/test/Transforms/MergeFunc/initializes-attr.ll
Log Message:
-----------
[MergeFuncs] Handle ConstantRangeList attributes
Support comparison of ConstantRangeList attributes in
FunctionComparator.
Commit: f081ffe70165dc3a585279a74494497a48a65b15
https://github.com/llvm/llvm-project/commit/f081ffe70165dc3a585279a74494497a48a65b15
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Simplify & clarify bypass handling for IV resume values (NFC)
Split off NFC part refactoring from
https://github.com/llvm/llvm-project/pull/110577. This simplifies and
clarifies induction resume value creation for bypass blocks.
Commit: ce4801d373df1c2ddcc602add133066640c7073d
https://github.com/llvm/llvm-project/commit/ce4801d373df1c2ddcc602add133066640c7073d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/test/CodeGen/X86/vpdpwssd.ll
Log Message:
-----------
[X86] vpdpwssd.ll - add test coverage for #118443
Commit: 9d2351ab9aff3741e3f4e10ab7ebabc77a6079d6
https://github.com/llvm/llvm-project/commit/9d2351ab9aff3741e3f4e10ab7ebabc77a6079d6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vpdpwssd.ll
Log Message:
-----------
[X86] matchPMADDWD - add matching for (add (X, (pmaddwd Y, Z)) reassociation patterns.
Allows us to match pmaddwd accumulation patterns, and folding to vpdpwssd instructions on VNNI targets
Fixes #118433
Commit: 76db47335903cb65d3027c0a77658f488d8ce659
https://github.com/llvm/llvm-project/commit/76db47335903cb65d3027c0a77658f488d8ce659
Author: David Green <david.green at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/bf16-instructions.ll
A llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
A llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
Log Message:
-----------
[AArch64] Add bf16 instruction coverage. NFC
These are the same tests as fp16-instructions.ll, fp16-v4-instructions.ll and
fp16-v8-instruction.ll ported to bf16.
Commit: 99dc3967595c472b6edbe789a1346b0350294567
https://github.com/llvm/llvm-project/commit/99dc3967595c472b6edbe789a1346b0350294567
Author: John Brawn <john.brawn at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/fpcast.ll
M llvm/test/Transforms/InstCombine/fptrunc.ll
Log Message:
-----------
[InstCombine] Make fptrunc combine use intersection of fast math flags (#118808)
These combines involve swapping the fptrunc with its operand, and using
the intersection of fast math flags is the safest option as e.g. if we
have (fptrunc (fneg ninf x)) then (fneg ninf (fptrunc x)) will not be
correct as if x is a not within the range of the destination type the
result of (fptrunc x) will be inf.
Commit: 0678e2058364ec10b94560d27ec7138dfa003287
https://github.com/llvm/llvm-project/commit/0678e2058364ec10b94560d27ec7138dfa003287
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
M llvm/test/Transforms/LoopVectorize/X86/multi-exit-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
M llvm/test/Transforms/LoopVectorize/X86/pr54634.ll
M llvm/test/Transforms/LoopVectorize/X86/pr55096-scalarize-add.ll
M llvm/test/Transforms/LoopVectorize/X86/pr72969.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/branch-weights.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-trunc-induction-steps.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/pr59319-loop-access-info-invalidation.ll
M llvm/test/Transforms/LoopVectorize/pr66616.ll
M llvm/test/Transforms/LoopVectorize/reduction-align.ll
M llvm/test/Transforms/LoopVectorize/reverse_induction.ll
M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
Log Message:
-----------
[VPlan] Update scalar induction resume values in VPlan. (#110577)
Updated ILV.createInductionResumeValues (now createInductionResumeVPValue)
to directly update the VPIRInstructions wrapping the original phis with the
created resume values.
This is the first step towards modeling them completely in VPlan.
Subsequent patches will move creation of the resume values completely
into VPlan.
Depends on https://github.com/llvm/llvm-project/pull/109975.
PR: https://github.com/llvm/llvm-project/pull/110577
Commit: a202a35e79b2885061e744bd551814560c4bef14
https://github.com/llvm/llvm-project/commit/a202a35e79b2885061e744bd551814560c4bef14
Author: Artem Pianykh <artem.pyanykh at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/lib/Transforms/Utils/CloneFunction.cpp
Log Message:
-----------
[NFC][Utils] Remove DebugInfoFinder parameter from CloneBasicBlock (#118620)
Summary:
There was a single usage of CloneBasicBlock with non-default
DebugInfoFinder inside CloneFunctionInto which has been refactored in
more focused.
Test Plan:
ninja check-llvm-unit check-llvm
Commit: 8bc9551d9b01f02a1b720063cee80174c27dac1b
https://github.com/llvm/llvm-project/commit/8bc9551d9b01f02a1b720063cee80174c27dac1b
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/CodeGen/AArch64/aarch64-dup-ext-crash.ll
M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
A llvm/test/CodeGen/AArch64/sink-mul-exts.ll
M llvm/test/CodeGen/AArch64/sinksplat.ll
Log Message:
-----------
[AArch64] Improve operand sinking for mul instructions (#116604)
- Sink splat operands to mul instructions for types where we can use the
lane-indexed variants.
- When sinking operands for [su]mull, also sink the ext instruction.
Commit: 6bb5d6ae23cace42bd108ca14e17e863c73bbb5c
https://github.com/llvm/llvm-project/commit/6bb5d6ae23cace42bd108ca14e17e863c73bbb5c
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
Log Message:
-----------
[NFC] Use a move instead of a copy to optimize performance. (#118699)
This is an issue detected by a static analysis tool,
Commit: 7c523601188922964964f3b763f908ba035b1038
https://github.com/llvm/llvm-project/commit/7c523601188922964964f3b763f908ba035b1038
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/test/MC/ARM/invalid-barrier.s
Log Message:
-----------
[ARM] Error on invalid tokens in barrier insts (#118849)
These operand parser functions for barrier instructions were returning
ParseStatus::Failure for unexpected token kinds, but not outputting an
error message, so these instructions with invalid operands were being
rejected without an error being printed.
Fixes #67949
Commit: 452efb35df641bac80a901c867ddfdd4de6ad2f4
https://github.com/llvm/llvm-project/commit/452efb35df641bac80a901c867ddfdd4de6ad2f4
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
A llvm/test/CodeGen/AArch64/memtag-merge-writeback.mir
Log Message:
-----------
[AArch64] Fix LDR/STR folding causing memtag failures (#118821)
When generating code with sanitize_memtag, we make use of the fact that
the sp+imm forms of many load and store instructions are not
tag-checked, so we can use SP directly instead of needing a register
holding the tagged pointer. However, this isn't true for the writeback
versions of the instructions, so we can't fold ADDs and SUBs into them
in AArch64LoadStoreOptimizer. This would be possible in cases where the
loads/stores only access untagged stack slots, but that information
isn't easily available after frame index elimination.
Commit: 89e919fb0df391da42dbfd48cd8de268335fe672
https://github.com/llvm/llvm-project/commit/89e919fb0df391da42dbfd48cd8de268335fe672
Author: Anutosh Bhat <andersonbhat491 at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Fix warnings while compiling SLPVectorizer.cpp (#118051)
Towards #118048
I was building llvm (clang and lld) for webassembly and came across
these warnings. Not sure if they are seen in our builds too.
```
/Users/anutosh491/work/llvm-project/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:6924:67: warning: comparison of integers of different signs: 'typename iterator_traits<user_iterator_impl<User>>::difference_type' (aka 'long') and 'unsigned int' [-Wsign-compare]
6924 | if (std::distance(LI->user_begin(), LI->user_end()) !=
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
6925 | LI->getNumUses())
| ~~~~~~~~~~~~~~~~
[ 79%] Building CXX object lib/Transforms/Instrumentation/CMakeFiles/LLVMInstrumentation.dir/PGOInstrumentation.cpp.o
/Users/anutosh491/work/llvm-project/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:9754:43: warning: comparison of integers of different signs: 'typename iterator_traits<Value *const *>::difference_type' (aka 'long') and 'unsigned int' [-Wsign-compare]
9754 | count(Slice, Slice.front()) ==
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
9755 | (isa<UndefValue>(Slice.front()) ? VF - 1 : 1)) {
```
This PR tries to address those warnings.
Commit: 6307e4b31efee4b5a396da1df2e0939ab9009f11
https://github.com/llvm/llvm-project/commit/6307e4b31efee4b5a396da1df2e0939ab9009f11
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Revert "[SLP] NFC. Replace TreeEntry::setOperandsInOrder with VLOperands. (#113880)"
This reverts commit 94fbe7e3ae7c0ce4e9a7d801e7700457a36f731d.
Causes a crash when linking mafft in ReleaseLTO-g config.
Commit: 1885886b3f42922ed76812c3b1a1b81f3532bbc9
https://github.com/llvm/llvm-project/commit/1885886b3f42922ed76812c3b1a1b81f3532bbc9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
A llvm/test/CodeGen/X86/pr118934.ll
Log Message:
-----------
[X86] matchIndexRecursively - fix incorrect signed/unsigned constant creation
Fixes #118934
Commit: ae73bc8e94b3174e2b495eee544cf843b6e51899
https://github.com/llvm/llvm-project/commit/ae73bc8e94b3174e2b495eee544cf843b6e51899
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-gep.ll
Log Message:
-----------
Reapply [InstCombine] Support gep nuw in icmp folds (#118472)
The profile runtime test failure this caused has been addressed in:
https://github.com/llvm/llvm-project/pull/118782
-----
Unsigned icmp of gep nuw folds to unsigned icmp of offsets. Unsigned
icmp of gep nusw nuw folds to unsigned samesign icmp of offsets.
Proofs: https://alive2.llvm.org/ce/z/VEwQY8
Commit: 384e69a914558899a35f13349965966de2d635ac
https://github.com/llvm/llvm-project/commit/384e69a914558899a35f13349965966de2d635ac
Author: cmtice <cmtice at google.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M libcxx/include/__memory/allocator_traits.h
M libcxx/include/__type_traits/detected_or.h
Log Message:
-----------
[libc++] Add _LIBCPP_NODEBUG on internal allocator trait aliases (#118835)
Put _LIBCPP_NODEBUG on the new allocator trait aliases introduced in
https://github.com/llvm/llvm-project/pull/115654. This prevents a large
increase in the gdb_index size that was introduced by that PR.
Commit: 952c5156e65d15e0f8692ec55e2874657150259e
https://github.com/llvm/llvm-project/commit/952c5156e65d15e0f8692ec55e2874657150259e
Author: Jefferson Le Quellec <jefferson.lequellec at codeplay.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/test/Driver/openmp-offload.c
Log Message:
-----------
[Driver][OpenMP] Fix OpenMP target-toolchain-option parser (#115375)
## Description
This PR fixes a segmentation fault that occurs when passing options
requiring arguments via `-Xopenmp-target=<triple>`. The issue was that
the function `Driver::getOffloadArchs` did not properly parse the
extracted option, but instead assumed it was valid, leading to a crash
when incomplete arguments were provided.
## Backtrace
```sh
llvm-project/build/bin/clang++ main.cpp -fopenmp=libomp -fopenmp-targets=powerpc64le-ibm-linux-gnu -Xopenmp-target=powerpc64le-ibm-linux-gnu -o
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: llvm-project/build/bin/clang++ main.cpp -fopenmp=libomp -fopenmp-targets=powerpc64le-ibm-linux-gnu -Xopenmp-target=powerpc64le-ibm-linux-gnu -o
1. Compilation construction
2. Building compilation actions
#0 0x0000562fb21c363b llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (llvm-project/build/bin/clang+++0x392f63b)
#1 0x0000562fb21c0e3c SignalHandler(int) Signals.cpp:0:0
#2 0x00007fcbf6c81420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
#3 0x0000562fb1fa5d70 llvm::opt::Option::matches(llvm::opt::OptSpecifier) const (llvm-project/build/bin/clang+++0x3711d70)
#4 0x0000562fb2a78e7d clang::driver::Driver::getOffloadArchs(clang::driver::Compilation&, llvm::opt::DerivedArgList const&, clang::driver::Action::OffloadKind, clang::driver::ToolChain const*, bool) const (llvm-project/build/bin/clang+++0x41e4e7d)
#5 0x0000562fb2a7a9aa clang::driver::Driver::BuildOffloadingActions(clang::driver::Compilation&, llvm::opt::DerivedArgList&, std::pair<clang::driver::types::ID, llvm::opt::Arg const*> const&, clang::driver::Action*) const (.part.1164) Driver.cpp:0:0
#6 0x0000562fb2a7c093 clang::driver::Driver::BuildActions(clang::driver::Compilation&, llvm::opt::DerivedArgList&, llvm::SmallVector<std::pair<clang::driver::types::ID, llvm::opt::Arg const*>, 16u> const&, llvm::SmallVector<clang::driver::Action*, 3u>&) const (llvm-project/build/bin/clang+++0x41e8093)
#7 0x0000562fb2a8395d clang::driver::Driver::BuildCompilation(llvm::ArrayRef<char const*>) (llvm-project/build/bin/clang+++0x41ef95d)
#8 0x0000562faf92684c clang_main(int, char**, llvm::ToolContext const&) (llvm-project/build/bin/clang+++0x109284c)
#9 0x0000562faf826cc6 main (llvm-project/build/bin/clang+++0xf92cc6)
#10 0x00007fcbf6699083 __libc_start_main /build/glibc-LcI20x/glibc-2.31/csu/../csu/libc-start.c:342:3
#11 0x0000562faf923a5e _start (llvm-project/build/bin/clang+++0x108fa5e)
[1] 2628042 segmentation fault (core dumped) main.cpp -fopenmp=libomp -fopenmp-targets=powerpc64le-ibm-linux-gnu -o
```
Commit: 37797d3e802f9e740b05556cdaa3bb1f6cdef5e0
https://github.com/llvm/llvm-project/commit/37797d3e802f9e740b05556cdaa3bb1f6cdef5e0
Author: Peng Liu <winner245 at hotmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M libcxx/test/std/containers/sequences/vector/common.h
M libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
Log Message:
-----------
[libc++][test] Fix and refactor exception tests for std::vector constructors (#117662)
The existing exceptions tests for `vector<T>` have several issues: some
tests did not throw exceptions at all, making them not useful for
exception-safety testing, and some tests did not throw exceptions at the
intended points, failing to serve their expected purpose. This PR fixes
those tests for vector's constructors. Morever, this PR extracted common
classes and utilities into a separate header file, and renamed those
classes using more descriptive names.
Commit: 2f4eac62879f9ccf6fda53e4e083e8eed46a9119
https://github.com/llvm/llvm-project/commit/2f4eac62879f9ccf6fda53e4e083e8eed46a9119
Author: Ties Stuij <ties.stuij at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.h
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/frame-pointer-elim.c
Log Message:
-----------
[clang][ARM] disable frame pointers by default for bare metal ARM targets (#117140)
because:
- This brings Clang in line with GCC for which this is the default for ARM
- It frees up a register, so performance increase, especially on Thumb/6-M
- It will decrease code size
Commit: 92376c3ff5453cb954a614d368fa3d52d6d0fa99
https://github.com/llvm/llvm-project/commit/92376c3ff5453cb954a614d368fa3d52d6d0fa99
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
M offload/src/interface.cpp
M offload/src/omptarget.cpp
M offload/test/api/omp_env_vars.c
M offload/test/offloading/info.c
M offload/test/offloading/ompx_bare.c
A offload/test/offloading/ompx_bare_multi_dim.cpp
M offload/test/offloading/small_trip_count.c
M offload/test/offloading/small_trip_count_thread_limit.cpp
Log Message:
-----------
[Offload][OMPX] Add the runtime support for multi-dim grid and block (#118042)
Commit: 1801fb4bd358cd6be0d085f9b74aacbeea951a17
https://github.com/llvm/llvm-project/commit/1801fb4bd358cd6be0d085f9b74aacbeea951a17
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/test/Dialect/Arith/canonicalize.mlir
Log Message:
-----------
[MLIR] Fixes arith.sub folder crash on dynamically shaped tensors (#118908)
We can't create a constant for a value with dynamic shape.
Fixes #118772
Commit: c91ba04328e1ded6f284469a7828d181324d4e30
https://github.com/llvm/llvm-project/commit/c91ba04328e1ded6f284469a7828d181324d4e30
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M flang/include/flang/Lower/Allocatable.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/MutableBox.h
M flang/include/flang/Optimizer/CodeGen/DescriptorModel.h
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/common.h
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/include/flang/Runtime/CUDA/memory.h
A flang/include/flang/Runtime/allocator-registry-consts.h
M flang/include/flang/Runtime/allocator-registry.h
A flang/include/flang/Runtime/array-constructor-consts.h
M flang/include/flang/Runtime/array-constructor.h
A flang/include/flang/Runtime/descriptor-consts.h
M flang/include/flang/Runtime/descriptor.h
A flang/include/flang/Runtime/io-api-consts.h
M flang/include/flang/Runtime/io-api.h
A flang/include/flang/Runtime/iostat-consts.h
M flang/include/flang/Runtime/iostat.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/ArrayConstructor.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Semantics/compute-offsets.cpp
M flang/runtime/array-constructor.cpp
M flang/runtime/environment-default-list.h
M flang/runtime/internal-unit.cpp
M flang/test/Lower/HLFIR/array-ctor-as-runtime-temp.f90
M flang/test/Lower/HLFIR/array-ctor-character.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
M flang/test/Lower/HLFIR/structure-constructor.f90
M flang/unittests/Optimizer/Builder/Runtime/AllocatableTest.cpp
M flang/unittests/Runtime/ArrayConstructor.cpp
M flang/unittests/Runtime/ExternalIOTest.cpp
M flang/unittests/Runtime/ListInputTest.cpp
M flang/unittests/Runtime/LogicalFormatTest.cpp
M flang/unittests/Runtime/Namelist.cpp
M flang/unittests/Runtime/NumericalFormatTest.cpp
M flang/unittests/Runtime/RuntimeCrashTest.cpp
Log Message:
-----------
[Flang][NFC] Split runtime headers in preparation for cross-compilation. (#112188)
Split some headers into headers for public and private declarations in
preparation for #110217. Moving the runtime-private headers in
runtime-private include directory will occur in #110298.
* Do not use `sizeof(Descriptor)` in the compiler. The size of the
descriptor is target-dependent while `sizeof(Descriptor)` is the size of
the Descriptor for the host platform which might be too small when
cross-compiling to a different platform. Another problem is that the
emitted assembly ((cross-)compiling to the same target) is not identical
between Flang's running on different systems. Moving the declaration of
`class Descriptor` out of the included header will also reduce the
amount of #included sources.
* Do not use `sizeof(ArrayConstructorVector)` and
`alignof(ArrayConstructorVector)` in the compiler. Same reason as with
`Descriptor`.
* Compute the descriptor's extra flags without instantiating a
Descriptor. `Fortran::runtime::Descriptor` is defined in the runtime
source, but not the compiler source.
* Move `InquiryKeywordHashDecode` into runtime-private header. The
function is defined in the runtime sources and trying to call it in the
compiler would lead to a link-error.
* Move allocator-kind magic numbers into common header. They are the
only declarations out of `allocator-registry.h` in the compiler as well.
This does not make Flang cross-compile ready yet, the main goal is to
avoid transitive header dependencies from Flang to clang-rt. There are
more assumptions that host platform is the same as the target platform.
Commit: d74214cc8c03159e5d1f1168a09368cf3b23fd5f
https://github.com/llvm/llvm-project/commit/d74214cc8c03159e5d1f1168a09368cf3b23fd5f
Author: kadir çetinkaya <kadircet at google.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
Log Message:
-----------
[clang][NFC] Change suppression mapping interfaces to use SourceLocation (#118960)
This way we can delay getting a presumed location even further, only
performing it for diagnostics that are mapped.
Commit: 2f9cd43a736008bdecdd920f84c702209ddbd20f
https://github.com/llvm/llvm-project/commit/2f9cd43a736008bdecdd920f84c702209ddbd20f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/BitcastBuffer.cpp
M clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/test/AST/ByteCode/builtin-bit-cast-bitfields.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Check primitive bit casts for indeterminate bits (#118954)
Record bits ranges of initialized bits and check them in
allInitialized().
Commit: 1bdb0a408f1e2e9f6d5f43b23b4f87f87b3950ab
https://github.com/llvm/llvm-project/commit/1bdb0a408f1e2e9f6d5f43b23b4f87f87b3950ab
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
A libcxx/Maintainers.md
M llvm/Maintainers.md
Log Message:
-----------
[libcxx] Add Maintainers.md file
Commit: a43b2e13f9cc69ec7077ea9c74a972e178a2d8f7
https://github.com/llvm/llvm-project/commit/a43b2e13f9cc69ec7077ea9c74a972e178a2d8f7
Author: David Olsen <dolsen at nvidia.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIRTypes.h
A clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenTypes.cpp
A clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
A clang/test/CIR/global-var-simple.cpp
Log Message:
-----------
[CIR] Integral types; simple global variables (#118743)
Add integral types to ClangIR. These are the first ClangIR types, so the
change includes some infrastructure for managing ClangIR types.
So that the integral types can be used somewhere, generate ClangIR for
global variables using the new `cir.global` op. As with the current
support for functions, global variables are just a stub at the moment.
The only properties that global variables have are a name and a type.
Add a new ClangIR code gen test global-var-simple.cpp, which defines
global variables with most of the integral types.
(Part of upstreaming the ClangIR incubator project into LLVM.)
Commit: bb3eb0ca0cf0fe454f6845d429190cb30e6fa0f5
https://github.com/llvm/llvm-project/commit/bb3eb0ca0cf0fe454f6845d429190cb30e6fa0f5
Author: VladiKrapp-Arm <vladi.krapp at arm.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
A llvm/test/Transforms/LoopUnroll/ARM/lob-unroll.ll
Log Message:
-----------
[ARM] Test unroll behaviour on machines with low overhead branching (#118692)
Add test for existing loop unroll behaviour.
Current behaviour is the single loop with fmul gets runtime unrolled by
count of 4, with the loop remainder unrolled as the 3 for.body9.us.prol
sections. This is quite a lot of compare and branch, negating the
benefits of the low overhead loop mechanism.
Commit: 5fa59edfa73a69ab146d7b9cc115de5770d11dca
https://github.com/llvm/llvm-project/commit/5fa59edfa73a69ab146d7b9cc115de5770d11dca
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
A llvm/test/Transforms/ConstraintElimination/trunc.ll
Log Message:
-----------
[ConstraintElim] Add support for `trunc nsw/nuw` (#118745)
Proof for `trunc nsw nneg X -> trunc nuw X`:
https://alive2.llvm.org/ce/z/ooP6Mt
Commit: c74e2232f226b95d1cf73b9835ec1691a2022010
https://github.com/llvm/llvm-project/commit/c74e2232f226b95d1cf73b9835ec1691a2022010
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/test/Transforms/InstCombine/AMDGPU/lane-index-simplify-demanded-bits.ll
Log Message:
-----------
AMDGPU: Simplify demanded bits on readlane/writeline index arguments (#117963)
The main goal is to fold away wave64 code when compiled for wave32.
If we have out of bounds indexing, these will now clamp down to
a low bit which may CSE with the operations on the low half of the
wave.
Commit: 3f3bcac53ee492fd1c020be3690e87f5b0b8a41f
https://github.com/llvm/llvm-project/commit/3f3bcac53ee492fd1c020be3690e87f5b0b8a41f
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
A llvm/test/MC/AMDGPU/gfx11_asm_vinterp.s
A llvm/test/MC/AMDGPU/gfx11_asm_vinterp_alias.s
A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
Log Message:
-----------
[AMDGPU] New alias v_interp_p2_new_f32 (#118968)
This is for compatibility with SP3. Also add basic testing for the new
GFX11 VINTERP encoding.
Commit: 807726fce4b44bffb1e6e853aae51ca74da3589c
https://github.com/llvm/llvm-project/commit/807726fce4b44bffb1e6e853aae51ca74da3589c
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
Log Message:
-----------
[AMDGPU] New aliases v_add3_nc_u32 and v_xor_add_u32 (#118970)
This is for compatibility with SP3.
Commit: 33f4f3972531badc1cece78d3ed5eaf969ff4709
https://github.com/llvm/llvm-project/commit/33f4f3972531badc1cece78d3ed5eaf969ff4709
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOPCInstructions.td
A llvm/test/MC/AMDGPU/gfx11_asm_vopc_alias.s
A llvm/test/MC/AMDGPU/gfx11_asm_vopcx_alias.s
Log Message:
-----------
[AMDGPU] New GFX11 v_cmp_tru_* aliases for integer comparisons (#118976)
This is for compatibility with SP3. It only affects GFX11 because the
v_cmp_t_* instructions were removed in GFX12.
Commit: e68a3e4d0dd349a34c02471438d2e97c2b29e846
https://github.com/llvm/llvm-project/commit/e68a3e4d0dd349a34c02471438d2e97c2b29e846
Author: Ping Charoenwet <wachiraph.c at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M lldb/source/Target/StackFrame.cpp
Log Message:
-----------
[lldb] Fix typos in `StackFrame.cpp` (#118991)
Commit: d6ec7c82f383ae4268f350f4d2e267af45fae8c0
https://github.com/llvm/llvm-project/commit/d6ec7c82f383ae4268f350f4d2e267af45fae8c0
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M flang/runtime/CUDA/descriptor.cpp
Log Message:
-----------
[flang][CUF] fix missing header after #112188 (#118993)
Otherwise, builds with `-DFLANG_CUF_RUNTIME` hits:
```
runtime/CUDA/descriptor.cpp:44:24: error: invalid use of incomplete type 'const class Fortran::runtime::Descriptor'
44 | std::size_t count{src->SizeInBytes()};
```
Commit: 140680c5c8560f03b7a4b3f7db5a7f3c158b938a
https://github.com/llvm/llvm-project/commit/140680c5c8560f03b7a4b3f7db5a7f3c158b938a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vpdpwssd.ll
Log Message:
-----------
[X86] Add peephole for (add (concat_vectors vpmaddwd, vpmaddwd)) -> vpdpwssd on VNNI targets
Cleanup for #118433
Commit: 6bc3c9ee6bfbace7275dedfddef1cb8f177aa491
https://github.com/llvm/llvm-project/commit/6bc3c9ee6bfbace7275dedfddef1cb8f177aa491
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
Log Message:
-----------
[X86] combineX86ShuffleChain - always create VPERMV3 nodes if started from a VPERMV3 node
If the root shuffle node was a VPERMV3 node, then we can always replace it with a new VPERMV3 node - it doesn't matter if other variable shuffles in the chain had multiple uses.
Commit: 9ad22cf0ee9eb686ea9fd76fd9cc41f4c006ccbc
https://github.com/llvm/llvm-project/commit/9ad22cf0ee9eb686ea9fd76fd9cc41f4c006ccbc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
Log Message:
-----------
[X86] lowerV32I16Shuffle - attempt to fold unary shuffle to lane permute + repeated mask
Fixes #79799
Commit: 4f7f71b7bccdc38f37b82981e8fa9ceb536a7016
https://github.com/llvm/llvm-project/commit/4f7f71b7bccdc38f37b82981e8fa9ceb536a7016
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
A llvm/test/Transforms/LoopVectorize/interleave-with-i65-induction.ll
Log Message:
-----------
[VPlan] Compare APInt instead of getSExtValue to fix crash in unroll.
getSExtValue assumes the result fits in 64 bits, but this may not be the
case for indcutions with wider types. Instead, directly perform the
compare on the APInt for the ConstantInt.
Fixes https://github.com/llvm/llvm-project/issues/118850.
Commit: a46ee733d244333785c0896ce399341fe30240b0
https://github.com/llvm/llvm-project/commit/a46ee733d244333785c0896ce399341fe30240b0
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
Log Message:
-----------
[lldb] Fix off by one in array index check in Objective C runtime plugin (#118995)
Reported in #116944 / https://pvs-studio.com/en/blog/posts/cpp/1188/.
Commit: 1091fad31a83d5ab87eb6fa11fe3bdb3f0d152ea
https://github.com/llvm/llvm-project/commit/1091fad31a83d5ab87eb6fa11fe3bdb3f0d152ea
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Fix stack-use-after-scope in VPInstruction::generate (NFC).
Fix stack-use-after-scope introduced in 0678e2058364ec by pulling out
the vector to a dedicated variable.
Should fix ASan/MSan failures, including
https://lab.llvm.org/buildbot/#/builders/169/builds/6111.
Commit: f09b16e2671cbcdf7cb7dc7ed705db092a9deda1
https://github.com/llvm/llvm-project/commit/f09b16e2671cbcdf7cb7dc7ed705db092a9deda1
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
M llvm/test/Transforms/LoopVectorize/X86/multi-exit-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
M llvm/test/Transforms/LoopVectorize/X86/pr54634.ll
M llvm/test/Transforms/LoopVectorize/X86/pr55096-scalarize-add.ll
M llvm/test/Transforms/LoopVectorize/X86/pr72969.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/branch-weights.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-trunc-induction-steps.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/pr59319-loop-access-info-invalidation.ll
M llvm/test/Transforms/LoopVectorize/pr66616.ll
M llvm/test/Transforms/LoopVectorize/reduction-align.ll
M llvm/test/Transforms/LoopVectorize/reverse_induction.ll
M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
Log Message:
-----------
Revert "[VPlan] Update scalar induction resume values in VPlan. (#110577)"
This reverts commit 0678e2058364ec10b94560d27ec7138dfa003287.
This reverts commit 1091fad31a83d5ab87eb6fa11fe3bdb3f0d152ea.
Causes crashes in llvm-test-suite when using stage 2 clang.
Commit: 009b5e8e5915910d172f6660ceb69784c18e7ac7
https://github.com/llvm/llvm-project/commit/009b5e8e5915910d172f6660ceb69784c18e7ac7
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
A clang/test/SemaOpenACC/combined-construct-vector-ast.cpp
A clang/test/SemaOpenACC/combined-construct-vector-clause.cpp
M clang/test/SemaOpenACC/loop-construct-vector-clause.cpp
Log Message:
-----------
[OpenACC] 'vector' clause implementation for combined constructs
Similar to 'worker', the 'vector' clause has some rules that needed to
be applied on its argument legality that for combined constructs need to
look at the current construct, not the 'effective' parent construct.
Additionally, it has some interaction with `vector_length` that needed
to be encoded as well. This patch implements it.
Commit: dff47d944dc626eb2d1b846710a18cad6cc1fb22
https://github.com/llvm/llvm-project/commit/dff47d944dc626eb2d1b846710a18cad6cc1fb22
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
Log Message:
-----------
[RISCV] Add coverage for deinterleave with only subvector used
Commit: d42ab5d0f02bd7ac6fa50c7e393ba5848160b327
https://github.com/llvm/llvm-project/commit/d42ab5d0f02bd7ac6fa50c7e393ba5848160b327
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update-remat.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/SystemZ/regcoal-undef-lane-4-rm-cp-commuting-def.mir
M llvm/test/CodeGen/SystemZ/regcoal_undefsrc.mir
Log Message:
-----------
SystemZ: Regenerate baseline checks for some coalescer tests (#118322)
These were missing -NEXT checks and also had some dead checks.
Also switch a test to actually check the output.
Commit: 2e33ed9ecc52fcec27eac2efb2615d1efcf6fd32
https://github.com/llvm/llvm-project/commit/2e33ed9ecc52fcec27eac2efb2615d1efcf6fd32
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M compiler-rt/include/sanitizer/memprof_interface.h
M compiler-rt/lib/memprof/memprof_flags.cpp
M compiler-rt/lib/memprof/memprof_flags.h
M compiler-rt/lib/memprof/memprof_interface_internal.h
M compiler-rt/lib/memprof/memprof_rtl.cpp
M compiler-rt/lib/memprof/weak_symbols.txt
M compiler-rt/test/memprof/TestCases/default_options.cpp
A compiler-rt/test/memprof/TestCases/set_options.cpp
M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
A llvm/test/Instrumentation/HeapProfiler/memprof-options.ll
Log Message:
-----------
[memprof] Use -memprof-runtime-default-options to set options during compile time (#118874)
Add the `__memprof_default_options_str` variable, initialized via the
`-memprof-runtime-default-options` LLVM flag, to hold the default options string
for memprof. This allows us to set these options during compile time in
the clang invocation.
Also update the docs to describe the various ways to set these options.
Commit: b9aa155d26935c058449f4ac116201de000fd7bf
https://github.com/llvm/llvm-project/commit/b9aa155d26935c058449f4ac116201de000fd7bf
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/test/Analysis/CostModel/X86/shuffle-splat-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-splat-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-splat-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-splat.ll
Log Message:
-----------
[TTI][X86]Fix detection of the shuffles from the second shuffle operand only
If the shuffle mask uses only indices from the second shuffle operand,
processShuffleMasks function misses it currently, which prevents correct
cost estimation in this corner case. To fix this, need to raise the
limit to 2 * VF rather than just VF and adjust processing
correspondingly. Will allow future improvements for 2 sources
permutations.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/118972
Commit: bded8890149e55b9abc9c32cb4a9c883c3daad91
https://github.com/llvm/llvm-project/commit/bded8890149e55b9abc9c32cb4a9c883c3daad91
Author: Benjamin Maxwell <macdue at dueutil.tech>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp
Log Message:
-----------
[clang][AArch64] Fix C++11 style initialization of typedef'd vectors (#118956)
Previously, this hit an `llvm_unreachable()` assertion as the type of
`vec_t` did not exactly match `__SVInt8_t`, as it was wrapped in a
typedef.
Comparing the canonical types instead allows the types to match
correctly and avoids the crash.
Fixes #107609
Commit: 71b17b0167cc046d3a3f8f8483e551ccb5ee15e2
https://github.com/llvm/llvm-project/commit/71b17b0167cc046d3a3f8f8483e551ccb5ee15e2
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
A .ci/metrics/Dockerfile
A .ci/metrics/metrics.py
A .ci/metrics/requirements.lock.txt
A .ci/metrics/requirements.txt
M .github/CODEOWNERS
A .github/workflows/build-metrics-container.yml
M .github/workflows/docs.yml
M .github/workflows/libcxx-restart-preempted-jobs.yaml
M .gitignore
R bolt/CODE_OWNERS.TXT
A bolt/Maintainers.txt
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Passes/VeneerElimination.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/JITLinkLinker.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/AArch64/veneer-lld-abs.s
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/CMakeLists.txt
M bolt/unittests/Core/MCPlusBuilder.cpp
A bolt/unittests/Core/MemoryMaps.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.h
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.h
M clang-tools-extra/clangd/TUScheduler.cpp
M clang-tools-extra/clangd/TUScheduler.h
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/XRefs.h
M clang-tools-extra/clangd/benchmarks/IndexBenchmark.cpp
M clang-tools-extra/clangd/index/Background.cpp
M clang-tools-extra/clangd/index/Background.h
M clang-tools-extra/clangd/index/BackgroundRebuild.cpp
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/Index.cpp
M clang-tools-extra/clangd/index/Index.h
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/MemIndex.h
M clang-tools-extra/clangd/index/Merge.cpp
M clang-tools-extra/clangd/index/Merge.h
M clang-tools-extra/clangd/index/ProjectAware.cpp
M clang-tools-extra/clangd/index/Ref.h
M clang-tools-extra/clangd/index/Serialization.cpp
M clang-tools-extra/clangd/index/Serialization.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/SymbolCollector.h
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/dex/Dex.h
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Client.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/Service.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.h
M clang-tools-extra/clangd/index/remote/server/Server.cpp
M clang-tools-extra/clangd/support/DirectiveTree.cpp
M clang-tools-extra/clangd/test/index-serialization/Inputs/sample.idx
M clang-tools-extra/clangd/test/type-hierarchy-ext.test
M clang-tools-extra/clangd/test/type-hierarchy.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/DexTests.cpp
M clang-tools-extra/clangd/unittests/FileIndexTests.cpp
M clang-tools-extra/clangd/unittests/IndexTests.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/TestWorkspace.cpp
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/branch-clone.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/redundant-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/use-internal-linkage.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
M clang-tools-extra/modularize/ModuleAssistant.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/alpha-core-identicalexpr.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/return-const-ref-from-parameter.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-func.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-module.cpp
M clang/cmake/caches/CrossWinToARMLinux.cmake
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/cmake/caches/Fuchsia.cmake
M clang/docs/ClangFormat.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/LibASTMatchersReference.html
M clang/docs/ReleaseNotes.rst
M clang/docs/analyzer/checkers.rst
M clang/docs/tools/dump_ast_matchers.py
M clang/docs/tools/dump_format_help.py
M clang/docs/tools/dump_format_style.py
M clang/include/clang/AST/AttrIterator.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/ExternalASTSource.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/Type.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsARM.def
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Basic/arm_mve.td
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIRTypes.h
A clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
A clang/lib/AST/ByteCode/BitcastBuffer.cpp
A clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/Boolean.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Record.h
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/CXXInheritance.cpp
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ExternalASTSource.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/Type.cpp
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/lib/ASTMatchers/Dynamic/Registry.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenTypes.cpp
A clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGLoopInfo.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ConstantInitBuilder.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Arch/ARM.h
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Format/CMakeLists.txt
M clang/lib/Format/Format.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/intrin.h
M clang/lib/Headers/intrin0.h
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Lex/Lexer.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/MultiplexExternalSemaSource.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/CMakeLists.txt
A clang/lib/Serialization/TemplateArgumentHasher.cpp
A clang/lib/Serialization/TemplateArgumentHasher.h
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
R clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/WebKit/MemoryUnsafeCastChecker.cpp
M clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
M clang/lib/StaticAnalyzer/Core/SVals.cpp
A clang/test/AST/ByteCode/altivec.c
A clang/test/AST/ByteCode/amdgpu-nullptr.cl
A clang/test/AST/ByteCode/builtin-bit-cast-bitfields.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/AST/ByteCode/vectors.cpp
A clang/test/AST/HLSL/ArrayOutArgExpr.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/AST/ast-dump-cxx2b-deducing-this.cpp
M clang/test/AST/ast-print-openacc-combined-construct.cpp
M clang/test/AST/attr-lifetime-capture-by.cpp
A clang/test/Analysis/Checkers/WebKit/memory-unsafe-cast.cpp
A clang/test/Analysis/Checkers/WebKit/memory-unsafe-cast.mm
R clang/test/Analysis/identical-expressions.cpp
M clang/test/Analysis/initializer.cpp
M clang/test/Analysis/reference.cpp
A clang/test/CIR/global-var-simple.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg722.cpp
M clang/test/CXX/temp/temp.deduct.guide/p3.cpp
M clang/test/CodeGen/AArch64/ls64-inline-asm.c
M clang/test/CodeGen/AArch64/pure-scalable-args.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_ld1_vnum.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_st1_vnum.c
M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.cpp
M clang/test/CodeGen/AArch64/sve-vls-arith-ops.c
M clang/test/CodeGen/AArch64/sve-vls-bitwise-ops.c
M clang/test/CodeGen/AArch64/sve-vls-compare-ops.c
M clang/test/CodeGen/AArch64/sve-vls-shift-ops.c
M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-codegen.c
M clang/test/CodeGen/RISCV/rvv-vls-arith-ops.c
M clang/test/CodeGen/RISCV/rvv-vls-bitwise-ops.c
M clang/test/CodeGen/RISCV/rvv-vls-compare-ops.c
M clang/test/CodeGen/RISCV/rvv-vls-shift-ops.c
M clang/test/CodeGen/SystemZ/zos-mixed-ptr-sizes.c
M clang/test/CodeGen/X86/cx-complex-range.c
M clang/test/CodeGen/alias.cpp
M clang/test/CodeGen/arm-mve-intrinsics/vadc.c
M clang/test/CodeGen/arm64-microsoft-intrinsics.c
M clang/test/CodeGen/arm64_32-vaarg.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-codegen.c
M clang/test/CodeGen/attr-counted-by-pr110385.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/attr-target-x86.c
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/CodeGen/cx-complex-range.c
M clang/test/CodeGen/ignore-overflow-pattern.c
M clang/test/CodeGen/math-libcalls-tbaa.c
M clang/test/CodeGen/matrix-type-operators-fast-math.c
M clang/test/CodeGen/ms-intrinsics.c
M clang/test/CodeGen/nofpclass.c
M clang/test/CodeGen/ptrauth-function-attributes.c
M clang/test/CodeGen/tbaa-pointers.c
M clang/test/CodeGen/tbaa-reference.cpp
M clang/test/CodeGen/union-tbaa1.c
M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
A clang/test/CodeGenCXX/aarch64-mangle-sme-atts.cpp
M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp
M clang/test/CodeGenCXX/auto-var-init.cpp
M clang/test/CodeGenCXX/microsoft-abi-dynamic-cast.cpp
M clang/test/CodeGenCXX/microsoft-abi-typeid.cpp
A clang/test/CodeGenCXX/ms-uneval-context-crash.cpp
M clang/test/CodeGenCXX/template-instantiation.cpp
M clang/test/CodeGenHIP/printf_nonhostcall.cpp
M clang/test/CodeGenHLSL/ArrayAssignable.hlsl
A clang/test/CodeGenHLSL/BasicFeatures/ArrayOutputArguments.hlsl
A clang/test/CodeGenHLSL/builtins/GroupMemoryBarrierWithGroupSync.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
M clang/test/CodeGenHLSL/builtins/RWStructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/RasterizerOrderedStructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl
M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-nullptr.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950-read-tr.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
M clang/test/Driver/aarch64-ptrauth.c
M clang/test/Driver/arm-cortex-cpus-2.c
M clang/test/Driver/codeview-column-info.c
M clang/test/Driver/frame-pointer-elim.c
M clang/test/Driver/fuchsia.c
M clang/test/Driver/linux-ld.c
M clang/test/Driver/openmp-offload.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/unsupported-option.c
A clang/test/Driver/xtensa-char.c
A clang/test/Format/docs_updated.test
M clang/test/Format/lit.local.cfg
M clang/test/Headers/__clang_hip_math_ocml_rounded_ops.hip
M clang/test/Lexer/gnu-flags.c
M clang/test/Misc/diag-template-diffing-cxx98.cpp
M clang/test/Misc/target-invalid-cpu-note/arm.c
M clang/test/Modules/odr_hash.cpp
A clang/test/Modules/prune-non-affecting-module-map-repeated-textual.cpp
A clang/test/Modules/recursive-instantiations.cppm
M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
M clang/test/OpenMP/target_parallel_ast_print.cpp
M clang/test/OpenMP/target_teams_ast_print.cpp
M clang/test/OpenMP/task_ast_print.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M clang/test/OpenMP/teams_ast_print.cpp
A clang/test/Parser/cxx2c-oxford-variadic-comma.cpp
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/init-aarch64.c
M clang/test/Preprocessor/macro_fn.c
M clang/test/Preprocessor/sycl-macro.cpp
A clang/test/Sema/aarch64-sve-intrinsics/acle_neon_sve_bridge.cpp
M clang/test/Sema/constant_builtins_vector.cpp
M clang/test/Sema/enum.c
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
M clang/test/Sema/warn-stringcompare.c
M clang/test/SemaCXX/deprecated.cpp
M clang/test/SemaCXX/lambda-capture-type-deduction.cpp
M clang/test/SemaCXX/new-delete.cpp
A clang/test/SemaCXX/noexcept-destroying-delete.cpp
A clang/test/SemaCXX/warn-array-comparion.cpp
M clang/test/SemaCXX/warn-self-comparisons.cpp
M clang/test/SemaCXX/warn-unused-private-field.cpp
M clang/test/SemaHLSL/ArrayTemporary.hlsl
A clang/test/SemaHLSL/BuiltIns/GroupMemoryBarrierWithGroupSync-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/resource_getpointer-errors.hlsl
A clang/test/SemaHLSL/Language/ArrayOutputArgs-errors.hlsl
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
A clang/test/SemaOpenACC/combined-construct-collapse-ast.cpp
A clang/test/SemaOpenACC/combined-construct-collapse-clause.cpp
A clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
A clang/test/SemaOpenACC/combined-construct-copy-clause.c
A clang/test/SemaOpenACC/combined-construct-copy-clause.cpp
A clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
A clang/test/SemaOpenACC/combined-construct-copyin-clause.c
A clang/test/SemaOpenACC/combined-construct-copyin-clause.cpp
A clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
A clang/test/SemaOpenACC/combined-construct-copyout-clause.c
A clang/test/SemaOpenACC/combined-construct-copyout-clause.cpp
A clang/test/SemaOpenACC/combined-construct-create-ast.cpp
A clang/test/SemaOpenACC/combined-construct-create-clause.c
A clang/test/SemaOpenACC/combined-construct-create-clause.cpp
M clang/test/SemaOpenACC/combined-construct-default-clause.c
M clang/test/SemaOpenACC/combined-construct-default-clause.cpp
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
A clang/test/SemaOpenACC/combined-construct-gang-ast.cpp
A clang/test/SemaOpenACC/combined-construct-gang-clause.cpp
A clang/test/SemaOpenACC/combined-construct-num_gangs-ast.cpp
A clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
A clang/test/SemaOpenACC/combined-construct-num_workers-ast.cpp
A clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
A clang/test/SemaOpenACC/combined-construct-tile-ast.cpp
A clang/test/SemaOpenACC/combined-construct-tile-clause.cpp
A clang/test/SemaOpenACC/combined-construct-vector-ast.cpp
A clang/test/SemaOpenACC/combined-construct-vector-clause.cpp
A clang/test/SemaOpenACC/combined-construct-vector_length-ast.cpp
A clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
A clang/test/SemaOpenACC/combined-construct-worker-ast.cpp
A clang/test/SemaOpenACC/combined-construct-worker-clause.cpp
M clang/test/SemaOpenACC/compute-construct-default-clause.c
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-vector-clause.cpp
M clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
A clang/test/SemaTemplate/template-args-deduction-aggregates.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-format/git-clang-format
M clang/tools/clang-repl/CMakeLists.txt
M clang/unittests/AST/ASTImporterTest.cpp
A clang/unittests/AST/ByteCode/BitcastBuffer.cpp
M clang/unittests/AST/ByteCode/CMakeLists.txt
M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/CodeGen/TBAAMetadataTest.cpp
M clang/unittests/Lex/LexerTest.cpp
M clang/unittests/Serialization/CMakeLists.txt
A clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/hacking.html
M compiler-rt/CMakeLists.txt
R compiler-rt/CODE_OWNERS.TXT
A compiler-rt/Maintainers.txt
M compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
M compiler-rt/cmake/base-config-ix.cmake
M compiler-rt/cmake/caches/hexagon-linux-clangrt.cmake
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/include/sanitizer/memprof_interface.h
M compiler-rt/lib/asan/CMakeLists.txt
M compiler-rt/lib/builtins/cpu_model/x86.c
M compiler-rt/lib/interception/interception_win.cpp
M compiler-rt/lib/interception/tests/interception_win_test.cpp
M compiler-rt/lib/memprof/memprof_flags.cpp
M compiler-rt/lib/memprof/memprof_flags.h
M compiler-rt/lib/memprof/memprof_interface_internal.h
M compiler-rt/lib/memprof/memprof_rtl.cpp
M compiler-rt/lib/memprof/weak_symbols.txt
M compiler-rt/lib/profile/InstrProfilingMerge.c
M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/scudo/standalone/list.h
M compiler-rt/lib/scudo/standalone/secondary.h
M compiler-rt/test/asan/TestCases/Linux/global-overflow-bfd.cpp
M compiler-rt/test/builtins/Unit/atomic_test.c
M compiler-rt/test/builtins/Unit/extendhfxf2_test.c
M compiler-rt/test/builtins/Unit/fp_test.h
M compiler-rt/test/memprof/TestCases/default_options.cpp
A compiler-rt/test/memprof/TestCases/set_options.cpp
A compiler-rt/test/rtsan/fork_exec.cpp
A compiler-rt/test/rtsan/syscall.cpp
M flang/docs/Extensions.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
A flang/include/flang/Common/Fortran-consts.h
M flang/include/flang/Common/Fortran-features.h
M flang/include/flang/Common/Fortran.h
M flang/include/flang/Common/format.h
A flang/include/flang/Common/target-rounding.h
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Lower/AbstractConverter.h
M flang/include/flang/Lower/Allocatable.h
M flang/include/flang/Lower/ConvertCall.h
M flang/include/flang/Lower/PFTBuilder.h
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/MutableBox.h
M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
M flang/include/flang/Optimizer/CodeGen/DescriptorModel.h
M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/HLFIR/HLFIRDialect.h
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/CUFCommon.h
M flang/include/flang/Optimizer/Transforms/CUFOpConversion.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/common.h
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/include/flang/Runtime/CUDA/memory.h
M flang/include/flang/Runtime/allocatable.h
A flang/include/flang/Runtime/allocator-registry-consts.h
M flang/include/flang/Runtime/allocator-registry.h
A flang/include/flang/Runtime/array-constructor-consts.h
M flang/include/flang/Runtime/array-constructor.h
M flang/include/flang/Runtime/cpp-type.h
A flang/include/flang/Runtime/descriptor-consts.h
M flang/include/flang/Runtime/descriptor.h
M flang/include/flang/Runtime/exceptions.h
A flang/include/flang/Runtime/io-api-consts.h
M flang/include/flang/Runtime/io-api.h
A flang/include/flang/Runtime/iostat-consts.h
M flang/include/flang/Runtime/iostat.h
M flang/include/flang/Runtime/type-code.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/include/flang/Tools/TargetSetup.h
M flang/lib/Common/Fortran-features.cpp
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/target.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/ArrayConstructor.cpp
M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/lib/Optimizer/Transforms/CUFCommon.cpp
M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/lib/Parser/CMakeLists.txt
M flang/lib/Parser/Fortran-parsers.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/type-parsers.h
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/compute-offsets.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/openmp-modifiers.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/runtime/CUDA/allocatable.cpp
M flang/runtime/CUDA/allocator.cpp
M flang/runtime/CUDA/descriptor.cpp
M flang/runtime/allocatable.cpp
M flang/runtime/array-constructor.cpp
M flang/runtime/descriptor.cpp
M flang/runtime/edit-input.cpp
M flang/runtime/environment-default-list.h
M flang/runtime/exceptions.cpp
M flang/runtime/format.h
M flang/runtime/internal-unit.cpp
M flang/runtime/non-tbp-dio.h
M flang/runtime/type-info.h
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/Driver/pp-fixed-form.f90
M flang/test/Evaluate/fold-ieee.f90
M flang/test/Evaluate/folding18.f90
M flang/test/Fir/CUDA/cuda-constructor-2.f90
M flang/test/Fir/CUDA/cuda-data-transfer.fir
A flang/test/Fir/CUDA/cuda-global-addr.mlir
M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
A flang/test/Fir/CUDA/cuda-target-rewrite.mlir
M flang/test/Fir/basic-program.fir
M flang/test/Fir/target-rewrite-boxchar.fir
M flang/test/Fir/target.fir
M flang/test/HLFIR/elemental-codegen.fir
A flang/test/HLFIR/eval_in_mem-codegen.fir
A flang/test/HLFIR/eval_in_mem.fir
M flang/test/HLFIR/invalid.fir
M flang/test/HLFIR/minloc-elemental.fir
A flang/test/HLFIR/opt-bufferization-eval_in_mem.fir
A flang/test/HLFIR/opt-bufferization-non-realloc-assignment.fir
M flang/test/HLFIR/order_assignments/where-scheduling.f90
A flang/test/HLFIR/simplify-hlfir-intrinsics-sum.fir
M flang/test/Integration/OpenMP/workshare-axpy.f90
M flang/test/Lower/HLFIR/array-ctor-as-runtime-temp.f90
M flang/test/Lower/HLFIR/array-ctor-character.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
A flang/test/Lower/HLFIR/calls-array-results.f90
M flang/test/Lower/HLFIR/structure-constructor.f90
M flang/test/Lower/HLFIR/where-nonelemental.f90
M flang/test/Lower/OpenACC/acc-declare.f90
A flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
A flang/test/Lower/OpenMP/Todo/atomic-compare.f90
A flang/test/Lower/OpenMP/delayed-privatization-default-init.f90
M flang/test/Lower/OpenMP/delayed-privatization-pointer.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
A flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/explicit-interface-results-2.f90
M flang/test/Lower/explicit-interface-results.f90
M flang/test/Lower/forall/array-constructor.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Parser/OpenMP/affinity-clause.f90
M flang/test/Parser/OpenMP/allocators-unparse.f90
A flang/test/Parser/OpenMP/atomic-compare.f90
M flang/test/Parser/OpenMP/atomic-unparse.f90
M flang/test/Parser/OpenMP/bind-clause.f90
M flang/test/Parser/OpenMP/declare_target-device_type.f90
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/if-clause-unparse.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/lastprivate-clause.f90
M flang/test/Parser/OpenMP/proc-bind.f90
M flang/test/Parser/OpenMP/target-loop-unparse.f90
M flang/test/Parser/OpenMP/target_device_parse.f90
M flang/test/Parser/OpenMP/target_device_unparse.f90
M flang/test/Parser/OpenMP/taskloop.f90
A flang/test/Parser/decl-char-length.f90
A flang/test/Preprocessing/bug117297.F90
M flang/test/Semantics/OpenMP/allocate-clause01.f90
M flang/test/Semantics/OpenMP/allocators01.f90
M flang/test/Semantics/OpenMP/allocators04.f90
M flang/test/Semantics/OpenMP/allocators05.f90
M flang/test/Semantics/OpenMP/allocators06.f90
A flang/test/Semantics/OpenMP/atomic-compare.f90
M flang/test/Semantics/OpenMP/atomic.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/depend05.f90
A flang/test/Semantics/OpenMP/do21.f90
M flang/test/Semantics/OpenMP/if-clause.f90
M flang/test/Semantics/OpenMP/resolve06.f90
M flang/test/Semantics/call14.f90
M flang/test/Semantics/expr-errors06.f90
M flang/test/Semantics/resolve58.f90
M flang/test/Semantics/test_symbols.py
M flang/unittests/Evaluate/fp-testing.cpp
M flang/unittests/Evaluate/fp-testing.h
M flang/unittests/Optimizer/Builder/Runtime/AllocatableTest.cpp
M flang/unittests/Runtime/ArrayConstructor.cpp
M flang/unittests/Runtime/CUDA/Allocatable.cpp
M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang/unittests/Runtime/CUDA/Memory.cpp
M flang/unittests/Runtime/CommandTest.cpp
M flang/unittests/Runtime/Complex.cpp
M flang/unittests/Runtime/ExternalIOTest.cpp
M flang/unittests/Runtime/ListInputTest.cpp
M flang/unittests/Runtime/LogicalFormatTest.cpp
M flang/unittests/Runtime/Namelist.cpp
M flang/unittests/Runtime/NumericalFormatTest.cpp
M flang/unittests/Runtime/RuntimeCrashTest.cpp
M libc/CMakeLists.txt
M libc/benchmarks/CMakeLists.txt
R libc/benchmarks/automemcpy/CMakeLists.txt
R libc/benchmarks/automemcpy/README.md
R libc/benchmarks/automemcpy/include/automemcpy/CodeGen.h
R libc/benchmarks/automemcpy/include/automemcpy/FunctionDescriptor.h
R libc/benchmarks/automemcpy/include/automemcpy/RandomFunctionGenerator.h
R libc/benchmarks/automemcpy/include/automemcpy/ResultAnalyzer.h
R libc/benchmarks/automemcpy/lib/CMakeLists.txt
R libc/benchmarks/automemcpy/lib/CodeGen.cpp
R libc/benchmarks/automemcpy/lib/CodeGenMain.cpp
R libc/benchmarks/automemcpy/lib/RandomFunctionGenerator.cpp
R libc/benchmarks/automemcpy/lib/ResultAnalyzer.cpp
R libc/benchmarks/automemcpy/lib/ResultAnalyzerMain.cpp
R libc/benchmarks/automemcpy/unittests/CMakeLists.txt
R libc/benchmarks/automemcpy/unittests/CodeGenTest.cpp
R libc/benchmarks/automemcpy/unittests/ResultAnalyzerTest.cpp
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
R libc/config/baremetal/api.td
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
R libc/config/gpu/api.td
M libc/config/linux/aarch64/entrypoints.txt
R libc/config/linux/api.td
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
R libc/config/public_api.td
M libc/config/windows/entrypoints.txt
A libc/config/windows/headers.txt
R libc/docs/complex.rst
R libc/docs/ctype.rst
R libc/docs/date_and_time.rst
M libc/docs/dev/header_generation.rst
M libc/docs/dev/source_tree_layout.rst
R libc/docs/fenv.rst
M libc/docs/gpu/building.rst
A libc/docs/headers/assert.rst
A libc/docs/headers/complex.rst
A libc/docs/headers/ctype.rst
A libc/docs/headers/errno.rst
A libc/docs/headers/fenv.rst
A libc/docs/headers/index.rst
A libc/docs/headers/locale.rst
A libc/docs/headers/math/index.rst
A libc/docs/headers/math/log.rst
A libc/docs/headers/math/stdfix.rst
A libc/docs/headers/search.rst
A libc/docs/headers/setjmp.rst
A libc/docs/headers/signal.rst
A libc/docs/headers/stdbit.rst
A libc/docs/headers/stdio.rst
A libc/docs/headers/strings.rst
A libc/docs/headers/threads.rst
A libc/docs/headers/time.rst
M libc/docs/index.rst
R libc/docs/libc_search.rst
R libc/docs/math/index.rst
R libc/docs/math/log.rst
R libc/docs/math/stdfix.rst
R libc/docs/setjmp.rst
R libc/docs/signal.rst
R libc/docs/stdbit.rst
R libc/docs/stdio.rst
R libc/docs/strings.rst
R libc/docs/threads.rst
M libc/hdr/CMakeLists.txt
M libc/hdr/time_macros.h
M libc/hdr/types/clockid_t.h
A libc/hdrgen/CMakeLists.txt
A libc/hdrgen/class_implementation/classes/enumeration.py
A libc/hdrgen/class_implementation/classes/function.py
A libc/hdrgen/class_implementation/classes/macro.py
A libc/hdrgen/class_implementation/classes/object.py
A libc/hdrgen/class_implementation/classes/type.py
A libc/hdrgen/gpu_headers.py
A libc/hdrgen/header.py
A libc/hdrgen/tests/expected_output/test_header.h
A libc/hdrgen/tests/input/test_small.h.def
A libc/hdrgen/tests/input/test_small.yaml
A libc/hdrgen/tests/test_integration.py
A libc/hdrgen/yaml/arpa/inet.yaml
A libc/hdrgen/yaml/assert.yaml
A libc/hdrgen/yaml/ctype.yaml
A libc/hdrgen/yaml/dirent.yaml
A libc/hdrgen/yaml/dlfcn.yaml
A libc/hdrgen/yaml/elf.yaml
A libc/hdrgen/yaml/errno.yaml
A libc/hdrgen/yaml/fcntl.yaml
A libc/hdrgen/yaml/features.yaml
A libc/hdrgen/yaml/fenv.yaml
A libc/hdrgen/yaml/float.yaml
A libc/hdrgen/yaml/gpu/rpc.yaml
A libc/hdrgen/yaml/inttypes.yaml
A libc/hdrgen/yaml/limits.yaml
A libc/hdrgen/yaml/link.yaml
A libc/hdrgen/yaml/locale.yaml
A libc/hdrgen/yaml/malloc.yaml
A libc/hdrgen/yaml/math.yaml
A libc/hdrgen/yaml/pthread.yaml
A libc/hdrgen/yaml/sched.yaml
A libc/hdrgen/yaml/search.yaml
A libc/hdrgen/yaml/setjmp.yaml
A libc/hdrgen/yaml/signal.yaml
A libc/hdrgen/yaml/spawn.yaml
A libc/hdrgen/yaml/stdbit.yaml
A libc/hdrgen/yaml/stdckdint.yaml
A libc/hdrgen/yaml/stdfix.yaml
A libc/hdrgen/yaml/stdint.yaml
A libc/hdrgen/yaml/stdio.yaml
A libc/hdrgen/yaml/stdlib.yaml
A libc/hdrgen/yaml/string.yaml
A libc/hdrgen/yaml/strings.yaml
A libc/hdrgen/yaml/sys/auxv.yaml
A libc/hdrgen/yaml/sys/epoll.yaml
A libc/hdrgen/yaml/sys/ioctl.yaml
A libc/hdrgen/yaml/sys/mman.yaml
A libc/hdrgen/yaml/sys/prctl.yaml
A libc/hdrgen/yaml/sys/random.yaml
A libc/hdrgen/yaml/sys/resource.yaml
A libc/hdrgen/yaml/sys/select.yaml
A libc/hdrgen/yaml/sys/sendfile.yaml
A libc/hdrgen/yaml/sys/socket.yaml
A libc/hdrgen/yaml/sys/stat.yaml
A libc/hdrgen/yaml/sys/statvfs.yaml
A libc/hdrgen/yaml/sys/syscall.yaml
A libc/hdrgen/yaml/sys/time.yaml
A libc/hdrgen/yaml/sys/types.yaml
A libc/hdrgen/yaml/sys/utsname.yaml
A libc/hdrgen/yaml/sys/wait.yaml
A libc/hdrgen/yaml/termios.yaml
A libc/hdrgen/yaml/threads.yaml
A libc/hdrgen/yaml/time.yaml
A libc/hdrgen/yaml/uchar.yaml
A libc/hdrgen/yaml/unistd.yaml
A libc/hdrgen/yaml/wchar.yaml
A libc/hdrgen/yaml_functions_sorted.py
A libc/hdrgen/yaml_to_classes.py
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/time-macros.h
A libc/include/llvm-libc-macros/windows/CMakeLists.txt
A libc/include/llvm-libc-macros/windows/time-macros-ext.h
M libc/include/sys/syscall.h.def
R libc/newhdrgen/CMakeLists.txt
R libc/newhdrgen/class_implementation/classes/enumeration.py
R libc/newhdrgen/class_implementation/classes/function.py
R libc/newhdrgen/class_implementation/classes/macro.py
R libc/newhdrgen/class_implementation/classes/object.py
R libc/newhdrgen/class_implementation/classes/type.py
R libc/newhdrgen/gpu_headers.py
R libc/newhdrgen/header.py
R libc/newhdrgen/tests/expected_output/test_header.h
R libc/newhdrgen/tests/input/test_small.h.def
R libc/newhdrgen/tests/input/test_small.yaml
R libc/newhdrgen/tests/test_integration.py
R libc/newhdrgen/yaml/arpa/inet.yaml
R libc/newhdrgen/yaml/assert.yaml
R libc/newhdrgen/yaml/ctype.yaml
R libc/newhdrgen/yaml/dirent.yaml
R libc/newhdrgen/yaml/dlfcn.yaml
R libc/newhdrgen/yaml/elf.yaml
R libc/newhdrgen/yaml/errno.yaml
R libc/newhdrgen/yaml/fcntl.yaml
R libc/newhdrgen/yaml/features.yaml
R libc/newhdrgen/yaml/fenv.yaml
R libc/newhdrgen/yaml/float.yaml
R libc/newhdrgen/yaml/gpu/rpc.yaml
R libc/newhdrgen/yaml/inttypes.yaml
R libc/newhdrgen/yaml/limits.yaml
R libc/newhdrgen/yaml/link.yaml
R libc/newhdrgen/yaml/locale.yaml
R libc/newhdrgen/yaml/malloc.yaml
R libc/newhdrgen/yaml/math.yaml
R libc/newhdrgen/yaml/pthread.yaml
R libc/newhdrgen/yaml/sched.yaml
R libc/newhdrgen/yaml/search.yaml
R libc/newhdrgen/yaml/setjmp.yaml
R libc/newhdrgen/yaml/signal.yaml
R libc/newhdrgen/yaml/spawn.yaml
R libc/newhdrgen/yaml/stdbit.yaml
R libc/newhdrgen/yaml/stdckdint.yaml
R libc/newhdrgen/yaml/stdfix.yaml
R libc/newhdrgen/yaml/stdint.yaml
R libc/newhdrgen/yaml/stdio.yaml
R libc/newhdrgen/yaml/stdlib.yaml
R libc/newhdrgen/yaml/string.yaml
R libc/newhdrgen/yaml/strings.yaml
R libc/newhdrgen/yaml/sys/auxv.yaml
R libc/newhdrgen/yaml/sys/epoll.yaml
R libc/newhdrgen/yaml/sys/ioctl.yaml
R libc/newhdrgen/yaml/sys/mman.yaml
R libc/newhdrgen/yaml/sys/prctl.yaml
R libc/newhdrgen/yaml/sys/random.yaml
R libc/newhdrgen/yaml/sys/resource.yaml
R libc/newhdrgen/yaml/sys/select.yaml
R libc/newhdrgen/yaml/sys/sendfile.yaml
R libc/newhdrgen/yaml/sys/socket.yaml
R libc/newhdrgen/yaml/sys/stat.yaml
R libc/newhdrgen/yaml/sys/statvfs.yaml
R libc/newhdrgen/yaml/sys/syscall.yaml
R libc/newhdrgen/yaml/sys/time.yaml
R libc/newhdrgen/yaml/sys/types.yaml
R libc/newhdrgen/yaml/sys/utsname.yaml
R libc/newhdrgen/yaml/sys/wait.yaml
R libc/newhdrgen/yaml/termios.yaml
R libc/newhdrgen/yaml/threads.yaml
R libc/newhdrgen/yaml/time.yaml
R libc/newhdrgen/yaml/uchar.yaml
R libc/newhdrgen/yaml/unistd.yaml
R libc/newhdrgen/yaml/wchar.yaml
R libc/newhdrgen/yaml_functions_sorted.py
R libc/newhdrgen/yaml_to_classes.py
M libc/shared/rpc_opcodes.h
R libc/spec/bsd_ext.td
R libc/spec/gnu_ext.td
R libc/spec/gpu_ext.td
R libc/spec/linux.td
R libc/spec/llvm_libc_ext.td
R libc/spec/llvm_libc_stdfix_ext.td
R libc/spec/posix.td
R libc/spec/spec.td
R libc/spec/stdc.td
R libc/spec/stdc_ext.td
M libc/src/CMakeLists.txt
M libc/src/__support/GPU/allocator.cpp
M libc/src/__support/OSUtil/gpu/exit.cpp
M libc/src/__support/OSUtil/gpu/io.cpp
M libc/src/__support/OSUtil/linux/exit.cpp
M libc/src/__support/ctype_utils.h
M libc/src/__support/high_precision_decimal.h
M libc/src/__support/integer_literals.h
M libc/src/__support/integer_to_string.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/str_to_float.h
M libc/src/__support/str_to_integer.h
M libc/src/__support/threads/linux/rwlock.h
M libc/src/__support/time/CMakeLists.txt
A libc/src/__support/time/clock_gettime.h
A libc/src/__support/time/gpu/CMakeLists.txt
A libc/src/__support/time/gpu/clock_gettime.cpp
A libc/src/__support/time/gpu/time_utils.cpp
A libc/src/__support/time/gpu/time_utils.h
M libc/src/__support/time/linux/CMakeLists.txt
M libc/src/__support/time/linux/clock_conversion.h
M libc/src/__support/time/linux/clock_gettime.cpp
R libc/src/__support/time/linux/clock_gettime.h
A libc/src/__support/time/windows/CMakeLists.txt
A libc/src/__support/time/windows/clock_gettime.cpp
M libc/src/ctype/isxdigit.cpp
M libc/src/ctype/isxdigit_l.cpp
M libc/src/ctype/toupper.cpp
M libc/src/ctype/toupper_l.cpp
M libc/src/gpu/rpc_host_call.cpp
M libc/src/math/CMakeLists.txt
M libc/src/math/docs/add_math_function.md
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/atan2f.cpp
M libc/src/math/generic/inv_trigf_utils.h
M libc/src/math/generic/sincosf16_utils.h
A libc/src/math/generic/sinf16.cpp
M libc/src/math/generic/tanpif16.cpp
A libc/src/math/sinf16.h
M libc/src/stdio/gpu/clearerr.cpp
M libc/src/stdio/gpu/fclose.cpp
M libc/src/stdio/gpu/feof.cpp
M libc/src/stdio/gpu/ferror.cpp
M libc/src/stdio/gpu/fflush.cpp
M libc/src/stdio/gpu/fgets.cpp
M libc/src/stdio/gpu/file.h
M libc/src/stdio/gpu/fopen.cpp
M libc/src/stdio/gpu/fseek.cpp
M libc/src/stdio/gpu/ftell.cpp
M libc/src/stdio/gpu/puts.cpp
M libc/src/stdio/gpu/remove.cpp
M libc/src/stdio/gpu/rename.cpp
M libc/src/stdio/gpu/ungetc.cpp
M libc/src/stdio/gpu/vfprintf_utils.h
M libc/src/stdio/printf_core/fixed_converter.h
M libc/src/stdio/printf_core/float_dec_converter.h
M libc/src/stdio/printf_core/float_hex_converter.h
M libc/src/stdio/printf_core/float_inf_nan_converter.h
M libc/src/stdio/printf_core/int_converter.h
M libc/src/stdio/scanf_core/converter_utils.h
M libc/src/stdio/scanf_core/float_converter.cpp
M libc/src/stdio/scanf_core/int_converter.cpp
M libc/src/stdio/scanf_core/ptr_converter.cpp
M libc/src/stdlib/gpu/abort.cpp
M libc/src/stdlib/gpu/system.cpp
M libc/src/sys/mman/CMakeLists.txt
M libc/src/sys/mman/linux/CMakeLists.txt
R libc/src/sys/mman/linux/process_mrelease.cpp
R libc/src/sys/mman/process_mrelease.h
M libc/src/time/CMakeLists.txt
A libc/src/time/baremetal/CMakeLists.txt
A libc/src/time/baremetal/timespec_get.cpp
M libc/src/time/gpu/CMakeLists.txt
M libc/src/time/gpu/clock.cpp
M libc/src/time/gpu/clock_gettime.cpp
M libc/src/time/gpu/nanosleep.cpp
R libc/src/time/gpu/time_utils.cpp
R libc/src/time/gpu/time_utils.h
A libc/src/time/gpu/timespec_get.cpp
M libc/src/time/linux/CMakeLists.txt
M libc/src/time/linux/clock.cpp
M libc/src/time/linux/clock_gettime.cpp
M libc/src/time/linux/gettimeofday.cpp
R libc/src/time/linux/time.cpp
A libc/src/time/linux/timespec_get.cpp
A libc/src/time/time.cpp
A libc/src/time/timespec_get.h
M libc/test/UnitTest/MemoryMatcher.cpp
M libc/test/integration/startup/gpu/rpc_test.cpp
M libc/test/src/CMakeLists.txt
M libc/test/src/__support/CPP/stringview_test.cpp
M libc/test/src/__support/threads/linux/raw_mutex_test.cpp
M libc/test/src/ctype/isalnum_test.cpp
M libc/test/src/ctype/isalpha_test.cpp
M libc/test/src/ctype/isdigit_test.cpp
M libc/test/src/ctype/islower_test.cpp
M libc/test/src/ctype/isupper_test.cpp
M libc/test/src/ctype/isxdigit_test.cpp
M libc/test/src/ctype/tolower_test.cpp
M libc/test/src/ctype/toupper_test.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/sinf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/sinf16_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/string/strcmp_test.cpp
M libc/test/src/sys/mman/linux/CMakeLists.txt
R libc/test/src/sys/mman/linux/process_mrelease_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/time_test.cpp
A libc/test/src/time/timespec_get_test.cpp
R libc/utils/HdrGen/CMakeLists.txt
R libc/utils/HdrGen/Command.cpp
R libc/utils/HdrGen/Command.h
R libc/utils/HdrGen/Generator.cpp
R libc/utils/HdrGen/Generator.h
R libc/utils/HdrGen/IncludeFileCommand.cpp
R libc/utils/HdrGen/IncludeFileCommand.h
R libc/utils/HdrGen/Main.cpp
R libc/utils/HdrGen/PrototypeTestGen/CMakeLists.txt
R libc/utils/HdrGen/PrototypeTestGen/PrototypeTestGen.cpp
R libc/utils/HdrGen/PublicAPICommand.cpp
R libc/utils/HdrGen/PublicAPICommand.h
R libc/utils/HdrGen/README.md
R libc/utils/LibcTableGenUtil/APIIndexer.cpp
R libc/utils/LibcTableGenUtil/APIIndexer.h
R libc/utils/LibcTableGenUtil/CMakeLists.txt
A libc/utils/docgen/assert.json
M libc/utils/docgen/docgen.py
A libc/utils/docgen/errno.json
A libc/utils/docgen/locale.json
M libc/utils/docgen/setjmp.json
M libc/utils/docgen/signal.json
M libc/utils/gpu/loader/Loader.h
M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/server/rpc_server.cpp
A libcxx/Maintainers.md
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/TestingLibcxx.rst
M libcxx/include/__atomic/atomic.h
M libcxx/include/__configuration/availability.h
M libcxx/include/__memory/allocator_traits.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__numeric/gcd_lcm.h
M libcxx/include/__type_traits/detected_or.h
M libcxx/include/chrono
M libcxx/src/CMakeLists.txt
M libcxx/test/libcxx/clang_tidy.gen.py
A libcxx/test/libcxx/containers/associative/reference_comparator_abi.compile.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
M libcxx/test/std/containers/sequences/vector/common.h
M libcxx/test/std/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
M libcxx/test/std/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
A libcxx/test/support/increasing_allocator.h
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/utils/ci/run-buildbot-container
M libcxx/utils/synchronize_csv_status_files.py
M libunwind/src/CMakeLists.txt
M libunwind/src/Unwind-sjlj.c
M libunwind/src/UnwindCursor.hpp
R lld/CODE_OWNERS.TXT
M lld/COFF/COFFLinkerContext.h
M lld/COFF/CallGraphSort.cpp
M lld/COFF/CallGraphSort.h
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Config.h
M lld/COFF/DebugTypes.cpp
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/ICF.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
M lld/COFF/MapFile.cpp
M lld/COFF/MinGW.cpp
M lld/COFF/MinGW.h
M lld/COFF/PDB.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/Symbols.cpp
M lld/COFF/Symbols.h
M lld/COFF/Writer.cpp
M lld/Common/ErrorHandler.cpp
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/ICF.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/OutputSections.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/Relocations.h
M lld/ELF/Symbols.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
M lld/ELF/Writer.cpp
A lld/Maintainers.md
M lld/MinGW/Driver.cpp
M lld/MinGW/Options.td
M lld/docs/ReleaseNotes.rst
M lld/include/lld/Common/ErrorHandler.h
A lld/test/COFF/arm64x-loadconfig.s
M lld/test/COFF/dependentflags.test
A lld/test/COFF/deploadflag-cfg-short.s
M lld/test/ELF/invalid-eh-frame3.s
M lld/test/ELF/invalid-eh-frame6.s
M lld/test/ELF/invalid/broken-relaxation-x64.test
M lld/test/ELF/linkerscript/i386-sections-max-va-overflow.s
M lld/test/ELF/linkerscript/locationcountererr-arm-exidx.test
M lld/test/ELF/linkerscript/sections-max-va-overflow.s
M lld/test/ELF/pack-dyn-relocs-ifunc.s
M lld/test/ELF/pack-dyn-relocs-tls-x86-64.s
M lld/test/ELF/systemz-gotent-relax-und-dso.s
M lld/test/ELF/systemz-gotent-relax.s
M lld/test/ELF/systemz-plt.s
M lld/test/ELF/systemz-tls-gd.s
M lld/test/ELF/systemz-tls-ld.s
M lld/test/ELF/tls-opt.s
M lld/test/ELF/tls.s
M lld/test/ELF/undef-multi.s
M lld/test/ELF/undef.s
A lld/test/ELF/x86-64-tls-ie-err.s
M lld/test/ELF/x86-64-tls-ie-local.s
M lld/test/MachO/bp-section-orderer.s
M lld/test/MinGW/driver.test
M lld/test/wasm/compress-relocs.ll
M lld/test/wasm/import-table-explicit.s
M lld/test/wasm/invalid-mvp-table-use.s
M lld/test/wasm/lto/Inputs/libcall-archive.ll
M lld/test/wasm/lto/libcall-archive.ll
M lld/test/wasm/lto/stub-library-libcall.s
M lld/test/wasm/multi-table.s
M lld/wasm/Driver.cpp
M lld/wasm/InputFiles.cpp
M lld/wasm/SyntheticSections.cpp
M lldb/bindings/interface/SBMemoryRegionInfoListExtensions.i
M lldb/include/lldb/API/SBAddressRangeList.h
M lldb/include/lldb/API/SBFunction.h
M lldb/include/lldb/Core/AddressRangeListImpl.h
M lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h
M lldb/include/lldb/Host/Socket.h
M lldb/include/lldb/Host/common/TCPSocket.h
M lldb/include/lldb/Host/posix/DomainSocket.h
M lldb/include/lldb/Symbol/Function.h
M lldb/include/lldb/Target/Platform.h
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
M lldb/source/API/SBFunction.cpp
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
M lldb/source/Core/AddressRangeListImpl.cpp
M lldb/source/DataFormatters/DumpValueObjectOptions.cpp
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Host/common/TCPSocket.cpp
M lldb/source/Host/posix/DomainSocket.cpp
M lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/Function.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/ValueObject/ValueObject.cpp
M lldb/test/API/commands/dwim-print/Makefile
M lldb/test/API/commands/dwim-print/TestDWIMPrint.py
R lldb/test/API/commands/dwim-print/main.c
A lldb/test/API/commands/dwim-print/main.cpp
M lldb/test/API/commands/register/register/aarch64_sme_z_registers/za_dynamic_resize/Makefile
M lldb/test/API/commands/register/register/aarch64_sve_registers/rw_access_dynamic_resize/Makefile
A lldb/test/API/commands/target/anon-struct/Makefile
A lldb/test/API/commands/target/anon-struct/TestTargetVarAnonStruct.py
A lldb/test/API/commands/target/anon-struct/main.cpp
M lldb/test/API/functionalities/process_save_core_minidump/Makefile
M lldb/test/API/functionalities/vtable/TestVTableValue.py
M lldb/test/API/python_api/find_in_memory/TestFindInMemory.py
M lldb/test/API/tools/lldb-dap/threads/Makefile
A lldb/test/Shell/ScriptInterpreter/Python/sb_function_ranges.s
M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-function.s
A lldb/test/Shell/SymbolFile/DWARF/x86/dwp-index-cache.cpp
M lldb/test/Shell/SymbolFile/DWARF/x86/find-basic-type.cpp
A lldb/test/Shell/SymbolFile/DWARF/x86/simplified-template-names.cpp
M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
M lldb/tools/lldb-dap/ProgressEvent.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/package-lock.json
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
M lldb/tools/lldb-dap/src-ts/extension.ts
R lldb/tools/lldb-dap/src-ts/types.ts
M lldb/unittests/Host/SocketTest.cpp
M lldb/unittests/TestingSupport/Host/SocketTestUtilities.cpp
M lldb/unittests/TestingSupport/Host/SocketTestUtilities.h
M lldb/unittests/debugserver/RNBSocketTest.cpp
M llvm/CMakeLists.txt
M llvm/Maintainers.md
M llvm/cmake/modules/CheckCompilerVersion.cmake
M llvm/cmake/modules/CrossCompile.cmake
M llvm/cmake/modules/GetHostTriple.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CodingStandards.rst
M llvm/docs/GettingStarted.rst
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/SPIRVUsage.rst
M llvm/examples/OrcV2Examples/LLJITWithObjectLinkingLayerPlugin/CMakeLists.txt
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/include/llvm/Analysis/ConstraintSystem.h
M llvm/include/llvm/Analysis/InlineCost.h
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/InstructionSimplify.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/BinaryFormat/ELFRelocs/AArch64.def
M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV.def
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/CodeGen/LiveDebugVariables.h
M llvm/include/llvm/CodeGen/LiveStacks.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/Config/abi-breaking.h.cmake
M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
M llvm/include/llvm/ExecutionEngine/JITLink/COFF.h
M llvm/include/llvm/ExecutionEngine/JITLink/COFF_x86_64.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_aarch32.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_aarch64.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_i386.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_loongarch.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_ppc64.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_riscv.h
M llvm/include/llvm/ExecutionEngine/JITLink/ELF_x86_64.h
M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
M llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO_arm64.h
M llvm/include/llvm/ExecutionEngine/JITLink/MachO_x86_64.h
M llvm/include/llvm/ExecutionEngine/JITLink/TableManager.h
M llvm/include/llvm/ExecutionEngine/Orc/DebugUtils.h
M llvm/include/llvm/ExecutionEngine/Orc/ExecutorProcessControl.h
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
M llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
A llvm/include/llvm/IR/CmpPredicate.h
M llvm/include/llvm/IR/DataLayout.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/IR/Operator.h
M llvm/include/llvm/IR/StructuralHash.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/LineEditor/LineEditor.h
M llvm/include/llvm/MC/MCRegisterInfo.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/Support/Debug.h
M llvm/include/llvm/Support/InstructionCost.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Support/TimeProfiler.h
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/TargetParser/ARMTargetParser.def
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h
M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
M llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
A llvm/include/llvm/Transforms/Utils/ExtraPassManager.h
M llvm/include/llvm/Transforms/Utils/FunctionComparator.h
M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/LazyValueInfo.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GCMetadata.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/CodeGen/LiveRegMatrix.cpp
M llvm/lib/CodeGen/LiveStacks.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/CodeGen/MachineOperand.cpp
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/lib/CodeGen/MachineStableHash.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RegAllocBasic.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocGreedy.h
M llvm/lib/CodeGen/RegAllocPBQP.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/StackSlotColoring.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
M llvm/lib/ExecutionEngine/JITLink/COFF.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/COFF_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/DefineExternalSectionStartAndEndSymbols.h
M llvm/lib/ExecutionEngine/JITLink/ELF.cpp
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_i386.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_ppc64.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
M llvm/lib/ExecutionEngine/JITLink/MachO.cpp
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/PerGraphGOTAndPLTStubsBuilder.h
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/DebugUtils.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/PerfSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp
M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
M llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
M llvm/lib/ExecutionEngine/Orc/LazyObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectFileInterface.cpp
M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
M llvm/lib/ExecutionEngine/Orc/SectCreate.cpp
M llvm/lib/ExecutionEngine/Orc/Shared/CMakeLists.txt
M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
A llvm/lib/ExecutionEngine/Orc/Shared/SymbolStringPool.cpp
M llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/ModuleSummaryIndex.cpp
M llvm/lib/IR/Operator.cpp
M llvm/lib/IR/StructuralHash.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/LineEditor/LineEditor.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCRegisterInfo.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/WasmObjectWriter.cpp
M llvm/lib/Object/RecordStreamer.h
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/lib/Support/APFloat.cpp
M llvm/lib/Support/FormattedStream.cpp
M llvm/lib/Support/SmallPtrSet.cpp
M llvm/lib/Support/YAMLTraits.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMarkLastScratchLoad.cpp
A llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
A llvm/lib/Target/AMDGPU/AMDGPURegBankSelect.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIOptimizeVGPRLiveRange.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPCInstructions.td
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMProcessors.td
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/AVR/AVRInstrFormats.td
M llvm/lib/Target/AVR/AVRInstrInfo.td
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.h
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/lib/Target/Hexagon/HexagonDepInstrInfo.td
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/LoongArch/LoongArchDeadRegisterDefinitions.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVGISel.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
M llvm/lib/Target/RISCV/RISCVPostRAExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/SystemZ/SystemZInstrFormats.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
M llvm/lib/Target/SystemZ/SystemZOperands.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ13.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ15.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ16.td
M llvm/lib/Target/SystemZ/SystemZScheduleZ196.td
M llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/WebAssembly.td
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrBulkMemory.td
M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
M llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Target/X86/X86TileConfig.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
A llvm/lib/Transforms/Coroutines/CoroCloner.h
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/FunctionComparator.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/runtimes/CMakeLists.txt
M llvm/test/Analysis/BasicAA/featuretest.ll
M llvm/test/Analysis/CostModel/AArch64/sve-gather.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/AArch64/sve-scatter.ll
M llvm/test/Analysis/CostModel/RISCV/cttz_elts.ll
M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
M llvm/test/Analysis/CostModel/RISCV/fp-sqrt-pow.ll
M llvm/test/Analysis/CostModel/RISCV/int-bit-manip.ll
M llvm/test/Analysis/CostModel/RISCV/int-sat-math.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-or.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/vp-intrinsics.ll
R llvm/test/Analysis/CostModel/SystemZ/reduce-add.ll
A llvm/test/Analysis/CostModel/SystemZ/vector-reductions.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose-codesize.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose-latency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose-sizelatency.ll
M llvm/test/Analysis/CostModel/X86/shuffle-transpose.ll
M llvm/test/Analysis/LazyCallGraph/blockaddress.ll
A llvm/test/Analysis/LoopAccessAnalysis/nssw-predicate-implied.ll
A llvm/test/Analysis/ScalarEvolution/pr117133.ll
A llvm/test/Analysis/ScalarEvolution/trip-count-phi-increment.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
M llvm/test/Assembler/fast-math-flags.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-no-op-intrinsics.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/aarch64-dup-ext-crash.ll
M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
A llvm/test/CodeGen/AArch64/apply-disjoint-flag-in-dagcombine.ll
M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst-2.ll
A llvm/test/CodeGen/AArch64/bf16-instructions.ll
A llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
A llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-nsconst.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-objc.ll
A llvm/test/CodeGen/AArch64/cgdata-merge-gvar-string.ll
A llvm/test/CodeGen/AArch64/cgdata-outline-gvar.ll
M llvm/test/CodeGen/AArch64/concat-vector.ll
M llvm/test/CodeGen/AArch64/extract-insert.ll
A llvm/test/CodeGen/AArch64/memtag-merge-writeback.mir
M llvm/test/CodeGen/AArch64/nested-iv-regalloc.mir
M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
M llvm/test/CodeGen/AArch64/selectopt-cast.ll
A llvm/test/CodeGen/AArch64/sink-mul-exts.ll
M llvm/test/CodeGen/AArch64/sinksplat.ll
A llvm/test/CodeGen/AArch64/stack-hazard-windows.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
A llvm/test/CodeGen/AArch64/stack-tagging-merge-past-memcpy.mir
M llvm/test/CodeGen/AArch64/sve-partial-reduce-wide-add.ll
M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
A llvm/test/CodeGen/AArch64/zeroing-forms-fcvt-bfcvt.ll
A llvm/test/CodeGen/AArch64/zeroing-forms-fcvtlt-fcvtx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-regbanklegalize.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-regbankselect.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.mir
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
M llvm/test/CodeGen/AMDGPU/mul.i16.ll
M llvm/test/CodeGen/AMDGPU/multilevel-break.ll
M llvm/test/CodeGen/AMDGPU/nested-loop-conditions.ll
A llvm/test/CodeGen/AMDGPU/register-coalescer--set-undef-full-reg-use-implicit-def-erase-issue109249.mir
M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/saddsat.ll
M llvm/test/CodeGen/AMDGPU/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/usubsat.ll
A llvm/test/CodeGen/AMDGPU/v_ashr_pk.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
M llvm/test/CodeGen/ARM/2012-03-13-DAGCombineBug.ll
M llvm/test/CodeGen/ARM/build-attributes.ll
A llvm/test/CodeGen/ARM/vector-trunc.ll
M llvm/test/CodeGen/AVR/inline-asm/loadstore.ll
M llvm/test/CodeGen/DirectX/BufferStore-errors.ll
M llvm/test/CodeGen/DirectX/BufferStore.ll
A llvm/test/CodeGen/DirectX/finalize-linkage-intrinsics.ll
A llvm/test/CodeGen/DirectX/group_memory_barrier_with_group_sync.ll
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
R llvm/test/CodeGen/Generic/builtin-expect-with-probability.ll
A llvm/test/CodeGen/Hexagon/addrmode-neg-offset.ll
M llvm/test/CodeGen/Hexagon/trap-crash.ll
M llvm/test/CodeGen/LoongArch/fp16-promote.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem-div32.ll
M llvm/test/CodeGen/LoongArch/sextw-removal.ll
A llvm/test/CodeGen/NVPTX/i1-icmp.ll
M llvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
M llvm/test/CodeGen/PowerPC/aix-xcoff-rodata.ll
M llvm/test/CodeGen/PowerPC/aix-xcoff-used-with-stringpool.ll
M llvm/test/CodeGen/PowerPC/mergeable-string-pool-exceptions.ll
M llvm/test/CodeGen/PowerPC/mergeable-string-pool-tls.ll
A llvm/test/CodeGen/PowerPC/pr118695.ll
M llvm/test/CodeGen/PowerPC/pr38087.ll
M llvm/test/CodeGen/PowerPC/saddo-ssubo.ll
M llvm/test/CodeGen/PowerPC/scalar_vector_test_5.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-intrinsics.ll
A llvm/test/CodeGen/RISCV/GlobalISel/double-zfa.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-convert.ll
A llvm/test/CodeGen/RISCV/GlobalISel/float-fclass.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-intrinsics.ll
A llvm/test/CodeGen/RISCV/GlobalISel/float-zfa.ll
A llvm/test/CodeGen/RISCV/GlobalISel/fp128.ll
A llvm/test/CodeGen/RISCV/GlobalISel/half-zfa.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-ilp32-ilp32f-ilp32d-common.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-lp64-lp64f-lp64d-common.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/double-zfa.ll
M llvm/test/CodeGen/RISCV/float-zfa.ll
M llvm/test/CodeGen/RISCV/half-zfa.ll
M llvm/test/CodeGen/RISCV/inline-asm-v-constraint.ll
M llvm/test/CodeGen/RISCV/rv64-float-convert-strict.ll
M llvm/test/CodeGen/RISCV/rv64-float-convert.ll
M llvm/test/CodeGen/RISCV/rv64-half-convert-strict.ll
M llvm/test/CodeGen/RISCV/rv64-half-convert.ll
M llvm/test/CodeGen/RISCV/rvv/abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
M llvm/test/CodeGen/RISCV/rvv/compressstore.ll
M llvm/test/CodeGen/RISCV/rvv/constant-folding-crash.ll
M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/expandload.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fshr-fshl-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-mask-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1up.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fold-scalar-load-crash.ll
M llvm/test/CodeGen/RISCV/rvv/fshr-fshl-vp.ll
M llvm/test/CodeGen/RISCV/rvv/inline-asm.ll
M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/intrinsic-vector-match.ll
M llvm/test/CodeGen/RISCV/rvv/llrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/lrint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/masked-tama.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/pr88576.ll
M llvm/test/CodeGen/RISCV/rvv/rint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector-csr.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll
M llvm/test/CodeGen/RISCV/rvv/strided-vpstore.ll
M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.ll
M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vcpop.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-reassociations.ll
M llvm/test/CodeGen/RISCV/rvv/vector-splice.ll
M llvm/test/CodeGen/RISCV/rvv/vfabs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfirst.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfneg-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfpext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
A llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir
M llvm/test/CodeGen/RISCV/rvv/vl-opt.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64.ll
M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmfeq.ll
M llvm/test/CodeGen/RISCV/rvv/vmfge.ll
M llvm/test/CodeGen/RISCV/rvv/vmfgt.ll
M llvm/test/CodeGen/RISCV/rvv/vmfle.ll
M llvm/test/CodeGen/RISCV/rvv/vmflt.ll
M llvm/test/CodeGen/RISCV/rvv/vmfne.ll
M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vmsbf.ll
M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsif.ll
M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
M llvm/test/CodeGen/RISCV/rvv/vmsof.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll
M llvm/test/CodeGen/RISCV/rvv/vp-cttz-elts.ll
M llvm/test/CodeGen/RISCV/rvv/vp-select.ll
M llvm/test/CodeGen/RISCV/rvv/vp-splice-mask-fixed-vectors.ll
M llvm/test/CodeGen/RISCV/rvv/vp-splice-mask-vectors.ll
M llvm/test/CodeGen/RISCV/rvv/vpgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vpload.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vpstore.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vrgatherei16-subreg-liveness.ll
M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-bf16.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-int.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
M llvm/test/CodeGen/RISCV/rvv/vsext-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vzext-vp.ll
A llvm/test/CodeGen/RISCV/vector-tuple-zeroinitializer.ll
M llvm/test/CodeGen/SPIRV/bitcast.ll
M llvm/test/CodeGen/SPIRV/debug-info/debug-type-basic.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_two_calls.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_bf16.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_checked.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_get_coord.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_packed.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_prefetch.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_joint_matrix/cooperative_matrix_tf32.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_media_block_io/builtin-op-wrappers.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_media_block_io/cl_intel_media_block_io.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_cooperative_matrix/cooperative_matrix.ll
M llvm/test/CodeGen/SPIRV/instructions/ret-type.ll
M llvm/test/CodeGen/SPIRV/opencl/vload2.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
A llvm/test/CodeGen/SPIRV/pointers/builtin-ret-reg-type.ll
A llvm/test/CodeGen/SPIRV/pointers/gep-types-1.ll
A llvm/test/CodeGen/SPIRV/pointers/gep-types-2.ll
A llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
M llvm/test/CodeGen/SPIRV/pointers/global-ptrtoint.ll
A llvm/test/CodeGen/SPIRV/pointers/phi-chain-types.ll
M llvm/test/CodeGen/SPIRV/pointers/phi-valid-operand-types.ll
A llvm/test/CodeGen/SPIRV/pointers/tangled-ret.ll
A llvm/test/CodeGen/SPIRV/pointers/type-deduce-via-store-load-args-rev.ll
A llvm/test/CodeGen/SPIRV/pointers/variables-storage-class-vk.ll
M llvm/test/CodeGen/SPIRV/pointers/variables-storage-class.ll
M llvm/test/CodeGen/SPIRV/transcoding/OpGenericCastToPtr.ll
M llvm/test/CodeGen/SPIRV/transcoding/OpPhi_ArgumentsPlaceholders.ll
M llvm/test/CodeGen/SPIRV/transcoding/spirv-event-null.ll
A llvm/test/CodeGen/SPIRV/validate/sycl-hier-par-basic.ll
A llvm/test/CodeGen/SPIRV/validate/sycl-tangle-group-algorithms.ll
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update-remat.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/SystemZ/regcoal-undef-lane-4-rm-cp-commuting-def.mir
M llvm/test/CodeGen/SystemZ/regcoal_undefsrc.mir
M llvm/test/CodeGen/Thumb2/mve-intrinsics/vadc.ll
M llvm/test/CodeGen/Thumb2/mve-vadc-vsbc-spill.ll
M llvm/test/CodeGen/WebAssembly/call-indirect.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
M llvm/test/CodeGen/WebAssembly/disable-feature.ll
M llvm/test/CodeGen/WebAssembly/function-pointer64.ll
M llvm/test/CodeGen/WebAssembly/reference-types.ll
M llvm/test/CodeGen/WebAssembly/target-features-attrs.ll
M llvm/test/CodeGen/WebAssembly/target-features-cpus.ll
M llvm/test/CodeGen/WebAssembly/target-features-tls.ll
M llvm/test/CodeGen/X86/avx10_2fptosi_satcvtds.ll
M llvm/test/CodeGen/X86/combine-fabs.ll
M llvm/test/CodeGen/X86/combine-fneg.ll
M llvm/test/CodeGen/X86/fast-isel-expect.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/X86/fp16-libcalls.ll
M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
M llvm/test/CodeGen/X86/freeze-vector.ll
M llvm/test/CodeGen/X86/fsxor-alignment.ll
M llvm/test/CodeGen/X86/load-partial.ll
A llvm/test/CodeGen/X86/no-trap-after-noreturn-fastisel.ll
A llvm/test/CodeGen/X86/pr118934.ll
M llvm/test/CodeGen/X86/pr50609.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-512.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll
M llvm/test/CodeGen/X86/vector-shift-by-select-loop.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-512.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-sub128.ll
M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-512.ll
M llvm/test/CodeGen/X86/vector-shift-shl-sub128.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
M llvm/test/CodeGen/X86/vpdpwssd.ll
M llvm/test/CodeGen/X86/widen_conv-3.ll
A llvm/test/Instrumentation/HeapProfiler/memprof-options.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse41-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse41-intrinsics-i386.ll
A llvm/test/MC/AMDGPU/gfx11_asm_vinterp.s
A llvm/test/MC/AMDGPU/gfx11_asm_vinterp_alias.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopc-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopc.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopcx.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopc-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopc.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopcx.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
A llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx-fake16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
A llvm/test/MC/AMDGPU/gfx11_asm_vopc_alias.s
A llvm/test/MC/AMDGPU/gfx11_asm_vopcx_alias.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx950_asm_features.s
M llvm/test/MC/ARM/invalid-barrier.s
A llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx950_dasm_vop3.txt
M llvm/test/MC/Disassembler/SystemZ/insns-pcrel.txt
M llvm/test/MC/Disassembler/SystemZ/insns.txt
A llvm/test/MC/RISCV/xqcia-invalid.s
A llvm/test/MC/RISCV/xqcia-valid.s
M llvm/test/MC/SystemZ/insn-good-zos-pcrel.s
M llvm/test/MC/SystemZ/insn-good.s
M llvm/test/MC/WebAssembly/extern-functype-intrinsic.ll
M llvm/test/MC/WebAssembly/function-alias.ll
A llvm/test/MC/WebAssembly/init-array.s
M llvm/test/MC/WebAssembly/libcall.ll
A llvm/test/MachineVerifier/RISCV/lit.local.cfg
M llvm/test/MachineVerifier/RISCV/subreg-liveness.mir
A llvm/test/MachineVerifier/test_abd_su.mir
M llvm/test/TableGen/GlobalISelEmitter.td
A llvm/test/TableGen/dag-isel-instrument.td
M llvm/test/TableGen/intrinsic-overload-conflict.td
M llvm/test/ThinLTO/X86/distributed_indexes.ll
M llvm/test/ThinLTO/X86/import_callee_declaration.ll
M llvm/test/Transforms/AggressiveInstCombine/AArch64/or-load.ll
M llvm/test/Transforms/AggressiveInstCombine/X86/or-load.ll
A llvm/test/Transforms/CodeGenPrepare/X86/pr118172.ll
M llvm/test/Transforms/ConstraintElimination/constraint-overflow.ll
M llvm/test/Transforms/ConstraintElimination/gep-arithmetic.ll
A llvm/test/Transforms/ConstraintElimination/trunc.ll
M llvm/test/Transforms/Coroutines/coro-async.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca-opaque-ptr.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-value.ll
M llvm/test/Transforms/Coroutines/coro-retcon-resume-values.ll
M llvm/test/Transforms/Coroutines/coro-swifterror.ll
M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll
M llvm/test/Transforms/GVN/opaque-ptr.ll
M llvm/test/Transforms/GVN/setjmp.ll
A llvm/test/Transforms/GlobalOpt/malloc-promote-addrspace.ll
A llvm/test/Transforms/IndVarSimplify/pr117133.ll
A llvm/test/Transforms/Inline/AArch64/memcpy-constant-size.ll
M llvm/test/Transforms/InstCombine/2007-03-25-BadShiftMask.ll
M llvm/test/Transforms/InstCombine/2009-01-08-AlignAlloca.ll
M llvm/test/Transforms/InstCombine/AArch64/dmb-intrinsics.ll
A llvm/test/Transforms/InstCombine/AMDGPU/lane-index-simplify-demanded-bits.ll
M llvm/test/Transforms/InstCombine/X86/x86-addsub-inseltpoison.ll
M llvm/test/Transforms/InstCombine/X86/x86-addsub.ll
M llvm/test/Transforms/InstCombine/array.ll
M llvm/test/Transforms/InstCombine/assume-align.ll
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume-redundant.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/InstCombine/call-cast-target.ll
A llvm/test/Transforms/InstCombine/canonicalize-const-to-bop.ll
M llvm/test/Transforms/InstCombine/cast_phi.ll
M llvm/test/Transforms/InstCombine/cast_ptr.ll
M llvm/test/Transforms/InstCombine/catchswitch-phi.ll
M llvm/test/Transforms/InstCombine/compare-alloca.ll
M llvm/test/Transforms/InstCombine/compare-unescaped.ll
M llvm/test/Transforms/InstCombine/dependent-ivs.ll
M llvm/test/Transforms/InstCombine/extractvalue.ll
M llvm/test/Transforms/InstCombine/fcmp-fadd-select.ll
M llvm/test/Transforms/InstCombine/fcmp-select.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstCombine/fneg.ll
M llvm/test/Transforms/InstCombine/fpcast.ll
M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll
M llvm/test/Transforms/InstCombine/fptrunc.ll
M llvm/test/Transforms/InstCombine/fsh.ll
M llvm/test/Transforms/InstCombine/gep-addrspace.ll
M llvm/test/Transforms/InstCombine/gep-canonicalize-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-combine-loop-invariant.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-vector-indices.ll
M llvm/test/Transforms/InstCombine/gepphigep.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-binop.ll
M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/icmp-mul.ll
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/inbounds-gep.ll
M llvm/test/Transforms/InstCombine/indexed-gep-compares.ll
M llvm/test/Transforms/InstCombine/intptr1.ll
M llvm/test/Transforms/InstCombine/intptr2.ll
M llvm/test/Transforms/InstCombine/intptr3.ll
M llvm/test/Transforms/InstCombine/intptr4.ll
M llvm/test/Transforms/InstCombine/intptr5.ll
M llvm/test/Transforms/InstCombine/intptr7.ll
M llvm/test/Transforms/InstCombine/known-phi-recurse.ll
M llvm/test/Transforms/InstCombine/load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/lshr.ll
M llvm/test/Transforms/InstCombine/mem-par-metadata-memcpy.ll
M llvm/test/Transforms/InstCombine/memccpy.ll
M llvm/test/Transforms/InstCombine/memcpy_alloca.ll
M llvm/test/Transforms/InstCombine/mempcpy.ll
M llvm/test/Transforms/InstCombine/memset2.ll
M llvm/test/Transforms/InstCombine/minmax-fold.ll
M llvm/test/Transforms/InstCombine/minmax-fp.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/phi-equal-incoming-pointers.ll
M llvm/test/Transforms/InstCombine/phi-timeout.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/pr17827.ll
A llvm/test/Transforms/InstCombine/printf-addrspace.ll
M llvm/test/Transforms/InstCombine/ptr-replace-alloca.ll
M llvm/test/Transforms/InstCombine/ptrmask.ll
M llvm/test/Transforms/InstCombine/remove-loop-phi-multiply-by-zero.ll
M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
M llvm/test/Transforms/InstCombine/select-cmp-br.ll
M llvm/test/Transforms/InstCombine/select-gep.ll
M llvm/test/Transforms/InstCombine/select-value-equivalence.ll
M llvm/test/Transforms/InstCombine/select.ll
A llvm/test/Transforms/InstCombine/shl-twice-constant.ll
M llvm/test/Transforms/InstCombine/sink_sideeffecting_instruction.ll
M llvm/test/Transforms/InstCombine/snprintf-2.ll
M llvm/test/Transforms/InstCombine/snprintf-3.ll
M llvm/test/Transforms/InstCombine/snprintf-4.ll
M llvm/test/Transforms/InstCombine/snprintf.ll
M llvm/test/Transforms/InstCombine/sprintf-1.ll
M llvm/test/Transforms/InstCombine/stpncpy-1.ll
M llvm/test/Transforms/InstCombine/str-int.ll
M llvm/test/Transforms/InstCombine/strlcpy-1.ll
M llvm/test/Transforms/InstCombine/strlen-1.ll
M llvm/test/Transforms/InstCombine/struct-assign-tbaa-2.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/InstCombine/sub.ll
M llvm/test/Transforms/InstCombine/unordered-fcmp-select.ll
M llvm/test/Transforms/InstCombine/unpack-fca.ll
M llvm/test/Transforms/InstCombine/unsigned_saturated_sub.ll
M llvm/test/Transforms/InstCombine/vec_gep_scalar_arg-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vec_gep_scalar_arg.ll
M llvm/test/Transforms/InstCombine/vscale_gep.ll
M llvm/test/Transforms/InstCombine/wcslen-1.ll
M llvm/test/Transforms/InstCombine/wcslen-3.ll
M llvm/test/Transforms/InstCombine/wcslen-5.ll
M llvm/test/Transforms/InstSimplify/ConstProp/abs.ll
M llvm/test/Transforms/InstSimplify/compare.ll
M llvm/test/Transforms/InstSimplify/gep.ll
M llvm/test/Transforms/InstSimplify/icmp-monotonic.ll
A llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling.ll
M llvm/test/Transforms/LoopUnroll/AArch64/runtime-unroll-generic.ll
A llvm/test/Transforms/LoopUnroll/ARM/lob-unroll.ll
M llvm/test/Transforms/LoopUnroll/ARM/upperbound.ll
M llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
M llvm/test/Transforms/LoopUnroll/peel-loop.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll
M llvm/test/Transforms/LoopUnroll/unroll-cleanup.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
A llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-vectorization-cost-tuning.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-vf-hint.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-strict-fadd-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-no-scalar-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-zext-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
M llvm/test/Transforms/LoopVectorize/histograms.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
A llvm/test/Transforms/LoopVectorize/interleave-with-i65-induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-3.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
A llvm/test/Transforms/LoopVectorize/load-deref-pred-neg-off.ll
M llvm/test/Transforms/LoopVectorize/loop-scalars.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/runtime-check.ll
M llvm/test/Transforms/LoopVectorize/scalar_after_vectorization.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/LoopVectorize/vector-geps.ll
M llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM1.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/dot-product-transpose-int.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
A llvm/test/Transforms/LowerMatrixIntrinsics/transpose-opts-lifting-constant-folds.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/transpose-opts-lifting.ll
A llvm/test/Transforms/MemCpyOpt/memset-memmove-redundant-memmove.ll
A llvm/test/Transforms/MergeFunc/initializes-attr.ll
M llvm/test/Transforms/ObjCARC/allocas.ll
M llvm/test/Transforms/ObjCARC/basic.ll
M llvm/test/Transforms/ObjCARC/cfg-hazards.ll
M llvm/test/Transforms/ObjCARC/contract-testcases.ll
M llvm/test/Transforms/ObjCARC/empty-block.ll
M llvm/test/Transforms/ObjCARC/path-overflow.ll
A llvm/test/Transforms/PGOProfile/loop_entries_gen.ll
A llvm/test/Transforms/PGOProfile/loop_entries_use.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/loopflatten.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
A llvm/test/Transforms/PhaseOrdering/AArch64/memcpy-constant-size.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/predicated-reduction.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sinking-vs-if-conversion.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mean_q7.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
M llvm/test/Transforms/PhaseOrdering/SystemZ/sub-xor.ll
M llvm/test/Transforms/PhaseOrdering/X86/excessive-unrolling.ll
M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions2.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions3.ll
M llvm/test/Transforms/PhaseOrdering/X86/pixel-splat.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr38280.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr50555.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr94546.ll
M llvm/test/Transforms/PhaseOrdering/X86/preserve-access-group.ll
M llvm/test/Transforms/PhaseOrdering/X86/simplifycfg-late.ll
M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
M llvm/test/Transforms/PhaseOrdering/X86/spurious-peeling.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
M llvm/test/Transforms/PhaseOrdering/X86/vec-load-combine.ll
M llvm/test/Transforms/PhaseOrdering/X86/vec-shift.ll
M llvm/test/Transforms/PhaseOrdering/X86/vector-reduction-known-first-value.ll
M llvm/test/Transforms/PhaseOrdering/basic.ll
M llvm/test/Transforms/PhaseOrdering/bitcast-store-branch.ll
M llvm/test/Transforms/PhaseOrdering/dce-after-argument-promotion-loads.ll
M llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
M llvm/test/Transforms/PhaseOrdering/gvn-replacement-vs-hoist.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
M llvm/test/Transforms/PhaseOrdering/lto-argpromotion-ipsccp.ll
M llvm/test/Transforms/PhaseOrdering/lto-licm.ll
M llvm/test/Transforms/PhaseOrdering/pr39282.ll
M llvm/test/Transforms/PhaseOrdering/pr98799-inline-simplifycfg-ub.ll
M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
M llvm/test/Transforms/PhaseOrdering/simplifycfg-options.ll
M llvm/test/Transforms/PhaseOrdering/single-iteration-loop-sroa.ll
M llvm/test/Transforms/PhaseOrdering/switch_with_geps.ll
M llvm/test/Transforms/Reassociate/2011-01-26-UseAfterFree.ll
M llvm/test/Transforms/Reassociate/2012-06-08-InfiniteLoop.ll
M llvm/test/Transforms/Reassociate/add_across_block_crash.ll
M llvm/test/Transforms/Reassociate/infloop-deadphi.ll
M llvm/test/Transforms/Reassociate/reassociate-landingpad.ll
M llvm/test/Transforms/RewriteStatepointsForGC/intrinsics.ll
M llvm/test/Transforms/SCCP/2004-12-10-UndefBranchBug.ll
M llvm/test/Transforms/SCCP/2006-10-23-IPSCCP-Crash.ll
M llvm/test/Transforms/SCCP/2008-01-27-UndefCorrelate.ll
M llvm/test/Transforms/SCCP/PR26044.ll
M llvm/test/Transforms/SCCP/conditions-iter-order.ll
M llvm/test/Transforms/SCCP/crash.ll
M llvm/test/Transforms/SCCP/domtree-update.ll
M llvm/test/Transforms/SCCP/fp-bc-icmp-const-fold.ll
A llvm/test/Transforms/SCCP/gep-nuw.ll
M llvm/test/Transforms/SCCP/ipsccp-preserve-pdt.ll
M llvm/test/Transforms/SCCP/ipsccp-ssa-copy-nested-conds.ll
M llvm/test/Transforms/SCCP/pr45185-range-predinfo.ll
M llvm/test/Transforms/SCCP/pr49582-iterator-invalidation.ll
M llvm/test/Transforms/SCCP/return-zapped.ll
M llvm/test/Transforms/SCCP/solve-after-each-resolving-undefs-for-function.ll
M llvm/test/Transforms/SCCP/switch-constantfold-crash.ll
M llvm/test/Transforms/SCCP/widening.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-cost.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-reduce.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reorder-fmuladd-crash.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/reductions-fadd.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/reductions-fmin-fmax.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/reductions-fmul.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
M llvm/test/Transforms/SLPVectorizer/WebAssembly/no-vectorize-rotate.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_7zip.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_bullet.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_bullet3.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_dequeue.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_flop7.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_lencod-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_lencod.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_mandeltext.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_sim4b1.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_smallpt.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_vectorizeTree.ll
M llvm/test/Transforms/SLPVectorizer/X86/cse.ll
M llvm/test/Transforms/SLPVectorizer/X86/memory-runtime-checks.ll
M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/X86/no-scheduled-instructions.ll
M llvm/test/Transforms/SLPVectorizer/X86/opt.ll
M llvm/test/Transforms/SLPVectorizer/X86/ordering.ll
M llvm/test/Transforms/SLPVectorizer/X86/partail.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi_overalignedtype.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr16571.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_unsupported.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_repeated_ops.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_with_reordered_users.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/reuse-extracts-in-wider-vect.ll
M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
A llvm/test/Transforms/SLPVectorizer/X86/store-constant.ll
M llvm/test/Transforms/SLPVectorizer/X86/value-bug-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/value-bug.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
M llvm/test/Transforms/SLPVectorizer/slp-umax-rdx-matcher-crash.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-instcombine.ll
M llvm/test/Transforms/Scalarizer/crash-bug.ll
M llvm/test/Transforms/Scalarizer/dbgloc-bug-inseltpoison.ll
M llvm/test/Transforms/Scalarizer/dbgloc-bug.ll
M llvm/test/Transforms/Scalarizer/phi-unreachable-pred.ll
M llvm/test/Transforms/SimpleLoopUnswitch/2011-06-02-CritSwitch.ll
M llvm/test/Transforms/SimpleLoopUnswitch/2012-04-30-LoopUnswitch-LPad-Crash.ll
M llvm/test/Transforms/SimpleLoopUnswitch/2015-09-18-Addrspace.ll
M llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/uniform-unswitch.ll
M llvm/test/Transforms/SimpleLoopUnswitch/delete-dead-blocks.ll
M llvm/test/Transforms/SimpleLoopUnswitch/formDedicatedAfterTrivial1.ll
M llvm/test/Transforms/SimpleLoopUnswitch/guards.ll
M llvm/test/Transforms/SimpleLoopUnswitch/pr37888.ll
M llvm/test/Transforms/SimpleLoopUnswitch/preserve-analyses.ll
M llvm/test/Transforms/SimplifyCFG/2004-12-10-SimplifyCFGCrash.ll
M llvm/test/Transforms/SimplifyCFG/2006-06-12-InfLoop.ll
M llvm/test/Transforms/SimplifyCFG/Hexagon/switch-to-lookup-table.ll
M llvm/test/Transforms/SimplifyCFG/branch-on-undef.ll
M llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
M llvm/test/Transforms/SimplifyCFG/pr34131.ll
M llvm/test/Transforms/Sink/dead-user.ll
M llvm/test/Transforms/SpeculativeExecution/PR46267.ll
M llvm/test/Transforms/StructurizeCFG/loop-continue-phi.ll
A llvm/test/tools/llvm-mca/AArch64/Cortex/X1-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/X2-sve-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/X3-sve-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/X4-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/512tvb-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-zero-lat-movs.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vmv.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveP600/vmv.s
M llvm/test/tools/llvm-objdump/ELF/AArch64/mattr.s
M llvm/test/tools/llvm-readobj/ELF/reloc-types-aarch64.test
M llvm/test/tools/yaml2obj/ELF/note-section.yaml
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/unittests/ExecutionEngine/JITLink/AArch32ErrorTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/EHFrameSupportTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/JITLinkTestUtils.cpp
M llvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/MachOLinkGraphTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/MemoryManagerErrorTests.cpp
M llvm/unittests/ExecutionEngine/JITLink/StubsTests.cpp
M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
M llvm/unittests/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/MapperJITLinkMemoryManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/ObjectLinkingLayerTest.cpp
M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp
M llvm/unittests/IR/InstructionsTest.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
M llvm/unittests/Support/DebugTest.cpp
M llvm/unittests/Support/YAMLIOTest.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/Transforms/Utils/UnrollLoopTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
M llvm/utils/gn/secondary/bolt/unittests/Core/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Serialization/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/AST/ByteCode/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/Serialization/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Shared/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
M llvm/utils/lldbDataFormatters.py
A llvm/utils/merge-json.py
M llvm/utils/vim/ftplugin/llvm.vim
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir-c/Pass.h
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
R mlir/include/mlir/Dialect/Func/Transforms/DecomposeCallGraphTypes.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/include/mlir/IR/OpImplementation.h
A mlir/include/mlir/IR/VectorTypes.h
M mlir/include/mlir/Interfaces/DestinationStyleOpInterface.td
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Bindings/Python/Pass.cpp
M mlir/lib/CAPI/IR/Pass.cpp
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
M mlir/lib/Dialect/Func/Transforms/CMakeLists.txt
R mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SCF/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.h
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/python/mlir/_mlir_libs/_mlir/passmanager.pyi
M mlir/python/mlir/dialects/func.py
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-unsupported.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/ArmSME/vector-legalization.mlir
M mlir/test/Dialect/GPU/canonicalize.mlir
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/Linalg/decompose-tensor-pack.mlir
M mlir/test/Dialect/Linalg/decompose-tensor-unpack.mlir
M mlir/test/Dialect/Linalg/transform-ops-invalid.mlir
M mlir/test/Dialect/Linalg/vectorize-tensor-extract-masked.mlir
M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir
M mlir/test/Dialect/SCF/invalid.mlir
M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/SPIRV/IR/memory-ops.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Tensor/invalid.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-sections.mlir
M mlir/test/Target/LLVMIR/openmp-wsloop-reduction-cleanup.mlir
M mlir/test/Transforms/decompose-call-graph-types.mlir
A mlir/test/Transforms/invalid-outer-loop-size.mlir
M mlir/test/Transforms/remove-dead-values.mlir
M mlir/test/Transforms/test-legalizer.mlir
M mlir/test/lib/Dialect/Func/TestDecomposeCallGraphTypes.cpp
M mlir/test/lib/Dialect/SCF/TestLoopParametricTiling.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
M mlir/test/mlir-tblgen/op-default-builder.td
M mlir/test/python/dialects/func.py
M mlir/test/python/pass_manager.py
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/unittests/Target/LLVM/CMakeLists.txt
M offload/CMakeLists.txt
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/src/Misc.cpp
M offload/DeviceRTL/src/exports
M offload/cmake/OpenMPTesting.cmake
A offload/include/Shared/RPCOpcodes.h
A offload/liboffload/API/APIDefs.td
A offload/liboffload/API/CMakeLists.txt
A offload/liboffload/API/Common.td
A offload/liboffload/API/Device.td
A offload/liboffload/API/OffloadAPI.td
A offload/liboffload/API/Platform.td
A offload/liboffload/API/README.md
A offload/liboffload/CMakeLists.txt
A offload/liboffload/README.md
A offload/liboffload/exports
A offload/liboffload/include/OffloadImpl.hpp
A offload/liboffload/include/generated/OffloadAPI.h
A offload/liboffload/include/generated/OffloadEntryPoints.inc
A offload/liboffload/include/generated/OffloadFuncs.inc
A offload/liboffload/include/generated/OffloadImplFuncDecls.inc
A offload/liboffload/include/generated/OffloadPrint.hpp
A offload/liboffload/src/Helpers.hpp
A offload/liboffload/src/OffloadImpl.cpp
A offload/liboffload/src/OffloadLib.cpp
M offload/plugins-nextgen/CMakeLists.txt
M offload/plugins-nextgen/amdgpu/CMakeLists.txt
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/CMakeLists.txt
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/common/src/RPC.cpp
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
M offload/src/interface.cpp
M offload/src/omptarget.cpp
M offload/test/CMakeLists.txt
M offload/test/api/omp_env_vars.c
A offload/test/api/omp_host_call.c
R offload/test/libc/host_call.c
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
M offload/test/mapping/map_both_pointer_pointee.c
R offload/test/mapping/power_of_two_alignment.c
A offload/test/mapping/power_of_two_alignment.cpp
M offload/test/offloading/info.c
M offload/test/offloading/ompx_bare.c
A offload/test/offloading/ompx_bare_multi_dim.cpp
M offload/test/offloading/small_trip_count.c
M offload/test/offloading/small_trip_count_thread_limit.cpp
A offload/test/tools/offload-tblgen/default_returns.td
A offload/test/tools/offload-tblgen/entry_points.td
A offload/test/tools/offload-tblgen/functions_basic.td
A offload/test/tools/offload-tblgen/functions_code_loc.td
A offload/test/tools/offload-tblgen/functions_ranged_param.td
A offload/test/tools/offload-tblgen/print_enum.td
A offload/test/tools/offload-tblgen/print_function.td
A offload/test/tools/offload-tblgen/type_tagged_enum.td
A offload/tools/offload-tblgen/APIGen.cpp
A offload/tools/offload-tblgen/CMakeLists.txt
A offload/tools/offload-tblgen/EntryPointGen.cpp
A offload/tools/offload-tblgen/FuncsGen.cpp
A offload/tools/offload-tblgen/GenCommon.hpp
A offload/tools/offload-tblgen/Generators.hpp
A offload/tools/offload-tblgen/PrintGen.cpp
A offload/tools/offload-tblgen/RecordTypes.hpp
A offload/tools/offload-tblgen/offload-tblgen.cpp
M offload/unittests/CMakeLists.txt
A offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/common/Environment.cpp
A offload/unittests/OffloadAPI/common/Environment.hpp
A offload/unittests/OffloadAPI/common/Fixtures.hpp
A offload/unittests/OffloadAPI/device/olDeviceInfo.hpp
A offload/unittests/OffloadAPI/device/olGetDevice.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceCount.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
A offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatform.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformCount.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformInfo.cpp
A offload/unittests/OffloadAPI/platform/olGetPlatformInfoSize.cpp
A offload/unittests/OffloadAPI/platform/olPlatformInfo.hpp
A openmp/Maintainers.md
M runtimes/CMakeLists.txt
M utils/bazel/llvm-project-overlay/bolt/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm_configs/abi-breaking.h.cmake
Log Message:
-----------
Rebase
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/de75b1bcb4fc...71b17b0167cc
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list