[all-commits] [llvm/llvm-project] 9144fe: [mlir] Add option for a cleanup pattern set to SCF...
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Wed Oct 9 12:22:43 PDT 2024
Branch: refs/heads/users/alexey-bataev/spr/slpinitial-support-for-non-power-of-2-but-whole-reg-vectorization-for-stores
Home: https://github.com/llvm/llvm-project
Commit: 9144fed31b59089f4e3e5fedf7eb87d2695ef843
https://github.com/llvm/llvm-project/commit/9144fed31b59089f4e3e5fedf7eb87d2695ef843
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/test/Dialect/Linalg/transform-op-fuse.mlir
Log Message:
-----------
[mlir] Add option for a cleanup pattern set to SCF tiling helper (#109554)
The SCF helper for tiling an operation implementing the TilingInterface
and greedily fusing consumers requires an uninterrupted chain of
operations implementing the tiling interface to succeed. There can be
cases with intermediate ops that don't implement the interface but have
producers that could be fused if various canonicalization/simplification
patterns could run in between fusion steps.
This adds an option to SCFTileAndFuseOptions for a pattern set to run
between fusion steps to the ops that result from fusion/tiling. Removed
and newly inserted slices are tracked for continued fusion applications.
See this RFC for more discussion:
https://discourse.llvm.org/t/rfc-split-fusion-portions-of-the-tilinginterface-into-a-new-interface/81155
Commit: 1e75d08659aeb1aabf92b59f33649c414d4ff8b7
https://github.com/llvm/llvm-project/commit/1e75d08659aeb1aabf92b59f33649c414d4ff8b7
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/radians.ll
Log Message:
-----------
[DXIL] Add radians intrinsic (#110616)
makes progress on #99151
### Changes
- Added int_dx_radians intrinsic in IntrinsicsDirectX.td
- Added expansion for int_dx_radians in DXILIntrinsicExpansion.cpp`
- Added DXIL backend test case
### Related PRs
* [[clang][HLSL] Add radians intrinsic
#110802](https://github.com/llvm/llvm-project/pull/110802)
* [[SPIRV] Add radians intrinsic
#110800](https://github.com/llvm/llvm-project/pull/110800)
Commit: 3b88805ca20018ae202afd3aea39f4fa856a8c64
https://github.com/llvm/llvm-project/commit/3b88805ca20018ae202afd3aea39f4fa856a8c64
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
A llvm/test/CodeGen/AMDGPU/commute-op-sel.mir
A llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
A llvm/test/CodeGen/AMDGPU/sdwa-cse.mir
Log Message:
-----------
[AMDGPU] Fix SDWA commuting (#106920)
SDWA insts miss reverse opcode, which causes them to be treated as
commutable with default reverse opcode i.e. their own opcode. As a
result, SWDA F16 sub A, B and Sub B, A are merged by machine CSE. The
correct behavior is to merged sub A, B and subrev B, A instead of sub B,
A. This issues caused failures in rocFFT tests.
Another issue is that src0_sel and src1_sel are not swapped when SDWA
insts are commuted.
Verified that this fixes rocFFT tests failure.
Commit: 72f38040ddc8c2eca712c29b86ea0209faab4d57
https://github.com/llvm/llvm-project/commit/72f38040ddc8c2eca712c29b86ea0209faab4d57
Author: Renaud Kauffmann <rkauffmann at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M flang/include/flang/Runtime/CUDA/common.h
M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
Log Message:
-----------
Removing CUF runtime dependency with llvm::EnableABIBreakingChecks (#111200)
getMemType happens to only be used in CufOpConversion.cpp. So, moving it
here for now. If it needs to be shared with the runtime, then care
should be taken in not bringing the include `#include
"flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h"` which introduces the
dependency with llvm::EnableABIBreakingChecks
Commit: e31e6f259ed22acfb2135700cb0482f84d6ea386
https://github.com/llvm/llvm-project/commit/e31e6f259ed22acfb2135700cb0482f84d6ea386
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/TableGen/Error.cpp
M llvm/test/TableGen/assert.td
Log Message:
-----------
[TableGen] Print assert message inline with assert failure (#111184)
Print assert message after the "assertion failed" message instead of
printing it as a separate note. This makes the assert failure reporting
less verbose and also more useful to see the failure message inline with
the "assertion failed" message.
Commit: 2a65f081b6111a8ed78e679d4612c32c1511c3f9
https://github.com/llvm/llvm-project/commit/2a65f081b6111a8ed78e679d4612c32c1511c3f9
Author: Youngsuk Kim <youngsuk.kim at hpe.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
[llvm][OpenMPIRBuilderTest] Avoid Type::getPointerTo() (NFC) (#111196)
`llvm::Type::getPointerTo()` is to be deprecated & removed soon.
Commit: 4f3a0959d62c81146a02dab80f761ccb921291e6
https://github.com/llvm/llvm-project/commit/4f3a0959d62c81146a02dab80f761ccb921291e6
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111187)
Commit: b2f3ac836aac166b8fb21690a0a480c816de0521
https://github.com/llvm/llvm-project/commit/b2f3ac836aac166b8fb21690a0a480c816de0521
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Analysis/MemoryProfileInfo.cpp
Log Message:
-----------
[memprof] Teach createMIBNode to take ArrayRef (NFC) (#111195)
createMIBNode does not modify MIBCallStack, so we can take ArrayRef
instead.
While I am at it, this patch changes the type of MIBPayload to
SmallVector. We put at most three elements, so we can avoid a heap
allocation.
Commit: fda2fea3d161e07ec3a8441359f761ce9dd9a977
https://github.com/llvm/llvm-project/commit/fda2fea3d161e07ec3a8441359f761ce9dd9a977
Author: Manasij Mukherjee <manasij7479 at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/vector-returns.ll
Log Message:
-----------
[NVPTX] Promote v2i8 to v2i16 (#111189)
Promote v2i8 to v2i16, fixes a crash.
Re-enable a test in NVPTX/vector-returns.ll
https://github.com/llvm/llvm-project/issues/104864
Commit: c029702f82a494053b23f10886fdc319751cd193
https://github.com/llvm/llvm-project/commit/c029702f82a494053b23f10886fdc319751cd193
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111208)
Commit: ed5088a2717e5c67499ea25937e430e68d567fa7
https://github.com/llvm/llvm-project/commit/ed5088a2717e5c67499ea25937e430e68d567fa7
Author: vporpo <vporpodas at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111213)
Also moves CmpInst definitions from Context.cpp to Instruction.cpp
Commit: d0d0c4d5a0e3c4dd7fa480e6222cfd40d44d1e7e
https://github.com/llvm/llvm-project/commit/d0d0c4d5a0e3c4dd7fa480e6222cfd40d44d1e7e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Use PatGprImm to simplify some isel patterns. NFC
Commit: 7692d106b480a16861f5ed63378ec1b857a20bc1
https://github.com/llvm/llvm-project/commit/7692d106b480a16861f5ed63378ec1b857a20bc1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Remove dead code + use nlogn lookups instead of n^2
Commit: 9df94e2791a0939f562d2d77f5d611e6ff37f5f9
https://github.com/llvm/llvm-project/commit/9df94e2791a0939f562d2d77f5d611e6ff37f5f9
Author: Adam Yang <hanbyang at microsoft.com>
Date: 2024-10-04 (Fri, 04 Oct 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
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/radians.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
Log Message:
-----------
[clang][HLSL] Add radians intrinsic (#110802)
partially fixes #99151
### Changes
* Implemented `radians` clang builtin
* Linked `radians` clang builtin with `hlsl_intrinsics.h`
* Added sema checks for `radians` to `CheckHLSLBuiltinFunctionCall` in
`SemaChecking.cpp`
* Add codegen for `radians` to `EmitHLSLBuiltinExpr` in `CGBuiltin.cpp`
* Add codegen tests to `clang/test/CodeGenHLSL/builtins/radians.hlsl`
* Add sema tests to `clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl`
### Related PRs
* [[DXIL] Add radians intrinsic
#110616](https://github.com/llvm/llvm-project/pull/110616)
* [[SPIRV] Add radians intrinsic
#110800](https://github.com/llvm/llvm-project/pull/110800)
Commit: 50838851e82281635deacd017273947d9259f8fe
https://github.com/llvm/llvm-project/commit/50838851e82281635deacd017273947d9259f8fe
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M libc/docs/gpu/using.rst
Log Message:
-----------
[libc][docs] Update NVPTX using documentation now that linking works
Summary:
I added a wrapper linker awhile back but this still says it doesn't
work.
Commit: 765d7e7a47f971e78f6fa5477309591512ea4747
https://github.com/llvm/llvm-project/commit/765d7e7a47f971e78f6fa5477309591512ea4747
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/IR/Attributes.cpp
Log Message:
-----------
[IR] Fix '-Wparentheses' warnings. NFC
Commit: e5b05a51b8151cc7788bbdea4d491e5ccfceedea
https://github.com/llvm/llvm-project/commit/e5b05a51b8151cc7788bbdea4d491e5ccfceedea
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Handle template closer followed by braces (#110971)
Fixes #110968.
Commit: b5f6689dc93216f9272e790e787548cf29250566
https://github.com/llvm/llvm-project/commit/b5f6689dc93216f9272e790e787548cf29250566
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Annotate ::operator as FunctionDeclarationName (#111115)
Fixes #111011.
Commit: e6549b8036089f20c6ac01e644a544aa2b231ca8
https://github.com/llvm/llvm-project/commit/e6549b8036089f20c6ac01e644a544aa2b231ca8
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/CodeGen/RISCV/rv64zba.ll
Log Message:
-----------
[RISCV][ISel] Allow emitting `addiw` with u32simm12 rhs (#111116)
In InstCombine, we shrink the constant by setting unused bits to zero
(e.g. `((X + -2) & 4294967295) -> ((X + 4294967294) & 4294967295)`).
However, this canonicalization blocks emitting `addiw` and creates
redundant li for simm32 rhs:
```
; bin/llc -mtriple=riscv64 -mattr=+zba test.ll -o -
define i64 @add_u32simm32_zextw(i64 %x) nounwind {
entry:
%add = add i64 %x, 4294967294
%and = and i64 %add, 4294967295
ret i64 %and
}
```
```
add_u32simm32_zextw: # @add_u32simm32_zextw
# %bb.0: # %entry
li a1, -2
add a0, a0, a1
zext.w a0, a0
ret
```
This patch addresses the issue by matching u32simm12 rhs.
Commit: bf895c714e1f8a51c1e565a75acf60bf7197be51
https://github.com/llvm/llvm-project/commit/bf895c714e1f8a51c1e565a75acf60bf7197be51
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[RISCV] Bump hwprobe support to Linux 6.11 (#108578)
This patch is the follow-up of
https://github.com/llvm/llvm-project/pull/94352 with some updates:
1. Add support for more extensions for `zve*`, `zimop`, `zc*`, `zcmop`
and `zawrs`.
2. Use `RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF` to check whether the
processor supports fast misaligned scalar memory access.
https://github.com/llvm/llvm-project/pull/108551 reminds me that the
patch
https://lore.kernel.org/all/20240809214444.3257596-1-evan@rivosinc.com/T/
has been merged. Address comment
https://github.com/llvm/llvm-project/pull/94352#discussion_r1626056015.
References:
1. constants:
https://github.com/torvalds/linux/blame/v6.11-rc7/arch/riscv/include/uapi/asm/hwprobe.h
2. https://docs.kernel.org/arch/riscv/hwprobe.html
3. Related commits:
1. `zve*` support:
https://github.com/torvalds/linux/commit/de8f8282a969d0b7342702f355886aab3b14043d
2. `zimop` support:
https://github.com/torvalds/linux/commit/36f8960de887a5e2811c5d1c0517cfa6f419c1c4
3. `zc*` support:
https://github.com/torvalds/linux/commit/0ad70db5eb21e50ed693fa274bea0346de453e29
4. `zcmop` support:
https://github.com/torvalds/linux/commit/fc078ea317cc856c1e82997da7e8fd4d6da7aa29
5. `zawrs` support:
https://github.com/torvalds/linux/commit/244c18fbf64a33d152645766a033b2935ab0acb5
6. scalar misaligned perf:
https://github.com/torvalds/linux/commit/c42e2f076769c9c1bc5f3f0aa1c2032558e76647
and
https://github.com/torvalds/linux/commit/1f5288874de776412041022607513ffac74ae1a6
Commit: 9e862ae3219b09283971ca0ced52a64b0d6db86b
https://github.com/llvm/llvm-project/commit/9e862ae3219b09283971ca0ced52a64b0d6db86b
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M lld/MachO/SyntheticSections.cpp
A lld/test/MachO/icf-safe-thunks-dwarf.ll
Log Message:
-----------
[lld-macho] Fix invalid DWARF with --icf=safe_thunks (#111097)
There is a bug in the current implementation of `--icf=safe_thunks`
where a STABS entry is emitted for generated thunks. This is problematic
as we end up generating invalid DWARF as dsymutil will think the entire
function body is at the thunk location, when in actuality there will
only be a single branch present. This will end up causing overlapping
DWARF entries.
To fix this we never generate STABS entries for such thunks.
The existing `--icf=safe_thunks` test is updated to also generate debug
info and we add a check that no corrupt DWARF is generated.
As a future TODO we need to make `--keep-icf-stabs` compatible with
`--icf=safe_thunks`.
Commit: 9766ce4db57212646f135fe7033972a7a51aef4d
https://github.com/llvm/llvm-project/commit/9766ce4db57212646f135fe7033972a7a51aef4d
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M compiler-rt/lib/lsan/lsan_common.cpp
M compiler-rt/lib/lsan/lsan_flags.inc
Log Message:
-----------
[lsan] Add `thread_suspend_fail` flag
Commit: f6fd7b24c5955ce772f1afa4314a2d3434c458d5
https://github.com/llvm/llvm-project/commit/f6fd7b24c5955ce772f1afa4314a2d3434c458d5
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[NFC][lsan] Add SuspendAllThreads traces
Commit: 574266ce3381ad734c995d653a7cabd9d4d53447
https://github.com/llvm/llvm-project/commit/574266ce3381ad734c995d653a7cabd9d4d53447
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-04 (Fri, 04 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-signmask.ll
M llvm/test/Transforms/InstCombine/icmp.ll
Log Message:
-----------
Revert "[InstCombine] Folding `(icmp eq/ne (and X, -P2), INT_MIN)`" (#111236)
Reverts #110880 because of exposed issue is Msan instrumentation
#111212.
This reverts commit a64643688526114b50c25b3eda8a57855bd2be87.
Commit: 554eaec63908ed20c35c8cc85304a3d44a63c634
https://github.com/llvm/llvm-project/commit/554eaec63908ed20c35c8cc85304a3d44a63c634
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
A llvm/test/Analysis/CostModel/RISCV/fixed-vector-insert-subvector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll
Log Message:
-----------
[RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is multiple insert subvector. (#110457)
Commit: 835b5e278e525dc628d4d0c085eb272996aed466
https://github.com/llvm/llvm-project/commit/835b5e278e525dc628d4d0c085eb272996aed466
Author: Tom Yang <zhenyutyang at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lldb/source/Commands/CommandObjectSession.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/InterpreterProperties.td
M lldb/test/API/commands/session/save/TestSessionSave.py
Log Message:
-----------
Add warning message to `session save` when transcript isn't saved. (#109020)
Somewhat recently, we made the change to hide the behavior to save LLDB
session history to the transcript buffer behind the flag
`interpreter.save-transcript`. By default, `interpreter.save-transcript`
is false. See #90703 for context.
I'm making a small update here to our `session save` messaging and some
help docs to clarify for users that aren't aware of this change. Maybe
`interpreter.save-transcript` could be true by default as well. Any
feedback welcome.
# Tests
```
bin/lldb-dotest -p TestSessionSave
```
---------
Co-authored-by: Tom Yang <toyang at fb.com>
Commit: 91fdfec263ff2b8e88433c4294a550cabb0f2314
https://github.com/llvm/llvm-project/commit/91fdfec263ff2b8e88433c4294a550cabb0f2314
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
M llvm/utils/TableGen/IntrinsicEmitter.cpp
Log Message:
-----------
[NFC][TableGen] Change `CodeGenIntrinsics` to use const references (#111219)
Change `CodeGenIntrinsics` classes to vend out const references to
`CodeGenIntrinsic` or `TargetSet` objects.
Commit: 22089dc91d6e48649412764c34c0140eea0a795b
https://github.com/llvm/llvm-project/commit/22089dc91d6e48649412764c34c0140eea0a795b
Author: David Green <david.green at arm.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
A llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
Log Message:
-----------
[Instcombine] Test for more gep canonicalization
Commit: 0548481856e75998e1de329f5c9722dcf1ca5c84
https://github.com/llvm/llvm-project/commit/0548481856e75998e1de329f5c9722dcf1ca5c84
Author: David Green <david.green at arm.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
Log Message:
-----------
[InstCombine] Update and-or-icmps.ll after 574266ce3381ad734c995d653a7cabd9d4d53447. NFC
Commit: 1789534ac1ac95f9a3369625e331b9a446be60d9
https://github.com/llvm/llvm-project/commit/1789534ac1ac95f9a3369625e331b9a446be60d9
Author: David Green <david.green at arm.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
A llvm/test/CodeGen/AArch64/selectopt-const.ll
Log Message:
-----------
[SelectOpt] Don't convert constant selects to branches. (#110858)
Selects that choose between two constants will be less profitable to
turn into branches, especially if the constants can be folded somehow
into the surrounding instructions. They will also be cost modelled in a
way that can make them over-optimistically converted to branches, as
neither branch will have a latency depth but the constants still need to
be materialized.
This patch disabled selectopt for selects with two constant branches. It
is currently in the target independent part, as it sounds generic, but I
could move it into AArch64 if needed.
Commit: fba6c887c110a501b311f6b01721eaf3a5dd994e
https://github.com/llvm/llvm-project/commit/fba6c887c110a501b311f6b01721eaf3a5dd994e
Author: Pavel Skripkin <paskripkin at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/test/Analysis/builtin_overflow.c
Log Message:
-----------
[analyzer] Fix wrong `builtin_*_overflow` return type (#111253)
`builtin_*_overflow` functions return `_Bool` according to [1].
`BuiltinFunctionChecker` was using `makeTruthVal` w/o specifying
explicit type, which creates an `int` value, since it's the type of any
compassion according to C standard.
Fix it by directly passing `BoolTy` to `makeTruthVal`
Closes: #111147
[1]
https://clang.llvm.org/docs/LanguageExtensions.html#checked-arithmetic-builtins
Commit: 4e5f8a8f0bf855fdac93fa09b4b82b69339235b9
https://github.com/llvm/llvm-project/commit/4e5f8a8f0bf855fdac93fa09b4b82b69339235b9
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
Log Message:
-----------
[clang][bytecode] Save a per-Block IsWeak bit (#111248)
Checking the decl for every load is rather expensive.
Commit: 4425dfba6a1f394e958e94aa471a07bcf707136a
https://github.com/llvm/llvm-project/commit/4425dfba6a1f394e958e94aa471a07bcf707136a
Author: Hongren Zheng <i at zenithal.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Polynomial/IR/PolynomialAttributes.td
M mlir/lib/Dialect/Polynomial/IR/PolynomialAttributes.cpp
M mlir/test/Dialect/Polynomial/attributes.mlir
Log Message:
-----------
[mlir][polynomial] Add and verify constraints of coefficientModulus for ringAttr (#111016)
Currently the semantic of coefficientModulus is unclear and a lowering
of it faces uncertainty, for example,
https://github.com/google/heir/pull/995#issuecomment-2387394895
Also, it lacks a verifier which should conform to the definition in the
document.
This PR tries to further define the semantic of coefficientModulus and
adds a verifier for it.
Cc @j2kun for review and suggestions.
Commit: c57418037a002f4c5f19339837cc37e3a8f4ecb8
https://github.com/llvm/llvm-project/commit/c57418037a002f4c5f19339837cc37e3a8f4ecb8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/builtins.cpp
Log Message:
-----------
[clang][bytecode] Handle UETT_OpenMPRequiredSimdAlign (#111259)
Commit: 87d199ff243ff25b06d68a529815519901e8294f
https://github.com/llvm/llvm-project/commit/87d199ff243ff25b06d68a529815519901e8294f
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lld/ELF/Relocations.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Relocations
Commit: 53a1fb0cd73382498fe79f95521c350409fd40b9
https://github.com/llvm/llvm-project/commit/53a1fb0cd73382498fe79f95521c350409fd40b9
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.h
M lld/ELF/InputSection.cpp
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx &
Commit: 020b8e8f8dfef2392351e66215d11cccb573a88f
https://github.com/llvm/llvm-project/commit/020b8e8f8dfef2392351e66215d11cccb573a88f
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/test/AST/ByteCode/builtins.cpp
Log Message:
-----------
[clang][test] Remove a broken bytecode test
See e.g. https://lab.llvm.org/buildbot/#/builders/13/builds/2705
Looks like the expected value is legitimately sometimes 0.
I'll add another test back later.
Commit: 8aa76d34ea95031abed32761251951c5f87492c6
https://github.com/llvm/llvm-project/commit/8aa76d34ea95031abed32761251951c5f87492c6
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
Log Message:
-----------
[Driver] Avoid repeated hash lookups (NFC) (#111225)
Commit: fe9f1a215e0bdb5308f0dc5021bd02b173a45dbc
https://github.com/llvm/llvm-project/commit/fe9f1a215e0bdb5308f0dc5021bd02b173a45dbc
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/PipelineDataTransfer.cpp
Log Message:
-----------
[Affine] Avoid repeated hash lookups (NFC) (#111226)
Commit: e8f01b0557354a28d17bfe618df5e257ec3e982a
https://github.com/llvm/llvm-project/commit/e8f01b0557354a28d17bfe618df5e257ec3e982a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
Log Message:
-----------
[Sema] Avoid repeated hash lookups (NFC) (#111227)
Commit: bcb15d00596f8f25310887494f171e7f70386e7c
https://github.com/llvm/llvm-project/commit/bcb15d00596f8f25310887494f171e7f70386e7c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Support/APInt.cpp
Log Message:
-----------
[APInt] Slightly simplify APInt::ashrSlowCase. NFC (#111220)
Use an arithmetic shift for the last word copy when BitShift!=0. This
avoids an explicit sign extend after the shift.
Commit: 20e37f03c64589c366fccd766ab9120db6da4aa0
https://github.com/llvm/llvm-project/commit/20e37f03c64589c366fccd766ab9120db6da4aa0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-mul-to-shl.mir
Log Message:
-----------
[GISel] Don't preserve NSW flag when converting G_MUL of INT_MIN to G_SHL. (#111230)
mul and shl have different meanings for the nsw flag. We need to drop it
when converting a multiply by the minimum negative value.
Commit: 67c0846357bcd6faca713315380f9981a805a6e5
https://github.com/llvm/llvm-project/commit/67c0846357bcd6faca713315380f9981a805a6e5
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Don't call getPPC64TargetInfo outside Driver. NFC
getPPC64TargetInfo should only be called once per link invocation.
Commit: 68210c7c269b7b7325dedaea7cea9fe9d979fab5
https://github.com/llvm/llvm-project/commit/68210c7c269b7b7325dedaea7cea9fe9d979fab5
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
A llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
Log Message:
-----------
[VPlan] Only generate first lane for VPPredInstPHI if no others used.
IF only the first lane of the result is used, only generate the first
lane.
Fixes https://github.com/llvm/llvm-project/issues/111042.
Commit: c6110496b346d7963f8f9f62a7d2696da12a943e
https://github.com/llvm/llvm-project/commit/c6110496b346d7963f8f9f62a7d2696da12a943e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
Log Message:
-----------
[RISCV] Use THShift_ri class instead of RVBShift_ri for TH_TST instruction. NFC
Commit: 73683cc1ab0fe79a4b02b956cf3c033250537bff
https://github.com/llvm/llvm-project/commit/73683cc1ab0fe79a4b02b956cf3c033250537bff
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/lib/Basic/TargetID.cpp
Log Message:
-----------
[Basic] Avoid repeated hash lookups (NFC) (#111228)
Commit: 206fad0e218e83799e49ca15545d997c6c5e8a03
https://github.com/llvm/llvm-project/commit/206fad0e218e83799e49ca15545d997c6c5e8a03
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
M flang/include/flang/Optimizer/Transforms/CufOpConversion.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
M mlir/docs/Bufferization.md
M mlir/include/mlir/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.h
M mlir/include/mlir/Conversion/ArithToLLVM/ArithToLLVM.h
M mlir/include/mlir/Conversion/ArithToSPIRV/ArithToSPIRV.h
M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
M mlir/include/mlir/Conversion/ComplexToSPIRV/ComplexToSPIRV.h
M mlir/include/mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h
M mlir/include/mlir/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.h
M mlir/include/mlir/Conversion/FuncToLLVM/ConvertFuncToLLVM.h
M mlir/include/mlir/Conversion/FuncToSPIRV/FuncToSPIRV.h
M mlir/include/mlir/Conversion/GPUToLLVMSPV/GPUToLLVMSPVPass.h
M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
M mlir/include/mlir/Conversion/GPUToROCDL/GPUToROCDLPass.h
M mlir/include/mlir/Conversion/GPUToSPIRV/GPUToSPIRV.h
M mlir/include/mlir/Conversion/IndexToLLVM/IndexToLLVM.h
M mlir/include/mlir/Conversion/IndexToSPIRV/IndexToSPIRV.h
M mlir/include/mlir/Conversion/MathToLLVM/MathToLLVM.h
M mlir/include/mlir/Conversion/MathToROCDL/MathToROCDL.h
M mlir/include/mlir/Conversion/MathToSPIRV/MathToSPIRV.h
M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
M mlir/include/mlir/Conversion/MemRefToLLVM/MemRefToLLVM.h
M mlir/include/mlir/Conversion/MemRefToSPIRV/MemRefToSPIRV.h
M mlir/include/mlir/Conversion/NVGPUToNVVM/NVGPUToNVVM.h
M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
M mlir/include/mlir/Conversion/SCFToSPIRV/SCFToSPIRV.h
M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h
M mlir/include/mlir/Conversion/TensorToSPIRV/TensorToSPIRV.h
M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
M mlir/include/mlir/Conversion/TosaToTensor/TosaToTensor.h
M mlir/include/mlir/Conversion/UBToLLVM/UBToLLVM.h
M mlir/include/mlir/Conversion/UBToSPIRV/UBToSPIRV.h
M mlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
M mlir/include/mlir/Conversion/VectorToSPIRV/VectorToSPIRV.h
M mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
M mlir/include/mlir/Dialect/Func/Transforms/DecomposeCallGraphTypes.h
M mlir/include/mlir/Dialect/Func/Transforms/FuncConversions.h
M mlir/include/mlir/Dialect/Func/Transforms/OneToNFuncConversions.h
M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/include/mlir/Dialect/X86Vector/Transforms.h
M mlir/include/mlir/Transforms/OneToNTypeConversion.h
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.cpp
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Conversion/FuncToSPIRV/FuncToSPIRV.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
M mlir/lib/Conversion/IndexToLLVM/IndexToLLVM.cpp
M mlir/lib/Conversion/IndexToSPIRV/IndexToSPIRV.cpp
M mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/TensorToSPIRV/TensorToSPIRV.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Conversion/UBToLLVM/UBToLLVM.cpp
M mlir/lib/Conversion/UBToSPIRV/UBToSPIRV.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
M mlir/lib/Dialect/Func/Transforms/OneToNFuncConversions.cpp
M mlir/lib/Dialect/Math/Transforms/ExtendToSupportedTypes.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/SCF/Transforms/OneToNTypeConversion.cpp
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseStorageSpecifierToLLVM.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
M mlir/test/lib/Conversion/OneToNTypeConversion/TestOneToNTypeConversionPass.cpp
Log Message:
-----------
[mlir][NFC] Mark type converter in `populate...` functions as `const` (#111250)
This commit marks the type converter in `populate...` functions as
`const`. This is useful for debugging.
Patterns already take a `const` type converter. However, some
`populate...` functions do not only add new patterns, but also add
additional type conversion rules. That makes it difficult to find the
place where a type conversion was added in the code base. With this
change, all `populate...` functions that only populate pattern now have
a `const` type converter. Programmers can then conclude from the
function signature that these functions do not register any new type
conversion rules.
Also some minor cleanups around the 1:N dialect conversion
infrastructure, which did not always pass the type converter as a
`const` object internally.
Commit: e36a39346796528f75ff01ef1084b2dfe0a2a747
https://github.com/llvm/llvm-project/commit/e36a39346796528f75ff01ef1084b2dfe0a2a747
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h
Log Message:
-----------
[mlir][SPIRV] Fix build error (#111264)
Fix build error that was introduced by #111250. Also, the deleted
function is not needed at all.
```
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h: In member function ‘const mlir::LLVMTypeConverter* mlir::SPIRVToLLVMConversion<SPIRVOp>::getTypeConverter() const’:
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h:35:12: error: invalid ‘static_cast’ from type ‘const mlir::TypeConverter*’ to type ‘const mlir::LLVMTypeConverter*’
35 | return static_cast<const LLVMTypeConverter *>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 | ConversionPattern::getTypeConverter());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h:21:7: note: class type ‘const mlir::LLVMTypeConverter’ is incomplete
```
Commit: 98723e656618345f05a8e66b18e0f5d37866e75e
https://github.com/llvm/llvm-project/commit/98723e656618345f05a8e66b18e0f5d37866e75e
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
Log Message:
-----------
[mlir][SPIRV] Fix build (2) (#111265)
Commit: d3a367dea515f147ac1380afdc286932ccf82eb0
https://github.com/llvm/llvm-project/commit/d3a367dea515f147ac1380afdc286932ccf82eb0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Give ZEXT_H_RV32 and ZEXT_H_RV64 R-type format to match PACK. NFC
These are different than other Zb* unary instructions because
they are specializations of PACKW or PACKH. So they should use
RVInstR instead of RVInstI.
This doesn't cause any functional difference since we only use the
format for relocations and we never have relocations on these
instructions.
Commit: 47e6d1816251e90b3d589710c5203a92c6015a7c
https://github.com/llvm/llvm-project/commit/47e6d1816251e90b3d589710c5203a92c6015a7c
Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M clang/docs/RealtimeSanitizer.rst
Log Message:
-----------
[NFC][rtsan] Update docs to include [[clang::blocking]] (#111249)
Updates the RealtimeSanitizer documentation to:
- include information about how to use `[[clang::blocking]]`, and
- update the displayed error messages to the latest style
Commit: 46944b0cbc9a9d8daad0182c40fcd3560bc9ca35
https://github.com/llvm/llvm-project/commit/46944b0cbc9a9d8daad0182c40fcd3560bc9ca35
Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M libc/include/llvm-libc-macros/linux/error-number-macros.h
M libc/src/__support/StringUtil/tables/CMakeLists.txt
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
M libc/src/__support/StringUtil/tables/posix_errors.h
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp10f_impl.h
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/exp2f_impl.h
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/expm1f.cpp
M libc/src/math/generic/powf.cpp
M libc/src/math/generic/sincosf.cpp
M libc/src/math/generic/sinf.cpp
M libc/src/math/generic/tanf.cpp
M libc/src/pthread/CMakeLists.txt
M libc/src/pthread/pthread_atfork.cpp
M libc/src/pthread/pthread_attr_setdetachstate.cpp
M libc/src/pthread/pthread_attr_setguardsize.cpp
M libc/src/pthread/pthread_attr_setstack.cpp
M libc/src/pthread/pthread_attr_setstacksize.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/pthread/pthread_condattr_setpshared.cpp
M libc/src/pthread/pthread_create.cpp
M libc/src/pthread/pthread_key_create.cpp
M libc/src/pthread/pthread_key_delete.cpp
M libc/src/pthread/pthread_mutex_init.cpp
M libc/src/pthread/pthread_mutexattr_destroy.cpp
M libc/src/pthread/pthread_mutexattr_getpshared.cpp
M libc/src/pthread/pthread_mutexattr_getrobust.cpp
M libc/src/pthread/pthread_mutexattr_gettype.cpp
M libc/src/pthread/pthread_mutexattr_setpshared.cpp
M libc/src/pthread/pthread_mutexattr_setrobust.cpp
M libc/src/pthread/pthread_mutexattr_settype.cpp
M libc/src/pthread/pthread_rwlock_destroy.cpp
M libc/src/pthread/pthread_rwlock_init.cpp
M libc/src/pthread/pthread_rwlock_rdlock.cpp
M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
M libc/src/pthread/pthread_rwlock_timedwrlock.cpp
M libc/src/pthread/pthread_rwlock_tryrdlock.cpp
M libc/src/pthread/pthread_rwlock_trywrlock.cpp
M libc/src/pthread/pthread_rwlock_unlock.cpp
M libc/src/pthread/pthread_rwlock_wrlock.cpp
M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
M libc/src/pthread/pthread_setspecific.cpp
M libc/src/spawn/CMakeLists.txt
M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
M libc/src/threads/CMakeLists.txt
M libc/src/threads/thrd_create.cpp
M libc/test/UnitTest/PrintfMatcher.h
M libc/test/UnitTest/ScanfMatcher.h
M libc/test/integration/src/pthread/CMakeLists.txt
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/spawn/posix_spawn_test_binary.cpp
M libc/test/integration/src/unistd/CMakeLists.txt
M libc/test/integration/src/unistd/fork_test.cpp
M libc/test/integration/src/unistd/stack_smashing_test.cpp
M libc/test/integration/startup/linux/CMakeLists.txt
M libc/test/integration/startup/linux/tls_test.cpp
M libc/test/src/__support/File/CMakeLists.txt
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/acosf_test.cpp
M libc/test/src/math/acoshf_test.cpp
M libc/test/src/math/asinf_test.cpp
M libc/test/src/math/asinhf_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/cosf_test.cpp
M libc/test/src/math/coshf_test.cpp
M libc/test/src/math/erff_test.cpp
M libc/test/src/math/exp10_test.cpp
M libc/test/src/math/exp2_test.cpp
M libc/test/src/math/exp_test.cpp
M libc/test/src/math/log10_test.cpp
M libc/test/src/math/log10f_test.cpp
M libc/test/src/math/log1p_test.cpp
M libc/test/src/math/log1pf_test.cpp
M libc/test/src/math/log2_test.cpp
M libc/test/src/math/log_test.cpp
M libc/test/src/math/powf_test.cpp
M libc/test/src/math/sincosf_test.cpp
M libc/test/src/math/sinf_test.cpp
M libc/test/src/math/sinhf_test.cpp
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/acosf_test.cpp
M libc/test/src/math/smoke/acoshf_test.cpp
M libc/test/src/math/smoke/asinf_test.cpp
M libc/test/src/math/smoke/asinhf_test.cpp
M libc/test/src/math/smoke/atanf_test.cpp
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/math/smoke/cosf_test.cpp
M libc/test/src/math/smoke/coshf_test.cpp
M libc/test/src/math/smoke/erff_test.cpp
M libc/test/src/math/smoke/exp10_test.cpp
M libc/test/src/math/smoke/exp2_test.cpp
M libc/test/src/math/smoke/exp_test.cpp
M libc/test/src/math/smoke/expm1_test.cpp
M libc/test/src/math/smoke/log10_test.cpp
M libc/test/src/math/smoke/log10f_test.cpp
M libc/test/src/math/smoke/log1p_test.cpp
M libc/test/src/math/smoke/log1pf_test.cpp
M libc/test/src/math/smoke/log2_test.cpp
M libc/test/src/math/smoke/log_test.cpp
M libc/test/src/math/smoke/powf_test.cpp
M libc/test/src/math/smoke/sincosf_test.cpp
M libc/test/src/math/smoke/sinf_test.cpp
M libc/test/src/math/smoke/sinhf_test.cpp
M libc/test/src/math/smoke/tanf_test.cpp
M libc/test/src/math/smoke/tanhf_test.cpp
M libc/test/src/math/tanf_test.cpp
M libc/test/src/math/tanhf_test.cpp
M libc/test/src/pthread/CMakeLists.txt
M libc/test/src/pthread/pthread_attr_test.cpp
M libc/test/src/pthread/pthread_mutexattr_test.cpp
M libc/test/src/signal/CMakeLists.txt
M libc/test/src/signal/sigaddset_test.cpp
M libc/test/src/signal/sigdelset_test.cpp
M libc/test/src/signal/sigfillset_test.cpp
M libc/test/src/spawn/CMakeLists.txt
M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
M libc/test/src/sys/prctl/linux/CMakeLists.txt
M libc/test/src/sys/prctl/linux/prctl_test.cpp
M libc/test/src/sys/resource/CMakeLists.txt
M libc/test/src/sys/select/CMakeLists.txt
M libc/test/src/sys/select/select_failure_test.cpp
M libc/test/src/sys/sendfile/CMakeLists.txt
M libc/test/src/sys/utsname/CMakeLists.txt
M libc/test/src/sys/utsname/uname_test.cpp
M libc/test/src/sys/wait/CMakeLists.txt
M libc/test/src/sys/wait/wait4_test.cpp
M libc/test/src/sys/wait/waitpid_test.cpp
M libc/test/src/unistd/CMakeLists.txt
Log Message:
-----------
[libc] remove errno.h includes (#110934)
Commit: 0cdb978906b060508204788a8cfcb5c7d9155e32
https://github.com/llvm/llvm-project/commit/0cdb978906b060508204788a8cfcb5c7d9155e32
Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M libc/src/__support/StringUtil/tables/CMakeLists.txt
M libc/src/__support/StringUtil/tables/stdc_errors.h
Log Message:
-----------
[libc] Add missing include to __support/StringUtil/tables/stdc_errors.h. (#111271)
Failed build bots:
https://lab.llvm.org/buildbot/#/builders/11/builds/6164
https://lab.llvm.org/buildbot/#/builders/73/builds/6651
Commit: e075dcf7d270fd52dc837163ff24e8c872dfeb49
https://github.com/llvm/llvm-project/commit/e075dcf7d270fd52dc837163ff24e8c872dfeb49
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
Log Message:
-----------
Revert "Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" (#111059)"
This reverts commit 98a15c7b0c6ec129d371f0c121dbe9396c4f5609.
(llvmorg-20-init-8051-g98a15c7b0c6e)
Commit: 18d9dcdfe1e09a439db9dc06f3cc32808702395f
https://github.com/llvm/llvm-project/commit/18d9dcdfe1e09a439db9dc06f3cc32808702395f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-05 (Sat, 05 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Unify RVBShift_ri and RVBShiftW_ri with Shift_ri and ShiftW_ri. NFC (#111263)
The split primarily existed because Shift_ri and ShiftW_ri included
scheduler classes. So pull those out like ALU_rr.
This removes all uses of RVBShiftW_ri. One use of RVBShift_ri remains
because SLLI_UW uses a uimmlog2xlen shift amount and OP_IMM_32. Which is
different than the other OP_IMM_32 shift instructions.
Commit: 6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e
https://github.com/llvm/llvm-project/commit/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e
Author: Rose <gfunni234 at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
Log Message:
-----------
[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)
repstosb and repstosd are the same size, but stosd is only done for 0
because the process of multiplying the constant so that it is copied
across the bytes of the 32-bit number adds extra instructions that cause
the size to increase. For 0, repstosb and repstosd are the same size,
but stosd is only done for 0 because the process of multiplying the
constant so that it is copied across the bytes of the 32-bit number adds
extra instructions that cause the size to increase. For 0, we do not
need to do that at all.
For memcpy, the same goes, and as a result the minsize check was moved
ahead because a jmp to memcpy encoded takes more bytes than repmovsb.
Commit: 37ce3c2208167b01bad29761a4e0b0a368cb1f36
https://github.com/llvm/llvm-project/commit/37ce3c2208167b01bad29761a4e0b0a368cb1f36
Author: Yang Kun <91833768+ikspress at users.noreply.github.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libcxx/include/__system_error/errc.h
Log Message:
-----------
[libc++] Fix a typo (#111239)
Just a small typo I found when I refer to libc++'s code.
Commit: 6d03a69034edb7805a4ba00334a1275cef39dd72
https://github.com/llvm/llvm-project/commit/6d03a69034edb7805a4ba00334a1275cef39dd72
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 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/MipsArchTree.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
Log Message:
-----------
[ELF] Pass Ctx & to Arch/
Commit: b3e0bd3d284dec705386b1efcae40dd51b763010
https://github.com/llvm/llvm-project/commit/b3e0bd3d284dec705386b1efcae40dd51b763010
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/ARMErrataFix.h
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/MipsArchTree.cpp
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/Symbols.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Target.h
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
Log Message:
-----------
[ELF] Pass Ctx & to Arch/
Commit: 45b526afa26e76e0c351e947ac8f0e4b55aa760b
https://github.com/llvm/llvm-project/commit/45b526afa26e76e0c351e947ac8f0e4b55aa760b
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
Log Message:
-----------
[LV] Honor uniform-after-vectorization in setVectorizedCallDecision.
The legacy cost model always computes the cost for uniforms as cost of
VF = 1, but VPWidenCallRecipes would be created, as
setVectorizedCallDecisions would not consider uniform calls.
Fix setVectorizedCallDecision to set to Scalarize, if the call is
uniform-after-vectorization.
This fixes a bug in VPlan construction uncovered by the VPlan-based
cost model.
Fixes https://github.com/llvm/llvm-project/issues/111040.
Commit: d2408c417cfa71f1786c909788560374eb1aca96
https://github.com/llvm/llvm-project/commit/d2408c417cfa71f1786c909788560374eb1aca96
Author: David Green <david.green at arm.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
Log Message:
-----------
[InstCombine] Canonicalize more geps with constant gep bases and constant offsets. (#110033)
This is another small but hopefully not performance negative step to
canonicalizing towards i8 geps. We looks for geps with a constant offset
base pointer of the form `gep (gep @glob, C1), x, C2` and expand the gep
instruction, so that the constant can hopefully be combined together (or
the x offset can be computed in common).
Commit: fb0ef6b66e3c7e91481568c15ed67c047dab84e1
https://github.com/llvm/llvm-project/commit/fb0ef6b66e3c7e91481568c15ed67c047dab84e1
Author: Carlos Galvez <carlosgalvezp at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast.cpp
Log Message:
-----------
[clang-tidy] Create bugprone-bitwise-pointer-cast check (#108083)
To detect unsafe usages of casting a pointer to another via copying
the bytes from one into the other, either via std::bit_cast or via
memcpy. This is currently not caught by any other means.
Fixes #106987
---------
Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>
Commit: 89d2a9de05074bf6e538fd514228c43aed3cc72f
https://github.com/llvm/llvm-project/commit/89d2a9de05074bf6e538fd514228c43aed3cc72f
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
Log Message:
-----------
[VPlan] Add additional FOR hoisting test.
Additional tests for https://github.com/llvm/llvm-project/pull/108945.
Commit: 20864d2cf610639a70e43aa417f90b457f8e3c90
https://github.com/llvm/llvm-project/commit/20864d2cf610639a70e43aa417f90b457f8e3c90
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
Log Message:
-----------
[ValueTypes][RISCV] Add v1bf16 type (#111112)
When trying to add RISC-V fadd reduction cost model tests for bf16, I
noticed a crash when the vector was of <1 x bfloat>.
It turns out that this was being scalarized because unlike f16/f32/f64,
there's no v1bf16 value type, and the existing cost model code assumed
that the legalized type would always be a vector.
This adds v1bf16 to bring bf16 in line with the other fp types.
It also adds some more RISC-V bf16 reduction tests which previously
crashed, including tests to ensure that SLP won't emit fadd/fmul
reductions for bf16 or f16 w/ zvfhmin after #111000.
Commit: c36afb50162a43fb852beea3aad0d73bf2985bea
https://github.com/llvm/llvm-project/commit/c36afb50162a43fb852beea3aad0d73bf2985bea
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineSubABS - avoid duplicate SDLoc. NFC.
Simplify arguments by reusing values from combineSub directly.
Commit: 1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6
https://github.com/llvm/llvm-project/commit/1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/vector-mul.ll
Log Message:
-----------
[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat.
As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.
Commit: dee44b200b0dd5351a0c05126709e0f4c40f9b0a
https://github.com/llvm/llvm-project/commit/dee44b200b0dd5351a0c05126709e0f4c40f9b0a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineBitOpWithShift - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 595a738fb4239560a3292fa99ca12628215495e7
https://github.com/llvm/llvm-project/commit/595a738fb4239560a3292fa99ca12628215495e7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineBitOpWithMOVMSK - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 8ebd4019500cbec28426f19e6440484d53ecaecd
https://github.com/llvm/llvm-project/commit/8ebd4019500cbec28426f19e6440484d53ecaecd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineBitOpWithPACK - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 2cc97951400ca2ab79d6bdeccffa6e431882a86e
https://github.com/llvm/llvm-project/commit/2cc97951400ca2ab79d6bdeccffa6e431882a86e
Author: c8ef <c8ef at outlook.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcpy.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/generic/aligned_access.h
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memcpy.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/x86_64/inline_memcmp.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/string/memory_utils/x86_64/inline_memmove.h
Log Message:
-----------
[libc] Clean up some include in `libc`. (#110980)
The patch primarily cleans up some incorrect includes. The `LIBC_INLINE`
macro is defined in `attributes.h`, not `config.h`. There appears to be
no need to change the CMake and Bazel build files.
Commit: 8cead83c399f4d74949b53633f8026cb7effc54f
https://github.com/llvm/llvm-project/commit/8cead83c399f4d74949b53633f8026cb7effc54f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] convertIntLogicToFPLogic - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: 8326fb2626836ca4d95f30a67f7836dd2b4c1031
https://github.com/llvm/llvm-project/commit/8326fb2626836ca4d95f30a67f7836dd2b4c1031
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineOrXorWithSETCC - avoid duplicate SDLoc/operands code. NFC.
Reuse values from the callers directly.
Commit: d54b1cfa38a111796945fb91c4efb3effbc25649
https://github.com/llvm/llvm-project/commit/d54b1cfa38a111796945fb91c4efb3effbc25649
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libcxx/test/benchmarks/CMakeLists.txt
M libcxx/test/benchmarks/format.bench.cpp
A libcxx/test/benchmarks/format/write_double_comparison.bench.cpp
A libcxx/test/benchmarks/format/write_int_comparison.bench.cpp
A libcxx/test/benchmarks/format/write_string_comparison.bench.cpp
Log Message:
-----------
[libc++][format][1/3] Adds more benchmarks. (#101803)
This patch is the start of a series to improve the speed of std::format,
std::format_to, std::format_to_n, and std::formatted_size.
This is mostly achieved by changing the __output_buffer class. This new
__output_buffer class also makes it easier to implement buffering for
P3107R5 "Permit an efficient implementation of std::print"
Commit: abdf4ca4f12c834e0541f996596584a65fda44ef
https://github.com/llvm/llvm-project/commit/abdf4ca4f12c834e0541f996596584a65fda44ef
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
Log Message:
-----------
[RISCV] Simplify fixed-vector-fp.ll run lines. NFC
This removes the different scalar fp16 configurations i.e. zfh and
zfhmin, since all these ops should be able to be lowered without
scalarizing.
This ends up revealing a couple of cases where we end up scalarizing
unexpectedly, e.g. sqrt/fabs/round with v6f16 and zvfhmin.
It also removes the zvl256b configurations, since I couldn't find
anything that specifically needed to test this.
Commit: bea28037f6b68ee79b9360d91e0f3defd10fa976
https://github.com/llvm/llvm-project/commit/bea28037f6b68ee79b9360d91e0f3defd10fa976
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/RegisterBankInfo.cpp
Log Message:
-----------
[CodeGen] Avoid repeated hash lookups (NFC) (#111274)
Commit: 9e6578c6a17fe942b45daf57fa162303e111fa38
https://github.com/llvm/llvm-project/commit/9e6578c6a17fe942b45daf57fa162303e111fa38
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
Log Message:
-----------
[StaticAnalyzer] Avoid repeated hash lookups (NFC) (#111272)
Commit: 93f7fce397155f40de46d867c345e335b30b8d5c
https://github.com/llvm/llvm-project/commit/93f7fce397155f40de46d867c345e335b30b8d5c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Program.cpp
Log Message:
-----------
[ByteCode] Avoid repeated hash lookups (NFC) (#111273)
Commit: 11c6ea3d3bd59c548562425f0de1fcef1b4660dc
https://github.com/llvm/llvm-project/commit/11c6ea3d3bd59c548562425f0de1fcef1b4660dc
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
Log Message:
-----------
[ExecutionEngine] Avoid repeated hash lookups (NFC) (#111275)
Commit: 75bcf57c16586a0e3995e420ec331056a40a043f
https://github.com/llvm/llvm-project/commit/75bcf57c16586a0e3995e420ec331056a40a043f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
Log Message:
-----------
[X86] replace-load-and-with-bzhi.ll - cleanup check-prefixes to use X86/X64 for 32/64-bit targets
Commit: 326a61506ab08337a6b34283d3bbb316018edf42
https://github.com/llvm/llvm-project/commit/326a61506ab08337a6b34283d3bbb316018edf42
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
Log Message:
-----------
[X86] replace-load-and-with-bzhi.ll - add commuted test cases to show failure to fold
Tests showing combineAndLoadToBZHI commutation folding is currently broken
Commit: 56757e52ebbd79af540c23b00abb13c9bf5f2d60
https://github.com/llvm/llvm-project/commit/56757e52ebbd79af540c23b00abb13c9bf5f2d60
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
Log Message:
-----------
[X86] combineAndLoadToBZHI - don't do an return early return if we fail to match a load
Just continue so we can test the commutated pattern as well.
Commit: 26ca8ef836f6ed8665f992d7cf520a4c0002f3ae
https://github.com/llvm/llvm-project/commit/26ca8ef836f6ed8665f992d7cf520a4c0002f3ae
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libc/newhdrgen/yaml/gpu/rpc.yaml
M libc/spec/gpu_ext.td
M libc/src/gpu/rpc_host_call.cpp
M libc/src/gpu/rpc_host_call.h
M libc/utils/gpu/server/rpc_server.cpp
M offload/test/libc/host_call.c
Log Message:
-----------
[libc] GPU RPC interface: add return value to `rpc_host_call` (#111288)
Commit: 49865107d49b2be86d9ff5474d081c49d1556213
https://github.com/llvm/llvm-project/commit/49865107d49b2be86d9ff5474d081c49d1556213
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/Driver.h
M lld/ELF/DriverUtils.cpp
M lld/ELF/EhFrame.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/ScriptParser.cpp
Log Message:
-----------
[ELF] Pass Ctx & to InputFiles
Commit: 864fcfc78733297055fea032dfb5f7c8d594dfd8
https://github.com/llvm/llvm-project/commit/864fcfc78733297055fea032dfb5f7c8d594dfd8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZk.td
Log Message:
-----------
[RISCV] Combine RVBUnary and RVKUnary into classes that are more similar to ALU(W)_r(r/i). NFC (#111279)
Create Unary_r and UnaryW_r that use OP_IMM and OP_IMM_32.
Commit: 7f65377880ce6a0e5eaa4cb2591b86b8c8a24ee6
https://github.com/llvm/llvm-project/commit/7f65377880ce6a0e5eaa4cb2591b86b8c8a24ee6
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M libcxx/include/__format/formatter_string.h
Log Message:
-----------
[libc++][format][2/3] Optimizes c-string arguments. (#101805)
The formatter specializations for _CharT* and const _CharT* typically
write all elements in a loop. This format's internal functions are
optimized for larger writes.
Instead of writing one element at a time, convert the range to a
basic_string_view and write that instead.
For C string of 6 characters this is a bit slower, but for 60 characters
it's faster. The improvements for back_inserter<std::list<_CharT>> are
not as great as the others; it just gets as slow as
basic_string_view<_CharT>.
omparing libcxx/test/benchmarks/write_string_comparison.bench.out-before to libcxx/test/benchmarks/write_string_comparison.bench.out-after
Benchmark Time CPU Time Old Time New CPU Old CPU New
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
BM_sprintf/C_string_len_6 -0.0015 +0.0013 5 5 5 5
BM_format/C_string_len_6 +0.0390 +0.0416 53 55 53 55
BM_format_to_back_inserter<std::string>/C_string_len_6 +0.0381 +0.0408 53 55 53 55
BM_format_to_back_inserter<std::vector<char>>/C_string_len_6 +0.0287 +0.0315 69 71 69 71
BM_format_to_back_inserter<std::deque<char>>/C_string_len_6 +0.0503 +0.0530 123 129 123 129
BM_format_to_back_inserter<std::list<char>>/C_string_len_6 -0.0241 -0.0213 133 130 133 130
BM_format_to_iterator/<std::array> C_string_len_6 -0.0075 -0.0049 45 45 45 45
BM_format_to_iterator/<std::string> C_string_len_6 +0.0311 +0.0340 44 46 44 46
BM_format_to_iterator/<std::vector> C_string_len_6 +0.0380 +0.0409 43 45 43 45
BM_format_to_iterator/<std::deque> C_string_len_6 +0.0366 +0.0392 48 50 48 50
BM_format/string_len_6 -0.0010 -0.0007 56 55 55 55
BM_format_to_back_inserter<std::string>/string_len_6 +0.0044 +0.0041 55 56 55 55
BM_format_to_back_inserter<std::vector<char>>/string_len_6 +0.0128 +0.0128 70 71 70 71
BM_format_to_back_inserter<std::deque<char>>/string_len_6 +0.0151 +0.0151 126 128 126 128
BM_format_to_back_inserter<std::list<char>>/string_len_6 -0.0719 -0.0718 140 130 139 129
BM_format_to_iterator/<std::array> string_len_6 -0.0323 -0.0324 47 46 47 46
BM_format_to_iterator/<std::string> string_len_6 -0.0011 -0.0010 45 44 44 44
BM_format_to_iterator/<std::vector> string_len_6 -0.0002 -0.0001 45 45 44 44
BM_format_to_iterator/<std::deque> string_len_6 +0.0046 +0.0047 51 51 51 51
BM_format/string_view_len_6 +0.0031 +0.0031 54 54 54 54
BM_format_to_back_inserter<std::string>/string_view_len_6 +0.0041 +0.0040 54 54 54 54
BM_format_to_back_inserter<std::vector<char>>/string_view_len_6 +0.0022 +0.0022 70 70 70 70
BM_format_to_back_inserter<std::deque<char>>/string_view_len_6 +0.0392 +0.0391 124 129 124 129
BM_format_to_back_inserter<std::list<char>>/string_view_len_6 -0.0680 -0.0680 139 129 138 129
BM_format_to_iterator/<std::array> string_view_len_6 -0.0321 -0.0320 47 46 47 46
BM_format_to_iterator/<std::string> string_view_len_6 -0.0013 -0.0011 45 44 44 44
BM_format_to_iterator/<std::vector> string_view_len_6 -0.0024 -0.0023 45 44 44 44
BM_format_to_iterator/<std::deque> string_view_len_6 +0.0057 +0.0057 51 51 51 51
BM_sprintf/C_string_len_60 -0.0035 -0.0035 4 4 4 4
BM_format/C_string_len_60 -0.5627 -0.5627 169 74 169 74
BM_format_to_back_inserter<std::string>/C_string_len_60 -0.5642 -0.5641 170 74 169 74
BM_format_to_back_inserter<std::vector<char>>/C_string_len_60 -0.5300 -0.5299 178 84 178 84
BM_format_to_back_inserter<std::deque<char>>/C_string_len_60 -0.2548 -0.2548 356 265 355 264
BM_format_to_back_inserter<std::list<char>>/C_string_len_60 -0.1013 -0.1013 1325 1191 1322 1188
BM_format_to_iterator/<std::array> C_string_len_60 -0.6790 -0.6791 141 45 141 45
BM_format_to_iterator/<std::string> C_string_len_60 -0.6738 -0.6740 143 47 142 46
BM_format_to_iterator/<std::vector> C_string_len_60 -0.6807 -0.6808 142 45 142 45
BM_format_to_iterator/<std::deque> C_string_len_60 -0.6488 -0.6486 144 51 144 51
BM_format/string_len_60 +0.0118 +0.0117 73 74 73 73
BM_format_to_back_inserter<std::string>/string_len_60 +0.0089 +0.0088 73 73 73 73
BM_format_to_back_inserter<std::vector<char>>/string_len_60 +0.0080 +0.0081 83 84 83 83
BM_format_to_back_inserter<std::deque<char>>/string_len_60 +0.0005 +0.0002 262 263 262 262
BM_format_to_back_inserter<std::list<char>>/string_len_60 -0.0384 -0.0380 1236 1188 1232 1186
BM_format_to_iterator/<std::array> string_len_60 -0.0288 -0.0288 47 46 47 46
BM_format_to_iterator/<std::string> string_len_60 +0.0213 +0.0210 44 45 44 45
BM_format_to_iterator/<std::vector> string_len_60 +0.0202 +0.0205 45 45 44 45
BM_format_to_iterator/<std::deque> string_len_60 +0.0124 +0.0124 50 51 50 51
BM_format/string_view_len_60 +0.0093 +0.0093 73 73 73 73
BM_format_to_back_inserter<std::string>/string_view_len_60 +0.0055 +0.0055 73 73 73 73
BM_format_to_back_inserter<std::vector<char>>/string_view_len_60 +0.0165 +0.0166 81 83 81 83
BM_format_to_back_inserter<std::deque<char>>/string_view_len_60 +0.0138 +0.0140 260 263 259 263
BM_format_to_back_inserter<std::list<char>>/string_view_len_60 -0.0334 -0.0335 1228 1187 1225 1184
BM_format_to_iterator/<std::array> string_view_len_60 -0.0257 -0.0259 48 46 47 46
BM_format_to_iterator/<std::string> string_view_len_60 +0.0324 +0.0323 45 46 44 46
BM_format_to_iterator/<std::vector> string_view_len_60 +0.0174 +0.0177 45 45 44 45
BM_format_to_iterator/<std::deque> string_view_len_60 +0.0076 +0.0076 50 51 50 51
BM_sprintf/C_string_len_6000 +0.4922 +0.4921 77 115 77 114
BM_format/C_string_len_6000 -0.9239 -0.9239 11780 897 11750 894
BM_format_to_back_inserter<std::string>/C_string_len_6000 -0.9239 -0.9239 11792 898 11763 895
BM_format_to_back_inserter<std::vector<char>>/C_string_len_6000 -0.9257 -0.9257 11709 870 11679 868
BM_format_to_back_inserter<std::deque<char>>/C_string_len_6000 -0.4057 -0.4057 25616 15225 25553 15187
BM_format_to_back_inserter<std::list<char>>/C_string_len_6000 -0.0832 -0.0833 127144 116569 126823 116265
BM_format_to_iterator/<std::array> C_string_len_6000 -0.9853 -0.9853 10869 160 10843 160
BM_format_to_iterator/<std::string> C_string_len_6000 -0.9864 -0.9864 10870 148 10841 148
BM_format_to_iterator/<std::vector> C_string_len_6000 -0.9863 -0.9863 10874 149 10846 148
BM_format_to_iterator/<std::deque> C_string_len_6000 -0.9629 -0.9629 11239 417 11212 416
BM_format/string_len_6000 -0.0012 -0.0013 846 845 844 842
BM_format_to_back_inserter<std::string>/string_len_6000 -0.0029 -0.0034 845 843 843 840
BM_format_to_back_inserter<std::vector<char>>/string_len_6000 -0.0129 -0.0125 832 821 830 819
BM_format_to_back_inserter<std::deque<char>>/string_len_6000 +0.0048 +0.0048 15042 15114 15004 15076
BM_format_to_back_inserter<std::list<char>>/string_len_6000 -0.0017 -0.0017 116266 116072 115967 115768
BM_format_to_iterator/<std::array> string_len_6000 -0.0257 -0.0256 120 117 120 117
BM_format_to_iterator/<std::string> string_len_6000 -0.0025 -0.0029 117 117 117 117
BM_format_to_iterator/<std::vector> string_len_6000 -0.0089 -0.0087 118 116 117 116
BM_format_to_iterator/<std::deque> string_len_6000 -0.0478 -0.0477 379 361 378 360
BM_format/string_view_len_6000 -0.0092 -0.0091 842 835 840 833
BM_format_to_back_inserter<std::string>/string_view_len_6000 -0.0081 -0.0083 841 835 839 832
BM_format_to_back_inserter<std::vector<char>>/string_view_len_6000 +0.0089 +0.0088 808 815 806 813
BM_format_to_back_inserter<std::deque<char>>/string_view_len_6000 +0.0068 +0.0068 15030 15131 14992 15093
BM_format_to_back_inserter<std::list<char>>/string_view_len_6000 +0.0012 +0.0010 116099 116243 115813 115934
BM_format_to_iterator/<std::array> string_view_len_6000 -0.0122 -0.0121 118 117 118 116
BM_format_to_iterator/<std::string> string_view_len_6000 +0.0010 +0.0010 106 107 106 106
BM_format_to_iterator/<std::vector> string_view_len_6000 -0.0008 -0.0006 106 106 106 106
BM_format_to_iterator/<std::deque> string_view_len_6000 -0.0549 -0.0548 370 349 369 349
OVERALL_GEOMEAN
Commit: b0c070e2637935030ecd36777f22542bf371ef8c
https://github.com/llvm/llvm-project/commit/b0c070e2637935030ecd36777f22542bf371ef8c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/FindSymbols.cpp
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/dex/Dex.cpp
Log Message:
-----------
[clangd] Simplify ternary expressions with std::optional::value_or (NFC) (#111309)
Commit: 7f74651837b8f95996ea4c774b2e604020446951
https://github.com/llvm/llvm-project/commit/7f74651837b8f95996ea4c774b2e604020446951
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.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/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.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/interleaved-accesses-different-insert-position.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleavevectorization.ll
Log Message:
-----------
[VPlan] Use pointer to member 0 as VPInterleaveRecipe's pointer arg. (#106431)
Update VPInterleaveRecipe to always use the pointer to member 0 as
pointer argument. This in many cases helps to remove unneeded index
adjustments and simplifies VPInterleaveRecipe::execute.
In some rare cases, the address of member 0 does not dominate the insert
position of the interleave group. In those cases a PtrAdd VPInstruction
is emitted to compute the address of member 0 based on the address of
the insert position. Alternatively we could hoist the recipe computing
the address of member 0.
Commit: acf92a47c0ece8562fd745215c478fe2d4ab5896
https://github.com/llvm/llvm-project/commit/acf92a47c0ece8562fd745215c478fe2d4ab5896
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Log Message:
-----------
[clang-tidy] Avoid capturing a local variable in a static lambda in UseRangesCheck (#111282)
Fixes https://github.com/llvm/llvm-project/issues/109367
Commit: 2b5cb1bf628fc54473355e0675f629d9332089df
https://github.com/llvm/llvm-project/commit/2b5cb1bf628fc54473355e0675f629d9332089df
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
Log Message:
-----------
[ELF] getRelocTargetVA: pass Ctx and Relocation. NFC
Commit: acb2b1e7792f1ca2348752ee158882bb54b7d1e4
https://github.com/llvm/llvm-project/commit/acb2b1e7792f1ca2348752ee158882bb54b7d1e4
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/ARMErrataFix.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/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Symbols
Commit: f1dccda1b51c77fcac22b75c535e8620d7544ab3
https://github.com/llvm/llvm-project/commit/f1dccda1b51c77fcac22b75c535e8620d7544ab3
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/ICF.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to Symbols
Commit: 5f6346190cb09373164d5fed9409cf5eb1a01f76
https://github.com/llvm/llvm-project/commit/5f6346190cb09373164d5fed9409cf5eb1a01f76
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/InputSection.h
M lld/ELF/LinkerScript.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Pass Ctx & to SyntheticSections
Commit: 18ca7ad3393241b9fc0d5f149247e10837c6f926
https://github.com/llvm/llvm-project/commit/18ca7ad3393241b9fc0d5f149247e10837c6f926
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Log Message:
-----------
[clangd] Add ArgumentLists config option under Completion (#111322)
The new config option is a more flexible version of
--function-arg-placeholders, allowing users more detailed control of
what is inserted in argument list position when clangd completes the
name of a function in a function call context.
Fixes https://github.com/llvm/llvm-project/issues/63565
Co-authored-by: MK-Alias <ImNotReadingThis at maininator.com>
Commit: f2b01338584c90f48dba1a937bf5b1da8dcedbd5
https://github.com/llvm/llvm-project/commit/f2b01338584c90f48dba1a937bf5b1da8dcedbd5
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/ScriptParser.cpp
Log Message:
-----------
[ELF] Move static nextGroupId isInGroup to LinkerDriver
Commit: c4d89203f3822b0466f5cc58654cb016aeb86648
https://github.com/llvm/llvm-project/commit/c4d89203f3822b0466f5cc58654cb016aeb86648
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/IR/Argument.h
M llvm/include/llvm/IR/Function.h
M llvm/lib/IR/Function.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
Log Message:
-----------
[AMDGPU] Support preloading hidden kernel arguments (#98861)
Adds hidden kernel arguments to the function signature and marks them
inreg if they should be preloaded into user SGPRs. The normal kernarg
preloading logic then takes over with some additional checks for the
correct implicitarg_ptr alignment.
Special care is needed so that metadata for the hidden arguments is not
added twice when generating the code object.
Commit: f0bd62d8709a49dd87eb75411e41e2e11e0ab59d
https://github.com/llvm/llvm-project/commit/f0bd62d8709a49dd87eb75411e41e2e11e0ab59d
Author: Brad House <brad at brad-house.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add AlignFunctionDeclarations to AlignConsecutiveDeclarations (#108241)
Enabling AlignConsecutiveDeclarations also aligns function prototypes
or declarations. This is often unexpected as typically function
prototypes, especially in public headers, don't use any padding.
Setting AlignFunctionDeclarations to false will skip this alignment.
It is by default set to true to keep compatibility with prior
versions to not make unexpected changes.
Fixes #74320
Commit: b672071ba51ef6b64651a62bcfaf78bdfdb7d3d4
https://github.com/llvm/llvm-project/commit/b672071ba51ef6b64651a62bcfaf78bdfdb7d3d4
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/LTO.cpp
M lld/ELF/LinkerScript.cpp
Log Message:
-----------
[ELF] Pass Ctx & to InputFile
Commit: 8c1547055eaf65003f3e6fd024195f4926ff2356
https://github.com/llvm/llvm-project/commit/8c1547055eaf65003f3e6fd024195f4926ff2356
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
R clang/test/SemaCXX/PR84020.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
Log Message:
-----------
[Clang] Remove the special-casing for RequiresExprBodyDecl in BuildResolvedCallExpr() after fd87d765c0 (#111277)
The special-casing for RequiresExprBodyDecl caused a regression, as
reported in #110785.
The original fix for #84020 has been superseded by fd87d765c0, which
establishes a `DependentScopeDeclRefExpr` instead of a
`CXXDependentScopeMemberExpr` for the case in issue. So the spurious
diagnostic in #84020 would no longer occur.
This also merges the test for #84020 together with that for #110785 into
clang/test/SemaTemplate/instantiate-requires-expr.cpp.
No release note because I think this merits a backport.
Fixes #110785
Commit: 35f196645079cf499bdc48863ed5a42a0bc375de
https://github.com/llvm/llvm-project/commit/35f196645079cf499bdc48863ed5a42a0bc375de
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
Log Message:
-----------
[RISCV] Only disassemble fcvtmod.w.d if the rounding mode is rtz. (#111308)
If we disassemble other rounding modes, we'll print something that can't
be parsed.
Commit: cfd3289a1f9a87e220737a634904a886a82d424a
https://github.com/llvm/llvm-project/commit/cfd3289a1f9a87e220737a634904a886a82d424a
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.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/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/InputSection.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/LinkerScript.h
M lld/ELF/OutputSections.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
Log Message:
-----------
[ELF] Pass Ctx & to some free functions
Commit: 4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312
https://github.com/llvm/llvm-project/commit/4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-06 (Sun, 06 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.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/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Change Ctx::target to unique_ptr (#111260)
also rename `TargetInfo *getXXXTargetInfo` to `void setXXXTargetInfo`
and change it to set `ctx.target`. This ensures that when `ctx` becomes
a local variable, two lld invocations will not reuse the function-local
static variable.
Commit: 924a64a3486f9962c42d4ec253774eb2c586ac33
https://github.com/llvm/llvm-project/commit/924a64a3486f9962c42d4ec253774eb2c586ac33
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
Log Message:
-----------
[AMDGPU] Only emit SCOPE_SYS global_wb (#110636)
global_wb with scopes lower than SCOPE_SYS is unnecessary for
correctness.
I was initially optimistic they would be very cheap no-ops but they can
actually be quite expensive so let's avoid them.
Commit: 66b282014cff346ab20c6c8aed774ca2c6bfefd1
https://github.com/llvm/llvm-project/commit/66b282014cff346ab20c6c8aed774ca2c6bfefd1
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LoopVectorize] Remove redundant code in emitSCEVChecks (#111132)
There was some code in emitSCEVChecks to update the dominator
tree if LoopBypassBlocks is empty, however there are no tests
that fail when replacing this code with an assert. I built
both SPEC2017 and the LLVM test suite and also didn't see any
build failures. I've removed the code for now and added an
assert to guard this in case anything changes, since it seems
pointless to have code that's impossible to defend.
Commit: da759dda58a7a1cbdaace26c381e1c3c5c5491ce
https://github.com/llvm/llvm-project/commit/da759dda58a7a1cbdaace26c381e1c3c5c5491ce
Author: Lucas Duarte Prates <lucas.prates at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
A clang/test/Driver/Inputs/multilib/empty.yaml
M clang/test/Driver/baremetal-multilib-custom-error.yaml
M clang/test/Driver/baremetal-multilib-exclusive-group.yaml
M clang/test/Driver/baremetal-multilib-group-error.yaml
M clang/test/Driver/baremetal-multilib-layered.yaml
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/print-multi-selection-flags.c
Log Message:
-----------
[Clang][Driver] Add option to provide path for multilib's YAML config file (#109640)
Since the introduction of the use of a YAML file to configure the
selection of multilibs for baremetal, the path for that file has been
hardcoded into the clang driver code. This makes it difficult to provide
any alternative configurations for multilib and, by consequence, impacts
the tetability of any changes related to it - e.g. the existing multilib
YAML tests currently rely on creating fake toolchain directories to
inject their own configuration files.
This change introduces a new command line option to the clang driver,
`--multi-lib-config=`, to enable the use of a custom path to be used
when loading the multilib YAML config file. It also updates the existing
multilib YAML tests to use the new option.
Commit: 5cfc6bc22b6284a2e0b78c71c84d272fcc8ac850
https://github.com/llvm/llvm-project/commit/5cfc6bc22b6284a2e0b78c71c84d272fcc8ac850
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Update release managers (#111164)
Current release managers are Tom and Tobias, split across even and odd
releases.
Commit: e0df221dcf5696c6e99952ee62a3b3b689433f3b
https://github.com/llvm/llvm-project/commit/e0df221dcf5696c6e99952ee62a3b3b689433f3b
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/Multilib.rst
M clang/include/clang/Driver/Multilib.h
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/test/Driver/baremetal-multilib-custom-error.yaml
M clang/unittests/Driver/MultilibTest.cpp
Log Message:
-----------
[clang][Driver] Rename "FatalError" key to "Error" in multilib.yaml (#110804)
This is a late-breaking change to #105684, suggested after the
original patch was already landed.
Commit: 5a9e93f39cc78276a12852bbc4d639689fe73d5a
https://github.com/llvm/llvm-project/commit/5a9e93f39cc78276a12852bbc4d639689fe73d5a
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
Log Message:
-----------
[clang][Driver] Improve multilib custom error reporting (#110804)
If `multilib.yaml` reports a custom error message for some unsupported
configuration, it's not very helpful to display that error message
_first_, and then follow it up with a huge list of all the multilib
configurations that _are_ supported.
In interactive use, the list is likely to scroll the most important
message off the top of the user's window, leaving them with just a
long list of available libraries, without a visible explanation of
_why_ clang just printed that long list. Also, in general, it makes
more intuitive sense to print the message last that shows why
compilation can't continue, because that's where users are most likely
to look for the reason why something stopped.
Commit: 18d3a5d558c3739cfe1d382e9976400d292e9b63
https://github.com/llvm/llvm-project/commit/18d3a5d558c3739cfe1d382e9976400d292e9b63
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
Log Message:
-----------
[LegalizeVectorTypes] When widening don't check for libcalls if promoted (#111297)
When widening some FP ops, LegalizeVectorTypes will check to see if the
widened op may be scalarized and then turned into a bunch of libcalls,
and if so unroll early to avoid unnecessary libcalls of the padded undef
elements.
It checks if the widened op is legal or custom to see if it will be
scalarized, but promoted ops will also avoid scalarization.
This relaxes the check to account for this which fixes some illegal
vector types on RISC-V from being scalarized when they could be widened.
Commit: 76aa370f4458d4d6440b257602fe666138c8bb5a
https://github.com/llvm/llvm-project/commit/76aa370f4458d4d6440b257602fe666138c8bb5a
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/test/CodeGen/SystemZ/inline-thresh-adjust.ll
Log Message:
-----------
[SystemZ] Remove inlining threshold multiplier. (#106058)
Due to recently reported problems with having the inlining threshold multiplier
set fairly high (x3), this patch removes the multiplier while addressing
the regressions seen by doing so in adjustInliningThreshold().
The specific cases that benefit from inlining that were now found to be in need
of handling contain a considerable number of memory accesses to the same
memory in both caller and callee.
Commit: d926e340b73f1c3620a7e3ff8742d6a41c1091dc
https://github.com/llvm/llvm-project/commit/d926e340b73f1c3620a7e3ff8742d6a41c1091dc
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] port 9144fed31b59089f4e3e5fedf7eb87d2695ef843
Commit: f58e85a9725bb7d731c5ff5f79448e7150db6a6c
https://github.com/llvm/llvm-project/commit/f58e85a9725bb7d731c5ff5f79448e7150db6a6c
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
Log Message:
-----------
[mlir][vector] Add more tests for ConvertVectorToLLVM (6/n) (#111121)
Adds tests with scalable vectors for the Vector-To-LLVM conversion pass.
Covers the following Ops:
* `vector.insert_strided_slice`
With this change, for every test with fixed-width vectors, there should
be a corresponding example with scalable vectors (for
`vector.insert_strided_slice`). In addition:
* Test function names are updated to more accurately reflect the case
being exercised (e.g. `@insert_strided_index_slice1` ->
`@insert_strided_index_slice_index_2d_into_3d`)
* For consistency, took the liberty of updating some of the function
names for `vector.extract_strided_slice`
* `@insert_strided_slice_scalable` is effectively replaced with
`@insert_strided_slice_f32_2d_into_3d_scalable`
Commit: 3137b6a263d2549a520690606e286ab4c8e3c9e5
https://github.com/llvm/llvm-project/commit/3137b6a263d2549a520690606e286ab4c8e3c9e5
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/lsan/lsan_common.cpp
Log Message:
-----------
[lsan] Make ReportUnsuspendedThreads return bool also for Fuchsia
Follow-up to 9766ce4db57212646f135fe7033972a7a51aef4d
Commit: c98e41f8586bc43033d29ef3ec0f9a2f79b3ec32
https://github.com/llvm/llvm-project/commit/c98e41f8586bc43033d29ef3ec0f9a2f79b3ec32
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
Log Message:
-----------
[LegalizeVectorTypes] Always widen fabs (#111298)
fabs and fneg are similar nodes in that they can always be expanded to
integer ops, but currently they diverge when widened.
If the widened vector fabs is marked as expand (and the corresponding
scalar type is too), LegalizeVectorTypes thinks that it may be turned
into a libcall and so will unroll it to avoid the overhead on the undef
elements.
However unlike the other ops in that list like fsin, fround, flog etc.,
an fabs marked as expand will never be legalized into a libcall. Like
fneg, it can always be expanded into an integer op.
This moves it below unrollExpandedOp to bring it in line with fneg,
which fixes an issue on RISC-V with f16 fabs being unexpectedly
scalarized when there's no zfhmin.
Commit: ae6af37bf47d830becc0cd0c8a309af70fdf502c
https://github.com/llvm/llvm-project/commit/ae6af37bf47d830becc0cd0c8a309af70fdf502c
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values6.test
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
update_test_checks: fix a simple regression (#111347)
Reported-by: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Fixes: 02debcef12793b5 ("update_test_checks: improve IR value name
stability (#110940)")
Commit: 74a98fdbc4435a9f8cdf9ea6d1d9a0396921d3d6
https://github.com/llvm/llvm-project/commit/74a98fdbc4435a9f8cdf9ea6d1d9a0396921d3d6
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/vector-mul.ll
Log Message:
-----------
Revert "[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat."
> As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.
This caused builds to fail with an assertion:
X86ISelLowering.cpp:48569
Assertion `C.getZExtValue() != 0 && C.getZExtValue() != maxUIntN(VT.getScalarSizeInBits())
&& "Both cases that could cause potential overflows should have " "already been handled."
See https://github.com/llvm/llvm-project/issues/111325
This reverts commit 1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6.
Commit: d148548779c2546d02b2a55e75eb8525e7b6cb2d
https://github.com/llvm/llvm-project/commit/d148548779c2546d02b2a55e75eb8525e7b6cb2d
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
Log Message:
-----------
Reland "[lldb][test] TestDataFormatterLibcxxStringSimulator.py: add new padding layout" (#111123)
Relands https://github.com/llvm/llvm-project/pull/108375 which had to be
reverted because it was failing on the Windows buildbot. Trying to
reland this with `msvc::no_unique_address` on Windows.
Commit: 3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87
https://github.com/llvm/llvm-project/commit/3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/mul-constant-i64.ll
M llvm/test/CodeGen/X86/vector-mul.ll
Log Message:
-----------
[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat. (REAPPLIED)
As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.
Commit: 66713a0f8257661a8849e1a710a90b79576b0d21
https://github.com/llvm/llvm-project/commit/66713a0f8257661a8849e1a710a90b79576b0d21
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/Makefile
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
Log Message:
-----------
[lldb][test] Add libcxx-simulators test for std::optional (#111133)
Follow-up to the LLDB std::optional data-formatter test failure caused
by https://github.com/llvm/llvm-project/pull/110355.
Two formats are supported:
1. `__val_` has type `value_type`
2. `__val_`'s type is wrapped in `std::remove_cv_t`
Commit: a1c0ba1646f5a80dadd34f55e4a36d5409c2675a
https://github.com/llvm/llvm-project/commit/a1c0ba1646f5a80dadd34f55e4a36d5409c2675a
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
Log Message:
-----------
[lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: change order of ifdefs
The current layout *does* have `removecv_t`. So change
the ifdefs to reflect that.
Commit: e0b24d947570385c5b6c3afea46fea09fc75ddab
https://github.com/llvm/llvm-project/commit/e0b24d947570385c5b6c3afea46fea09fc75ddab
Author: Peter Waller <peter.waller at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A llvm/test/tools/llvm-dis/multiple-files-equivalent.ll
M llvm/tools/llvm-dis/llvm-dis.cpp
Log Message:
-----------
[llvm-dis] Fix non-deterministic disassembly across multiple inputs (#110988)
Prior to this patch, the LLVMContext was shared across inputs to
llvm-dis.
Consequently, NamedStructTypes was shared across inputs, which impacts
StructType::setName - if a name was reused across inputs, it would get
renamed during construction of the struct type, leading to tricky to
diagnose confusion.
Commit: db1340412e167d828ae406975265529d95da7ef0
https://github.com/llvm/llvm-project/commit/db1340412e167d828ae406975265529d95da7ef0
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/mul-constant-i64.ll
Log Message:
-----------
[x86] combineMul - handle 0/-1 KnownBits cases before MUL_IMM logic (REAPPLIED)
Followup to 3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87 fix - always fold multiply to zero/negation
Commit: 88478a89cd85adcc32f2a321ef9e9906c5fdbe26
https://github.com/llvm/llvm-project/commit/88478a89cd85adcc32f2a321ef9e9906c5fdbe26
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
[Flang][OpenMP] Improve entry block argument creation and binding (#110267)
The main purpose of this patch is to centralize the logic for creating
MLIR operation entry blocks and for binding them to the corresponding
symbols. This minimizes the chances of mixing arguments up for
operations having multiple entry block argument-generating clauses and
prevents divergence while binding arguments.
Some changes implemented to this end are:
- Split into two functions the creation of the entry block, and the
binding of its arguments and the corresponding Fortran symbol. This
enabled a significant simplification of the lowering of composite
constructs, where it's no longer necessary to manually ensure the lists
of arguments and symbols refer to the same variables in the same order
and also match the expected order by the `BlockArgOpenMPOpInterface`.
- Removed redundant and error-prone passing of types and locations from
`ClauseProcessor` methods. Instead, these are obtained from the values
in the appropriate clause operands structure. This also simplifies
argument lists of several lowering functions.
- Access block arguments of already created MLIR operations through the
`BlockArgOpenMPOpInterface` instead of directly indexing the argument
list of the operation, which is not scalable as more entry block
argument-generating clauses are added to an operation.
- Simplified the implementation of `genParallelOp` to no longer need to
define different callbacks depending on whether delayed privatization is
enabled.
Commit: 8df6637e84c4fa08e4649079fb21a6932a6926a4
https://github.com/llvm/llvm-project/commit/8df6637e84c4fa08e4649079fb21a6932a6926a4
Author: AidinT <3762928+aidint at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl03.rst
Log Message:
-----------
[doc] Fix Kaleidoscope tutorial chapter 3 code snippet and full listing discrepancies (#111289)
Fix two discrepancies between the cited snippets and the full code.
Commit: d9e986e915b03e2f68d9ed2b664a2511edbb6513
https://github.com/llvm/llvm-project/commit/d9e986e915b03e2f68d9ed2b664a2511edbb6513
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/OpenMP/declare_variant_device_isa_codegen_1.c
Log Message:
-----------
[clang][OpenMP][test] Use x86_64-linux-gnu triple for test referencing avx512f feature (#111337)
This test passes as-is on non-X86 hosts only because almost no target
implements `isValidFeatureName` (the default implementation
unconditionally returns true). RISC-V does implement it, and like X86
checks that the feature name is one supported by the architecture. This
means the test creates an additional warning on RISC-V due to
`_attribute__((target("avx512f")))`.
The simple solution here is to just explicitly target x86_64-linux-gnu.
Commit: f1ec45a0b0b14d9eb41d32be98f1437b8d1d322d
https://github.com/llvm/llvm-project/commit/f1ec45a0b0b14d9eb41d32be98f1437b8d1d322d
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/Driver/aarch64-multilib-rcpc3.c
Log Message:
-----------
[Driver] Use empty multilib file in another test (#111352)
This makes the test independent of the one provided by a toolchain clang
is built into, which can cause the output of
-print-multi-flags-experimental to change.
Commit: 9a222a112606249f1e9db43fcaaae56982cf0197
https://github.com/llvm/llvm-project/commit/9a222a112606249f1e9db43fcaaae56982cf0197
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/extract-lowbits.ll
Log Message:
-----------
[X86] Add test coverage for #111323
Commit: c978d05a26e47edf2eda402b2140347afb8a5954
https://github.com/llvm/llvm-project/commit/c978d05a26e47edf2eda402b2140347afb8a5954
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
Log Message:
-----------
[X86] getIntImmCostInst - pull out repeated Imm.getBitWidth() calls. NFC.
Commit: 8b6e1dc924fd3c35670b46d744091d2f7ce94c5f
https://github.com/llvm/llvm-project/commit/8b6e1dc924fd3c35670b46d744091d2f7ce94c5f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/CodeGen/X86/extract-lowbits.ll
Log Message:
-----------
[X86] getIntImmCostInst - reduce i64 imm costs of AND(X,CMASK) case that can fold to BEXT/BZHI
With BEXT/BZHI the i64 imm mask will be replaced with a i16/i8 control mask
Fixes #111323
Commit: 02dd6b1014c708591fa0e8d46efb328c513a86e7
https://github.com/llvm/llvm-project/commit/02dd6b1014c708591fa0e8d46efb328c513a86e7
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
A llvm/test/CodeGen/AArch64/sve-bf16-rounding.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
Log Message:
-----------
[LLVM][CodeGen] Add lowering for scalable vector bfloat operations. (#109803)
Specifically:
fabs, fadd, fceil, fdiv, ffloor, fma, fmax, fmaxnm, fmin, fminnm,
fmul, fnearbyint, fneg, frint, fround, froundeven, fsub, fsqrt &
ftrunc
Commit: 1062007d1b10bdec8dddc6d41f3fb6c01e9be62b
https://github.com/llvm/llvm-project/commit/1062007d1b10bdec8dddc6d41f3fb6c01e9be62b
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
Log Message:
-----------
[gn build] Port fb0ef6b66e3c
Commit: ee57a685fae2f8feb81015b89f784a44e1b2bfa7
https://github.com/llvm/llvm-project/commit/ee57a685fae2f8feb81015b89f784a44e1b2bfa7
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
Log Message:
-----------
[libc] Make a dedicated thread for the RPC server (#111210)
Summary:
Make a separate thread to run the server when we launch. This is
required by CUDA, which you can force with `export
CUDA_LAUNCH_BLOCKING=1`. I figured I might as well be consistent and do
it for the AMD implementation as well even though I believe it's not
necessary.
Commit: a018353f4b2207c6e6a82408cfe51152b03f7868
https://github.com/llvm/llvm-project/commit/a018353f4b2207c6e6a82408cfe51152b03f7868
Author: Juan Manuel Martinez Caamaño <juamarti at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
Revert "[NFC][EarlyIfConverter] Remove unused member variables"
This reverts commit 3c83102f0615c7d66f6df698ca472ddbf0e9483d.
Commit: e7174a8378faf291e843892323527d001220d645
https://github.com/llvm/llvm-project/commit/e7174a8378faf291e843892323527d001220d645
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/builders/builder.py
Log Message:
-----------
[lldb][test] Provide proper path to LLVM utils in API tests (#110837)
In aea066849, API tests were supposed to use LLVM tools.
However, a path to a utility is made up incorrectly there: util name
should be prefixed with `llvm-`.
Hence, it's fixed here.
Commit: 91d6e77d8b4ad6dbbbfa5b6788f44d3ab6757707
https://github.com/llvm/llvm-project/commit/91d6e77d8b4ad6dbbbfa5b6788f44d3ab6757707
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/test/Transforms/debug-fn-info.fir
Log Message:
-----------
[flang][debug] set DW_AT_main_subprogram for fortran main function (#111350)
Requested here
https://github.com/llvm/llvm-project/pull/111022#issuecomment-2396287781
Commit: dda107b8cb7cb35690a45518c72f85a1df04be1a
https://github.com/llvm/llvm-project/commit/dda107b8cb7cb35690a45518c72f85a1df04be1a
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_configure_options.bzl
Log Message:
-----------
Revert "[libc][bazel] Enable software prefetching for memcpy" (#111370)
Reverts llvm/llvm-project#108939
When `AVX` is available but `-mprefer-vector-width=128` some of the
`mov` instructions turn into the x86 `rep;movsb` instruction leading to
poor performance on "old" architectures (sandybridge, haswell). The
possible solutions are : get rid of the `-mprefer-vector-width` option
or use smaller static copy sizes in
`inline_memcpy_x86_sse2_ge64_sw_prefetching`. Right now a copy size of 3
cache lines (192B) relying exclusively on xmm registers gets turned into
`rep;movsb`.
Commit: 5dc7a5e50bd21cc818a3a71691af9780291b75b2
https://github.com/llvm/llvm-project/commit/5dc7a5e50bd21cc818a3a71691af9780291b75b2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Headers/popcntintrin.h
Log Message:
-----------
[clang][x86] popcntintrin.h - merge the __DEFAULT_FN_ATTRS / __DEFAULT_FN_ATTRS_CONSTEXPR defines. NFC.
We only need one define - so consistently use __DEFAULT_FN_ATTRS like we do in other headers.
Commit: 73c9ad263369ac7350d60b3d3670ea3ed56669cc
https://github.com/llvm/llvm-project/commit/73c9ad263369ac7350d60b3d3670ea3ed56669cc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Headers/xmmintrin.h
M clang/test/CodeGen/X86/sse-builtins.c
Log Message:
-----------
[clang][x86] Add constexpr support for some basic SSE1 intrinsics (#111001)
This is an initial patch to enable constexpr support on the more basic SSE1 intrinsics - such as initialization, arithmetic, logic and fixed shuffles.
The plan is to incrementally extend this for SSE2/AVX etc. - initially for the equivalent basic intrinsics, but we can add support for some of the ia32 builtins as well we the need arises.
Commit: b2784ec32837df38e0de7436cbde6dfa7aefacd1
https://github.com/llvm/llvm-project/commit/b2784ec32837df38e0de7436cbde6dfa7aefacd1
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
Log Message:
-----------
Revert "[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)"
This caused assertion failures:
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:7736:
SDValue getMemsetValue(SDValue, EVT, SelectionDAG &, const SDLoc &):
Assertion `C->getAPIntValue().getBitWidth() == 8' failed.
See comment on the PR for a reproducer.
> repstosb and repstosd are the same size, but stosd is only done for 0
> because the process of multiplying the constant so that it is copied
> across the bytes of the 32-bit number adds extra instructions that cause
> the size to increase. For 0, repstosb and repstosd are the same size,
> but stosd is only done for 0 because the process of multiplying the
> constant so that it is copied across the bytes of the 32-bit number adds
> extra instructions that cause the size to increase. For 0, we do not
> need to do that at all.
>
> For memcpy, the same goes, and as a result the minsize check was moved
> ahead because a jmp to memcpy encoded takes more bytes than repmovsb.
This reverts commit 6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e.
Commit: 1666d13078e4799df2d8eaa101ccf02acd031427
https://github.com/llvm/llvm-project/commit/1666d13078e4799df2d8eaa101ccf02acd031427
Author: BARRET <41060790+Adnios at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/MC/CMakeLists.txt
M mlir/lib/Conversion/ConvertToLLVM/CMakeLists.txt
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Dialect/Arith/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
M mlir/lib/Dialect/MemRef/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Tosa/CMakeLists.txt
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
M mlir/lib/Target/SPIRV/CMakeLists.txt
M mlir/lib/Target/SPIRV/Serialization/CMakeLists.txt
M mlir/lib/Transforms/CMakeLists.txt
Log Message:
-----------
[CMake]: Remove unnecessary dependencies on LLVM/MLIR (#111255)
Previous https://github.com/llvm/llvm-project/pull/110362 (reverted)
caused breakage. Here is the PR with fix.
My build cmdline:
```
cmake ../llvm \
-G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=install \
-DCMAKE_C_COMPILER=gcc-9 \
-DCMAKE_CXX_COMPILER=g++-9 \
-DCMAKE_CUDA_COMPILER=$(which nvcc) \
-DLLVM_ENABLE_LLD=OFF \
-DLLVM_ENABLE_ASSERTIONS=ON \
-DLLVM_BUILD_EXAMPLES=ON \
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
-DLLVM_CCACHE_BUILD=ON \
-DMLIR_ENABLE_BINDINGS_PYTHON=ON \
-DBUILD_SHARED_LIBS=ON \
-DLLVM_ENABLE_PROJECTS='llvm;mlir'
```
Commit: 4c9c2d6082740b4ddda1ecfdc33702e4cbd3444d
https://github.com/llvm/llvm-project/commit/4c9c2d6082740b4ddda1ecfdc33702e4cbd3444d
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/AST/CXXInheritance.cpp
Log Message:
-----------
[AST] Avoid repeated hash lookups (NFC) (#111327)
Here I'm splitting up the existing "if" statement into two. Mixing
hasDefinition() and insert() in one "if" condition would be extremely
confusing as hasDefinition() doesn't change anything while insert()
does.
Commit: 4bc0916011c4fc02de29e09905400138cbec909f
https://github.com/llvm/llvm-project/commit/4bc0916011c4fc02de29e09905400138cbec909f
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
Log Message:
-----------
[Linalg] Avoid repeated hash lookups (NFC) (#111328)
Commit: 31e8c539e0fdc4b251871c9126f7bc28fc8fb74b
https://github.com/llvm/llvm-project/commit/31e8c539e0fdc4b251871c9126f7bc28fc8fb74b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
Log Message:
-----------
[Affine] Avoid repeated hash lookups (NFC) (#111330)
Commit: 40f0f7b4ec3eea4827fa3e54153ff722b5842ea1
https://github.com/llvm/llvm-project/commit/40f0f7b4ec3eea4827fa3e54153ff722b5842ea1
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/aarch64-fmv-dependencies.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/Sema/attr-target-clones-aarch64.c
M clang/test/SemaCXX/attr-target-version.cpp
M compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
M llvm/include/llvm/TargetParser/AArch64CPUFeatures.inc
M llvm/lib/Target/AArch64/AArch64FMV.td
Log Message:
-----------
[FMV][AArch64] Unify features ssbs and ssbs2. (#110297)
According to https://developer.arm.com/documentation/102105/latest Arm
Architecture Reference Manual for A-profile architecture: Known issues
2.206 D22789
In section C5.2.25 "SSBS, Speculative Store Bypass Safe", under the
heading 'Configurations', the text that reads:
"This register is present only when FEAT_SSBS is implemented. Otherwise,
direct accesses to SSBS are UNDEFINED."
is changed to read:
"This register is present only when FEAT_SSBS2 is implemented.
Otherwise, direct accesses to SSBS are UNDEFINED."
This suggests that it's not worth splitting FEAT_SSBS2 from FEAT_SSBS in
the compiler, since FEAT_SSBS cannot be used for predicating the MRS/MSR
instructions. Those can access PSTATE.SSBS only when FEAT_SSBS2 is
available. Moreover, there are no hardware implementations which
implement FEAT_SSBS without FEAT_SSBS2, therefore unifying these
features in the specification should not be a regression for feature
detection.
Approved in ACLE as https://github.com/ARM-software/acle/pull/350
Commit: 0614b3cface2128c2e0f7e3415b54f5cdb75a02b
https://github.com/llvm/llvm-project/commit/0614b3cface2128c2e0f7e3415b54f5cdb75a02b
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
Log Message:
-----------
[Analysis] Simplify code with DenseMap::operator[] (NFC) (#111331)
Commit: 5fdda4147495c6bcfb6c100dbf32a669c3b39874
https://github.com/llvm/llvm-project/commit/5fdda4147495c6bcfb6c100dbf32a669c3b39874
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Transforms/Mem2Reg.cpp
Log Message:
-----------
[Transforms] Avoid repeated hash lookups (NFC) (#111329)
Commit: 5f94b0cbdd169ea9387fa48ee9889ebf752821f7
https://github.com/llvm/llvm-project/commit/5f94b0cbdd169ea9387fa48ee9889ebf752821f7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
Log Message:
-----------
AMDGPU: Try to reuse dest reg for s_add_i32 frame indexes (#111201)
Hack around the register scavenger doing the wrong thing.
It does not find the result register as available in the
case the frame index add isn't also reading the dest register.
This is the quick fix for a regression where the scavenge would
create a broken spill of SGPR to memory. I believe this is still
broken for cases we cannot use the result register.
I'm confused about what position the scavenger iterator
is supposed to be in, and what RestoreAfter is for. The scavenger
is missing a full set of forward/backward APIs and there seems
to be an off by one somewhere.
Commit: d5ec01b0dd20d8bdacc2810539686374e7ad5918
https://github.com/llvm/llvm-project/commit/d5ec01b0dd20d8bdacc2810539686374e7ad5918
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
Revert "[NFC][EarlyIfConverter] Replace boolean Predicate for a class (#108519)" (#111372)
This reverts commit 9e7315912656628b606e884e39cdeb261b476f16.
Commit: 989c437d7f40cf5a53cb111a915013ac28bf8891
https://github.com/llvm/llvm-project/commit/989c437d7f40cf5a53cb111a915013ac28bf8891
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
Log Message:
-----------
[RISCV][GISEL][NFC] Add break statement to reduce diff on future changes of preISelLower
Commit: 0e8555d4dbfdfeddc01dc2ecf9a9b6e804f7b645
https://github.com/llvm/llvm-project/commit/0e8555d4dbfdfeddc01dc2ecf9a9b6e804f7b645
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M libclc/README.TXT
Log Message:
-----------
[libclc] Remove mention of BSD license in readme (#111371)
This seems to be an artifact from the intial import in 2012, but even if
not, folks are better off reading the LICENSE.TXT file for the full
details if they need them.
Fixes #109968
Commit: 0e2970f0ad723a3b4e56d18858f4fd215415002f
https://github.com/llvm/llvm-project/commit/0e2970f0ad723a3b4e56d18858f4fd215415002f
Author: Pavel Labath <pavel at labath.sk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
Log Message:
-----------
[lldb] Make libc++ simulator tests compatible with category-based ski… (#111353)
…pping, which works by setting a field on the function object. This
doesn't work on a functools.partial object. Use a real function instead.
Commit: aa656366ce9a693fce6a4f16090d250a8059df46
https://github.com/llvm/llvm-project/commit/aa656366ce9a693fce6a4f16090d250a8059df46
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
M clang/test/CodeGen/X86/avx-builtins.c
Log Message:
-----------
[clang][x86] Update AVX1 intrinsic tests for both C/C++
Requires some call instructions to handle additional markers
Commit: f71d62178d9c97ac650a8454403d71cbc8fd8c9d
https://github.com/llvm/llvm-project/commit/f71d62178d9c97ac650a8454403d71cbc8fd8c9d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/f16c-builtins-constrained.c
M clang/test/CodeGen/X86/f16c-builtins.c
Log Message:
-----------
[clang][x86] Update F16C intrinsic tests for both C/C++ and 32/64-bit targets
Requires some call instructions to handle additional markers
Commit: aa4d94839e6bb30389deb3339fb0d0e4aa8baa4e
https://github.com/llvm/llvm-project/commit/aa4d94839e6bb30389deb3339fb0d0e4aa8baa4e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/fma-builtins-constrained.c
M clang/test/CodeGen/X86/fma-builtins.c
M clang/test/CodeGen/X86/fma4-builtins.c
Log Message:
-----------
[clang][x86] Update FMA/FMA4 intrinsic tests for both C/C++ and 32/64-bit targets
Requires some call instructions to handle additional markers
Commit: f15fe73d234a3c41f9cb905106517a89bab3add4
https://github.com/llvm/llvm-project/commit/f15fe73d234a3c41f9cb905106517a89bab3add4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/avx2-builtins.c
Log Message:
-----------
[clang][x86] Update AVX2 intrinsic tests for both C/C++
Requires some call instructions to handle additional markers
Commit: 8565213f2f9991d83d2b1353f00f35e2b34d9d12
https://github.com/llvm/llvm-project/commit/8565213f2f9991d83d2b1353f00f35e2b34d9d12
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
R clang/CodeOwners.rst
A clang/Maintainers.rst
M clang/docs/CMakeLists.txt
R clang/docs/CodeOwners.rst
A clang/docs/Maintainers.rst
M clang/docs/index.rst
Log Message:
-----------
[clang] Code owners -> Maintainers transition (#108997)
This is the initial transition from using "code owners" to using
"maintainers".
Commit: 2fe1f84db379bccbf0a3ac136d063a94b5dc59cb
https://github.com/llvm/llvm-project/commit/2fe1f84db379bccbf0a3ac136d063a94b5dc59cb
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/test/CodeGen/Generic/llc-start-stop.ll
Log Message:
-----------
[test] Fix llc-start-stop.ll when the default target enables the loop terminator folding pass
Previously this would fail if the default target enabled the loop
terminator folding pass (currently just RISC-V), as it runs after loop
strength reduction.
Commit: 2edd897a4227e481af33e8e43090ab088cd9d953
https://github.com/llvm/llvm-project/commit/2edd897a4227e481af33e8e43090ab088cd9d953
Author: Nuri Amari <nuri.amari99 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/COFF/LTO.cpp
M lld/ELF/LTO.cpp
M lld/MachO/LTO.cpp
M lld/test/COFF/thinlto-emit-imports.ll
M lld/test/ELF/lto/thinlto-cant-write-index.ll
M lld/test/ELF/lto/thinlto-emit-imports.ll
M lld/test/MachO/thinlto-emit-imports.ll
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/Support/Threading.h
M llvm/include/llvm/Transforms/IPO/FunctionImport.h
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/tools/gold/gold-plugin.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
Make WriteIndexesThinBackend multi threaded (#109847)
We've noticed that for large builds executing thin-link can take on the
order of 10s of minutes. We are only using a single thread to write the
sharded indices and import files for each input bitcode file. While we
need to ensure the index file produced lists modules in a deterministic
order, that doesn't prevent us from executing the rest of the work in
parallel.
In this change we use a thread pool to execute as much of the backend's
work as possible in parallel. In local testing on a machine with 80
cores, this change makes a thin-link for ~100,000 input files run in ~2
minutes. Without this change it takes upwards of 10 minutes.
---------
Co-authored-by: Nuri Amari <nuriamari at fb.com>
Commit: c5f7a32356fef48bbd075edfedec80142e8106b6
https://github.com/llvm/llvm-project/commit/c5f7a32356fef48bbd075edfedec80142e8106b6
Author: RipleyTom <RipleyTom at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[X86] Add AMD Llano family detection (#111312)
Very simple one liner, adds the missing detection for the Llano family
which is essentially a refreshed K10:
Documentation of the family id:
https://en.wikichip.org/wiki/amd/cpuid#Family_18_.2812h.29
Documentation that it fits into amdfam10:
https://en.wikipedia.org/wiki/AMD_10h#12h
Commit: 0e8a10b099a230f5193f228467538e6443afa398
https://github.com/llvm/llvm-project/commit/0e8a10b099a230f5193f228467538e6443afa398
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/archives/TestBSDArchives.py
Log Message:
-----------
[lldb][test] Mark test() in TestBSDArchives.py as passing remotely (#111199)
It was xfail'ed in de2ddc8f3146b. However, it passes on a buildbot
https://lab.llvm.org/staging/#/builders/195/builds/3988.
Commit: 5e7cc374225e1704d0694da05e02f327cc0cf024
https://github.com/llvm/llvm-project/commit/5e7cc374225e1704d0694da05e02f327cc0cf024
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
Log Message:
-----------
[lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: don't use __builtin_printf
This caused Windows CI to fail with:
```
Build Command Output:
make: Entering directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.test_r0'
"C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang++.exe" -std=c++11 -gdwarf -O0 -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info -fno-exceptions -D_HAS_EXCEPTIONS=0 -fms-compatibility-version=19.0 -std=c++14 -DREVISION=0 -std=c++14 --driver-mode=g++ -MT main.o -MD -MP -MF main.d -c -o main.o C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional/main.cpp
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe main.o -gdwarf -O0 -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info -fuse-ld=lld --driver-mode=g++ -o "a.out"
lld-link: error: undefined symbol: printf
>>> referenced by main.o:(main)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile.rules:515: a.out] Error 1
make: Leaving directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.test_r0'
```
Commit: 02b9c97b75325c9b737772986e439cf8f3c0d1ab
https://github.com/llvm/llvm-project/commit/02b9c97b75325c9b737772986e439cf8f3c0d1ab
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/ProfileData/MemProfReader.cpp
Log Message:
-----------
[memprof] Simplify code with MapVector::operator[] (NFC) (#111335)
Note that the following are all equivalent to each other:
Map.insert({Key, Value()}).first->second
Map.try_emplace(Key).first->second
Map[Key]
Commit: 1f17c2d20db7b26367df53c1d334d4338313fc0b
https://github.com/llvm/llvm-project/commit/1f17c2d20db7b26367df53c1d334d4338313fc0b
Author: Rahman Lavaee <rahmanl at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/LTO.cpp
M lld/test/ELF/lto/basic-block-sections.ll
Log Message:
-----------
[LLD] Deprecate --lto-basic-block-sections=labels (#110697)
This option is now replaced by `--lto-basic-block-address-map`.
Commit: dec6fe3de0f6475ea83391e5b0b4036cf56db35b
https://github.com/llvm/llvm-project/commit/dec6fe3de0f6475ea83391e5b0b4036cf56db35b
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
R llvm/test/CodeGen/SPIRV/opencl/radians.ll
Log Message:
-----------
Revert "[SPIRV] Add radians intrinsic" (#111398)
Reverts llvm/llvm-project#110800
`llvm\test\CodeGen\DirectX\radians.ll` is failing after this change.
@adam-yang please send a new PR with the issue resolved once you've had
time to investigate.
Commit: b2c615fc792c3f75af66aac99c05ffa85ef50354
https://github.com/llvm/llvm-project/commit/b2c615fc792c3f75af66aac99c05ffa85ef50354
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
A llvm/test/CodeGen/SPIRV/opencl/radians.ll
Log Message:
-----------
Reapply "[SPIRV] Add radians intrinsic"
I had too many tabs open and reverted #110800 by mistake, it was
supposed to be #110616.
This reverts commit dec6fe3de0f6475ea83391e5b0b4036cf56db35b.
Commit: b795c28d8e6d5947d365f4e5f7b49cc22546292f
https://github.com/llvm/llvm-project/commit/b795c28d8e6d5947d365f4e5f7b49cc22546292f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/avx512f-builtins.c
Log Message:
-----------
[clang][x86] Update AVX512F intrinsic tests for both C/C++
Requires some better checking of labels and some call instructions to handle additional markers
Commit: f07e1c86199eeac609900f42edb22e1faf461ef2
https://github.com/llvm/llvm-project/commit/f07e1c86199eeac609900f42edb22e1faf461ef2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/X86/mmx-builtins.c
Log Message:
-----------
[clang][x86] Update MMX intrinsic tests for both C/C++ and 32/64-bit targets
Commit: d4c17891126a79ae49237a7de0f9948aeedcd177
https://github.com/llvm/llvm-project/commit/d4c17891126a79ae49237a7de0f9948aeedcd177
Author: Da-Viper <57949090+Da-Viper at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/lldb-dap.cpp
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
Make env and source map dictionaries #95137 (#106919)
Fixes #95137
Commit: 5d372ea6a1e438b8e9583391d40cfcf34210d4f7
https://github.com/llvm/llvm-project/commit/5d372ea6a1e438b8e9583391d40cfcf34210d4f7
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
Log Message:
-----------
[LLDB][DYLD] Remove logic around not rebasing when main executable has a load address (#110885)
This is a part of #109477 that I'm making into it's own patch. Here we
remove logic from the DYLD that prevents it's logic from running if the
main executable already has a load address. Instead we let the DYLD
fully determine what should be loaded and what shouldn't.
Commit: 971b579bc6669a0898e47d6702c4b99cb757bb26
https://github.com/llvm/llvm-project/commit/971b579bc6669a0898e47d6702c4b99cb757bb26
Author: Prashant Kumar <pk5561 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[MLIR] Don't drop attached discardable attributes (#111261)
The creation of pack op was dropping discardable attributes.
Commit: b3c1403dc00a41c8222d4b1dd82cbb7c56fd61ae
https://github.com/llvm/llvm-project/commit/b3c1403dc00a41c8222d4b1dd82cbb7c56fd61ae
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
A clang/test/AST/solaris-tm.cpp
Log Message:
-----------
[clang] Fix std::tm etc. mangling on Solaris (#106353)
Recently, Solaris bootstrap got broken because Solaris uses a
non-standard mangling of `std::tm` and a few others. This was fixed with
a hack in PR #100724. The Solaris ABI requires mangling `std::tm` as
`tm` and similarly for `std::div_t`, `std::ldiv_t`, and `std::lconv`,
which is what this patch implements. The hack needs to stay in place to
allow building with older versions of `clang`.
Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11` (2-stage
builds with both `clang-19` and `gcc-14` as build compiler), and
`x86_64-pc-linux-gnu`.
Commit: 71b2c4dbc7cc28007849434303e6bd2408db5b3b
https://github.com/llvm/llvm-project/commit/71b2c4dbc7cc28007849434303e6bd2408db5b3b
Author: Nimish Mishra <neelam.nimish at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
R flang/test/Integration/OpenMP/atomic-update-complex.f90
Log Message:
-----------
[flang] Remove failing integration test
Commit: 69577b2454fcfe35d562ede90c15150f7265376a
https://github.com/llvm/llvm-project/commit/69577b2454fcfe35d562ede90c15150f7265376a
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h
M llvm/test/MC/WebAssembly/annotations.s
M llvm/test/MC/WebAssembly/eh-assembly.s
M llvm/test/MC/WebAssembly/type-checker-errors.s
Log Message:
-----------
[WebAssembly] Support type checker for new EH (#111069)
This adds supports for the new EH instructions (`try_table` and
`throw_ref`) to the type checker.
One thing I'd like to improve on is the locations in the errors for
`catch_***` clauses. Currently they just point to the starting column of
`try_table` instruction itself. But to figure out where catch clauses
start you need to traverse `OperandVector` and check
`WebAssemblyOperand::isCatchList` on them to see which one is the catch
list operand, but `WebAssemblyOperand` class is in AsmParser and
AsmTypeCheck does not have access to it:
https://github.com/llvm/llvm-project/blob/cdfdc857cbab0418b7e5116fd4255eb5566588bd/llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp#L43-L204
And even if AsmTypeCheck has access to it, currently it treats the list
of catch clauses as a single `WebAssemblyOperand` so there is no way to
get the starting location of each `catch_***` clause in the current
structure.
This also renames `valTypeToStackType` to `valTypesToStackTypes`, given
that it takes two type lists.
Commit: 0b8fec69464ce4a7e759137b091a6b7500458f36
https://github.com/llvm/llvm-project/commit/0b8fec69464ce4a7e759137b091a6b7500458f36
Author: Justin Bogner <mail at justinbogner.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/test/CodeGen/DirectX/radians.ll
Log Message:
-----------
[DirectX] Fix broken test and accidental fallthrough in #110616 (#111410)
Fix an obvious typo in these tests to get them passing, and also fix the
-Wimplicit-fallthrough warning that fires when trying to build.
Reverting #110616 was tricky because of dependencies, so I'm just doing
the easy fix directly here.
Commit: 1297ff176580b8a1cb82128208349002652e5a83
https://github.com/llvm/llvm-project/commit/1297ff176580b8a1cb82128208349002652e5a83
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/test/CodeGen/aarch64-mixed-target-attributes.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenCXX/fmv-namespace.cpp
Log Message:
-----------
[FMV][AArch64][NFC] Cleanup attribute metadata from test files. (#111386)
We have a dedicated test to check the target-features for FMV
(clang/test/CodeGen/aarch64-fmv-dependencies.c) therefore I am removing
the autogenerated checks from irrelevant tests since the noise is making
it harder to review actual codegen changes.
Commit: fabe7e39df624c09d399f5f61d5450c2021c2357
https://github.com/llvm/llvm-project/commit/fabe7e39df624c09d399f5f61d5450c2021c2357
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/tools/gold/gold-plugin.cpp
Log Message:
-----------
[llvm][gold] Fix syntax error (#111412)
This seems to have been overlooked in #109847, probably because most
bots don't build w/ gold enabled.
Commit: d8a656ffaf735ed689856daa5dc13a9274358072
https://github.com/llvm/llvm-project/commit/d8a656ffaf735ed689856daa5dc13a9274358072
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/mfma.mlir
Log Message:
-----------
[MLIR] AMDGPUToROCDL: Use a bitcast op to reintepret a vector of i8 as single integer. (#111400)
Found by inspecting AMDGPU assembly - so the arithmetic ops created
there were definitely making their way into the target ISA. A
`LLVM::BitcastOp` seems equivalent, and evaporates as expected in the
target asm.
Along the way, I thought that this helper function `mfmaConcatIfNeeded`
could be renamed to `convertMFMAVectorOperand` to better convey its
contract; so I don't need to think about whether a bitcast is a
legitimate "concat" :-)
---------
Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>
Commit: 41b09c5346324fc0fd2642f3df216a246f9fb98b
https://github.com/llvm/llvm-project/commit/41b09c5346324fc0fd2642f3df216a246f9fb98b
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/Stmt.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/test/SemaCXX/warn-assignment-condition.cpp
Log Message:
-----------
[Clang] omit parentheses in fold expressions with a single expansion (#110761)
Fixes #101863
Commit: 93bfa7886b1a86dd9328f94561dd32dc22ca7038
https://github.com/llvm/llvm-project/commit/93bfa7886b1a86dd9328f94561dd32dc22ca7038
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
Log Message:
-----------
[SandboxVectorizer] Define SeedBundle: a set of instructions to be vectorized [retry] (#111073)
[Retry 110696 with a proper rebase.]
Seed collection will assemble instructions to be vectorized into
SeedBundles. This data structure is not intended to be used directly,
but will be the basis for load bundles, store bundles, and so on.
Commit: 32e90bbe579d39356ebd269158b1b5eef82761d4
https://github.com/llvm/llvm-project/commit/32e90bbe579d39356ebd269158b1b5eef82761d4
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/docs/resources/test.rst
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/CMakeLists.txt
M lldb/test/Shell/Expr/TestIRMemoryMap.test
M lldb/test/Shell/Settings/TestEchoCommands.test
A lldb/test/Shell/Settings/TestEchoCommandsQuiet.test
M lldb/test/Shell/Target/target-label.test
M lldb/test/Shell/helper/toolchain.py
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
Log Message:
-----------
[lldb][test] Support remote run of Shell tests (#95986)
1. This commit adds LLDB_TEST_PLATFORM_URL, LLDB_TEST_SYSROOT,
LLDB_TEST_PLATFORM_WORKING_DIR, LLDB_SHELL_TESTS_DISABLE_REMOTE cmake
flags to pass arguments for cross-compilation and remote running of both Shell&API tests.
2. To run Shell tests remotely, it adds 'platform select' and 'platform connect' commands to %lldb
substitution.
3. 'remote-linux' feature added to lit to disable tests failing with
remote execution.
4. A separate working directory is assigned to each test to avoid
conflicts during parallel test execution.
5. Remote Shell testing is run only when LLDB_TEST_SYSROOT is set for
building test sources. The recommended compiler for that is Clang.
---------
Co-authored-by: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Commit: f11568bcb026e0f54d270bda6f161b9fb1e42f39
https://github.com/llvm/llvm-project/commit/f11568bcb026e0f54d270bda6f161b9fb1e42f39
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
R llvm/test/Analysis/CostModel/RISCV/fixed-vector-insert-subvector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll
Log Message:
-----------
Revert "[RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is multiple insert subvector. (#110457)"
This reverts commit 554eaec63908ed20c35c8cc85304a3d44a63c634. Change was not approved when landed.
Commit: adbc37d999b5949779830ffa7dbff54cb78862cb
https://github.com/llvm/llvm-project/commit/adbc37d999b5949779830ffa7dbff54cb78862cb
Author: hill <hill at hilll.dev>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang-tools-extra/docs/clang-tidy/index.rst
Log Message:
-----------
[clang-tidy] Fix incorrect command-line option in docs (#111405)
Updated the `HeaderFilterRegex` description to reference
`--header-filter` instead of the incorrect `--header-filter-regex` in
the clang-tidy documentation.
Commit: 3f5039323c43af22896aeb2c34f6b302768d1fab
https://github.com/llvm/llvm-project/commit/3f5039323c43af22896aeb2c34f6b302768d1fab
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
Log Message:
-----------
[SandboxVectorizer][NFC] Remove unused include (#111418)
Commit: 90a5744bebffafb88abf2343a1a70a37e12abef4
https://github.com/llvm/llvm-project/commit/90a5744bebffafb88abf2343a1a70a37e12abef4
Author: Sandeep Dasgupta <sdasgup at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
M mlir/test/Dialect/Quant/parse-uniform-invalid.mlir
Log Message:
-----------
Remove redundant checks related to quantized type (#110604)
[APFloat::getSmallest](https://github.com/llvm/llvm-project/blob/915df1ae41652e2f595ce741dcd8f01878ef4e30/llvm/include/llvm/ADT/APFloat.h#L1060)
(and similarly `APFloat:getLargest`)
```
APFloat getSmallest(const fltSemantics &Sem, bool Negative = false);
```
return the positive number when the default value for the second
argument is used.
With that being said, the check
[QuantTypes.cpp#L325](https://github.com/llvm/llvm-project/blob/96f37ae45310885e09195be09d9c05e1c1dff86b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp#L325)
```c++
if (scale <= 0.0 || std::isinf(scale) || std::isnan(scale))
return emitError() << "illegal scale: " << scale;
```
is already covered by the check which follows
[QuantTypes.cpp#L327](https://github.com/llvm/llvm-project/blob/96f37ae45310885e09195be09d9c05e1c1dff86b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp#L327)
```c++
if (scale < minScale || scale > maxScale)
return emitError() << "scale out of expressed type range [" << minScale
<< ", " << maxScale << "]";
```
given that range `[positive-smallest-finite-number,
positive-largest-finite-number]` does not include `inf` and `nan`s.
I propose to remove the redundant check. Any suggestion for improving
the error message is welcome.
Commit: a8e1311a1c4f7f67d8d8d7575f595da4f0a5873c
https://github.com/llvm/llvm-project/commit/a8e1311a1c4f7f67d8d8d7575f595da4f0a5873c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/lib/IR/Verifier.cpp
A llvm/test/Assembler/noalias-addrspace-md.ll
M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
A llvm/test/Verifier/noalias-addrspace.ll
Log Message:
-----------
[RFC] IR: Define noalias.addrspace metadata (#102461)
This is intended to solve a problem with lowering atomics in
OpenMP and C++ common to AMDGPU and NVPTX.
In OpenCL and CUDA, it is undefined behavior for an atomic instruction
to modify an object in thread private memory. In OpenMP, it is defined.
Correspondingly, the hardware does not handle this correctly. For
AMDGPU,
32-bit atomics work and 64-bit atomics are silently dropped. We
therefore
need to codegen this by inserting a runtime address space check,
performing
the private case without atomics, and fallback to issuing the real
atomic
otherwise. This metadata allows us to avoid this extra check and branch.
Handle this by introducing metadata intended to be applied to atomicrmw,
indicating they cannot access the forbidden address space.
Commit: fbb8234ca9ba75f2d5cc0238ddd08cb5534ae496
https://github.com/llvm/llvm-project/commit/fbb8234ca9ba75f2d5cc0238ddd08cb5534ae496
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
Log Message:
-----------
[SandboxIR][NFC] Remove unused include (#111422)
Commit: e0b840a903d169ff1437fdaa473d26021d0b4ba2
https://github.com/llvm/llvm-project/commit/e0b840a903d169ff1437fdaa473d26021d0b4ba2
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
Log Message:
-----------
[SandboxVectorizer][NFC] Remove erroneous expensive check assert (#111425)
Commit: 017b504b462ce7d4938f704a1f10118ead347d3d
https://github.com/llvm/llvm-project/commit/017b504b462ce7d4938f704a1f10118ead347d3d
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
Log Message:
-----------
[clang] Don't lose track of explicit specializations of member function templates (#111267)
When instantiating a class template, we would lose track of function
template explicit specializations, marking them with the wrong
specialization kind.
This would lead to improperly using the explcit specialization arguments
to instantiate the function body.
This also better matches MSVC on the behaviour of explicitly vs
implicitly instantiating these.
Fixes #111266
Commit: dd0fe4fb7440182d8101135bfd694b2d84893c2e
https://github.com/llvm/llvm-project/commit/dd0fe4fb7440182d8101135bfd694b2d84893c2e
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
A clang/include/clang/CIR/.clang-tidy
A clang/include/clang/CIRFrontendAction/.clang-tidy
A clang/lib/CIR/.clang-tidy
Log Message:
-----------
[CIR] Add .clang-tidy files for ClangIR specific coding style rules
https://llvm.github.io/clangir/GettingStarted/coding-guideline.html
Reviewers: dkolsen-pgi, bcardosolopes, erichkeane
Reviewed By: erichkeane, dkolsen-pgi
Pull Request: https://github.com/llvm/llvm-project/pull/111417
Commit: 9dca83f2e1f20919a06dd58acd345e2a49e13d9a
https://github.com/llvm/llvm-project/commit/9dca83f2e1f20919a06dd58acd345e2a49e13d9a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/test/Bitcode/amdgcn-atomic.ll
Log Message:
-----------
AMDGPU: Add noalias.addrspace metadata when autoupgrading atomic intrinsics (#102599)
This will be needed to continue generating the raw instruction in the flat case.
Commit: 8882d5912322ce9c199181e46b8c07d24ed6095d
https://github.com/llvm/llvm-project/commit/8882d5912322ce9c199181e46b8c07d24ed6095d
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-call.cpp
Log Message:
-----------
[flang] Fix typo in warning message text (#110888)
I accidentally deleted a space character; put it back.
Commit: ce5edfd232c38ec4e4642b15cdb4dd8ecf105b04
https://github.com/llvm/llvm-project/commit/ce5edfd232c38ec4e4642b15cdb4dd8ecf105b04
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/include/flang/Common/Fortran-features.h
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/separate-mp02.f90
Log Message:
-----------
[flang] Finer error detection in separate module procedure case (#110912)
When a separate module procedure has a dummy procedure argument that is
simply declared EXTERNAL in its interface but is actually called as a
subroutine or function in its definition, the compiler is emitting an
error message. This is too strong; an error is appropriate only when the
dummy procedure in the definition has an interface that is incompatible
with the one in the interface definition.
However, this is not a safe coding practice, and can lead to trouble
during execution if a function is passed as an actual argument but
called as a subroutine in the procedure (or the other way around), so
add a warning message as well for this case (off by default).
Fixes https://github.com/llvm/llvm-project/issues/110797.
Commit: 49016d53e8f54d4b0883f4fcb06800bcfd7bd40e
https://github.com/llvm/llvm-project/commit/49016d53e8f54d4b0883f4fcb06800bcfd7bd40e
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Semantics/tools.cpp
M flang/test/Semantics/io14.f90
Log Message:
-----------
[flang] Silence bogus error message (#111057)
Fortran doesn't permit the use of a polymorphic I/O list item for
intrinsic data transfers, so the compiler emits an error message for
polymorphic items whose types can't possibly be handled by a defined I/O
subroutine. This check didn't allow for the possibility that the defined
I/O subroutine might apply to the parent component of an extended type.
Fixes https://github.com/llvm/llvm-project/issues/111021.
Commit: 70cbedcd6edf00fc11aa7685f41f8ec29ce84598
https://github.com/llvm/llvm-project/commit/70cbedcd6edf00fc11aa7685f41f8ec29ce84598
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/tools.cpp
A flang/test/Semantics/call42.f90
Log Message:
-----------
[flang] Catch errors with INTENT(OUT) assumed rank dummy arguments (#111204)
Emit an error when an actual argument with potentially unknown size
(assumed size, or non-pointer non-allocatable assumed rank) with any
risk of needing initialization, finalization, or destruction is
associated with an INTENT(OUT) dummy argument with assumed rank.
Emit an optional portability warning for cases where the type is known
to be safe from needing initialization, finalization, or destruction,
since it's not conforming and might elicit an error from other
compilers.
Fixes https://github.com/llvm/llvm-project/issues/111120.
Commit: 6ace680a5cc2aa8a45731605cbbab9f933e667a9
https://github.com/llvm/llvm-project/commit/6ace680a5cc2aa8a45731605cbbab9f933e667a9
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/test/rtsan/blocking_call.cpp
Log Message:
-----------
[rtsan][compiler-rt] Get rid of [[blocking]] stub in tests (#111392)
Commit: a98466ad8967f9ad9cd79157a7aed8ade5d65a7a
https://github.com/llvm/llvm-project/commit/a98466ad8967f9ad9cd79157a7aed8ade5d65a7a
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
R llvm/test/MC/WebAssembly/eh-assembly-legacy.s
M llvm/test/MC/WebAssembly/eh-assembly.s
Log Message:
-----------
[WebAssembly] Merge eh-assembly-legacy.s into eh-assembly.s (#111411)
Now that we don't need to specify `--no-type-check` on `eh-assembly.s`,
we can test the two modes in the same file.
Commit: d2457e6d8f62a12b3b74791cfd3f5808168c8a71
https://github.com/llvm/llvm-project/commit/d2457e6d8f62a12b3b74791cfd3f5808168c8a71
Author: Dmitrii Galimzianov <dmt021 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/source/Expression/IRExecutionUnit.cpp
Log Message:
-----------
Remove redundant symbol lookups in IRExecutionUnit::FindInSymbols (#102835)
When we search for a symbol, we first check if it is in the module_sp of
the current SymbolContext, and if not, we check in the target's modules.
However, the target's ModuleList also includes the already checked
module, which leads to a redundant search in it.
Commit: 3bace7efe00cbc5caadd2926027f4675845f06a8
https://github.com/llvm/llvm-project/commit/3bace7efe00cbc5caadd2926027f4675845f06a8
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/AsmParser/LLLexer.h
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/test/Assembler/allockind-missing.ll
M llvm/test/Assembler/invalid-inttype.ll
M llvm/test/Assembler/invalid-landingpad.ll
M llvm/test/Assembler/invalid-name.ll
M llvm/test/Assembler/invalid-name2.ll
Log Message:
-----------
[LLVM][AsmParser] Make error reporting of lexer errors more precise (#111077)
When the lexer hits an error during assembly parsing, it just logs the
error in the `ErrorMsg` object, and it's possible that error gets
overwritten later in by the parser with a more generic error message.
This makes some errors reported by the LLVM's asm parser less precise.
Address this by not having the parser overwrite the message logged by
the lexer by assigning error messages generated by the lexer higher
"priority" than those generated by parser and overwriting the error
message only if its same or higher priority.
Update several Assembler unit test to now check the more precise error
messaged reported by the LLVM's AsmParser.
Commit: 00989f4ab14c4cf41bbac258f2bf197cbbdc2b41
https://github.com/llvm/llvm-project/commit/00989f4ab14c4cf41bbac258f2bf197cbbdc2b41
Author: Evgenii Stepanov <eugeni.stepanov at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/memtag.h
Log Message:
-----------
[scudo] Fix isOwned on MTE devices. (#111060)
If called on address that is actually not owned, the tags could not
match. Disable tag checks in isOwned().
Commit: 10d43061aa1c95facea397a900d9ce4f65fa03da
https://github.com/llvm/llvm-project/commit/10d43061aa1c95facea397a900d9ce4f65fa03da
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan_assertions.h
M compiler-rt/lib/rtsan/rtsan_context.h
Log Message:
-----------
[rtsan][NFC] Refactor to scoped bypasser for __rtsan::Context (#111438)
Commit: 9e06e772a1bcfe0b33be9b01bbd9549a305313d7
https://github.com/llvm/llvm-project/commit/9e06e772a1bcfe0b33be9b01bbd9549a305313d7
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/test/rtsan/exit_stats.cpp
Log Message:
-----------
[rtsan] Add stats summary even when halt_on_error=true (#110165)
Commit: 5c88aa9d34c37f100be60269cfad6b8354918536
https://github.com/llvm/llvm-project/commit/5c88aa9d34c37f100be60269cfad6b8354918536
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M libcxx/docs/UserDocumentation.rst
Log Message:
-----------
[libc++] Document the de-facto status of compiler extension support (#110877)
This was brought up in a maintainer's meeting a few months ago. This
simply documents the current status quo.
Commit: 75103aae4a9d22e2c46068f2160f2dddd6ad2116
https://github.com/llvm/llvm-project/commit/75103aae4a9d22e2c46068f2160f2dddd6ad2116
Author: gbMattN <146744444+gbMattN at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M compiler-rt/include/sanitizer/ubsan_interface.h
Log Message:
-----------
Added include of common interfaces (#111374)
Pull request for issue #110823
Including the file which defines the macros we use here. This would let
user code only include this interface, rather than having to include two
files.
Commit: 2918e779a9545a66c0031b03b3af5bf4d8517cec
https://github.com/llvm/llvm-project/commit/2918e779a9545a66c0031b03b3af5bf4d8517cec
Author: Walter Erquinigo <a20012251 at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[mlir][debuginfo] Add support for subprogram annotations (#110946)
LLVM already supports `DW_TAG_LLVM_annotation` entries for subprograms,
but this hasn't been surfaced to the LLVM dialect.
I'm doing the minimal amount of work to support string-based
annotations, which is useful for attaching metadata to
functions, which is useful for debuggers to offer features beyond basic
DWARF.
As LLVM already supports this, this patch is not controversial.
Commit: 376b5c0cb6d5c2e559c8689acb1bb1d30f5325aa
https://github.com/llvm/llvm-project/commit/376b5c0cb6d5c2e559c8689acb1bb1d30f5325aa
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/unittests/SandboxIR/UtilsTest.cpp
Log Message:
-----------
[SandboxIR][NFC] Use accessor for DataLayout rather than passing it down (#111447)
Commit: 2ca850111fe1fbb174ae782caa00f8a48fb3eadd
https://github.com/llvm/llvm-project/commit/2ca850111fe1fbb174ae782caa00f8a48fb3eadd
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.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/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
Revert "[ELF] Change Ctx::target to unique_ptr (#111260)" (#111449)
This patch seems to be breaking the windows build bots.
https://lab.llvm.org/buildbot/#/builders/63/builds/1953
We also see this in Fuchsia's Linux CI:
https://fxbug.dev/372010530
This reverts commit 4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312.
Commit: 991adff4628deeb3b4cb7d9df366e9f1e8b2860c
https://github.com/llvm/llvm-project/commit/991adff4628deeb3b4cb7d9df366e9f1e8b2860c
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
M llvm/test/MC/WebAssembly/annotations.s
M llvm/test/MC/WebAssembly/eh-assembly.s
M llvm/test/MC/WebAssembly/type-checker-errors.s
Log Message:
-----------
[WebAssembly] Allow try_table to target loops in AsmTypeCheck (#111432)
Commit: 39ac121309f5c270c8fdc97c45a845542dd78681
https://github.com/llvm/llvm-project/commit/39ac121309f5c270c8fdc97c45a845542dd78681
Author: Bill Wendling <morbo at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[Clang] Check that we have the correct RecordDecl (#111448)
Ensure we have the correct RecordDecl before returning the Expr we're
looking for.
Commit: 63a0a81e73b5b482acb98372eff63bb3d2fe1673
https://github.com/llvm/llvm-project/commit/63a0a81e73b5b482acb98372eff63bb3d2fe1673
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-10-07 (Mon, 07 Oct 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/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
M llvm/lib/Transforms/Scalar/Scalarizer.cpp
Log Message:
-----------
[NFC][Scalarizer][TargetTransformInfo] Add isTargetIntrinsicWithScalarOpAtArg api (#111441)
This change allows target intrinsics can have scalar args
fixes [111440](https://github.com/llvm/llvm-project/issues/111440)
This change will let us add scalarization for WaveReadLaneAt:
https://github.com/llvm/llvm-project/pull/111010
Commit: b44371194b101ed0d6f5ad8b764c1dc748020b7b
https://github.com/llvm/llvm-project/commit/b44371194b101ed0d6f5ad8b764c1dc748020b7b
Author: lizhijin1024 <104253293+lizhijin1024 at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
Log Message:
-----------
[rtsan] Ensure pthread is initialized in test (#111401)
Handle running stuck of `pthread_cond_destroy` on X86 in test
`PthreadCondSignalDiesWhenRealtime` and
`PthreadCondBroadcastDiesWhenRealtime`.
Commit: 4b6e41b61e2edea2f80de3639e589301fe7c896c
https://github.com/llvm/llvm-project/commit/4b6e41b61e2edea2f80de3639e589301fe7c896c
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTestProto.cpp
Log Message:
-----------
[clang-format] Don't insert spaces after keywords in protobuf field o… (#111229)
…ptions
Fixes #54848.
Commit: 65688274b14f5d0e7dabbbaf9f3fd135646ef1d1
https://github.com/llvm/llvm-project/commit/65688274b14f5d0e7dabbbaf9f3fd135646ef1d1
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/unittests/Format/ConfigParseTest.cpp
Log Message:
-----------
[clang-format][NFC] Clean up AlignConsecutiveStyle (#111285)
- Add a `CHECK_PARSE` for `AcrossComments`.
- Add a `CHECK_PARSE_NESTED_BOOL` for `AlignFunctionPointers`.
- Remove redundant statements.
- Clean up documentation.
Commit: db4874c2fc0b34e8959ff0ac455bff5f54fbd52b
https://github.com/llvm/llvm-project/commit/db4874c2fc0b34e8959ff0ac455bff5f54fbd52b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange][UnitTests] Guard exhaustive checks by `EXPENSIVE_CHECKS` (#111276)
Addresses comment
https://github.com/llvm/llvm-project/pull/111056#issuecomment-2393951499.
Commit: ae5ee9760624a6e97f0d42b151583d31da74a42f
https://github.com/llvm/llvm-project/commit/ae5ee9760624a6e97f0d42b151583d31da74a42f
Author: bwlodarcz <bertrand.wlodarczyk at intel.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll
Log Message:
-----------
[SPIR-V] Emit DebugTypePointer from NonSemantic DI (#109287)
Implementation of DebugTypePointer from
NonSemantic.Shader.DebugInfo.100.
Commit: 646aa817d2944f78638ca5fc1d037bff5e1fd490
https://github.com/llvm/llvm-project/commit/646aa817d2944f78638ca5fc1d037bff5e1fd490
Author: 苏灵素@夏日限定 <Su.Xiyan at icloud.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lldb/docs/use/tutorial.rst
Log Message:
-----------
[lldb][Docs] Fix typo in `tutorial.rst` (#111326)
Commit: 1ad3180b4a07ccf7cc371882c4e10ec2667adea8
https://github.com/llvm/llvm-project/commit/1ad3180b4a07ccf7cc371882c4e10ec2667adea8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/tools/llvm-remarkutil/RemarkCounter.cpp
Log Message:
-----------
[llvm-remarkutil] Simplify code with std::map::operator[] (NFC) (#111407)
Commit: 1b53aaec55b6cdf0c9cf09b9cbdc53992e1b50ae
https://github.com/llvm/llvm-project/commit/1b53aaec55b6cdf0c9cf09b9cbdc53992e1b50ae
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M llvm/include/llvm/LTO/LTO.h
M llvm/lib/LTO/LTO.cpp
Log Message:
-----------
[ThinLTO][NFC] Refactor ThinBackend (#110461)
This is a prep for https://github.com/llvm/llvm-project/pull/90933.
- Change `ThinBackend` from a function to a type.
- Store the parallelism level in the type, which will be used when creating two-codegen round backends that inherit this value.
- `ThinBackendProc` is hoisted to `LTO.h` from `LTO.cpp` to provide its body for `ThinBackend`. However, `emitFiles()` is still implemented separately in `LTO.cpp`, distinct from its parent class.
Commit: e98875af4c09e3ceaf54a51023a5d03ee143bc5c
https://github.com/llvm/llvm-project/commit/e98875af4c09e3ceaf54a51023a5d03ee143bc5c
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
Log Message:
-----------
[RISCV] Add scalable interleave cost tests. NFC
This gets the cost from the recipe output rather than the individual
instruction cost.
The factor 3 test was left alone since we don't support anything else
other than factor 2 for scalable vectors currently.
Commit: 4647a4666c4f8edabaa89163e899953bcd584aa7
https://github.com/llvm/llvm-project/commit/4647a4666c4f8edabaa89163e899953bcd584aa7
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Implement `ConstantFPRange::makeSatisfyingFCmpRegion` (#110891)
This patch adds support for `ConstantFPRange::makeSatisfyingFCmpRegion`.
We only check the optimality for cases where the result can be
represented by a ConstantFPRange.
This patch also adds some tests for `ConstantFPRange::fcmp` because it
depends on `makeSatisfyingFCmpRegion`. Unfortunately we cannot
exhaustively test this function due to time limit. I just pick some
interesting ranges instead.
Commit: c35214c131c0bc7f54dc18ceb75c75cba89f58ee
https://github.com/llvm/llvm-project/commit/c35214c131c0bc7f54dc18ceb75c75cba89f58ee
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Initialize TargetInfo members
Prevent use of uninitialized memory when ctx.target no longer uses
points to static storage duration.
Specifically, uninitialized `trapInstr` caused llvm-objdump output
differences.
(https://github.com/llvm/llvm-project/pull/111260#issuecomment-2397498034)
Commit: e1a073c9d9b85804c46353c5a66c44fe212525ed
https://github.com/llvm/llvm-project/commit/e1a073c9d9b85804c46353c5a66c44fe212525ed
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.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/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Change Ctx::target to unique_ptr (#111260)
also rename `TargetInfo *getXXXTargetInfo` to `void setXXXTargetInfo`
and change it to set `ctx.target`. This ensures that when `ctx` becomes
a local variable, two lld invocations will not reuse the function-local
static variable.
---
Reland after commit c35214c131c0bc7f54dc18ceb75c75cba89f58ee
([ELF] Initialize TargetInfo members).
Commit: 1f2c08b33b848dfdfeecdc7cee3644591407e219
https://github.com/llvm/llvm-project/commit/1f2c08b33b848dfdfeecdc7cee3644591407e219
Author: Thomas Fransham <tfransham at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang-tools-extra/clang-apply-replacements/CMakeLists.txt
M clang-tools-extra/clang-change-namespace/CMakeLists.txt
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/plugin/CMakeLists.txt
M clang-tools-extra/clang-move/CMakeLists.txt
M clang-tools-extra/clang-query/CMakeLists.txt
M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
M clang-tools-extra/clang-tidy/altera/CMakeLists.txt
M clang-tools-extra/clang-tidy/android/CMakeLists.txt
M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
M clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
M clang-tools-extra/clang-tidy/google/CMakeLists.txt
M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
M clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
M clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
M clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/unimplemented/CMakeLists.txt
M clang-tools-extra/clangd/support/CMakeLists.txt
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/clangd/xpc/CMakeLists.txt
M clang-tools-extra/include-cleaner/lib/CMakeLists.txt
Log Message:
-----------
[clang-tools-extra] Fix add_clang_library usage (#109321)
If a add_clang_library call doesn't specify building as static or shared
library they are implicitly added to the list static libraries that is
linked in to clang-cpp shared library here.
https://github.com/llvm/llvm-project/blob/315ba7740663208f8bc45a7e4f145dc1df79500c/clang/cmake/modules/AddClang.cmake#L107
Because the clang-tools-extra libraries targets were declared after
clang-cpp they by luck never got linked to clang-cpp.
This change is required for clang symbol visibility macros on windows to
work correctly for clang tools since we need to distinguish if a target
being built will be importing or exporting clang symbols from the
clang-cpp DLL.
Commit: 4fadf41c2f8755129f206b4f880dad5989923466
https://github.com/llvm/llvm-project/commit/4fadf41c2f8755129f206b4f880dad5989923466
Author: Fangrui Song <i at maskray.me>
Date: 2024-10-07 (Mon, 07 Oct 2024)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
Log Message:
-----------
[ELF] Pass Ctx & to ARM/AArch64
Commit: 975da028f78546729f0e78711a4b92107c92ec8e
https://github.com/llvm/llvm-project/commit/975da028f78546729f0e78711a4b92107c92ec8e
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/test/Modules/embed-files-compressed.cpp
Log Message:
-----------
[modules][test] Bump maximum size for embed-files-compressed.cpp for the sake of RISC-V (#111360)
The size of a.pcm produced by an RV64 clang running natively is 67416
bytes, causing this test to fail. Bump up the maximum size. The test
still retains its original intent as far as I can see, as it's really
trying to ensure that compressing kicks in and reduces the
multi-megabyte input.
Commit: 58ef1eb06143f48629e8b904971ab014fc4bad39
https://github.com/llvm/llvm-project/commit/58ef1eb06143f48629e8b904971ab014fc4bad39
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M libc/src/stdlib/qsort_data.h
M libc/src/stdlib/quick_sort.h
Log Message:
-----------
[libc] Bound the worst-case stack usage in qsort(). (#110849)
Previously, the Quicksort implementation was written in the obvious way:
after each partitioning step, it explicitly recursed twice to sort the
two sublists. Now it compares the two sublists' sizes, and recurses only
to sort the smaller one. To handle the larger list it loops back round
to the top of the function, so as to handle it within the existing stack
frame.
This means that every recursive call is handling a list at most half
that of its caller. So the maximum recursive call depth is O(lg N).
Otherwise, in Quicksort's bad cases where each partition step peels off
a small constant number of array elements, the stack usage could grow
linearly with the array being sorted, i.e. it might be Θ(N).
I tested this code by manually constructing a List Of Doom that causes
this particular quicksort implementation to hit its worst case, and
confirming that it recursed very deeply in the old code and doesn't in
the new code. But I haven't added that list to the test suite, because
the List Of Doom has to be constructed in a way based on every detail of
the quicksort algorithm (pivot choice and partitioning strategy), so it
would silently stop being a useful regression test as soon as any detail
changed.
Commit: a11509c3b971132785024c830073fd11d14bd3fd
https://github.com/llvm/llvm-project/commit/a11509c3b971132785024c830073fd11d14bd3fd
Author: David Green <david.green at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
M llvm/test/CodeGen/AArch64/load.ll
M llvm/test/CodeGen/AArch64/store.ll
Log Message:
-----------
[AArch64][GlobalISel] Scalarize i128/fp128 vector loads/stores.
Similar to other operations, we should scalarize these to allow the individual
elements to legalize.
Commit: a3a253d3c7780977077dd46493917b1949c0166d
https://github.com/llvm/llvm-project/commit/a3a253d3c7780977077dd46493917b1949c0166d
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Implement `ConstantFPRange::makeExactFCmpRegion` (#111490)
Note: The current implementation doesn't return optimal result for `fcmp
one/une x, +/-inf` since we don't handle this case in
https://github.com/llvm/llvm-project/pull/110891. Maybe we can make it
optimal after seeing some real-world cases.
Commit: 4d218caa7716743061e8d34d61b2181c94b16440
https://github.com/llvm/llvm-project/commit/4d218caa7716743061e8d34d61b2181c94b16440
Author: Doug Wyatt <doug at sonosphere.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaFunctionEffects.cpp
M clang/test/Sema/attr-nonblocking-constraints.cpp
Log Message:
-----------
[Clang] [Sema] Effects: Correctly detect `(x ? a : b)` as nonblocking when a and b are (#111224)
Correctly detect `(x ? a : b)` as nonblocking when `a` and `b` are. Use
`FunctionEffectsRef::get` to get to the actual effect set instead of trying
to retrieve it manually via the `FunctionProtoType` as we may have to
look through function pointers etc. in some cases.
---------
Co-authored-by: Doug Wyatt <dwyatt at apple.com>
Commit: 20b8d3f52b02679f8be0e043df0f1bfd48c0c2bf
https://github.com/llvm/llvm-project/commit/20b8d3f52b02679f8be0e043df0f1bfd48c0c2bf
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libc++][CI] Replace LLDB test targets with libc++ test category (#110856)
We've been increasing the coverage of libc++ LLDB tests in the pre-merge
CI (see https://github.com/llvm/llvm-project/pull/110570). Unfortunately
the tests are spread across different targets. It would be great if we
had a single target that libc++ maintainers could run.
We do this by passing the `libc++` test-category as a parameter to
LLDB's [`dotest` testing
framework](https://lldb.llvm.org/resources/test.html). This will only
run LLDB tests that have been marked as belonging to the `libc++`
category.
Commit: 634c57d738e07754b63160b38e3639467c902cdb
https://github.com/llvm/llvm-project/commit/634c57d738e07754b63160b38e3639467c902cdb
Author: Matthias Springer <me at m-sp.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/lib/Dialect/SCF/IR/SCF.cpp
Log Message:
-----------
[mlir][SCF][NFC] `scf.for`/`scf.while`: rename builder args (#111493)
Rename builder args to make them consistent with the `args` in the
TableGen definition.
Commit: f658c1bf4a9d74518ff55a37184b76ec5dec9a8b
https://github.com/llvm/llvm-project/commit/f658c1bf4a9d74518ff55a37184b76ec5dec9a8b
Author: Piyou Chen <piyou.chen at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
A clang/test/CodeGen/attr-target-version-riscv-invalid.c
A clang/test/CodeGen/attr-target-version-riscv.c
A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
A clang/test/SemaCXX/attr-target-version-riscv.cpp
Log Message:
-----------
Recommit "[RISCV][FMV] Support target_version" (#111096)" (#111333)
Fix the buildbot failure caused by heap use-after-free error.
Origin message:
This patch enable `target_version` attribute for RISC-V target.
The proposal of `target_version` syntax can be found at the
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/48 (which has
landed), as modified by the proposed
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/85 (which adds the
priority syntax).
`target_version` attribute will trigger the function multi-versioning
feature and act like `target_clones` attribute. See
https://github.com/llvm/llvm-project/pull/85786 for the implementation
of `target_clones`.
Commit: 1df8ccd35b7140b4f1ca9e6d9d2fdf67f93357d4
https://github.com/llvm/llvm-project/commit/1df8ccd35b7140b4f1ca9e6d9d2fdf67f93357d4
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
Revert "[NFC][EarlyIfConverter] Turn SSAIfConv into a local variable (#107390)" (#111385)
This reverts commit 09a4c23eb410d4be52202bed21c967a3653c3544.
Commit: 29ec0716a872126db0dd2e981c51f9966af34824
https://github.com/llvm/llvm-project/commit/29ec0716a872126db0dd2e981c51f9966af34824
Author: Ralf Jung <post at ralfj.de>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Log Message:
-----------
Fix comment typo in ExpandFCOPYSIGN (#111489)
I noticed this while following
https://github.com/llvm/llvm-project/pull/111269. It makes little sense
that FCOPYSIGN would look at the sign of `x`, right? Surely this must be
`y`. Also fix the inconsistency where it's sometimes `x` and sometimes
`X`.
Commit: 7c1087613bb9f4ceebb991e5a4b2ef4d5adb4dfa
https://github.com/llvm/llvm-project/commit/7c1087613bb9f4ceebb991e5a4b2ef4d5adb4dfa
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/archives/TestBSDArchives.py
Log Message:
-----------
[lldb][test] Fix unexpected pass of TestBSDArchives on Windows
Originally failing due to https://github.com/llvm/llvm-project/issues/24901,
but since https://github.com/llvm/llvm-project/pull/110837 the
test is passing.
https://lab.llvm.org/buildbot/#/builders/141/builds/3012
My guess is that the `llvm-` tool has better support for static
libraries on Windows.
Commit: ec009994a06338995dfb6431c943b299f9327fd2
https://github.com/llvm/llvm-project/commit/ec009994a06338995dfb6431c943b299f9327fd2
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/functionalities/archives/TestBSDArchives.py
M lldb/test/API/macosx/duplicate-archive-members/TestDuplicateMembers.py
Log Message:
-----------
[lldb][test] Remove xfails from static lib tests on Windows
Originally failing due to https://github.com/llvm/llvm-project/issues/24901,
but since https://github.com/llvm/llvm-project/pull/110837 the
test is passing.
Already removed one xfail but didn't realise we had more for
the same bug.
Commit: 6b4c4d78f03b83a371e239844d2f86dafeed6b53
https://github.com/llvm/llvm-project/commit/6b4c4d78f03b83a371e239844d2f86dafeed6b53
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/CMake.rst
M llvm/docs/GettingStarted.rst
Log Message:
-----------
[llvm][docs] Improve the formatting of the Common Problems section (#108522)
...and add shared libs as a suggestion.
* Mark options, option values and program names as plain text.
* Add a blank line between the option and the explanatory text
so that it doesn't get printed on the same line.
(this seems to be the original intent of the rst source anyway)
* Update the phrasing of a couple of the options.
* Add BUILD_SHARED_LIBS to suggestions.
Commit: f22e6d59190b03434b2a604399670d1b750d63c2
https://github.com/llvm/llvm-project/commit/f22e6d59190b03434b2a604399670d1b750d63c2
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaARM.cpp
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
M clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[Clang][AArch64] Fix checkArmStreamingBuiltin for 'sve-b16b16' (#109420)
The implementation made the assumption that any feature starting with
"sve" meant that this was an SVE feature. This is not the case for
"sve-b16b16", as this is a feature that applies to both SVE and SME.
This meant that:
```
__attribute__((target("+sme2,+sve2,+sve-b16b16")))
svbfloat16_t foo(svbfloat16_t a, svbfloat16_t b, svbfloat16_t c)
__arm_streaming {
return svclamp_bf16(a, b, c);
}
```
would result in an incorrect diagnostic saying that `svclamp_bf16` could
only be used in non-streaming functions.
Commit: fbf9bead3167d61e2e0fe581e968e86f45a04097
https://github.com/llvm/llvm-project/commit/fbf9bead3167d61e2e0fe581e968e86f45a04097
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[Clang] [NFC] Remove trailing whitespace in release notes (#111506)
Commit: 327124ece7d59de56ca0f9faa2cd82af68c011b9
https://github.com/llvm/llvm-project/commit/327124ece7d59de56ca0f9faa2cd82af68c011b9
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/EarlyIfConversion.cpp
Log Message:
-----------
[NFC][EarlyIfConverter] Rename SSAIfConv::runOnMachineFunction to SSAIfConv::init (#111500)
Commit: 366e469db9ef15373c8671712a083d1a1c4a55ad
https://github.com/llvm/llvm-project/commit/366e469db9ef15373c8671712a083d1a1c4a55ad
Author: Luke Lau <luke at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
Log Message:
-----------
[RISCV] Add cost tests for more interleave factors. NFC
This shows how we're not properly scaling the cost with the number of
factors, i.e. a factor 8 interleave costs the same as a factor 2
interleave at VF=2.
Commit: 39cdfdfad961e146131966757d563bfd667246d6
https://github.com/llvm/llvm-project/commit/39cdfdfad961e146131966757d563bfd667246d6
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
Log Message:
-----------
[lldb][test] Fix typo in TestSharedLibStrippedSymbols
Commit: 6636f32615000429f6391b68392e826c1de1ed64
https://github.com/llvm/llvm-project/commit/6636f32615000429f6391b68392e826c1de1ed64
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
M llvm/test/CodeGen/AMDGPU/bb-prolog-spill-during-regalloc.ll
M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
M llvm/test/CodeGen/AMDGPU/rem_i128.ll
M llvm/test/CodeGen/AMDGPU/trap-abis.ll
M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
Log Message:
-----------
[AMDGPU] Include WWM register spill into BB Prolog (#111496)
With #93526 we split the regalloc pipeline further
to have a standalone allocation for wwm registers
and per-lane VGPRs. Currently the presence of the
wwm-spill reloads inserted at the bb-top limits the
isBasicPrologue function during the per-lane vgpr
regalloc to skip past the exec manipulation instruction
and ended up causing incorrect codegen. The wmm-spill
inserted during the wwm-regalloc pipeline should also
be included in the bb-prolog so that the per-lane vgpr
regalloc pipeline can identify the appropriate insertion
points for their spills and copies.
Commit: 782a2d40005a2820f05c9801aff816c01789c7be
https://github.com/llvm/llvm-project/commit/782a2d40005a2820f05c9801aff816c01789c7be
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/Sema/caret-diags-register-variable.cpp
Log Message:
-----------
[clang][Sema] Bad register variable type error should point to the type (#110239)
...not the register keyword. Fixes #109776.
Until now the error was only tested in clang/test/Sema/asm.c, where you
can't check for the "^" character. I've added a new caret test file as I
see has been done for other error types.
Commit: c62e61acb428bb46ad834f8288b0c6f8c2ea8d31
https://github.com/llvm/llvm-project/commit/c62e61acb428bb46ad834f8288b0c6f8c2ea8d31
Author: Xing Xue <xingxue at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M openmp/runtime/src/CMakeLists.txt
Log Message:
-----------
[libomp][AIX] Use SO version "1" for AIX libomp (#111384)
For `libomp` on AIX, we build shared object `libomp.so` first and then
archive it into libomp.a. This patch changes to use SO version `1` and
name the shared object `libomp.so.1` so that it is consistent with the
naming of other shared objects in AIX libraries, e.g., `libc++.so.1` in
`libc++.a`. With this change, the change made in commit
bde51d9b0d473447ea12fb14924f14ea167eec85 to ensure only `libomp.a` is
published on AIX is no longer necessary and is removed.
Commit: 9fd15adf1d26d98ce082f252471b5c1f55ed2de1
https://github.com/llvm/llvm-project/commit/9fd15adf1d26d98ce082f252471b5c1f55ed2de1
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
Log Message:
-----------
[AArch64] NFC: rename subreg zsub to qsub (#111154)
I believe this is more correct, because 'dsub' represents the lower 64
bits in a 128 bit register. Similarly, I would expect 'qsub' to
represent the lower 128 bits in a 128+ bit register.
Commit: e3e55173ed891da334990103c12206a4e4e8fc98
https://github.com/llvm/llvm-project/commit/e3e55173ed891da334990103c12206a4e4e8fc98
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Headers/pmmintrin.h
M clang/test/CodeGen/X86/sse3-builtins.c
Log Message:
-----------
[clang][x86] Enable _mm_movehdup_ps, _mm_moveldup_ps and _mm_movedup_pd in constant expressions
These just wrap generic shuffles
Commit: a649e8ff891e54a279768a8e877b76c8f000a5a7
https://github.com/llvm/llvm-project/commit/a649e8ff891e54a279768a8e877b76c8f000a5a7
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/lit/lit/TestingConfig.py
Log Message:
-----------
[lit] Allow passthrough of some QEMU_* environment variables to lit (#111373)
This is an alternate implementation of a patch proposed by @preames in
<https://reviews.llvm.org/D128840>. As noted there, when running
non-native binaries with binfmt_misc and qemu-user you typically need to
set some environment variables (at least, QEMU_LD_PREFIX), but lit
strips them by default. This patch adds what I think are the two main
ones to the list of those that aren't stripped. It does so in a place
that applies to all lit test suites (rather than just LLVM's), and as
can be seen from the other env vars in `pass_vars` I think there's
already plenty of precedent for passing through environment variables
known to be potentially useful to LLVM developers.
Commit: bfe066676b8ebe8b2db502c24acadd2bc830b738
https://github.com/llvm/llvm-project/commit/bfe066676b8ebe8b2db502c24acadd2bc830b738
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/sve2-bf16-converts.ll
Log Message:
-----------
[LLVM][CodeGen][SVE2] Implement nxvf64 fpround to nxvbf16. (#111012)
NOTE: SVE2 only because that is when FCVTX is available, which is
required to perform the necessary two-step rounding.
Commit: 871f69f0b657a4c60d5ad26b5dc4cc2b1f0e5f3b
https://github.com/llvm/llvm-project/commit/871f69f0b657a4c60d5ad26b5dc4cc2b1f0e5f3b
Author: ivanaivanovska <iivanovska at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Support/TimeProfiler.h
M llvm/lib/Support/TimeProfiler.cpp
M llvm/unittests/Support/TimeProfilerTest.cpp
Log Message:
-----------
[TimeProfiler] Added instant events to llvm TimeProfiler. (#103039)
This adds support for adding instant events to the TimeProfiler. Later we plan to use it to record deferring of template instantiations.
Commit: 3ec6f805c5184b3933cba94e241b44da362437d7
https://github.com/llvm/llvm-project/commit/3ec6f805c5184b3933cba94e241b44da362437d7
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
Log Message:
-----------
[VPlan] Don't created GEP x, 0 for interleave group pointers.
The GEP with offet 0 is redundant, remove it. This addresses a TODO
from 7f74651837b ((#106431).
Commit: 326b381ac030c9ac0764b9db712b33a447d04f98
https://github.com/llvm/llvm-project/commit/326b381ac030c9ac0764b9db712b33a447d04f98
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM][Maintainers] Update lead maintainer for LLVM (#111180)
Set myself as the current lead maintainer for LLVM, and Chris Lattner as
the emeritus lead maintainer.
This implements
https://discourse.llvm.org/t/rfc-proposing-a-new-lead-maintainer-for-llvm/81290.
Commit: 1312369afbeb2083094b3d34a88c346b22e86971
https://github.com/llvm/llvm-project/commit/1312369afbeb2083094b3d34a88c346b22e86971
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/emmintrin.h
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/sse2-builtins.c
Log Message:
-----------
[clang][x86] Enable SSE2/AVX/AVX512 setzero intrinsics in constant expressions
Basic setup for future constant expression tests
Commit: 235067b222e4734839b963e152b6554e20413d11
https://github.com/llvm/llvm-project/commit/235067b222e4734839b963e152b6554e20413d11
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Make sure ia32_bzhi input is an integer (#111505)
Commit: f01364ebc88d875fbfc0e00413538465aaa8a2b3
https://github.com/llvm/llvm-project/commit/f01364ebc88d875fbfc0e00413538465aaa8a2b3
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/DeclCXX.cpp
A clang/test/Modules/gh110401.cppm
Log Message:
-----------
[Clang] Instantiate the correct lambda call operator (#110446)
This is a fix for the following issue: when a lambda’s class type is
merged across modules (e.g. because it is defined in a template in the
GMF of some module `A`, and some other module `B` both imports `A` and
has the same template in its GMF), then `getLambdaCallOperator()` might
return the wrong operator (e.g. while compiling `B`, the lambda’s class
type would be the one attached to `B`’s GMF, but the call operator ends
up being the one attached to `A`’s GMF).
This causes issues in situations where the call operator is in a
template and accesses declarations in the surrounding context: when
those declarations are instantated, a mapping is introduced from the
original node in the template to that of the instantiation. If such an
instantiation happens in `B`, and we then try to instantiate `A`’s call
operator, any nodes in that call operator refer to declarations in the
template in `A`, but the `LocalInstantiationScope` only contains
mappings for declarations in `B`! This causes the following assertion
(for godbolt links and more, see the issue below):
```
Assertion `isa<LabelDecl>(D) && "declaration not instantiated in this scope"' failed.
```
We now walk the redecl chain of the call operator to find the
one that is in the same module as the record decl.
This fixes #110401.
Commit: db1a76206902e6926464e30cc47249e217405dab
https://github.com/llvm/llvm-project/commit/db1a76206902e6926464e30cc47249e217405dab
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lld/ELF/InputSection.cpp
A lld/test/ELF/riscv-pcrel-hilo-error-sections.s
M lld/test/ELF/riscv-pcrel-hilo-error.s
Log Message:
-----------
[LLD][RISCV] Error on PCREL_LO referencing other Section (#107558)
The RISC-V psABI states that "The `R_RISCV_PCREL_LO12_I` or
`R_RISCV_PCREL_LO12_S` relocations contain a label pointing to an
instruction in the same section with an `R_RISCV_PCREL_HI20` relocation
entry that points to the target symbol."
Without this patch, GNU ld errors, but LLD does not -- I think because LLD is
doing the right thing, certainly in the testcase provided.
Nonetheless, I think an error is good here to bring LLD in line with
what GNU ld is doing in showing that the object the user provided is not
following the psABI as written.
Fixes #107304
Commit: e06e4932521b0ba578d34495186cde522de8eaec
https://github.com/llvm/llvm-project/commit/e06e4932521b0ba578d34495186cde522de8eaec
Author: Ying Yi <ying.yi at sony.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
Log Message:
-----------
Make a tablegen test match-table.td more robust.
Some organizations have added operators downstream, and the test match-table.td tends to fail with off-by-n errors (with n being the number of `added operators`) periodically. This patch will increase the test robust and reduce the impact of merge process.
Commit: 87cdc8328d6c79da6dcce85eb318296bc5b42e82
https://github.com/llvm/llvm-project/commit/87cdc8328d6c79da6dcce85eb318296bc5b42e82
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/test/Transforms/InstSimplify/bitcast-vector-fold.ll
Log Message:
-----------
[LLVM][ConstFolds] Verify a scalar src before attempting scalar->vector bitcast transformation. (#111149)
It was previously safe to assume isa<Constant{Int,FP}> meant a scalar
value. This is not true when use-constant-##-for-###-splat are enabled.
Commit: 2d666dede0e192c919b39a20e077cf80100c4759
https://github.com/llvm/llvm-project/commit/2d666dede0e192c919b39a20e077cf80100c4759
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
Log Message:
-----------
Revert "[AArch64] NFC: rename subreg zsub to qsub (#111154)"
This caused asserts to fire:
(Subtarget.isSVEorStreamingSVEAvailable() && "Unexpected register store without SVE store instructions"),
function storeRegToStackSlot, file AArch64InstrInfo.cpp, line 5346.
See comment on the PR for reproducer.
This reverts commit 9fd15adf1d26d98ce082f252471b5c1f55ed2de1.
Commit: f93f925d4f3b9505eecf02097713003d3cf4b6fa
https://github.com/llvm/llvm-project/commit/f93f925d4f3b9505eecf02097713003d3cf4b6fa
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/RISCVUsage.rst
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/MC/RISCV/insn-invalid.s
M llvm/test/MC/RISCV/insn.s
M llvm/test/MC/RISCV/insn_c-invalid.s
Log Message:
-----------
[RISCV][MC] Support Assembling 48- and 64-bit Instructions (#110022)
This adds `.insn` support for assembling instructions of 48- and
64-bits (only when giving an explicit length). Disassembly already
knows to bunch up the instruction bits for these instructions.
This changes some error messages so they are a little clearer.
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: c0a2915321870672b1870c1ee1d192c07dddcd04
https://github.com/llvm/llvm-project/commit/c0a2915321870672b1870c1ee1d192c07dddcd04
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/test/SemaCXX/pragma-pack-packed-2.cpp
Log Message:
-----------
[SystemZ][z/OS] don't write to source
test invoked clang that has tried to write in source directory that
might be readonly #111053
for 4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a
Commit: 6e5d6129fa36a7c1a2931d1c51208d1d254f3efb
https://github.com/llvm/llvm-project/commit/6e5d6129fa36a7c1a2931d1c51208d1d254f3efb
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/ABI.h
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
Log Message:
-----------
[Coroutines] Move OptimizeFrame out of Shape (#111017)
* OptimizeFrame is not really a part of the Coroutine Shape info, rather
it is specifically for the addFieldForAllocas method called indirectly
by buildCoroutineFrame.
* This patch passes OptimizeFrame directly to buildCoroutineFrame so it
can be provided to addFieldForAllocas instead of keeping it in the
Shape.
Co-authored-by: tnowicki <tnowicki.nowicki at amd.com>
Commit: 388c693a619cd84cff838e5cada17d70bed222cc
https://github.com/llvm/llvm-project/commit/388c693a619cd84cff838e5cada17d70bed222cc
Author: Zibi Sarbinowski <zibi at ca.ibm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/tools/llvm-profdata/sample-split-layout.test
Log Message:
-----------
[SystemZ][z/OS] fix sample-split-layout.test on z/OS (#109679)
The Lit in subject fails on z/OS since the input file
`Inputs/split-layout.profdata` is marked as ASCII even though it is
binary and the output file `Output/sample-split-layout.test.tmp-output`
is binary.
This PR removes the diff command which fails because it compares a
binary file and a text file. The rational is that this diff command
seems to be redundant to the `FileCheck` on the next command.
Commit: a7968f6b636763a362939b2d2fb9717fdfbe5f7e
https://github.com/llvm/llvm-project/commit/a7968f6b636763a362939b2d2fb9717fdfbe5f7e
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port 32e90bbe579d39356eb (lldb remote tests)
Possibly not enough to run tests, but enough to fix build.
Commit: 48ac846fbc7568b220d8fe3f796c4f26e117ab26
https://github.com/llvm/llvm-project/commit/48ac846fbc7568b220d8fe3f796c4f26e117ab26
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.mir
Log Message:
-----------
[AMDGPU][GlobalISel] Align `selectVOP3PMadMixModsImpl` with the `SelectionDAG` counterpart (#110168)
The current `selectVOP3PMadMixModsImpl` can produce `V_MAD_FIX_F32`
instruction
that violates constant bus restriction, while its `SelectionDAG`
counterpart
doesn't. The culprit is in the copy stripping while the `SelectionDAG`
version
only has a bitcast stripping. This PR simply aligns the two version.
Commit: 88a239d292da80f260788c0817a07cbc0a8ac758
https://github.com/llvm/llvm-project/commit/88a239d292da80f260788c0817a07cbc0a8ac758
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
Log Message:
-----------
[AMDGPU] Adopt new lowering sequence for `fdiv16` (#109295)
The current lowering of `fdiv16` can generate incorrectly rounded result
in some cases. The new sequence was provided by the HW team, as shown
below written in C++.
```
half fdiv(half a, half b) {
float a32 = float(a);
float b32 = float(b);
float r32 = 1.0f / b32;
float q32 = a32 * r32;
float e32 = -b32 * q32 + a32;
q32 = e32 * r32 + q32;
e32 = -b32 * q32 + a32;
float tmp = e32 * r32;
uin32_t tmp32 = std::bit_cast<uint32_t>(tmp);
tmp32 = tmp32 & 0xff800000;
tmp = std::bit_cast<float>(tmp32);
q32 = tmp + q32;
half q16 = half(q32);
q16 = div_fixup_f16(q16);
return q16;
}
```
Fixes SWDEV-477608.
Commit: 97a784ecacef82ea72f2e86892521e5e6aabf55d
https://github.com/llvm/llvm-project/commit/97a784ecacef82ea72f2e86892521e5e6aabf55d
Author: Mészáros Gergely <gergely.meszaros at intel.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[llvm][cmake][Trivial] use /Zc:preprocessor with MSVC only explicitly (#111520)
Only MSVC recognizes this flag, so be explicit. As an example the Intel
C++ Compiler (IntelLLVM in CMake) also has an MSVC compatible CLI, but
does not suppport this flag.
Commit: db98be3c714d8a18c2d020252f790a7f0fb5d754
https://github.com/llvm/llvm-project/commit/db98be3c714d8a18c2d020252f790a7f0fb5d754
Author: David Green <david.green at arm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Log Message:
-----------
[InstCombine] Minor cleanup for optimizeFMod. NFC
Commit: 148a8fef10031a5df5dac5de9bde9ddc4735ab9c
https://github.com/llvm/llvm-project/commit/148a8fef10031a5df5dac5de9bde9ddc4735ab9c
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/Transforms/GVN/edge.ll
Log Message:
-----------
GVN/test: regen a test with UTC (NFC) (#111365)
Commit: 4da8ac34f76e707ab94380b94f616457cfd2cb83
https://github.com/llvm/llvm-project/commit/4da8ac34f76e707ab94380b94f616457cfd2cb83
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/Modules/cxx-templates.cpp
Log Message:
-----------
Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585)" (#111173)
Reapplies #106585, fixing an issue where non-dependent names of member
templates appearing prior to that member template being explicitly
specialized for an implicitly instantiated class template specialization
would incorrectly use the definition of the explicitly specialized
member template.
Commit: 416d1bd24e974932cbe93a5310d2ceaacdddd273
https://github.com/llvm/llvm-project/commit/416d1bd24e974932cbe93a5310d2ceaacdddd273
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/include/clang/Basic/PlistSupport.h
Log Message:
-----------
[Basic] Avoid repeated hash lookups (NFC) (#111467)
Commit: dec641e473cf416d54766ced34a36be71ecd0037
https://github.com/llvm/llvm-project/commit/dec641e473cf416d54766ced34a36be71ecd0037
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Driver/MultilibBuilder.cpp
Log Message:
-----------
[Driver] Avoid repeated hash lookups (NFC) (#111468)
Commit: a8289a35d06b9f7cb3d9b18dba6be0f1f0a8a898
https://github.com/llvm/llvm-project/commit/a8289a35d06b9f7cb3d9b18dba6be0f1f0a8a898
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
Log Message:
-----------
[Tooling] Avoid repeated hash lookups (NFC) (#111469)
Commit: 98c9c1a4d2d4fc41b34f73e4630de435c9c0c396
https://github.com/llvm/llvm-project/commit/98c9c1a4d2d4fc41b34f73e4630de435c9c0c396
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
Log Message:
-----------
[lldb][test] Disable new lldb-dap test on non-x86
Guessing that this is missing because it's failing on Arm 32 bit
and every other test has this requirement.
Commit: 1e5f32e81f96af45551dafb369279c6d55ac9b97
https://github.com/llvm/llvm-project/commit/1e5f32e81f96af45551dafb369279c6d55ac9b97
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/lib/Transforms/Utils/RegionUtils.cpp
Log Message:
-----------
[Transforms] Avoid repeated hash lookups (NFC) (#111470)
Commit: d48920dc9d69abbfbef28ce6f70c4680c21795b2
https://github.com/llvm/llvm-project/commit/d48920dc9d69abbfbef28ce6f70c4680c21795b2
Author: Nico Weber <thakis at chromium.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 93bfa7886b1a
Commit: 7fa0d05a04056aac4365c69c4b515f613a43e454
https://github.com/llvm/llvm-project/commit/7fa0d05a04056aac4365c69c4b515f613a43e454
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
Log Message:
-----------
[AsmParser] Simplify code with std::map::operator[] (NFC) (#111480)
Commit: 64f7e1b697d834f620b069f2c3dc701ed8ff732a
https://github.com/llvm/llvm-project/commit/64f7e1b697d834f620b069f2c3dc701ed8ff732a
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M libclc/README.TXT
Log Message:
-----------
[libclc] Update build instructions in readme (#111369)
The configure Python script was removed by
d6e0e6d255a7d54a3873b7a5d048eee00ef6bb6d /
https://reviews.llvm.org/D69966.
The readme was never updated with the cmake way to do it. I couldn't
find any dedicated buildbots for this so I'm making an educated guess.
This is what built locally for me.
Commit: e542202c2763c53c35d1bbe7a3853d683add1303
https://github.com/llvm/llvm-project/commit/e542202c2763c53c35d1bbe7a3853d683add1303
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
Log Message:
-----------
[RISCV] Update vector calling convention test for tuple type. NFC (#111336)
Commit: 4e6a6eda30091dd2186949506a5df515b8d88b6a
https://github.com/llvm/llvm-project/commit/4e6a6eda30091dd2186949506a5df515b8d88b6a
Author: Lei Huang <lei at ca.ibm.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
Log Message:
-----------
[PowerPC] Update matchRegisterName() to return MCRegister instead of bool (#111186)
Initial patch to start using TableGen's auto generated function
`MatchRegisterName()`.
Update `PPCAsmParser::matchRegisterName()` implementation to align more
with tablegen's auto generated function.
Commit: 8ab77184dde2583950fc6e4886ff526e7e598f7e
https://github.com/llvm/llvm-project/commit/8ab77184dde2583950fc6e4886ff526e7e598f7e
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/include/clang/Basic/riscv_vector.td
A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c
Log Message:
-----------
[clang][RISCV] Make the index of riscv_tuple_extract and riscv_tuple_insert be truncated rather than zero extended (#111466)
It's illegal if the index is 64 bits and is zero-extend to 32 bits.
Commit: 45826513ef6e94b718110ed5a4ead6dcc69127b6
https://github.com/llvm/llvm-project/commit/45826513ef6e94b718110ed5a4ead6dcc69127b6
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Fix clang-tidy suggestions, cleanup, NFC.
Commit: 74f3cc0f96ef89912e34f6e903b56a3c468d1a44
https://github.com/llvm/llvm-project/commit/74f3cc0f96ef89912e34f6e903b56a3c468d1a44
Author: Kelvin Li <kkwli at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/test/Lower/Intrinsics/log.f90
Log Message:
-----------
[flang] Call __clog instead of clog on AIX (#111442)
Commit: adc6a9e8189cc0a8a02a2fcea3f820ea2b402251
https://github.com/llvm/llvm-project/commit/adc6a9e8189cc0a8a02a2fcea3f820ea2b402251
Author: Rose <gfunni234 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
M llvm/test/CodeGen/X86/memset.ll
Log Message:
-----------
Reapply "[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)" (#111393)
Restore old Val if bytes are left over to prevent an assertion failure.
Commit: d079743fe67e05697fe55409115a3614e6fe5c45
https://github.com/llvm/llvm-project/commit/d079743fe67e05697fe55409115a3614e6fe5c45
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[clang] Fix comment typos in CodeGen::EmitLoadOfGlobalRegLValue
Commit: 10054ba4acbc5378d2e2aa869a5bccd88aa4b59e
https://github.com/llvm/llvm-project/commit/10054ba4acbc5378d2e2aa869a5bccd88aa4b59e
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
A mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Add pattern to rewrite contiguous ExtractStridedSlice into Extract (#111541)
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: 70e0a7e7e6a8541bcc46908c592eed561850e416
https://github.com/llvm/llvm-project/commit/70e0a7e7e6a8541bcc46908c592eed561850e416
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
R libclc/README.TXT
A libclc/README.md
Log Message:
-----------
[libclc] Convert README to Markdown (#111549)
A bit nicer to read on GitHub and with clickable links.
No content changes purely formatting.
Commit: baa51ffd9c417c9ec272c601673c484bc4335319
https://github.com/llvm/llvm-project/commit/baa51ffd9c417c9ec272c601673c484bc4335319
Author: bigb4ng <130478744+bigb4ng at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/AddressSanitizer.rst
M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
M clang/docs/LeakSanitizer.rst
M clang/docs/MemorySanitizer.rst
M clang/docs/ThreadSanitizer.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M llvm/docs/GwpAsan.rst
Log Message:
-----------
[sanitizer] Document AddressSanitizer security considerations (#100937)
Follow-up to #92593.
Also makes #92611, https://github.com/google/sanitizers/issues/1130
obsolete.
Commit: 5af7ae501a7ce7bd9d284876fef04b84e441abbd
https://github.com/llvm/llvm-project/commit/5af7ae501a7ce7bd9d284876fef04b84e441abbd
Author: Steven Perron <stevenperron at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/HlslBufferLoad.ll
Log Message:
-----------
[SPIRV] Implement handle_fromBinding intrinsic. (#111052)
Implement the intrinsic `llvm.spv.handle.fromBinding`, which returns the
handle for a global resource. This involves creating a global variable
that matches the return-type, set, and binding in the call, and
returning the handle to that resource.
This commit implements the scalar version. It does not handle arrays of
resources yet. It also does not handle storage buffers yet. We do not
have the type for the storage buffers designed yet.
Part of #81036
Commit: 1dcb6dc757c107f8139f36ac9b240502206caa93
https://github.com/llvm/llvm-project/commit/1dcb6dc757c107f8139f36ac9b240502206caa93
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] foldVSelectToSignBitSplatMask - pull out repeated code and use getShiftAmountConstant helper.
We're assuming shift amount type matches the result type - which is true for vectors, but I'm hoping to generalize this fold in the future.
Commit: d38addf09996498adfff37f300bd9ac21fdd9810
https://github.com/llvm/llvm-project/commit/d38addf09996498adfff37f300bd9ac21fdd9810
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
Fix MSVC signed/unsigned mismatch warning
Commit: 55890968ac2d297803fa538c2eff66988dbb221f
https://github.com/llvm/llvm-project/commit/55890968ac2d297803fa538c2eff66988dbb221f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/CodeGen/PowerPC/vec-min-max.ll
Log Message:
-----------
[PowerPC] vec-min-max.ll - regenerate with common check prefixes to reduce duplication. NFC.
Commit: cc5ddae5e29ef2d7dd132469caee5cac54523ce5
https://github.com/llvm/llvm-project/commit/cc5ddae5e29ef2d7dd132469caee5cac54523ce5
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll
Log Message:
-----------
[NVPTX] Fix ISel patterns for i1 sint_to_fp (#110866)
NVPTX has ZeroOrNegativeOneBooleanContent, therefore we need to use -1
as the constant for i1 sint_to_fp operations in instruction selection.
Commit: 6f2ebc435f1cd8f121d227a52c76b6477cec8c91
https://github.com/llvm/llvm-project/commit/6f2ebc435f1cd8f121d227a52c76b6477cec8c91
Author: AbdAlRahman Gad <89566409+AbdAlRahmanGad at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/include/lldb/Symbol/SymbolContext.h
M lldb/source/API/SBThread.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Symbol/SymbolContext.cpp
Log Message:
-----------
[lldb] Change SymbolContext::GetAddressRangeFromHereToEndLine to return Expected (NFC) (#110718)
Signed-off-by: AbdAlRahman Gad <abdobngad at gmail.com>
Co-authored-by: Adrian Prantl <adrian.prantl at gmail.com>
Commit: ababa483b2ff31357f8c504b1110e255a56ff762
https://github.com/llvm/llvm-project/commit/ababa483b2ff31357f8c504b1110e255a56ff762
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/include/lldb/API/SBDefines.h
Log Message:
-----------
[lldb] Add SBTypeStaticField to SBDefines (#111560)
SBTypeStaticField was missing from SBDefines, this commit adds the class
there.
Commit: f576c1f76d13059b9e60604a37a4b5c12ead7ef9
https://github.com/llvm/llvm-project/commit/f576c1f76d13059b9e60604a37a4b5c12ead7ef9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
[X86] Regenerate test checks with vpternlog comments
Commit: 84088d3a28fdc2d6314c59bfa11026a72b9b0bff
https://github.com/llvm/llvm-project/commit/84088d3a28fdc2d6314c59bfa11026a72b9b0bff
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/CMake.rst
M llvm/include/llvm/Config/config.h.cmake
Log Message:
-----------
[DLCov 1/5] Add CMake option for enhanced debug line coverage tracking (#107278)
This is part of a series of patches that tries to improve DILocation bug
detection in Debugify. This first patch adds the necessary CMake flag to
LLVM and a variable defined by that flag to LLVM's config header, allowing
the next patch to track information without affecting normal builds.
This series of patches adds a "DebugLoc coverage tracking" feature, that
inserts conditionally-compiled tracking information into DebugLocs (and
by extension, to Instructions), which is used by Debugify to provide
more accurate and detailed coverage reports. When enabled, this features
tracks whether and why we have intentionally dropped a DebugLoc,
allowing Debugify to ignore false positives. An optional additional
feature allows also storing a stack trace of the point where a DebugLoc
was unintentionally dropped/not generated, which is used to make fixing
detected errors significantly easier. The goal of these features is to
provide useful tools for developers to fix existing DebugLoc errors and
allow reliable detection of regressions by either manual inspection or
an automated script.
Commit: 7e31eaab575d15384654ed989717e5579e963e72
https://github.com/llvm/llvm-project/commit/7e31eaab575d15384654ed989717e5579e963e72
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/cmake/caches/Android.cmake
Log Message:
-----------
[libc++] Remove unused HAVE_LIBCXXABI variable from Android cache (#111007)
This variable isn't used anymore in libc++'s build and hasn't been for a
few years, so this is likely a remnant of the past.
Commit: 5cb6b15568c1554a2ea89fee849ed0e27b785ee0
https://github.com/llvm/llvm-project/commit/5cb6b15568c1554a2ea89fee849ed0e27b785ee0
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
Log Message:
-----------
[AMDGPU] Constrain use LiveMask by the operand's LaneMask for RP calculation.
For speculative RP queries, recede may calculate inaccurate masks for subreg uses. Previously, the calculation would look at any live lane for the use at the position of the MI in the LIS. This also adds lanes for any subregs which are live at but not used by the instruction. By constraining against the getSubRegIndexLaneMask for the operand's subreg, we are sure to not pick up on these extra lanes.
For current clients of recede, this is not an issue. This is because 1. the current clients do not violate the program order in the LIS, and 2. the change to RP is based on the difference between previous mask and new mask. Since current clients are not exposed to this issue, this patch is sort of NFC.
Co-authored-by: Valery Pykhtin Valery.Pykhtin at amd.com
Change-Id: Iaed80271226b2587297e6fb78fe081afec1a9275
Commit: 01b8dd1dbaa5f764e43f45a137450dfd604ede0e
https://github.com/llvm/llvm-project/commit/01b8dd1dbaa5f764e43f45a137450dfd604ede0e
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV][NFC] Remove the unused RISCV_COALESCE_VSETVLI_NAME (#111536)
This pass was removed in 1cff74130f30aaf47a995c5f6b637a04eaab2617
Commit: c563fe5c71239a8938e1925fce4c19954564faf0
https://github.com/llvm/llvm-project/commit/c563fe5c71239a8938e1925fce4c19954564faf0
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn build] Manually port 84088d3a
Commit: 3c6041d28c6c185c9d7bc1de6d93148e383b58ed
https://github.com/llvm/llvm-project/commit/3c6041d28c6c185c9d7bc1de6d93148e383b58ed
Author: vporpo <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp
Log Message:
-----------
[SandboxVec][Interval] Implement getUnionInterval() and getSingleDiff() (#111455)
Commit: 9e954b2d6ab2d5704169df523c8588a9d15271d9
https://github.com/llvm/llvm-project/commit/9e954b2d6ab2d5704169df523c8588a9d15271d9
Author: Johan Engelen <jbc.engelen at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[docs] Fix llround typo in LangRef (#111426)
Commit: eaea5f6f952b6059cebfe87ea9800a3a6516f9ed
https://github.com/llvm/llvm-project/commit/eaea5f6f952b6059cebfe87ea9800a3a6516f9ed
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/test/CXX/drs/cwg1xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Add test for CWG110 "Can template functions and classes be declared in the same scope?" (#111446)
[P1787R6](https://wg21.link/p1787r6):
> [CWG110](https://cplusplus.github.io/CWG/issues/110.html) is resolved
by reducing the restriction in [temp.pre] to a note (matching the
behavior of GCC, Clang, and ICC).
Wording: see changes to [temp.pre]/7
I believe the wording for the questions raised in the issue is now the
definition of corresponding declarations that is given in
[[basic.scope.scope]/4](https://eel.is/c++draft/basic.scope#scope-4):
> Two declarations correspond if they (re)introduce the same name, both
declare constructors, or both declare destructors, unless
> — either is a using-declarator, or
> — one declares a type (not a typedef-name) and the other declares a
variable, non-static data member other than of an anonymous union
([class.union.anon]), enumerator, function, or function template, or
> — each declares a function or function template and they do not
declare corresponding overloads.
Then it's used as an input for the definition of potentially conflicting
declarations given in
[[basic.scope.scope]/6](https://eel.is/c++draft/basic.scope#scope-6).
Answering the question in the title: yes, having a function template and
a type with the same name that has the same target scope is well-formed.
A keen eye might spot that the current
[[temp.pre]/7](https://eel.is/c++draft/temp.pre#7) note doesn't reflect
all of the exceptions from the definition of corresponding declarations
in [basic.scope.scope]/4, namely 4.1 and 4.2. I believe the note is
defective, and I opened an editorial PR against the draft to fix that:
https://github.com/cplusplus/draft/pull/7284.
Commit: d17ad77c959933286d9f30a38d050d239a6f4378
https://github.com/llvm/llvm-project/commit/d17ad77c959933286d9f30a38d050d239a6f4378
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
A flang/test/Semantics/named-construct-declaration-conflict.f90
Log Message:
-----------
[flang][Semantics] Testcase for declaration conflict with named-const… (#111556)
…ruct
Commit: 418920b3fbdefec5b56ee2b9db96884d0ada7329
https://github.com/llvm/llvm-project/commit/418920b3fbdefec5b56ee2b9db96884d0ada7329
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
A flang/test/Semantics/OpenMP/name-conflict.f90
Log Message:
-----------
[flang][OpenMP] Diagnose non-variable symbols in OpenMP clauses (#111394)
The original motivation came from this scenario:
```
!$omp parallel do shared(xyz)
xyz: do i = 1, 100
enddo xyz
!$omp end parallel do
```
Implement a general check for validity of items listed in OpenMP
clauses. In most cases they need to be variables, some clauses allow
"extended list items", i.e. variables or procedures.
Commit: 3829fd75c858c97437c0f7411238d57c2687dcb1
https://github.com/llvm/llvm-project/commit/3829fd75c858c97437c0f7411238d57c2687dcb1
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Remove redundant getVPSingleValue for VPSingleDefRecipes (NFC).
Commit: d905b1caf14d51ebdc67a3c114a2265d479f818c
https://github.com/llvm/llvm-project/commit/d905b1caf14d51ebdc67a3c114a2265d479f818c
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
M mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
Log Message:
-----------
[MLIR] Vector dialect: Address post-merge review comments on #111541 (#111552)
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: a199fb1229987d0885a4367e3a439db336069156
https://github.com/llvm/llvm-project/commit/a199fb1229987d0885a4367e3a439db336069156
Author: Mike Crowe <mac at mcrowe.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
Log Message:
-----------
[clang-tidy] Only expand <inttypes.h> macros in modernize-use-std-format/print (#97911)
Expanding all macros in the printf/absl::StrFormat format string before
conversion could easily break code if those macros are expanded change
their definition between builds. It's important for this check to expand
the <inttypes.h> PRI macros though, so let's ensure that the presence of
any other macros in the format string causes the check to emit a warning
and not perform any conversion.
Commit: 36fc291b6ec6d4c8e3d956d6855631ab2db7b05a
https://github.com/llvm/llvm-project/commit/36fc291b6ec6d4c8e3d956d6855631ab2db7b05a
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
Log Message:
-----------
[VPlan] Implement VPBlendRecipe::computeCost.
Implement VPBlendRecipe::computeCost. VPBlendRecipe is currently is also
used if only the first lane is used.
This also requires pre-computing costs for forced scalars and
instructions considered profitable to scalarize. For those, the cost
will be computed separately in the legacy cost model. This will also be
needed when implementing VPReplicateRecipe::computeCost.
Commit: a65a5feb1a20581c85ee817dae8826f65fef62af
https://github.com/llvm/llvm-project/commit/a65a5feb1a20581c85ee817dae8826f65fef62af
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/scatter-vectorize-reversed.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
Log Message:
-----------
[SLP]Improve masked loads vectorization, attempting gathered loads
If the vector of loads can be vectorized as masked gather and there are
several other masked gather nodes, compiler can try to attempt to check,
if it possible to gather such nodes into big consecutive/strided loads
node, which provide better performance.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/110151
Commit: 9f3c55954eaa71910caa0abbb404db02d3a104c1
https://github.com/llvm/llvm-project/commit/9f3c55954eaa71910caa0abbb404db02d3a104c1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
Log Message:
-----------
[SLP]Fix loads sorting for loads from diffrent basic blocks
Patch fixes lookup for loads from different basic blocks. Originally,
the code checked is the main key (combined with parent basic block) was
created, but did not include the key into LoadsMap. When the code looked for
the load pointer in LoadsMap, it skipped check for parent basic block
and could mix loads from different basic blocks (but the same underlying
pointer). Currently, it does lead to any issues, since later the code
compares parent basic blocks and sorts loads properly. But it increases
compile time and affects compile time.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/111521
Commit: 75611caff4fab2f73358ae1f4c4f490622cfaa1d
https://github.com/llvm/llvm-project/commit/75611caff4fab2f73358ae1f4c4f490622cfaa1d
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/TokenKinds.def
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/test/Preprocessor/feature_tests.cpp
Log Message:
-----------
[Clang] Improve type traits recognition in `__has_builtin` (#111516)
`__has_builtin` was relying on reversible identifiers and string
matching to recognize builtin-type traits, leading to some newer type
traits not being recognized.
Fixes #111477
Commit: 9b82e85d81756531ca645e83010905e2679245bc
https://github.com/llvm/llvm-project/commit/9b82e85d81756531ca645e83010905e2679245bc
Author: Zequan Wu <zequanwu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
R llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
Log Message:
-----------
[DWARF] Generalize DWARFTypePrinter to a template class (#109459)
This generalizes DWARFTypePrinter class to a template class so that it
can be reused for lldb's DWARFDIE type.
This is a split of https://github.com/llvm/llvm-project/pull/90008. The
difference is that this doesn't have `Visitor` template parameter which
can be added later if necessary.
Commit: 3423a5e3b779db8f2e8018fad477abff67b33404
https://github.com/llvm/llvm-project/commit/3423a5e3b779db8f2e8018fad477abff67b33404
Author: Chris Apple <cja-private at pm.me>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan_assertions.h
M compiler-rt/lib/rtsan/tests/rtsan_test_assertions.cpp
Log Message:
-----------
[rtsan][NFC] Refactor where we unwind the stack (#111443)
This change alters where we unwind the stack. We now do it in ExpectNotRealtime, and pass in the DiagnosticInfo and Stack to OnViolation.
Commit: 29d6f8aadba3e72c4dd093a0ae09e1207db4b10e
https://github.com/llvm/llvm-project/commit/29d6f8aadba3e72c4dd093a0ae09e1207db4b10e
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
Log Message:
-----------
[gn build] Port 9b82e85d8175
Commit: 6fbbe152fa795dffde72982d928550ff9c520392
https://github.com/llvm/llvm-project/commit/6fbbe152fa795dffde72982d928550ff9c520392
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
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/VPlanValue.h
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Introduce VPWidenIntrinsicRecipe to separate from libcall. (#110486)
This patch splits off intrinsic hanlding to a new
VPWidenIntrinsicRecipe. VPWidenIntrinsicRecipes only need access to the
intrinsic ID to widen and the scalar result type (in case the intrinsic
is overloaded on the result type). It does not need access to an
underlying IR call instruction or function.
This means VPWidenIntrinsicRecipe can be created easily without access
to underlying IR.
Commit: c6d6da4659599507b44c167f335639082f28fae6
https://github.com/llvm/llvm-project/commit/c6d6da4659599507b44c167f335639082f28fae6
Author: Lang Hames <lhames at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[ORC][MachO] Remove the ExecutionSession& argument to MachOPlatform::Create.
We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.
Commit: 56d2c626f75e86923facefb9f0c27c94152afc50
https://github.com/llvm/llvm-project/commit/56d2c626f75e86923facefb9f0c27c94152afc50
Author: Vasileios Porpodas <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Interval.cpp
Log Message:
-----------
[SandboxVec][Interval] Add print() and dump()
Commit: 0c0ec040ac89608d5f746750a654f645c97434bc
https://github.com/llvm/llvm-project/commit/0c0ec040ac89608d5f746750a654f645c97434bc
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 56d2c626f75e
Commit: e5fae7682dac8c3ffa5f062078e6112d021cc63b
https://github.com/llvm/llvm-project/commit/e5fae7682dac8c3ffa5f062078e6112d021cc63b
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
Log Message:
-----------
[SandboxVectorizer] Add MemSeed bundle types (#111584)
Commit: a8eb12cdc9a218e4828863f280d2b9f022dac757
https://github.com/llvm/llvm-project/commit/a8eb12cdc9a218e4828863f280d2b9f022dac757
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
A compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c
Log Message:
-----------
[compiler-rt] Reapply freadlink interception for macOs. (#110917)
Fixed test, needed explicit O_SYMLINK on symbolic link opening.
Commit: 87b491a95c3a8f17bd5c6e578104289954c16456
https://github.com/llvm/llvm-project/commit/87b491a95c3a8f17bd5c6e578104289954c16456
Author: Florian Mayer <fmayer at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
Log Message:
-----------
[NFC] [MTE] get rid of unnecessary cast (#110336)
Commit: 5f36042508c1ba765df503a493beafb20bf9ddd0
https://github.com/llvm/llvm-project/commit/5f36042508c1ba765df503a493beafb20bf9ddd0
Author: Florian Mayer <fmayer at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
Log Message:
-----------
[NFC] [HWASan] [MTE] factor out threadlong increment (#110340)
Commit: 1a193137e3125c3abb107dd4e526163e0851253a
https://github.com/llvm/llvm-project/commit/1a193137e3125c3abb107dd4e526163e0851253a
Author: Samuel Holland <samuel.holland at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
[RISC-V][HWASAN] Fix incorrect comments (#103728)
These comments were confusing because they do not match the code.
Commit: 4cab01f07262e0347cf08b061eef9a89957151ce
https://github.com/llvm/llvm-project/commit/4cab01f07262e0347cf08b061eef9a89957151ce
Author: ShatianWang <38512325+ShatianWang at users.noreply.github.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
A bolt/include/bolt/Passes/ContinuityStats.h
M bolt/lib/Passes/CMakeLists.txt
A bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
A bolt/test/X86/cfg-discontinuity-reporting.test
Log Message:
-----------
[BOLT] Profile quality stats -- CFG discontinuity (#109683)
In a perfect profile, each positive-execution-count block in the
function’s CFG should be reachable from a positive-execution-count
function entry block through a positive-execution-count path. This new
pass checks how well the BOLT input profile satisfies this “CFG
continuity” property.
More specifically, for each of the hottest 1000 functions, the pass
calculates the function’s fraction of basic block execution counts that
is “unreachable”. It then reports the 95th percentile of the
distribution of the 1000 unreachable fractions in a single BOLT-INFO
line. The smaller the reported value is, the better the BOLT profile
satisfies the CFG continuity property.
The default value of 1000 above can be changed via the hidden BOLT
option `-num-functions-for-continuity-check=[N]`. If more detailed stats
are needed, `-v=1` can be added to the BOLT invocation: the hottest N
functions will be grouped into 5 equally-sized buckets, from the hottest
to the coldest; for each bucket, various summary statistics of the
distribution of the fractions and the raw unreachable execution counts
will be reported.
Commit: a85eb345603b9588ecf0e0c782d2c599580acc58
https://github.com/llvm/llvm-project/commit/a85eb345603b9588ecf0e0c782d2c599580acc58
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
Log Message:
-----------
[gn build] Port 4cab01f07262
Commit: 0e86e5214c7ba4fbf99b632b080db82716fd9db0
https://github.com/llvm/llvm-project/commit/0e86e5214c7ba4fbf99b632b080db82716fd9db0
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M bolt/lib/Passes/ADRRelaxationPass.cpp
A bolt/test/AArch64/adr-relaxation.s
Log Message:
-----------
[BOLT][AArch64] Reduce the number of ADR relaxations (#111577)
If ADR instruction references the same function, we can skip relaxation
even if the function is split but ADR is in the main fragment.
Commit: 04a8bffdf7b1d6e30616561de1734373375cfef5
https://github.com/llvm/llvm-project/commit/04a8bffdf7b1d6e30616561de1734373375cfef5
Author: vporpo <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Build actual dependencies (#111094)
This patch implements actual dependencies checking using BatchAA. This
adds memory dep edges between MemDGNodes.
Commit: aabddc91b475b2cbb64320a35d3bc595d48fddfb
https://github.com/llvm/llvm-project/commit/aabddc91b475b2cbb64320a35d3bc595d48fddfb
Author: DarshanRamakant <darshanbhatsirsi at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/test/Dialect/MemRef/normalize-memrefs.mlir
Log Message:
-----------
[MLIR][memref] Fix normalization issue in memref.load (#107771)
This change will fix the normalization issue with
memref.load when the associated affine map is
reducing the dimension.
This PR fixes #82675
Co-authored-by: Kai Sasaki <lewuathe at gmail.com>
Commit: c80f48491b150197d758f0906011b44472fa2dd5
https://github.com/llvm/llvm-project/commit/c80f48491b150197d758f0906011b44472fa2dd5
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M lldb/include/lldb/Utility/Status.h
Log Message:
-----------
[lldb][NFC] Fix a build failure with MSVC (#111231)
This fixes a build error with msvc for code introduced in #106442:
```
...\lldb\source\Expression\DiagnosticManager.cpp(37): error C2668: 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo': ambiguous call to overloaded function
...\llvm\include\llvm/Support/Error.h(357): note: could be 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo(std::error_code)', which inherits 'lldb_private::CloneableECError::CloneableECError(std::error_code)' via base class 'lldb_private::ExpressionErrorBase'
...\llvm\include\llvm/Support/Error.h(357): note: or 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo(std::error_code,std::string)', which inherits 'lldb_private::ExpressionErrorBase::ExpressionErrorBase(std::error_code,std::string)' via base class 'lldb_private::ExpressionErrorBase'
...\lldb\source\Expression\DiagnosticManager.cpp(37): note: while trying to match the argument list '(std::error_code)'
```
Commit: ff6facaa61d9bd58ec375be80fc725b2bb6fbadf
https://github.com/llvm/llvm-project/commit/ff6facaa61d9bd58ec375be80fc725b2bb6fbadf
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/test/CodeGen/RISCV/riscv-atomics.c
M clang/test/CodeGen/atomics-sema-alignment.c
M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
Log Message:
-----------
[clang] remove extra space in warn_atomic_op_oversized (NFC) (#110955)
Commit: 181840459d2c8841ab8a564d4fbac6efc65e0fa9
https://github.com/llvm/llvm-project/commit/181840459d2c8841ab8a564d4fbac6efc65e0fa9
Author: William G Hatch <william at hatch.uno>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/test/DebugInfo/NVPTX/debug-info.ll
Log Message:
-----------
[LiveDebugValues][NVPTX]VarLocBasedImpl handle vregs, enable for NVPTX (#111456)
This patch handles virtual registers in the VarLocBasedImpl of the
LiveDebugVariables pass, allowing it to be used on architectures that
depend on virtual registers in debugging, like NVPTX. It enables the
pass for NVPTX.
Commit: 64a22b3e69587c83566a83e793764f2a13733f0b
https://github.com/llvm/llvm-project/commit/64a22b3e69587c83566a83e793764f2a13733f0b
Author: William G Hatch <william at hatch.uno>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
Log Message:
-----------
[NVPTX] fix debug register encoding of special %Depot register (#111596)
cuda-gdb doesn't seem to be able to read the `%Depot` register, but
because we always copy it to `%SP` in lowering, simply switching to use
it fixes the problem.
Commit: bb8df02dfbb40c5a6717ad3b7e8e5811acc6d164
https://github.com/llvm/llvm-project/commit/bb8df02dfbb40c5a6717ad3b7e8e5811acc6d164
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
Log Message:
-----------
[RISCV] Use the MCStreamer reference passed to RISCVAsmPrinter::EmitToStreamer. NFCI (#111607)
We passed a MCStreamer to the function but hardcoded *OutStreamer
instead of using it. It's very likely that OutStreamer is the only
streamer used, but lets not assume that without doing the audit.
Commit: 267e852109381fe35cff0a92915a0418b872213f
https://github.com/llvm/llvm-project/commit/267e852109381fe35cff0a92915a0418b872213f
Author: Vasileios Porpodas <vporpodas at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
Log Message:
-----------
[SandboxVec][DAG][NFC] Rename enumerators
Commit: 1e81056b31749f7b60d56260089f75a4813749c0
https://github.com/llvm/llvm-project/commit/1e81056b31749f7b60d56260089f75a4813749c0
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
Log Message:
-----------
[Coroutines] Avoid repeated hash lookups (NFC) (#111617)
Commit: 2d8cd32ae5a69a9f3baaeca18a8318115586b3b8
https://github.com/llvm/llvm-project/commit/2d8cd32ae5a69a9f3baaeca18a8318115586b3b8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Log Message:
-----------
[InstCombine] Avoid repeated hash lookups (NFC) (#111618)
Commit: 0ee5c869fc003b09e464e079d6bbaab1baf59aba
https://github.com/llvm/llvm-project/commit/0ee5c869fc003b09e464e079d6bbaab1baf59aba
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
Log Message:
-----------
[mlir][spirv] Avoid repeated hash lookups (NFC) (#111619)
Commit: a579782a775ebc2bfe6203d7178ee524b3559006
https://github.com/llvm/llvm-project/commit/a579782a775ebc2bfe6203d7178ee524b3559006
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/lib/Support/APFixedPoint.cpp
M llvm/unittests/ADT/APFixedPointTest.cpp
Log Message:
-----------
[llvm] Add serialization to uint32_t for FixedPointSemantics (#110288)
FixedPointSemantics is exactly 32bits and this static_assert'ed after
its declaration. Add support for converting it to and from a uint32_t.
Commit: 1809d0fa1c15b16ca94381d8be3ef70c4a83c36b
https://github.com/llvm/llvm-project/commit/1809d0fa1c15b16ca94381d8be3ef70c4a83c36b
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Insert a space between l_paren and ref-qualifier (#111465)
Fixes #111346.
Commit: d0b9c2c5647656738cda3fb670aa5d3b3a69d784
https://github.com/llvm/llvm-project/commit/d0b9c2c5647656738cda3fb670aa5d3b3a69d784
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/sha2.cpp
Log Message:
-----------
[compiler-rt] Remove SHA2 interceptions for NetBSD/FreeBSD. (#110246)
To Fix #110215
Interceptors introduced with 18a7ebda99044473fdbce6376993714ff54e6690
Commit: d50302f31cee86d3270a34f5739c63a41f60f2c1
https://github.com/llvm/llvm-project/commit/d50302f31cee86d3270a34f5739c63a41f60f2c1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/CodeGen/Targets/AMDGPU.cpp
R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
M clang/test/OpenMP/amdgcn-attributes.cpp
Log Message:
-----------
clang/AMDGPU: Stop emitting amdgpu-unsafe-fp-atomics attribute (#111579)
Commit: 4336f00f2156970cc0af2816331387a0a4039317
https://github.com/llvm/llvm-project/commit/4336f00f2156970cc0af2816331387a0a4039317
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/SemaTemplate/GH55509.cpp
Log Message:
-----------
[clang] Track function template instantiation from definition (#110387)
This fixes instantiation of definition for friend function templates,
when the declaration found and the one containing the definition
have different template contexts.
In these cases, the the function declaration corresponding to the
definition is not available; it may not even be instantiated at all.
So this patch adds a bit which tracks which function template
declaration was instantiated from the member template.
It's used to find which primary template serves as a context
for the purpose of obtaining the template arguments needed
to instantiate the definition.
Fixes #55509
Commit: fbd2a918652894b31199dffe1ce5335b019332d7
https://github.com/llvm/llvm-project/commit/fbd2a918652894b31199dffe1ce5335b019332d7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
A llvm/test/Transforms/InferAddressSpaces/fake-use.ll
Log Message:
-----------
InferAddressSpaces: Handle llvm.fake.use (#109567)
Commit: c198f775cdcd731f68fb482c223702c7273d41ca
https://github.com/llvm/llvm-project/commit/c198f775cdcd731f68fb482c223702c7273d41ca
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/Bitcode/amdgcn-atomic.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics-f64.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics-f64.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
R llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat-fadd-fmin-fmax-intrinsics.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
Log Message:
-----------
AMDGPU: Remove flat/global fmin/fmax intrinsics (#105642)
These have been replaced with atomicrmw
Commit: 3dba4ca155e0b460ca82917b25d3624eb5825940
https://github.com/llvm/llvm-project/commit/3dba4ca155e0b460ca82917b25d3624eb5825940
Author: Lang Hames <lhames at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
Log Message:
-----------
[ORC][MachO] Remove the ExecutionSession& argument to MachOPlatform constructor.
We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.
Commit: 55dd29c61d1bd5509504ef0c6014b3879567eb17
https://github.com/llvm/llvm-project/commit/55dd29c61d1bd5509504ef0c6014b3879567eb17
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M llvm/tools/llvm-profdata/llvm-profdata.cpp
Log Message:
-----------
[llvm-profdata] Avoid repeated hash lookups (NFC) (#111629)
Commit: b26aac5a440d03791a367a1ee19d0341b68a28bc
https://github.com/llvm/llvm-project/commit/b26aac5a440d03791a367a1ee19d0341b68a28bc
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-10-08 (Tue, 08 Oct 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
Log Message:
-----------
[sanitizer] Report -> VReport for ThreadLister failure
Commit: a06591b4d4fb270b587fc5ef67b5a03dad752b40
https://github.com/llvm/llvm-project/commit/a06591b4d4fb270b587fc5ef67b5a03dad752b40
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__type_traits/is_implicit_lifetime.h
M libcxx/include/module.modulemap
M libcxx/include/type_traits
M libcxx/include/version
M libcxx/modules/std/type_traits.inc
M libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][type_traits] P2674R1: A trait for implicit lifetime types (#106870)
Implements P2674R1: https://wg21.link/P2674R1
- https://eel.is/c++draft/type.traits
- https://eel.is/c++draft/meta.type.synop
- https://eel.is/c++draft/meta.unary.prop
- https://eel.is/c++draft/support.limits
- https://eel.is/c++draft/version.syn
Implementation details:
- Uses compiler intrinsic `__builtin_is_implicit_lifetime`:
- https://github.com/llvm/llvm-project/pull/101807
- Tests based on:
-
https://github.com/llvm/llvm-project/blob/d213981c80626698a07b11ce872acba098a863d4/clang/test/SemaCXX/type-traits.cpp#L1989
References:
- Implicit-lifetime
- Implicit-lifetime types [basic.types.general]/9:
https://eel.is/c++draft/basic.types.general
- Implicit-lifetime class [class.prop]/9:
https://eel.is/c++draft/class.prop
- P0593R6 Implicit creation of objects for low-level object
manipulation: https://wg21.link/P0593R6
- P1010R1 Container support for implicit lifetime types:
https://wg21.link/P1010R1
- P0593R6 Implicit creation of objects for low-level object
manipulation: https://wg21.link/P0593R6
Closes: #105259
---------
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: 3c1d9b8ec7474f076ddd842d2b6c562728e9b90a
https://github.com/llvm/llvm-project/commit/3c1d9b8ec7474f076ddd842d2b6c562728e9b90a
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port a06591b4d4fb
Commit: fb2960aad93f6c02e0ea8de0568c0aef8896eee8
https://github.com/llvm/llvm-project/commit/fb2960aad93f6c02e0ea8de0568c0aef8896eee8
Author: Martin Storsjö <martin at martin.st>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPort.h
M compiler-rt/lib/profile/InstrProfilingUtil.h
Log Message:
-----------
[compiler-rt] [profile] Add missing (void) to prototypes, for C sources (#110642)
If built as part of the main llvm build, via
ENABLE_LLVM_PROJECTS=compiler-rt, the code gets built with more warning
options than if built standalone. Some of these trigger warnings like:
warning: a function declaration without a prototype is deprecated in all
versions of C [-Wstrict-prototypes]
Commit: 3be691651a2143f23bcf8f2704e55b01bbaa2550
https://github.com/llvm/llvm-project/commit/3be691651a2143f23bcf8f2704e55b01bbaa2550
Author: Thomas Fransham <tfransham at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Config/abi-breaking.h.cmake
Log Message:
-----------
Add symbol visibility macros to abi-breaking.h.cmake (#110898)
Annotating these symbols will fix missing symbols errors for Bugpoint
when when the default symbol visibility is set to hidden for LLVM.
This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins on
window.
Co-authored-by: Tom Stellard <tstellar at redhat.com>
Commit: ada6372e52547ba0090f52a2e9e9d95d7eca28d3
https://github.com/llvm/llvm-project/commit/ada6372e52547ba0090f52a2e9e9d95d7eca28d3
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
M clang/test/CXX/temp/temp.param/p12.cpp
M clang/test/Modules/cxx-templates.cpp
M clang/test/SemaCXX/make_integer_seq.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/Templight/templight-empty-entries-fix.cpp
M clang/test/Templight/templight-prior-template-arg.cpp
M libcxx/test/libcxx/type_traits/is_specialization.verify.cpp
Log Message:
-----------
Revert "[clang] Finish implementation of P0522 (#96023)"
This caused Clang to reject valid code, see discussion on the PR
https://github.com/llvm/llvm-project/pull/96023#issuecomment-2393228464
and https://github.com/llvm/llvm-project/issues/111363
This reverts commit 6afe56732a172d3f2cbd0330b1fcb34bbfd002a9 and
follow-up commit 9abb97f9663a27fe5b8e346ed557b3435aa9ec2f.
Commit: 3bf33ecec8f0501f6b370bb2bc6ef01f4f98eaa2
https://github.com/llvm/llvm-project/commit/3bf33ecec8f0501f6b370bb2bc6ef01f4f98eaa2
Author: David Green <david.green at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/test/CodeGen/AArch64/concat-vector.ll
Log Message:
-----------
[GlobalISel] Fold bitcast(undef) to undef. (#111491)
As with other operations such as trunc and fp converts, it should be
valid to convert bitcast(undef) to undef.
Commit: e2dc50c92987e6886b1b1641ebdbe9cc53bae192
https://github.com/llvm/llvm-project/commit/e2dc50c92987e6886b1b1641ebdbe9cc53bae192
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/docs/CMake.rst
Log Message:
-----------
[docs] Update the libc++ documentation link
The link has changed a while ago, which means that the old link is now a
404. This fixes the link to point to the correct documentation.
Commit: 275a2b05813b2f10f403375abd72d1843e4544c3
https://github.com/llvm/llvm-project/commit/275a2b05813b2f10f403375abd72d1843e4544c3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
Log Message:
-----------
[MLIR][Tensor] Perform shape inference via in-place modification (NFC) (#111593)
This is more efficient to avoid a clone that is immediately removed.
Also guard the insertion of a cast on the result on whether the
destination type changed.
Commit: fed8695bb846bf99884c1b54863d58b369c2b340
https://github.com/llvm/llvm-project/commit/fed8695bb846bf99884c1b54863d58b369c2b340
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Emit better diagnostic for invalid shufflevector index (#111643)
Commit: b9314a82196a656e2bcc48459123a98ccc02a54d
https://github.com/llvm/llvm-project/commit/b9314a82196a656e2bcc48459123a98ccc02a54d
Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
Log Message:
-----------
[mlir][spirv] Update math.powf lowering (#111388)
The PR updates math.powf lowering to produce NaN result for a negative
base with a fractional exponent which matches the actual behaviour of
the C/C++ implementation.
Commit: ef739e78ff82d15dfdb4d7817c5a2990a89cf5ea
https://github.com/llvm/llvm-project/commit/ef739e78ff82d15dfdb4d7817c5a2990a89cf5ea
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Sema/asm.c
M clang/test/Sema/caret-diags-register-variable.cpp
Log Message:
-----------
[clang] Change "bad" to "unsupported" in register type error (#111550)
This is maybe a personal take but I expect "bad" to either mean:
* Allowed but not ideal, like a "bad" memory alignment might work but it
is slow.
* The tool won't allow it but is going to tell me why it didn't.
The current error doesn't elaborate so I think it's best we just say
"unsupported" instead. This is clear that the type used is not allowed
at all.
Commit: a4de127086ba4e39effb28642973edbb758e9656
https://github.com/llvm/llvm-project/commit/a4de127086ba4e39effb28642973edbb758e9656
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libclc/CMakeLists.txt
Log Message:
-----------
[libclc] Give a helpful error when an unknown target is requested (#111528)
I just tried using LLVM backend names here e.g. NVPTX but libclc want's
targets more like triples. This change adds a mesasge to tell you that.
Before you got:
```
libclc target 'AMDGCN' is enabled
CMake Error at CMakeLists.txt:253 (list):
list index: 1 out of range (-1, 0)
CMake Error at CMakeLists.txt:254 (list):
list index: 2 out of range (-1, 0)
Configuring incomplete, errors occurred!
```
Now you get:
```
CMake Error at CMakeLists.txt:145 (message):
Unknown target in LIBCLC_TARGETS_TO_BUILD: "AMDGCN"
Valid targets are:
amdgcn--;amdgcn--amdhsa;clspv--;clspv64--;r600--;nvptx--;nvptx64--;nvptx--nvidiacl;nvptx64--nvidiacl;amdgcn-mesa-mesa3d
```
Some of the targets are dynamic based on what is installed, so spirv
isn't here for me because I don't have llvm-spirv installed yet.
So this is not perfect but it's an improvement on the current behaviour.
Commit: de4f2c976f9fa11173c71b2b070225c9be89ceef
https://github.com/llvm/llvm-project/commit/de4f2c976f9fa11173c71b2b070225c9be89ceef
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
Log Message:
-----------
[lldb][test] Enable TestDAP_runInTerminal on non-x86 architectures (#111543)
I don't see an obvious reason it has to be x86 specific and local
testing on Arm and AArch64 is fine.
Originally disabled in 50337fb933e0f666d34d747a43d46840b3982bf7 in
response to failures apparently caused by
https://reviews.llvm.org/D93951.
Perhaps those still exist but worth trying this and checking I think.
Commit: 5be1024ea7518b8823fa97c00cbda7ea29b0a259
https://github.com/llvm/llvm-project/commit/5be1024ea7518b8823fa97c00cbda7ea29b0a259
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
Log Message:
-----------
[ci] Use check-compiler-rt target for testing compiler-rt (#111515)
Instead of "check-all" which leads to us running some tests twice if
there are other "check-..." targets. For example on one of my PRs this
script produced:
```
commands:
- './.ci/monolithic-linux.sh "clang;clang;lld;clang-tools-extra;compiler-rt;llvm" "check-all check-clang check-clang-tools" "libcxx;libcxxabi;libunwind" "check-cxx check-cxxabi check-unwind"'
commands:
- 'C:\BuildTools\Common7\Tools\VsDevCmd.bat -arch=amd64 -host_arch=amd64'
- 'bash .ci/monolithic-windows.sh "clang;clang-tools-extra;llvm" "check-clang check-clang-tools"'
```
Which meant that Linux ran the clang and clang-tools tests twice. These
extra tests were about 24% of the test run and increased testing time
(on my local machine) by 45%.
This problem can also happen with other projects but there isn't a
simple fix like this one at the moment.
* pstl has a check-pstl target but it is not part of check-all and when
I tried it locally I couldn't build it.
* libclc has no check- target.
I will deal with those projects later.
Commit: 10008f731d4afd1f2a0b48da38d482b23232a09d
https://github.com/llvm/llvm-project/commit/10008f731d4afd1f2a0b48da38d482b23232a09d
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
Log Message:
-----------
[ci] Don't add a testing target for libclc (#111547)
According to
https://github.com/llvm/llvm-project/pull/111369#issuecomment-2400152471
there is no testing to be done here.
Adding "check-all" only risks duplicating tests if other project
specific "check-" targets are also added.
Commit: 587f31fb28bab388ff87f1e321a2b32a07c5c0c2
https://github.com/llvm/llvm-project/commit/587f31fb28bab388ff87f1e321a2b32a07c5c0c2
Author: David Green <david.green at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/test/Transforms/InstCombine/log-to-intrinsic.ll
Log Message:
-----------
[InstCombine] Add a test for converting log to an intrinsic. NFC
Commit: e080be5ac2163bcc4fd81f9770dbaf4360bc1a8c
https://github.com/llvm/llvm-project/commit/e080be5ac2163bcc4fd81f9770dbaf4360bc1a8c
Author: David Sherwood <david.sherwood at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[NFC][LoopVectorize] Clean up some code around getting a context (#111114)
There are several places in LoopVectorize where we do more work
than necessary to obtain a LLVMContext. I've tried to make the
code more efficient.
Commit: 67200f5dc8a662edd05928f97940c2fcabf42043
https://github.com/llvm/llvm-project/commit/67200f5dc8a662edd05928f97940c2fcabf42043
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
Log Message:
-----------
[ARM] Tidy up stack frame strategy code (NFC) (#110283)
We have two different ways of splitting the pushes of callee-saved
registers onto the stack, controlled by the confusingly similar names
STI.splitFramePushPop() and STI.splitFramePointerPush(). This removes
those functions and replaces them with a single function which returns
an enum. This is in preparation for adding another value to that enum.
The original work of this patch was done by James Westwood, reviewed as
#82801 and #81249, with some tidy-ups done by Mark Murray and myself.
Commit: 2ecf2e242b5e4c808fc3f6f2230d2f68b9ee1004
https://github.com/llvm/llvm-project/commit/2ecf2e242b5e4c808fc3f6f2230d2f68b9ee1004
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
Log Message:
-----------
[ARM] Factor out code to determine spill areas (NFC) (#110283)
There were multiple loops in ARMFrameLowering which sort the callee
saved registers into spill areas, which were hard to understand and
modify. This splits the information about which register is in which
save area into a separate function.
Commit: e817cfde41e661886538d7991c8fcf4164b98ee3
https://github.com/llvm/llvm-project/commit/e817cfde41e661886538d7991c8fcf4164b98ee3
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.h
Log Message:
-----------
[ARM] Refactor generation of push/pop instructions (NFC) (#110283)
These used a set of callback functions to check which callee-save area a
register is in, refactor them to use the same data as other parts of
ARMFrameLowering. This will make it easier to add a new variant to the
register splitting.
Commit: 754c1f21700d7f6df3ee3bf86769c59cce1a6cfd
https://github.com/llvm/llvm-project/commit/754c1f21700d7f6df3ee3bf86769c59cce1a6cfd
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
Log Message:
-----------
[ARM] Add debug dump for StackAdjustingInsts (NFC) (#110283)
Commit: baa1fc9825ca29a81f98146da6036e3415182f16
https://github.com/llvm/llvm-project/commit/baa1fc9825ca29a81f98146da6036e3415182f16
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
Log Message:
-----------
[ARM] Remove always-true checks from Thumb1 frame lowering (NFC) (#110283)
For Thumb1, we always split the callee-saved register pushes at R7, so
we don't need to check for this.
Commit: 6004f5550c8032f4c632cdbf5dbc0894bb33e51f
https://github.com/llvm/llvm-project/commit/6004f5550c8032f4c632cdbf5dbc0894bb33e51f
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
M llvm/lib/Support/APFloat.cpp
Log Message:
-----------
[ADT][APFloat] Make sure EBO is performed on APFloat (#111641)
Since both APFloat and (Double)IEEEFloat inherit from APFloatBase, empty
base optimization is not performed by GCC/Clang (Minimal reproducer:
https://godbolt.org/z/dY8cM3Wre). This patch removes inheritance
relation between (Double)IEEEFloat and APFloatBase to make sure EBO is
performed on APFloat. After this patch, the size of `ConstantFPRange`
will be reduced from 72 to 56.
Address comment
https://github.com/llvm/llvm-project/pull/111544#discussion_r1792398427.
Commit: 146d3f04ff92e396ea40ab581304e65e8511d8ac
https://github.com/llvm/llvm-project/commit/146d3f04ff92e396ea40ab581304e65e8511d8ac
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
Log Message:
-----------
[lldb][test] Disable TestSharedLibStrippedSymbols on Arm
This has been flakey lately for example:
https://lab.llvm.org/buildbot/#/builders/18/builds/5139
Commit: b43e003d90f0a7c045e9961a80013fc9c6d6e9b3
https://github.com/llvm/llvm-project/commit/b43e003d90f0a7c045e9961a80013fc9c6d6e9b3
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
Log Message:
-----------
Revert "[lldb][test] Enable TestDAP_runInTerminal on non-x86 architectures" (#111648)
Reverts llvm/llvm-project#111543
https://lab.llvm.org/buildbot/#/builders/18/builds/5140 failed here
again. Clearly there is something different on Arm but I don't know what
it is yet.
Commit: a1bc3e63cc020aad75b55d8732ab7ae15ea1c973
https://github.com/llvm/llvm-project/commit/a1bc3e63cc020aad75b55d8732ab7ae15ea1c973
Author: Jonathan Cohen <jcohen22 at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
A llvm/test/MC/ARM/macho-relocs-with-addend-invalid.s
M llvm/test/MC/ARM/macho-relocs-with-addend.s
Log Message:
-----------
[ARMAsmBackend] Add checks for relocation addends in assembler (#109969)
This PR adds checks that any addends attached to branch instructions are
valid, and can be properly encoded in the branch instruction. Before
this fix, the assembler would silently truncate or round invalid addend
values, creating incorrect branch instructions.
Commit: f016e105b31b29963cca87bfb30a179dacf260af
https://github.com/llvm/llvm-project/commit/f016e105b31b29963cca87bfb30a179dacf260af
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M utils/bazel/llvm_configs/config.h.cmake
Log Message:
-----------
[bazel] update config.h.cmake
for 84088d3a28fdc2d6314c59bfa11026a72b9b0bff
Commit: 1a1de2465d8399b178149e7e23c7450fdc5dde9f
https://github.com/llvm/llvm-project/commit/1a1de2465d8399b178149e7e23c7450fdc5dde9f
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M utils/bazel/llvm_configs/abi-breaking.h.cmake
Log Message:
-----------
[bazel] update abi-breaking.h.cmake for 3be691651a2143f23bcf8f2704e55b01bbaa2550
Commit: cc99bddb71738761bfe21490f3b6853da036cf97
https://github.com/llvm/llvm-project/commit/cc99bddb71738761bfe21490f3b6853da036cf97
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
Log Message:
-----------
AMDGPU: Avoid using hardcoded address space number
Commit: b124c04597166cc93ca791d0ad07834c85de824d
https://github.com/llvm/llvm-project/commit/b124c04597166cc93ca791d0ad07834c85de824d
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[Flang][OpenMP] Remove omp.simd reduction block args (#111523)
This patch reverts previous changes to create entry block arguments for
reduction variables attached to `simd` constructs.
This can't currently be done because reduction variables stored in the
corresponding clause structure are not added to the `omp.simd` operation
when created, as this is not supported yet. Adding block arguments for
non-existent reduction variables results in some tests from the Fujitsu
compiler testsuite breaking:
https://linaro.atlassian.net/browse/LLVM-1389.
Commit: e71ac933716dc9a747b93b73e899e50b421ebcde
https://github.com/llvm/llvm-project/commit/e71ac933716dc9a747b93b73e899e50b421ebcde
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[Flang][OpenMP] Properly reserve space for entry block argument lists (NFC) (#111529)
This patch adds the size for `use_device_ptr`, which was missing.
Commit: 6472cb1e219f631ed504bb1c5675853168748d21
https://github.com/llvm/llvm-project/commit/6472cb1e219f631ed504bb1c5675853168748d21
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/unittests/Transforms/IPO/FunctionSpecializationTest.cpp
Log Message:
-----------
[FuncSpec] Improve estimation of select instruction. (#111176)
When propagating a constant to a select instruction we only consider the
condition operand as the use. I am extending the logic to consider the
true and false values too, in case the condition had been found to be
constant in a previous propagation but halted.
Commit: af933f0661b0d3aed84bbe521420b83efd5b8685
https://github.com/llvm/llvm-project/commit/af933f0661b0d3aed84bbe521420b83efd5b8685
Author: Ash Vardanian <1983160+ashvardanian at users.noreply.github.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Headers/cpuid.h
Log Message:
-----------
[clang][x86] Missing `AVX512VP2INTERSECT` flag (#111435)
This patch adds support for detecting the `AVX512VP2INTERSECT` ISA extension.
It's useful for Intel Tiger Lake mobile CPUs and any Zen 5 AMD CPUs.
No functional changes yet, just defining the feature flag.
Commit: b2edeb58b8cb3268acee425cd52b406eb60a8095
https://github.com/llvm/llvm-project/commit/b2edeb58b8cb3268acee425cd52b406eb60a8095
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M openmp/cmake/OpenMPTesting.cmake
M openmp/tools/archer/tests/CMakeLists.txt
M openmp/tools/archer/tests/lit.site.cfg.in
Log Message:
-----------
[openmp] Add option to disable tsan tests (#111548)
This adds a OPENMP_TEST_ENABLE_TSAN option that allows to override
whether tests using tsan will be enabled. The option defaults to the
existing auto-detection.
The background here is
https://github.com/llvm/llvm-project/issues/111492, where we have some
systems where tsan doesn't work, but we do still want to build it and
run tests that don't use tsan.
Commit: 068d76b48093ccf8b55c4af6a6ccacfc1ce0ae53
https://github.com/llvm/llvm-project/commit/068d76b48093ccf8b55c4af6a6ccacfc1ce0ae53
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/test/Analysis/range_casts.c
Log Message:
-----------
[analyzer] Fix crash when casting the result of a malformed fptr call (#111390)
Ideally, we wouldn't workaround our current cast-modeling, but the
experimental "support-symbolic-integer-casts" is not finished so we need
to live with our current modeling.
Ideally, we could probably bind `UndefinedVal` as the result of the call
even without evaluating the call, as the result types mismatch between
the static type of the `CallExpr` and the actually function that happens
to be called.
Nevertheless, let's not crash.
https://compiler-explorer.com/z/WvcqK6MbY
CPP-5768
Commit: 1be64e5413cbe9cfa89539f70ad02ee1d8945ebe
https://github.com/llvm/llvm-project/commit/1be64e5413cbe9cfa89539f70ad02ee1d8945ebe
Author: ivanaivanovska <iivanovska at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
Log Message:
-----------
[clang][Sema] Add instant event when template instantiation is deferred. (#111524)
While profiling a clang invocation using `-ftime-trace`, now we add
instant events when template instantiation is deferred.
These events include the fully qualified name of the function template
being deferred and therefore could be very verbose. This is therefore
only added in verbose mode (when `TimeTraceVerbose` is enabled).
The point of time when a particular instantiation is deferred can be
used to identify the parent TimeTrace scope (usually another function
instantiation), which is responsible for deferring this instantiation.
This relationship can be used to attribute the cost of a deferred
template instantiation to the function deferring this particular
instantiation.
Commit: 671cbcf6420a9dfc81754d8dc683619f6f396ed8
https://github.com/llvm/llvm-project/commit/671cbcf6420a9dfc81754d8dc683619f6f396ed8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
Log Message:
-----------
AMDGPU: Add baseline tests for gep flag handling (#110814)
We need to know the address computation won't overflow on
older subtargets to match the addressing mode of stack instructions.
Commit: ced15cd418d96fc3d078e687bdcc5875656c71f6
https://github.com/llvm/llvm-project/commit/ced15cd418d96fc3d078e687bdcc5875656c71f6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/DebugInfo/Sparc/pointer-add-unknown-offset-debug-info.ll
Log Message:
-----------
DAG: Preserve more flags when expanding gep (#110815)
This allows selecting the addressing mode for stack instructions
in cases where we need to prove the sign bit is zero.
Commit: 886d98e149843f3890ef4dd556a5dee45ff97fe9
https://github.com/llvm/llvm-project/commit/886d98e149843f3890ef4dd556a5dee45ff97fe9
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels.
Commit: 1b3fc754515c64fdbe4a34292abe1082cb63942c
https://github.com/llvm/llvm-project/commit/1b3fc754515c64fdbe4a34292abe1082cb63942c
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
Revert "[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels."
This reverts commit 886d98e149843f3890ef4dd556a5dee45ff97fe9.
Commit: 00c1c589e0d8878251993db57e3fd71f7105402d
https://github.com/llvm/llvm-project/commit/00c1c589e0d8878251993db57e3fd71f7105402d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
Log Message:
-----------
DependencyGraph.cpp - mix MSVC "not all control paths return a value" warning. NFC.
Commit: a9f5a44aa0032c6efb262d2d5f79847045e525f1
https://github.com/llvm/llvm-project/commit/a9f5a44aa0032c6efb262d2d5f79847045e525f1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/avx512vl-logic.ll
M llvm/test/CodeGen/X86/vec_smulo.ll
M llvm/test/CodeGen/X86/vec_umulo.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.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-interleaved-store-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-lzcnt-512.ll
M llvm/test/CodeGen/X86/vector-tzcnt-512.ll
Log Message:
-----------
[X86] Regenerate test checks with vpternlog comments
Commit: 374fffe015b48676fb3785167d363454a2f4dd1f
https://github.com/llvm/llvm-project/commit/374fffe015b48676fb3785167d363454a2f4dd1f
Author: Alexander Kornienko <alexfh at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Frontend/TextDiagnostic.cpp
A clang/test/Frontend/highlight-text.c
Log Message:
-----------
Fix out-of-bounds access to std::unique_ptr<T[]> (#111581)
This manifested as an assertion failure in Clang built against libc++
with
hardening enabled (e.g.
-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_DEBUG):
`libcxx/include/__memory/unique_ptr.h:596: assertion
__checker_.__in_bounds(std::__to_address(__ptr_), __i) failed:
unique_ptr<T[]>::operator[](index): index out of range`
Commit: 01cbbc52dc95fe5d9e30ecbfb2ec8c7c1e0199c4
https://github.com/llvm/llvm-project/commit/01cbbc52dc95fe5d9e30ecbfb2ec8c7c1e0199c4
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
Log Message:
-----------
[VPlan] Request lane 0 for pointer arg in PtrAdd.
After 7f74651, the pointer operand may be replicated of a PtrAdd. Instead
of requesting a single scalar, request lane 0, which correctly handles the
case when there is a scalar-per-lane.
Fixes https://github.com/llvm/llvm-project/issues/111606.
Commit: 25c3ecf28f0a3a404305b5eefac23baf7e4e0754
https://github.com/llvm/llvm-project/commit/25c3ecf28f0a3a404305b5eefac23baf7e4e0754
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Add isConstantPowerOf2 helper to replace repeated code. NFC.
Prep work for #110875
Commit: e17f701f559fc637b41c27ea240568bb33b56d1f
https://github.com/llvm/llvm-project/commit/e17f701f559fc637b41c27ea240568bb33b56d1f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/vselect-pcmp.ll
Log Message:
-----------
[X86] vselect-pcmp.ll - regenerate test checks with vpternlog comments
Commit: 4b4078a5cf95ad4a5e18704d9b88129c3a0bcb88
https://github.com/llvm/llvm-project/commit/4b4078a5cf95ad4a5e18704d9b88129c3a0bcb88
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/X86/vselect-pcmp.ll
Log Message:
-----------
[X86] Add test coverage for #110875
Commit: 8e2ccdc4deedd463a20237b4d842b4c51f9fe603
https://github.com/llvm/llvm-project/commit/8e2ccdc4deedd463a20237b4d842b4c51f9fe603
Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
Log Message:
-----------
[MLIR][LLVM] Use ViewLikeOpInterface (#111663)
This commit adds the ViewLikeOpInterface to the GEP and AddrSpaceCast
operations. This allows us to simplify the inliner interface. At the
same time, the change also makes the inliner interface more extensible
for downstream users that have custom view-like operations.
Commit: 3b2bfb48239e674805a9c4e65be3c3a9eeabdf9c
https://github.com/llvm/llvm-project/commit/3b2bfb48239e674805a9c4e65be3c3a9eeabdf9c
Author: roderickzzc <32364736+Zhang-Zecheng at users.noreply.github.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
Log Message:
-----------
[mlir] add missing CMake dependency on ShardingInterface generated headers for LinalgDialect (#111603)
This fixes non-deterministic build failures.
Fixes https://github.com/llvm/llvm-project/issues/111527
---------
Co-authored-by: zecheng.zhang <zecheng.zhang at bytedance.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 3b7091bcf3b48b63724500d821dc7a0ce8ffa3c9
https://github.com/llvm/llvm-project/commit/3b7091bcf3b48b63724500d821dc7a0ce8ffa3c9
Author: Ariel-Burton <arielburton at yahoo.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
M llvm/lib/Support/APFloat.cpp
Log Message:
-----------
[APFloat] add predicates to fltSemantics for hasZero and hasSignedRepr (#111451)
We add static methods to APFloatBase to allow the hasZero and
hasSignedRepr properties of fltSemantics to be obtained.
Commit: 890e481358d6cb4e81629742eda32f9a1d6785d2
https://github.com/llvm/llvm-project/commit/890e481358d6cb4e81629742eda32f9a1d6785d2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
Log Message:
-----------
AMDGPU: Regenerate test checks
Commit: 21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759
https://github.com/llvm/llvm-project/commit/21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/cmake/Modules/HandleLibCXXABI.cmake
M libcxx/src/CMakeLists.txt
M libcxxabi/src/CMakeLists.txt
Log Message:
-----------
[libc++] Fix broken configuration system-libcxxabi on Apple (#110920)
On Apple platforms, using system-libcxxabi as an ABI library wouldn't
work because we'd try to re-export symbols from libc++abi that the
system libc++abi.dylib might not have. Instead, only re-export those
symbols when we're using the in-tree libc++abi.
This does mean that libc++.dylib won't re-export any libc++abi symbols
when building against the system libc++abi, which could be fixed in
various ways. However, the best solution really depends on the intended
use case, so this patch doesn't try to solve that problem.
As a drive-by, also improve the diagnostic message when the user forgets
to set the LIBCXX_CXX_ABI_INCLUDE_PATHS variable, which would previously
lead to a confusing error.
Closes #104672
Commit: 32db6fbdb9a8173813e67606b87555c31ea557bb
https://github.com/llvm/llvm-project/commit/32db6fbdb9a8173813e67606b87555c31ea557bb
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Transforms/loop-invariant-code-motion.mlir
Log Message:
-----------
[mlir][vector] Implement speculation for vector.transferx ops (#111533)
This patch implements speculation for
vector.transfer_read/vector.transfer_write ops, allowing these ops to
work with LICM.
Commit: 5b03efb85d63d1f4033ed649a56a177dd4ed62b4
https://github.com/llvm/llvm-project/commit/5b03efb85d63d1f4033ed649a56a177dd4ed62b4
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/OpenMP/interchange_ast_print.cpp
M clang/test/OpenMP/interchange_codegen.cpp
M clang/test/OpenMP/interchange_messages.cpp
M clang/tools/libclang/CIndex.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/Semantics/check-omp-structure.cpp
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[Clang][OpenMP] Add permutation clause (#92030)
Add the permutation clause for the interchange directive which will be
introduced in the upcoming OpenMP 6.0 specification. A preview has been
published in
[Technical Report12](https://www.openmp.org/wp-content/uploads/openmp-TR12.pdf).
Commit: fa3258ecb8f18702bb45fa7f7c5c436be9e575cc
https://github.com/llvm/llvm-project/commit/fa3258ecb8f18702bb45fa7f7c5c436be9e575cc
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Sink retrieving legacy costs to more specific computeCost impls. (#109708)
Make legacy cost retrieval independent of getInstructionForCost by
sinking it to more specific ::computeCost implementation (specifically
VPInterleaveRecipe::computeCost and VPSingleDefRecipe::computeCost).
Inline getInstructionForCost to VPRecipeBase::cost(), as it is now only
used to decide which recipes to skip during cost computation and when to
apply forced costs.
PR: https://github.com/llvm/llvm-project/pull/109708
Commit: c47f3e8c7027fbf13495dc865c28d852bf77836d
https://github.com/llvm/llvm-project/commit/c47f3e8c7027fbf13495dc865c28d852bf77836d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vselect-pcmp.ll
Log Message:
-----------
[X86] combineSelect - Fold select(pcmpeq(and(X,Pow2),0),A,B) -> select(pcmpeq(and(X,Pow2),Pow2),B,A)
Matches what we already do in LowerVSETCC to reuse an existing constant
Fixes #110875
Commit: 15dc2d5c5e55e6f0b9e3a78d352698b8873f2566
https://github.com/llvm/llvm-project/commit/15dc2d5c5e55e6f0b9e3a78d352698b8873f2566
Author: Victor Mustya <victor.mustya at intel.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/IR/SymbolTableListTraits.h
Log Message:
-----------
[IR] Prevent implicit SymbolTableListTraits template instantiation (#111600)
The `SymbolTableListTraits` template is explicitly instantiated for the
following types:
* `llvm/lib/IR/Function.cpp`
- `BasicBlock`
* `llvm/lib/IR/Module.cpp`
- `Function`
- `GlobalAlias`
- `GlobalIFunc`
- `GlobalVariable`
When LLVM is built on Windows with the `LLVM_EXPORT_SYMBOLS_FOR_PLUGINS`
option enabled, the implicit instantiation of the template prevents the
`SymbolTableListTraits` template from being exported. This causes link
errors when the template or IR API is used in a plugin.
This change prevents the template being implicitly instantiated for
these types.
Commit: d25f1a19c8cc68f3ff4659192605d39c35474cc8
https://github.com/llvm/llvm-project/commit/d25f1a19c8cc68f3ff4659192605d39c35474cc8
Author: simpal01 <simi.pallipurath at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp
Log Message:
-----------
Add 64bit atomic check in the is_always_lock_free_pass test. (#111540)
Currently this test is completely xfailed as part of the patch
https://github.com/llvm/llvm-project/pull/106077. But this test works on
A and R profile, not in v7M profile. Because the test contain cases in
which m-profile will fail for atomic types greater than 4 bytes in size.
Commit: 1e357cde4836d034d2f7a6d9af099eef23271756
https://github.com/llvm/llvm-project/commit/1e357cde4836d034d2f7a6d9af099eef23271756
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
Log Message:
-----------
AMDGPU: Use pointer types more consistently (#111651)
This was using addrspace 0 and 1 pointers interchangably. This works
out since they happen to use the same size, but consistently query
or use the correct one.
Commit: a9ebdbb5ac7de7a028f6060b789196a43aea7580
https://github.com/llvm/llvm-project/commit/a9ebdbb5ac7de7a028f6060b789196a43aea7580
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
R mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[MLIR] Vector: turn the ExtractStridedSlice rewrite pattern from #111541 into a canonicalization (#111614)
This is a reasonable canonicalization because `extract` is more
constrained than `extract_strided_slices`, so there is no loss of
semantics here, just lifting an op to a special-case higher/constrained
op. And the additional `shape_cast` is merely adding leading unit dims
to match the original result type.
Context: discussion on #111541. I wasn't sure how this would turn out,
but in the process of writing this PR, I discovered at least 2 bugs in
the pattern introduced in #111541, which shows the value of shared
canonicalization patterns which are exercised on a high number of
testcases.
---------
Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>
Commit: 390943f25b18a352bb3a72fe1b0908df355f77d9
https://github.com/llvm/llvm-project/commit/390943f25b18a352bb3a72fe1b0908df355f77d9
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/invalid.fir
Log Message:
-----------
[flang] Implement conversion of compatible derived types (#111165)
With some restrictions, BIND(C) derived types can be converted to
compatible BIND(C) derived types.
Semantics already support this, but ConvertOp was missing the
conversion of such types.
Fixes https://github.com/llvm/llvm-project/issues/107783
Commit: 6f8e855150534358ea8c9301960c7c83119b1394
https://github.com/llvm/llvm-project/commit/6f8e855150534358ea8c9301960c7c83119b1394
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Implement __builtin_ai32_addcarryx* (#111671)
Commit: 7d9f9938ff788aa7565c61ce6f391264750515af
https://github.com/llvm/llvm-project/commit/7d9f9938ff788aa7565c61ce6f391264750515af
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
Log Message:
-----------
[Transform] Avoid repeated hash lookups (NFC) (#111620)
Commit: 48e4d67537ba4cc2cec2600628015f4ae167d88c
https://github.com/llvm/llvm-project/commit/48e4d67537ba4cc2cec2600628015f4ae167d88c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Log Message:
-----------
[DSE] Simplify code with MapVector::operator[] (NFC) (#111621)
Commit: bda4fc05cfcc4eb3c9d69e0acaa9533bfe5b3de3
https://github.com/llvm/llvm-project/commit/bda4fc05cfcc4eb3c9d69e0acaa9533bfe5b3de3
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
Log Message:
-----------
[NVPTX] Avoid repeated map lookups (NFC) (#111627)
Commit: 1ad5f315ae1cd44369a72cc8dc44fc9ef0cbe638
https://github.com/llvm/llvm-project/commit/1ad5f315ae1cd44369a72cc8dc44fc9ef0cbe638
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/Parser/cxx2c-pack-indexing.cpp
Log Message:
-----------
[Clang] Avoid a crash when parsing an invalid pseudo-destructor (#111666)
Fixes #111460.
Commit: c911b0a73ca08e7cd2409486aff721f7a6339432
https://github.com/llvm/llvm-project/commit/c911b0a73ca08e7cd2409486aff721f7a6339432
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
Log Message:
-----------
[clang-tidy] Avoid repeated hash lookups (NFC) (#111628)
Commit: 01a0e85ab7183144816bd569b7ab3899663b3a0c
https://github.com/llvm/llvm-project/commit/01a0e85ab7183144816bd569b7ab3899663b3a0c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
Log Message:
-----------
[Conversion] Avoid repeated hash lookups (NFC) (#111637)
Commit: f59b151f094376e135955810f523dcf6b5acde80
https://github.com/llvm/llvm-project/commit/f59b151f094376e135955810f523dcf6b5acde80
Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] port 8e2ccdc4deedd463a20237b4d842b4c51f9fe603
Commit: e85fcb763173590fdcd5cb922b7ca1fc97cf170b
https://github.com/llvm/llvm-project/commit/e85fcb763173590fdcd5cb922b7ca1fc97cf170b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
Log Message:
-----------
AMDGPU: Add instruction flags when lowering ctor/dtor (#111652)
These should be well behaved address computations.
Commit: 665457815f11118f7e755a471f33606c8562a4be
https://github.com/llvm/llvm-project/commit/665457815f11118f7e755a471f33606c8562a4be
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/test/Driver/default-backend-pipelines.f90
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels.
Commit: c4d288d9e21f44bc4a0f26e7655eba851a9b6225
https://github.com/llvm/llvm-project/commit/c4d288d9e21f44bc4a0f26e7655eba851a9b6225
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M flang/lib/Semantics/check-directive-structure.h
M flang/test/Semantics/OpenMP/do05-positivecase.f90
Log Message:
-----------
[flang][OpenMP] Don't check unlabelled `cycle` branching for target loops (#111656)
Properly handles `cycle` branching inside target distribute loops.
Commit: 1731bb79a97537c71f916f1e70a442a6615599d0
https://github.com/llvm/llvm-project/commit/1731bb79a97537c71f916f1e70a442a6615599d0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/test/tools/llvm-reduce/special-globals-missing-should-keep-assert.ll
M llvm/tools/llvm-reduce/deltas/ReduceSpecialGlobals.cpp
Log Message:
-----------
llvm-reduce: Fix not checking shouldKeep in special-globals reduction (#111647)
Commit: e637a5c9fef866158018dcaecc3c385d157460f5
https://github.com/llvm/llvm-project/commit/e637a5c9fef866158018dcaecc3c385d157460f5
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/codegen.cpp
Log Message:
-----------
[clang][bytecode] Only allow lossless ptr-to-int casts (#111669)
Only allow those casts if the bitwidth of the two types match.
Commit: 72a957ba4c8ef059f1572f6d4ee0cba8dc615268
https://github.com/llvm/llvm-project/commit/72a957ba4c8ef059f1572f6d4ee0cba8dc615268
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Cuda.cpp
A clang/test/Driver/cuda-short-ptr.cu
Log Message:
-----------
[Cuda] Handle -fcuda-short-ptr even with -nocudalib (#111682)
When passed -nocudalib/-nogpulib, Cuda's argument handling would bail
out before handling -fcuda-short-ptr, meaning the frontend and backend
data layouts would mismatch.
Commit: c136d3237a3c6230cfe1ab3f0f6790f903c54a27
https://github.com/llvm/llvm-project/commit/c136d3237a3c6230cfe1ab3f0f6790f903c54a27
Author: David Green <david.green at arm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
Log Message:
-----------
[VectorCombine] Do not try to operate on OperandBundles. (#111635)
This bails out if we see an intrinsic with an operand bundle on it, to
make sure we don't process the bundles incorrectly.
Fixes #110382.
Commit: d905a3c51b31775791c15132a1b3613d75871853
https://github.com/llvm/llvm-project/commit/d905a3c51b31775791c15132a1b3613d75871853
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
Log Message:
-----------
[NFC] Format MachineVerifier.cpp to remove extra indentation (#111602)
Many structs in this class have the wrong indentation. To generate this
diff, I touched the first line of each struct and then ran `git
clang-format`. This will make blaming more difficult, but this
autoformatting is difficult to avoid triggering. I think it's best to
push this as one NFC PR.
Commit: 774893dcd929c370bad714a70a7d670bb2d6f649
https://github.com/llvm/llvm-project/commit/774893dcd929c370bad714a70a7d670bb2d6f649
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[mlir][ROCDL] Plumb through AMDGPU memory access metadata (#110916)
The LLVM backend has moved from function-wide attributes for making
assurances about potentially unsafe atomic operations (like
"unsafe-fp-atomics") to metadata on individual atomic operations.
This commit adds support for generating this metadata from MLIR.
---------
Co-authored-by: Quinn Dawkins <quinn.dawkins at gmail.com>
Commit: 18952bdcd6f987620e6396261c2bb444e428e07e
https://github.com/llvm/llvm-project/commit/18952bdcd6f987620e6396261c2bb444e428e07e
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/utils/gn/build/BUILD.gn
M llvm/utils/gn/build/toolchain/BUILD.gn
M llvm/utils/gn/build/toolchain/target_flags.gni
M llvm/utils/gn/secondary/compiler-rt/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/test/test.gni
Log Message:
-----------
[gn build] Fix up win/x86 flags and add stage2_unix_x86 (#111595)
Commit: 2e47b93fd29ad6ef13a4134f3b0be3c42e91180c
https://github.com/llvm/llvm-project/commit/2e47b93fd29ad6ef13a4134f3b0be3c42e91180c
Author: Ard Biesheuvel <ardb at kernel.org>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
A llvm/test/CodeGen/ARM/stack-guard-nomovt.ll
Log Message:
-----------
[ARM] Honour -mno-movt in stack protector handling (#109022)
When -mno-movt is passed to Clang, the ARM codegen correctly avoids
movt/movw pairs to take the address of __stack_chk_guard in the stack
protector code emitted into the function pro- and epilogues. However,
the Thumb2 codegen fails to do so, and happily emits movw/movt pairs
unless it is generating an ELF binary and the symbol might be in a
different DSO. Let's incorporate a check for useMovt() in the logic
here, so movt/movw are never emitted when -mno-movt is specified.
Suggestions welcome for how/where to add a test case for this.
Signed-off-by: Ard Biesheuvel <ardb at kernel.org>
Commit: cf5bbeb533d49fd3f3c174af2239188e2d47b7db
https://github.com/llvm/llvm-project/commit/cf5bbeb533d49fd3f3c174af2239188e2d47b7db
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/BUILD.gn
Log Message:
-----------
[gn build] Remove unix x86 stage2 toolchain
It's breaking the bots, e.g. http://45.33.8.238/linux/149792/step_3.txt
Commit: 1553cb5d3b14a0516c2796c295a3b32d147d13d0
https://github.com/llvm/llvm-project/commit/1553cb5d3b14a0516c2796c295a3b32d147d13d0
Author: George Burgess IV <george.burgess.iv at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Sema/SemaAvailability.cpp
M clang/test/Sema/attr-availability.c
Log Message:
-----------
[Sema] Support negation/parens with __builtin_available (#111439)
At present, `__builtin_available` is really restrictive with its use.
Overall, this seems like a good thing, since the analyses behind it are
not very expensive.
That said, it's very straightforward to support these two cases:
```
if ((__builtin_available(foo, *))) {
// ...
}
```
and
```
if (!__builtin_available(foo, *)) {
// ...
} else {
// ...
}
```
Seems nice to do so.
Commit: 17bc959961aa5792821516b547100316fc886ab4
https://github.com/llvm/llvm-project/commit/17bc959961aa5792821516b547100316fc886ab4
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
M llvm/test/CodeGen/AMDGPU/pr51516.mir
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg-crash.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
M llvm/test/CodeGen/AMDGPU/schedule-relaxed-occupancy.ll
Log Message:
-----------
[AMDGPU] Optionally Use GCNRPTrackers during scheduling (#93090)
This adds the ability to use the GCNRPTrackers during scheduling. These trackers have several advantages over the generic trackers: 1. global live-thru trackers, 2. subregister based RP deltas, and 3. flexible vreg -> PressureSet mappings.
This feature is off-by-default to ease with the roll-out process. In particular, when using the optional trackers, the scheduler will still maintain the generic trackers leading to unnecessary compile time.
Commit: ec450b19004a653f3db3ad50e88fbf6529a9d841
https://github.com/llvm/llvm-project/commit/ec450b19004a653f3db3ad50e88fbf6529a9d841
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
Log Message:
-----------
[mlir][xegpu] Allow out-of-bounds writes (#110811)
Relaxes vector.transfer_write lowering to allow out-of-bound writes.
This aligns lowering with the current hardware specification which does
not update bytes in out-of-bound locations during block stores.
Commit: 18d655fdcce4d17080e6cb2721f93f6db856277e
https://github.com/llvm/llvm-project/commit/18d655fdcce4d17080e6cb2721f93f6db856277e
Author: Amara Emerson <amara at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[SimplifyCFG][NFC] Improve compile time for TryToSimplifyUncondBranchFromEmptyBlock optimization. (#110715)
In some pathological cases this optimization can spend an unreasonable
amount of time populating the set for predecessors of the successor
block. This change sinks some of that initializing to the point where
it's actually necessary so we can take advantage of the existing
early-exits.
rdar://137063034
Commit: 13cd43aa6fa1dc5bfb96119db43b8c549386a86e
https://github.com/llvm/llvm-project/commit/13cd43aa6fa1dc5bfb96119db43b8c549386a86e
Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/amdgpu-openmp-toolchain.c
Log Message:
-----------
[Clang][OpenMP] Do not use feature option during packaging (#111702)
Clang-offload-packager allows packaging of images based on an arbitrary
list of key-value pairs where only triple-key is mandatory.
Using target features as a key during packaging is not correct, as clang
does not allow packaging multiple images in one binary which only differ
in a target feature.
TargetID features (xnack and sramecc) anyways are handled using arch-key
and not as target features.
Commit: 3a08551a0337e999d5d8ca0b0e591d1a2b934865
https://github.com/llvm/llvm-project/commit/3a08551a0337e999d5d8ca0b0e591d1a2b934865
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
Log Message:
-----------
[AMDGPU] Fix expensive check
Change-Id: I0b26d5db6d3da8936ab25ee2b1e9002840b9853e
Commit: 4e33afee5a167d5293edeef15e414c0dbbcf3cef
https://github.com/llvm/llvm-project/commit/4e33afee5a167d5293edeef15e414c0dbbcf3cef
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/include/llvm-libc-macros/math-function-macros.h
M libc/test/include/CMakeLists.txt
R libc/test/include/IsSignalingTest.h
A libc/test/include/iscanonical_test.c
M libc/test/include/issignaling_test.c
R libc/test/include/issignaling_test.cpp
R libc/test/include/issignalingf_test.cpp
R libc/test/include/issignalingl_test.cpp
Log Message:
-----------
[libc][math] Implement `issignaling` and `iscanonical` macro. (#111403)
#109201
Commit: ee0e17a4d8b42278ded1217e415073e8bce88b2a
https://github.com/llvm/llvm-project/commit/ee0e17a4d8b42278ded1217e415073e8bce88b2a
Author: vporpo <vporpodas at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
Log Message:
-----------
[SandboxVec][DAG] Drop RAR and fix dependency scanning loop (#111715)
Commit: 10ada4ae738b9d93174e516ca841e61a8f4fd612
https://github.com/llvm/llvm-project/commit/10ada4ae738b9d93174e516ca841e61a8f4fd612
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
M llvm/lib/SandboxIR/PassManager.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
M llvm/unittests/SandboxIR/PassTest.cpp
Log Message:
-----------
[SandboxVectorizer] Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec. (#111223)
The main change is that the main SandboxVectorizer pass no longer has a
pipeline of function passes. Now it is a wrapper that creates sandbox IR
from functions before calling BottomUpVec.
BottomUpVec now builds its own RegionPassManager from the `sbvec-passes`
flag, using a PassRegistry.def file. For now, these region passes are
not run (BottomUpVec doesn't create Regions yet), and only a null pass
for testing exists.
This commit also changes the ownership model for sandboxir::PassManager:
instead of having a PassRegistry that owns passes, and PassManagers that
contain non-owning pointers to the passes, now PassManager owns (via
unique pointers) the passes it contains.
PassRegistry is now deleted, and the logic to parse and create a pass
pipeline is now in PassManager::setPassPipeline.
Commit: a075e785b8f4e2323ce89b742185386314909f21
https://github.com/llvm/llvm-project/commit/a075e785b8f4e2323ce89b742185386314909f21
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll
Log Message:
-----------
AMDGPU: Fix incorrectly selecting fp8/bf8 conversion intrinsics (#107291)
Trying to codegen these on targets without the instructions should
fail to select. Not sure if all the predicates are correct. We had
a fake one disconnected to a feature which was always true.
Fixes: SWDEV-482274
Commit: dc09f9644144a9598837a3684414603edb175e51
https://github.com/llvm/llvm-project/commit/dc09f9644144a9598837a3684414603edb175e51
Author: Wael Yehia <wyehia at ca.ibm.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M compiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
Log Message:
-----------
[test] remove profile file at the start of profile/instrprof-write-file-atexit-explicitly.c
Commit: 102c384b5792eaa4e1b0095f9794637a23196ea3
https://github.com/llvm/llvm-project/commit/102c384b5792eaa4e1b0095f9794637a23196ea3
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
R llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
M llvm/lib/SandboxIR/PassManager.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
R llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
M llvm/unittests/SandboxIR/PassTest.cpp
Log Message:
-----------
Revert "[SandboxVectorizer] Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec." (#111727)
Reverts llvm/llvm-project#111223
It broke one of the build bots:
LLVM Buildbot has detected a new failure on builder flang-aarch64-libcxx
running on linaro-flang-aarch64-libcxx while building llvm at step 5
"build-unified-tree".
Full details are available at:
https://lab.llvm.org/buildbot/#/builders/89/builds/8127
Commit: 208584d91ae138d752d89436e3df12fa8f2e60a8
https://github.com/llvm/llvm-project/commit/208584d91ae138d752d89436e3df12fa8f2e60a8
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp
Log Message:
-----------
[clang][bytecode] Fix source range of uncalled base dtor (#111683)
Make this emit the same source range as the current interpreter.
Commit: 1bb52e94621d2cba4f34504697cb0ea83805cb98
https://github.com/llvm/llvm-project/commit/1bb52e94621d2cba4f34504697cb0ea83805cb98
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/FrontendAction/CIRGenAction.h
M clang/include/clang/Driver/Options.td
M clang/lib/CIR/CMakeLists.txt
A clang/lib/CIR/CodeGen/CIRGenModule.cpp
A clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenTypeCache.h
A clang/lib/CIR/CodeGen/CIRGenerator.cpp
A clang/lib/CIR/CodeGen/CMakeLists.txt
A clang/lib/CIR/FrontendAction/CIRGenAction.cpp
A clang/lib/CIR/FrontendAction/CMakeLists.txt
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/test/CIR/hello.c
A clang/test/CIR/lit.local.cfg
Log Message:
-----------
[CIR] Build out AST consumer patterns to reach the entry point into CIRGen
Build out the necessary infrastructure for the main entry point into
ClangIR generation -- CIRGenModule. A set of boilerplate classes exist
to facilitate this -- CIRGenerator, CIRGenAction, EmitCIRAction and
CIRGenConsumer. These all mirror the corresponding types from LLVM
generation by Clang's CodeGen.
The main entry point to CIR generation is
`CIRGenModule::buildTopLevelDecl`. It is currently just an empty
function. We've added a test to ensure that the pipeline reaches this
point and doesn't fail, but does nothing else. This will be removed in
one of the subsequent patches that'll add basic `cir.func` emission.
This patch also re-adds `-emit-cir` to the driver. lib/Driver/Driver.cpp
requires that a driver flag exists to facilirate the selection of the
right actions for the driver to create. Without a driver flag you get
the standard behaviors of `-S`, `-c`, etc. If we want to emit CIR IR
and, eventually, bytecode we'll need a driver flag to force this. This
is why `-emit-llvm` is a driver flag. Notably, `-emit-llvm-bc` as a cc1
flag doesn't ever do the right thing. Without a driver flag it is
incorrectly ignored and an executable is emitted. With `-S` a file named
`something.s` is emitted which actually contains bitcode.
Reviewers: AaronBallman, MaskRay, bcardosolopes
Reviewed By: bcardosolopes, AaronBallman
Pull Request: https://github.com/llvm/llvm-project/pull/91007
Commit: 1cfe5b89b70c8170da041e9507fd0801be766669
https://github.com/llvm/llvm-project/commit/1cfe5b89b70c8170da041e9507fd0801be766669
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb] Use SEND_ERROR instead of FATAL_ERROR in test/CMakeLists.txt (#111729)
Use SEND_ERROR (continue processing, but skip generation) instead of
FATAL_ERROR (stop processing and generation). This means that developers
get to see all errors at once, instead of seeing just the first error
and having to reconfigure to discover the next one.
Commit: e82fcda1475b6708b7d314fd7a54e551306d5739
https://github.com/llvm/llvm-project/commit/e82fcda1475b6708b7d314fd7a54e551306d5739
Author: Tyler Nowicki <tyler.nowicki at amd.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
A llvm/include/llvm/Transforms/Coroutines/ABI.h
A llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
A llvm/include/llvm/Transforms/Coroutines/CoroShape.h
M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
A llvm/include/llvm/Transforms/Coroutines/MaterializationUtils.h
A llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
A llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
R llvm/lib/Transforms/Coroutines/ABI.h
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
R llvm/lib/Transforms/Coroutines/CoroInstr.h
M llvm/lib/Transforms/Coroutines/CoroInternal.h
R llvm/lib/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
R llvm/lib/Transforms/Coroutines/MaterializationUtils.h
M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
R llvm/lib/Transforms/Coroutines/SpillUtils.h
M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
R llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.h
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
Log Message:
-----------
[Coroutines] Move util headers to include/llvm (#111599)
Plugin libraries that use coroutines can do so right now, however, to
provide their own ABI they need to be able to use various headers, some
of which such are required (such as the ABI header). This change exposes
the coro utils and required headers by moving them to
include/llvm/Transforms/Coroutines. My experience with our out-of-tree
plugin ABI has been that at least these headers are needed. The headers
moved are:
* ABI.h (ABI object)
* CoroInstr.h (helpers)
* Coroshape.h (Shape object)
* MaterializationUtils.h (helpers)
* SpillingUtils.h (helpers)
* SuspendCrossingInfo.h (analysis)
This has no code changes other than those required to move the headers
and these are:
* include guard name changes
* include path changes
* minor clang-format induced changes
* removal of LLVM_LIBRARY_VISIBILITY
Commit: 9200adee266b5bfaa468c5ce2715ed9794e1a7a8
https://github.com/llvm/llvm-project/commit/9200adee266b5bfaa468c5ce2715ed9794e1a7a8
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M libcxx/include/module.modulemap
Log Message:
-----------
[libc++] Narrow the exports for common_type (#111681)
Based on a comment in #99473, it seems like `export *` may be overkill.
Commit: c0c4bd5400afea9d5ccd50a28677d609b7354480
https://github.com/llvm/llvm-project/commit/c0c4bd5400afea9d5ccd50a28677d609b7354480
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M .ci/generate-buildkite-pipeline-premerge
A bolt/include/bolt/Passes/ContinuityStats.h
M bolt/lib/Passes/ADRRelaxationPass.cpp
M bolt/lib/Passes/CMakeLists.txt
A bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
A bolt/test/AArch64/adr-relaxation.s
A bolt/test/X86/cfg-discontinuity-reporting.test
M clang-tools-extra/clang-apply-replacements/CMakeLists.txt
M clang-tools-extra/clang-change-namespace/CMakeLists.txt
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/plugin/CMakeLists.txt
M clang-tools-extra/clang-move/CMakeLists.txt
M clang-tools-extra/clang-query/CMakeLists.txt
M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
M clang-tools-extra/clang-tidy/altera/CMakeLists.txt
M clang-tools-extra/clang-tidy/android/CMakeLists.txt
M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
M clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
M clang-tools-extra/clang-tidy/google/CMakeLists.txt
M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
M clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
M clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
M clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/FindSymbols.cpp
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/remote/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/unimplemented/CMakeLists.txt
M clang-tools-extra/clangd/support/CMakeLists.txt
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/xpc/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/include-cleaner/lib/CMakeLists.txt
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
R clang/CodeOwners.rst
A clang/Maintainers.rst
M clang/cmake/caches/Android.cmake
M clang/docs/AddressSanitizer.rst
M clang/docs/CMakeLists.txt
M clang/docs/ClangFormatStyleOptions.rst
R clang/docs/CodeOwners.rst
M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
M clang/docs/LeakSanitizer.rst
A clang/docs/Maintainers.rst
M clang/docs/MemorySanitizer.rst
M clang/docs/Multilib.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/ThreadSanitizer.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/index.rst
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/PlistSupport.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/riscv_vector.td
A clang/include/clang/CIR/.clang-tidy
A clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/FrontendAction/CIRGenAction.h
A clang/include/clang/CIRFrontendAction/.clang-tidy
M clang/include/clang/Driver/Multilib.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/CXXInheritance.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/TargetID.cpp
A clang/lib/CIR/.clang-tidy
M clang/lib/CIR/CMakeLists.txt
A clang/lib/CIR/CodeGen/CIRGenModule.cpp
A clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenTypeCache.h
A clang/lib/CIR/CodeGen/CIRGenerator.cpp
A clang/lib/CIR/CodeGen/CMakeLists.txt
A clang/lib/CIR/FrontendAction/CIRGenAction.cpp
A clang/lib/CIR/FrontendAction/CMakeLists.txt
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Multilib.cpp
M clang/lib/Driver/MultilibBuilder.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/cpuid.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/pmmintrin.h
M clang/lib/Headers/popcntintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaFunctionEffects.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/codegen.cpp
A clang/test/AST/solaris-tm.cpp
M clang/test/Analysis/builtin_overflow.c
M clang/test/Analysis/range_casts.c
A clang/test/CIR/hello.c
A clang/test/CIR/lit.local.cfg
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
M clang/test/CXX/temp/temp.param/p12.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/CodeGen/RISCV/riscv-atomics.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c
M clang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/f16c-builtins-constrained.c
M clang/test/CodeGen/X86/f16c-builtins.c
M clang/test/CodeGen/X86/fma-builtins-constrained.c
M clang/test/CodeGen/X86/fma-builtins.c
M clang/test/CodeGen/X86/fma4-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/sse-builtins.c
M clang/test/CodeGen/X86/sse2-builtins.c
M clang/test/CodeGen/X86/sse3-builtins.c
M clang/test/CodeGen/aarch64-fmv-dependencies.c
M clang/test/CodeGen/aarch64-mixed-target-attributes.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
M clang/test/CodeGen/atomics-sema-alignment.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
A clang/test/CodeGen/attr-target-version-riscv-invalid.c
A clang/test/CodeGen/attr-target-version-riscv.c
M clang/test/CodeGen/attr-target-version.c
R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenCXX/fmv-namespace.cpp
A clang/test/CodeGenHLSL/builtins/radians.hlsl
A clang/test/Driver/Inputs/multilib/empty.yaml
M clang/test/Driver/aarch64-multilib-rcpc3.c
M clang/test/Driver/amdgpu-openmp-toolchain.c
M clang/test/Driver/baremetal-multilib-custom-error.yaml
M clang/test/Driver/baremetal-multilib-exclusive-group.yaml
M clang/test/Driver/baremetal-multilib-group-error.yaml
M clang/test/Driver/baremetal-multilib-layered.yaml
M clang/test/Driver/baremetal-multilib.yaml
A clang/test/Driver/cuda-short-ptr.cu
M clang/test/Driver/print-multi-selection-flags.c
A clang/test/Frontend/highlight-text.c
M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp
M clang/test/Modules/cxx-templates.cpp
M clang/test/Modules/embed-files-compressed.cpp
A clang/test/Modules/gh110401.cppm
M clang/test/OpenMP/amdgcn-attributes.cpp
M clang/test/OpenMP/declare_variant_device_isa_codegen_1.c
M clang/test/OpenMP/interchange_ast_print.cpp
M clang/test/OpenMP/interchange_codegen.cpp
M clang/test/OpenMP/interchange_messages.cpp
M clang/test/Parser/cxx2c-pack-indexing.cpp
M clang/test/Preprocessor/feature_tests.cpp
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
M clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
M clang/test/Sema/asm.c
M clang/test/Sema/attr-availability.c
M clang/test/Sema/attr-nonblocking-constraints.cpp
M clang/test/Sema/attr-target-clones-aarch64.c
A clang/test/Sema/caret-diags-register-variable.cpp
R clang/test/SemaCXX/PR84020.cpp
A clang/test/SemaCXX/attr-target-version-riscv.cpp
M clang/test/SemaCXX/attr-target-version.cpp
M clang/test/SemaCXX/make_integer_seq.cpp
M clang/test/SemaCXX/pragma-pack-packed-2.cpp
M clang/test/SemaCXX/warn-assignment-condition.cpp
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
A clang/test/SemaTemplate/GH55509.cpp
M clang/test/SemaTemplate/cwg2398.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
M clang/test/SemaTemplate/temp_arg_nontype.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/test/Templight/templight-empty-entries-fix.cpp
M clang/test/Templight/templight-prior-template-arg.cpp
M clang/tools/libclang/CIndex.cpp
M clang/unittests/Driver/MultilibTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestProto.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/www/cxx_dr_status.html
M compiler-rt/include/sanitizer/ubsan_interface.h
M compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
M compiler-rt/lib/builtins/cpu_model/x86.c
M compiler-rt/lib/lsan/lsan_common.cpp
M compiler-rt/lib/lsan/lsan_flags.inc
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/lib/profile/InstrProfilingPort.h
M compiler-rt/lib/profile/InstrProfilingUtil.h
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan_assertions.h
M compiler-rt/lib/rtsan/rtsan_context.h
M compiler-rt/lib/rtsan/tests/rtsan_test_assertions.cpp
M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/memtag.h
M compiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
M compiler-rt/test/rtsan/blocking_call.cpp
M compiler-rt/test/rtsan/exit_stats.cpp
A compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/md5.cpp
R compiler-rt/test/sanitizer_common/TestCases/NetBSD/sha2.cpp
M flang/include/flang/Common/Fortran-features.h
M flang/include/flang/Optimizer/CodeGen/CodeGen.h
M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
M flang/include/flang/Optimizer/Transforms/CufOpConversion.h
M flang/include/flang/Runtime/CUDA/common.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-directive-structure.h
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/tools.cpp
M flang/test/Driver/default-backend-pipelines.f90
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/invalid.fir
R flang/test/Integration/OpenMP/atomic-update-complex.f90
M flang/test/Lower/Intrinsics/log.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
A flang/test/Semantics/OpenMP/name-conflict.f90
A flang/test/Semantics/call42.f90
M flang/test/Semantics/io14.f90
A flang/test/Semantics/named-construct-declaration-conflict.f90
M flang/test/Semantics/separate-mp02.f90
M flang/test/Transforms/debug-fn-info.fir
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/docs/gpu/using.rst
M libc/include/llvm-libc-macros/linux/error-number-macros.h
M libc/include/llvm-libc-macros/math-function-macros.h
M libc/newhdrgen/yaml/gpu/rpc.yaml
M libc/spec/gpu_ext.td
M libc/src/__support/StringUtil/tables/CMakeLists.txt
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
M libc/src/__support/StringUtil/tables/posix_errors.h
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/gpu/rpc_host_call.cpp
M libc/src/gpu/rpc_host_call.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/acosf.cpp
M libc/src/math/generic/asinf.cpp
M libc/src/math/generic/cosf.cpp
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp10f_impl.h
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/exp2f_impl.h
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/expm1f.cpp
M libc/src/math/generic/powf.cpp
M libc/src/math/generic/sincosf.cpp
M libc/src/math/generic/sinf.cpp
M libc/src/math/generic/tanf.cpp
M libc/src/pthread/CMakeLists.txt
M libc/src/pthread/pthread_atfork.cpp
M libc/src/pthread/pthread_attr_setdetachstate.cpp
M libc/src/pthread/pthread_attr_setguardsize.cpp
M libc/src/pthread/pthread_attr_setstack.cpp
M libc/src/pthread/pthread_attr_setstacksize.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/pthread/pthread_condattr_setpshared.cpp
M libc/src/pthread/pthread_create.cpp
M libc/src/pthread/pthread_key_create.cpp
M libc/src/pthread/pthread_key_delete.cpp
M libc/src/pthread/pthread_mutex_init.cpp
M libc/src/pthread/pthread_mutexattr_destroy.cpp
M libc/src/pthread/pthread_mutexattr_getpshared.cpp
M libc/src/pthread/pthread_mutexattr_getrobust.cpp
M libc/src/pthread/pthread_mutexattr_gettype.cpp
M libc/src/pthread/pthread_mutexattr_setpshared.cpp
M libc/src/pthread/pthread_mutexattr_setrobust.cpp
M libc/src/pthread/pthread_mutexattr_settype.cpp
M libc/src/pthread/pthread_rwlock_destroy.cpp
M libc/src/pthread/pthread_rwlock_init.cpp
M libc/src/pthread/pthread_rwlock_rdlock.cpp
M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
M libc/src/pthread/pthread_rwlock_timedwrlock.cpp
M libc/src/pthread/pthread_rwlock_tryrdlock.cpp
M libc/src/pthread/pthread_rwlock_trywrlock.cpp
M libc/src/pthread/pthread_rwlock_unlock.cpp
M libc/src/pthread/pthread_rwlock_wrlock.cpp
M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
M libc/src/pthread/pthread_setspecific.cpp
M libc/src/spawn/CMakeLists.txt
M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
M libc/src/stdlib/qsort_data.h
M libc/src/stdlib/quick_sort.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcpy.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/generic/aligned_access.h
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memcpy.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/x86_64/inline_memcmp.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/string/memory_utils/x86_64/inline_memmove.h
M libc/src/threads/CMakeLists.txt
M libc/src/threads/thrd_create.cpp
M libc/test/UnitTest/PrintfMatcher.h
M libc/test/UnitTest/ScanfMatcher.h
M libc/test/include/CMakeLists.txt
R libc/test/include/IsSignalingTest.h
A libc/test/include/iscanonical_test.c
M libc/test/include/issignaling_test.c
R libc/test/include/issignaling_test.cpp
R libc/test/include/issignalingf_test.cpp
R libc/test/include/issignalingl_test.cpp
M libc/test/integration/src/pthread/CMakeLists.txt
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/spawn/posix_spawn_test_binary.cpp
M libc/test/integration/src/unistd/CMakeLists.txt
M libc/test/integration/src/unistd/fork_test.cpp
M libc/test/integration/src/unistd/stack_smashing_test.cpp
M libc/test/integration/startup/linux/CMakeLists.txt
M libc/test/integration/startup/linux/tls_test.cpp
M libc/test/src/__support/File/CMakeLists.txt
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/acosf_test.cpp
M libc/test/src/math/acoshf_test.cpp
M libc/test/src/math/asinf_test.cpp
M libc/test/src/math/asinhf_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/cosf_test.cpp
M libc/test/src/math/coshf_test.cpp
M libc/test/src/math/erff_test.cpp
M libc/test/src/math/exp10_test.cpp
M libc/test/src/math/exp2_test.cpp
M libc/test/src/math/exp_test.cpp
M libc/test/src/math/log10_test.cpp
M libc/test/src/math/log10f_test.cpp
M libc/test/src/math/log1p_test.cpp
M libc/test/src/math/log1pf_test.cpp
M libc/test/src/math/log2_test.cpp
M libc/test/src/math/log_test.cpp
M libc/test/src/math/powf_test.cpp
M libc/test/src/math/sincosf_test.cpp
M libc/test/src/math/sinf_test.cpp
M libc/test/src/math/sinhf_test.cpp
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/acosf_test.cpp
M libc/test/src/math/smoke/acoshf_test.cpp
M libc/test/src/math/smoke/asinf_test.cpp
M libc/test/src/math/smoke/asinhf_test.cpp
M libc/test/src/math/smoke/atanf_test.cpp
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/math/smoke/cosf_test.cpp
M libc/test/src/math/smoke/coshf_test.cpp
M libc/test/src/math/smoke/erff_test.cpp
M libc/test/src/math/smoke/exp10_test.cpp
M libc/test/src/math/smoke/exp2_test.cpp
M libc/test/src/math/smoke/exp_test.cpp
M libc/test/src/math/smoke/expm1_test.cpp
M libc/test/src/math/smoke/log10_test.cpp
M libc/test/src/math/smoke/log10f_test.cpp
M libc/test/src/math/smoke/log1p_test.cpp
M libc/test/src/math/smoke/log1pf_test.cpp
M libc/test/src/math/smoke/log2_test.cpp
M libc/test/src/math/smoke/log_test.cpp
M libc/test/src/math/smoke/powf_test.cpp
M libc/test/src/math/smoke/sincosf_test.cpp
M libc/test/src/math/smoke/sinf_test.cpp
M libc/test/src/math/smoke/sinhf_test.cpp
M libc/test/src/math/smoke/tanf_test.cpp
M libc/test/src/math/smoke/tanhf_test.cpp
M libc/test/src/math/tanf_test.cpp
M libc/test/src/math/tanhf_test.cpp
M libc/test/src/pthread/CMakeLists.txt
M libc/test/src/pthread/pthread_attr_test.cpp
M libc/test/src/pthread/pthread_mutexattr_test.cpp
M libc/test/src/signal/CMakeLists.txt
M libc/test/src/signal/sigaddset_test.cpp
M libc/test/src/signal/sigdelset_test.cpp
M libc/test/src/signal/sigfillset_test.cpp
M libc/test/src/spawn/CMakeLists.txt
M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
M libc/test/src/sys/prctl/linux/CMakeLists.txt
M libc/test/src/sys/prctl/linux/prctl_test.cpp
M libc/test/src/sys/resource/CMakeLists.txt
M libc/test/src/sys/select/CMakeLists.txt
M libc/test/src/sys/select/select_failure_test.cpp
M libc/test/src/sys/sendfile/CMakeLists.txt
M libc/test/src/sys/utsname/CMakeLists.txt
M libc/test/src/sys/utsname/uname_test.cpp
M libc/test/src/sys/wait/CMakeLists.txt
M libc/test/src/sys/wait/wait4_test.cpp
M libc/test/src/sys/wait/waitpid_test.cpp
M libc/test/src/unistd/CMakeLists.txt
M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
M libc/utils/gpu/server/rpc_server.cpp
M libclc/CMakeLists.txt
R libclc/README.TXT
A libclc/README.md
M libcxx/cmake/Modules/HandleLibCXXABI.cmake
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/docs/UserDocumentation.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__format/formatter_string.h
M libcxx/include/__system_error/errc.h
A libcxx/include/__type_traits/is_implicit_lifetime.h
M libcxx/include/module.modulemap
M libcxx/include/type_traits
M libcxx/include/version
M libcxx/modules/std/type_traits.inc
M libcxx/src/CMakeLists.txt
M libcxx/test/benchmarks/CMakeLists.txt
M libcxx/test/benchmarks/format.bench.cpp
A libcxx/test/benchmarks/format/write_double_comparison.bench.cpp
A libcxx/test/benchmarks/format/write_int_comparison.bench.cpp
A libcxx/test/benchmarks/format/write_string_comparison.bench.cpp
M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
M libcxx/test/libcxx/type_traits/is_specialization.verify.cpp
M libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
M libcxx/utils/ci/run-buildbot
M libcxx/utils/generate_feature_test_macro_components.py
M libcxxabi/src/CMakeLists.txt
M lld/COFF/LTO.cpp
M lld/ELF/AArch64ErrataFix.cpp
M lld/ELF/AArch64ErrataFix.h
M lld/ELF/ARMErrataFix.cpp
M lld/ELF/ARMErrataFix.h
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Arch/AMDGPU.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/AVR.cpp
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Arch/LoongArch.cpp
M lld/ELF/Arch/MSP430.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/MipsArchTree.cpp
M lld/ELF/Arch/PPC.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Arch/SPARCV9.cpp
M lld/ELF/Arch/SystemZ.cpp
M lld/ELF/Arch/X86.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Driver.h
M lld/ELF/DriverUtils.cpp
M lld/ELF/EhFrame.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/LTO.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/LinkerScript.h
M lld/ELF/OutputSections.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/ScriptParser.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Symbols.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Target.cpp
M lld/ELF/Target.h
M lld/ELF/Thunks.cpp
M lld/ELF/Writer.cpp
M lld/ELF/Writer.h
M lld/MachO/LTO.cpp
M lld/MachO/SyntheticSections.cpp
M lld/test/COFF/thinlto-emit-imports.ll
M lld/test/ELF/lto/basic-block-sections.ll
M lld/test/ELF/lto/thinlto-cant-write-index.ll
M lld/test/ELF/lto/thinlto-emit-imports.ll
A lld/test/ELF/riscv-pcrel-hilo-error-sections.s
M lld/test/ELF/riscv-pcrel-hilo-error.s
A lld/test/MachO/icf-safe-thunks-dwarf.ll
M lld/test/MachO/thinlto-emit-imports.ll
M lldb/docs/resources/test.rst
M lldb/docs/use/tutorial.rst
M lldb/include/lldb/API/SBDefines.h
M lldb/include/lldb/Symbol/SymbolContext.h
M lldb/include/lldb/Utility/Status.h
M lldb/packages/Python/lldbsuite/test/builders/builder.py
M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
M lldb/source/API/SBThread.cpp
M lldb/source/Commands/CommandObjectSession.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Expression/IRExecutionUnit.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/InterpreterProperties.td
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/test/API/commands/session/save/TestSessionSave.py
M lldb/test/API/functionalities/archives/TestBSDArchives.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/Makefile
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/API/macosx/duplicate-archive-members/TestDuplicateMembers.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
M lldb/test/CMakeLists.txt
M lldb/test/Shell/Expr/TestIRMemoryMap.test
M lldb/test/Shell/Settings/TestEchoCommands.test
A lldb/test/Shell/Settings/TestEchoCommandsQuiet.test
M lldb/test/Shell/Target/target-label.test
M lldb/test/Shell/helper/toolchain.py
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/lldb-dap.cpp
M lldb/tools/lldb-dap/package.json
M llvm/CMakeLists.txt
M llvm/Maintainers.md
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CMake.rst
M llvm/docs/GettingStarted.rst
M llvm/docs/GwpAsan.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/SPIRVUsage.rst
M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl03.rst
M llvm/include/llvm/ADT/APFixedPoint.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/AsmParser/LLLexer.h
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/include/llvm/Config/abi-breaking.h.cmake
M llvm/include/llvm/Config/config.h.cmake
M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/IR/Argument.h
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/Function.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/SymbolTableListTraits.h
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/Utils.h
M llvm/include/llvm/Support/Threading.h
M llvm/include/llvm/Support/TimeProfiler.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/TargetParser/AArch64CPUFeatures.inc
A llvm/include/llvm/Transforms/Coroutines/ABI.h
A llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
A llvm/include/llvm/Transforms/Coroutines/CoroShape.h
M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
A llvm/include/llvm/Transforms/Coroutines/MaterializationUtils.h
A llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
A llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
M llvm/include/llvm/Transforms/IPO/FunctionImport.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/MemoryProfileInfo.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
R llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/MC/CMakeLists.txt
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/lib/Support/APFixedPoint.cpp
M llvm/lib/Support/APFloat.cpp
M llvm/lib/Support/APInt.cpp
M llvm/lib/Support/TimeProfiler.cpp
M llvm/lib/TableGen/Error.cpp
M llvm/lib/Target/AArch64/AArch64FMV.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.h
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZk.td
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/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/TargetParser/Host.cpp
R llvm/lib/Transforms/Coroutines/ABI.h
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
R llvm/lib/Transforms/Coroutines/CoroInstr.h
M llvm/lib/Transforms/Coroutines/CoroInternal.h
R llvm/lib/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
R llvm/lib/Transforms/Coroutines/MaterializationUtils.h
M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
R llvm/lib/Transforms/Coroutines/SpillUtils.h
M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
R llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.h
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
M llvm/lib/Transforms/Scalar/Scalarizer.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Interval.cpp
A llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
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
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll
M llvm/test/Assembler/allockind-missing.ll
M llvm/test/Assembler/invalid-inttype.ll
M llvm/test/Assembler/invalid-landingpad.ll
M llvm/test/Assembler/invalid-name.ll
M llvm/test/Assembler/invalid-name2.ll
A llvm/test/Assembler/noalias-addrspace-md.ll
M llvm/test/Bitcode/amdgcn-atomic.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-mul-to-shl.mir
M llvm/test/CodeGen/AArch64/concat-vector.ll
M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
M llvm/test/CodeGen/AArch64/load.ll
A llvm/test/CodeGen/AArch64/selectopt-const.ll
M llvm/test/CodeGen/AArch64/store.ll
A llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
A llvm/test/CodeGen/AArch64/sve-bf16-rounding.ll
A llvm/test/CodeGen/AArch64/sve2-bf16-converts.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
M llvm/test/CodeGen/AMDGPU/bb-prolog-spill-during-regalloc.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
A llvm/test/CodeGen/AMDGPU/commute-op-sel.mir
M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics-f64.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics-f64.ll
R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
A llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
M llvm/test/CodeGen/AMDGPU/pr51516.mir
A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/rem_i128.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg-crash.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
M llvm/test/CodeGen/AMDGPU/schedule-relaxed-occupancy.ll
A llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
A llvm/test/CodeGen/AMDGPU/sdwa-cse.mir
M llvm/test/CodeGen/AMDGPU/trap-abis.ll
M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
A llvm/test/CodeGen/ARM/stack-guard-nomovt.ll
A llvm/test/CodeGen/DirectX/radians.ll
M llvm/test/CodeGen/Generic/llc-start-stop.ll
M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll
M llvm/test/CodeGen/NVPTX/vector-returns.ll
M llvm/test/CodeGen/PowerPC/vec-min-max.ll
M llvm/test/CodeGen/RISCV/rv64zba.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll
A llvm/test/CodeGen/SPIRV/HlslBufferLoad.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll
M llvm/test/CodeGen/SystemZ/inline-thresh-adjust.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/avx512vl-logic.ll
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/extract-lowbits.ll
M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
M llvm/test/CodeGen/X86/memcpy.ll
M llvm/test/CodeGen/X86/memset-minsize.ll
M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
M llvm/test/CodeGen/X86/memset.ll
M llvm/test/CodeGen/X86/mul-constant-i64.ll
M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll
M llvm/test/CodeGen/X86/vec_smulo.ll
M llvm/test/CodeGen/X86/vec_umulo.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.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-interleaved-store-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-lzcnt-512.ll
M llvm/test/CodeGen/X86/vector-mul.ll
M llvm/test/CodeGen/X86/vector-tzcnt-512.ll
M llvm/test/CodeGen/X86/vselect-pcmp.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/DebugInfo/NVPTX/debug-info.ll
M llvm/test/DebugInfo/Sparc/pointer-add-unknown-offset-debug-info.ll
A llvm/test/MC/ARM/macho-relocs-with-addend-invalid.s
M llvm/test/MC/ARM/macho-relocs-with-addend.s
M llvm/test/MC/RISCV/insn-invalid.s
M llvm/test/MC/RISCV/insn.s
M llvm/test/MC/RISCV/insn_c-invalid.s
M llvm/test/MC/WebAssembly/annotations.s
R llvm/test/MC/WebAssembly/eh-assembly-legacy.s
M llvm/test/MC/WebAssembly/eh-assembly.s
M llvm/test/MC/WebAssembly/type-checker-errors.s
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
M llvm/test/TableGen/assert.td
M llvm/test/Transforms/GVN/edge.ll
R llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat-fadd-fmin-fmax-intrinsics.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
A llvm/test/Transforms/InferAddressSpaces/fake-use.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
A llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
M llvm/test/Transforms/InstCombine/icmp-signmask.ll
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
A llvm/test/Transforms/InstCombine/log-to-intrinsic.ll
M llvm/test/Transforms/InstSimplify/bitcast-vector-fold.ll
A llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.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/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
A llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
A llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
A llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.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/first-order-recurrence-chains-vplan.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleavevectorization.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/scatter-vectorize-reversed.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
A llvm/test/Verifier/noalias-addrspace.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values6.test
A llvm/test/tools/llvm-dis/multiple-files-equivalent.ll
M llvm/test/tools/llvm-profdata/sample-split-layout.test
A llvm/test/tools/llvm-reduce/special-globals-missing-should-keep-assert.ll
M llvm/tools/gold/gold-plugin.cpp
M llvm/tools/llvm-dis/llvm-dis.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/tools/llvm-reduce/deltas/ReduceSpecialGlobals.cpp
M llvm/tools/llvm-remarkutil/RemarkCounter.cpp
M llvm/unittests/ADT/APFixedPointTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/SandboxIR/UtilsTest.cpp
M llvm/unittests/Support/TimeProfilerTest.cpp
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
M llvm/unittests/Transforms/IPO/FunctionSpecializationTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp
A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
M llvm/utils/TableGen/IntrinsicEmitter.cpp
M llvm/utils/UpdateTestChecks/common.py
M llvm/utils/gn/build/BUILD.gn
M llvm/utils/gn/build/toolchain/BUILD.gn
M llvm/utils/gn/build/toolchain/target_flags.gni
M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/test/test.gni
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
M llvm/utils/lit/lit/TestingConfig.py
M mlir/docs/Bufferization.md
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.h
M mlir/include/mlir/Conversion/ArithToLLVM/ArithToLLVM.h
M mlir/include/mlir/Conversion/ArithToSPIRV/ArithToSPIRV.h
M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
M mlir/include/mlir/Conversion/ComplexToSPIRV/ComplexToSPIRV.h
M mlir/include/mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h
M mlir/include/mlir/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.h
M mlir/include/mlir/Conversion/FuncToLLVM/ConvertFuncToLLVM.h
M mlir/include/mlir/Conversion/FuncToSPIRV/FuncToSPIRV.h
M mlir/include/mlir/Conversion/GPUToLLVMSPV/GPUToLLVMSPVPass.h
M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
M mlir/include/mlir/Conversion/GPUToROCDL/GPUToROCDLPass.h
M mlir/include/mlir/Conversion/GPUToSPIRV/GPUToSPIRV.h
M mlir/include/mlir/Conversion/IndexToLLVM/IndexToLLVM.h
M mlir/include/mlir/Conversion/IndexToSPIRV/IndexToSPIRV.h
M mlir/include/mlir/Conversion/MathToLLVM/MathToLLVM.h
M mlir/include/mlir/Conversion/MathToROCDL/MathToROCDL.h
M mlir/include/mlir/Conversion/MathToSPIRV/MathToSPIRV.h
M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
M mlir/include/mlir/Conversion/MemRefToLLVM/MemRefToLLVM.h
M mlir/include/mlir/Conversion/MemRefToSPIRV/MemRefToSPIRV.h
M mlir/include/mlir/Conversion/NVGPUToNVVM/NVGPUToNVVM.h
M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
M mlir/include/mlir/Conversion/SCFToSPIRV/SCFToSPIRV.h
M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h
M mlir/include/mlir/Conversion/TensorToSPIRV/TensorToSPIRV.h
M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
M mlir/include/mlir/Conversion/TosaToTensor/TosaToTensor.h
M mlir/include/mlir/Conversion/UBToLLVM/UBToLLVM.h
M mlir/include/mlir/Conversion/UBToSPIRV/UBToSPIRV.h
M mlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
M mlir/include/mlir/Conversion/VectorToSPIRV/VectorToSPIRV.h
M mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
M mlir/include/mlir/Dialect/Func/Transforms/DecomposeCallGraphTypes.h
M mlir/include/mlir/Dialect/Func/Transforms/FuncConversions.h
M mlir/include/mlir/Dialect/Func/Transforms/OneToNFuncConversions.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Polynomial/IR/PolynomialAttributes.td
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/include/mlir/Dialect/X86Vector/Transforms.h
M mlir/include/mlir/Transforms/OneToNTypeConversion.h
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.cpp
M mlir/lib/Conversion/ConvertToLLVM/CMakeLists.txt
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Conversion/FuncToSPIRV/FuncToSPIRV.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
M mlir/lib/Conversion/IndexToLLVM/IndexToLLVM.cpp
M mlir/lib/Conversion/IndexToSPIRV/IndexToSPIRV.cpp
M mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/TensorToSPIRV/TensorToSPIRV.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Conversion/UBToLLVM/UBToLLVM.cpp
M mlir/lib/Conversion/UBToSPIRV/UBToSPIRV.cpp
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
M mlir/lib/Dialect/Affine/Transforms/PipelineDataTransfer.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/Arith/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Arith/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
M mlir/lib/Dialect/Func/Transforms/OneToNFuncConversions.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Math/Transforms/ExtendToSupportedTypes.cpp
M mlir/lib/Dialect/MemRef/Transforms/CMakeLists.txt
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Polynomial/IR/PolynomialAttributes.cpp
M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
M mlir/lib/Dialect/SCF/Transforms/OneToNTypeConversion.cpp
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseStorageSpecifierToLLVM.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Tosa/CMakeLists.txt
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
M mlir/lib/Target/SPIRV/CMakeLists.txt
M mlir/lib/Target/SPIRV/Serialization/CMakeLists.txt
M mlir/lib/Transforms/CMakeLists.txt
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
M mlir/lib/Transforms/Utils/RegionUtils.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Conversion/AMDGPUToROCDL/mfma.mlir
M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/Linalg/transform-op-fuse.mlir
M mlir/test/Dialect/MemRef/normalize-memrefs.mlir
M mlir/test/Dialect/Polynomial/attributes.mlir
M mlir/test/Dialect/Quant/parse-uniform-invalid.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
M mlir/test/Transforms/loop-invariant-code-motion.mlir
M mlir/test/lib/Conversion/OneToNTypeConversion/TestOneToNTypeConversionPass.cpp
M offload/test/libc/host_call.c
M openmp/cmake/OpenMPTesting.cmake
M openmp/runtime/src/CMakeLists.txt
M openmp/tools/archer/tests/CMakeLists.txt
M openmp/tools/archer/tests/lit.site.cfg.in
M utils/bazel/llvm-project-overlay/libc/libc_configure_options.bzl
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm_configs/abi-breaking.h.cmake
M utils/bazel/llvm_configs/config.h.cmake
Log Message:
-----------
Rebase
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/57b000814528...c0c4bd5400af
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