[all-commits] [llvm/llvm-project] e7698a: Re-apply "[ORC][JITLink] Treat common symbols as w...
darkbuck via All-commits
all-commits at lists.llvm.org
Wed Jul 24 18:11:08 PDT 2024
Branch: refs/heads/users/darkbuck/spr/simplifycfg-skip-threading-if-the-target-may-have-divergent-branches
Home: https://github.com/llvm/llvm-project
Commit: e7698a13e319a9919af04d3d693a6f6ea7168a44
https://github.com/llvm/llvm-project/commit/e7698a13e319a9919af04d3d693a6f6ea7168a44
Author: Lang Hames <lhames at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s
Log Message:
-----------
Re-apply "[ORC][JITLink] Treat common symbols as weak definitions." with fixes.
This reapplies 785d376d123, which was reverted in c49837f5f68 due to bot
failures. The fix was to relax some asserts to allow common symbols to be
resolved with either common or weak flags, rather than requiring one or the
other.
Commit: 63e179929e2c31426717f841e786f1a035bed934
https://github.com/llvm/llvm-project/commit/63e179929e2c31426717f841e786f1a035bed934
Author: Lang Hames <lhames at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_common_x_and_addr_getter.s
A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_strong_x_and_addr_getter.s
A llvm/test/ExecutionEngine/JITLink/AArch64/MachO_common_symbol_x_multiple_defs.s
Log Message:
-----------
[ORC] Re-add test files that were accidentally left out of e7698a13e31.
Commit: 455990d18fe488ff6c8e3b161434e35d412b43a2
https://github.com/llvm/llvm-project/commit/455990d18fe488ff6c8e3b161434e35d412b43a2
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
Reland "SelectionDAG: Avoid using MachineFunction::getMMI" (#99779)
Reverts llvm/llvm-project#99777
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
Commit: ddb75ca6062c9312896647c206f8b96574bef11d
https://github.com/llvm/llvm-project/commit/ddb75ca6062c9312896647c206f8b96574bef11d
Author: Chaitanya <Krishna.Sankisa at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
A llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.cpp
A llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.h
M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
Log Message:
-----------
[AMDGPU] Utilities to asan instrument memory instructions. (#98863)
This change adds the utilities required to asan instrument memory
instructions. In "amdgpu-sw-lower-lds" pass #87265, during lowering from
LDS to global memory, new instructions in global memory would be created
which need to be asan instrumented.
Commit: ef1c70d26b7e84a6f47c0c6a868b769935b2b008
https://github.com/llvm/llvm-project/commit/ef1c70d26b7e84a6f47c0c6a868b769935b2b008
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp
Log Message:
-----------
[compiler-rt] Implement `DumpAllRegisters` for arm-linux and aarch64-linux (#99613)
Examples of the output:
ARM:
```
# ./a.out
AddressSanitizer:DEADLYSIGNAL
=================================================================
==122==ERROR: AddressSanitizer: SEGV on unknown address 0x0000007a (pc 0x76e13ac0 bp 0x7eb7fd00 sp 0x7eb7fcc8 T0)
==122==The signal is caused by a READ memory access.
==122==Hint: address points to the zero page.
#0 0x76e13ac0 (/lib/libc.so.6+0x7cac0)
#1 0x76dce680 in gsignal (/lib/libc.so.6+0x37680)
#2 0x005c2250 (/root/a.out+0x145250)
#3 0x76db982c (/lib/libc.so.6+0x2282c)
#4 0x76db9918 in __libc_start_main (/lib/libc.so.6+0x22918)
==122==Register values:
r0 = 0x00000000 r1 = 0x0000007a r2 = 0x0000000b r3 = 0x76d95020
r4 = 0x0000007a r5 = 0x00000001 r6 = 0x005dcc5c r7 = 0x0000010c
r8 = 0x0000000b r9 = 0x76f9ece0 r10 = 0x00000000 r11 = 0x7eb7fd00
r12 = 0x76dce670 sp = 0x7eb7fcc8 lr = 0x76e13ab4 pc = 0x76e13ac0
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/lib/libc.so.6+0x7cac0)
==122==ABORTING
```
AArch64:
```
# ./a.out
UndefinedBehaviorSanitizer:DEADLYSIGNAL
==99==ERROR: UndefinedBehaviorSanitizer: SEGV on unknown address 0x000000000063 (pc 0x007fbbbc5860 bp 0x007fcfdcb700 sp 0x007fcfdcb700 T99)
==99==The signal is caused by a UNKNOWN memory access.
==99==Hint: address points to the zero page.
#0 0x007fbbbc5860 (/lib64/libc.so.6+0x82860)
#1 0x007fbbb81578 (/lib64/libc.so.6+0x3e578)
#2 0x00556051152c (/root/a.out+0x3152c)
#3 0x007fbbb6e268 (/lib64/libc.so.6+0x2b268)
#4 0x007fbbb6e344 (/lib64/libc.so.6+0x2b344)
#5 0x0055604e45ec (/root/a.out+0x45ec)
==99==Register values:
x0 = 0x0000000000000000 x1 = 0x0000000000000063 x2 = 0x000000000000000b x3 = 0x0000007fbbb41440
x4 = 0x0000007fbbb41580 x5 = 0x3669288942d44cce x6 = 0x0000000000000000 x7 = 0x00000055605110b0
x8 = 0x0000000000000083 x9 = 0x0000000000000000 x10 = 0x0000000000000000 x11 = 0x0000000000000000
x12 = 0x0000007fbbdb3360 x13 = 0x0000000000010000 x14 = 0x0000000000000039 x15 = 0x00000000004113a0
x16 = 0x0000007fbbb81560 x17 = 0x0000005560540138 x18 = 0x000000006474e552 x19 = 0x0000000000000063
x20 = 0x0000000000000001 x21 = 0x000000000000000b x22 = 0x0000005560511510 x23 = 0x0000007fcfdcb918
x24 = 0x0000007fbbdb1b50 x25 = 0x0000000000000000 x26 = 0x0000007fbbdb2000 x27 = 0x000000556053f858
x28 = 0x0000000000000000 fp = 0x0000007fcfdcb700 lr = 0x0000007fbbbc584c sp = 0x0000007fcfdcb700
UndefinedBehaviorSanitizer can not provide additional info.
SUMMARY: UndefinedBehaviorSanitizer: SEGV (/lib64/libc.so.6+0x82860)
==99==ABORTING
```
Commit: fad17b43dbc09ac7e0a95535459845f72c2b739a
https://github.com/llvm/llvm-project/commit/fad17b43dbc09ac7e0a95535459845f72c2b739a
Author: Yi-Chi Lee <55395582+yichi170 at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Lex/PPMacroExpansion.cpp
Log Message:
-----------
[clang] replaced the usage of `asctime` with `std::put_time` (#99075)
In `clang/lib/Lex/PPMacroExpansion.cpp`, replaced the usage of the
obsolete `asctime` function with `std::put_time` for generating
timestamp strings.
Fixes: https://github.com/llvm/llvm-project/issues/98724
Commit: d09fc8f0b7875a4dadb50aae5f47788124d6b526
https://github.com/llvm/llvm-project/commit/d09fc8f0b7875a4dadb50aae5f47788124d6b526
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/x86.c
Log Message:
-----------
[compiler-rt][builtins] Fix `-Werror` build problem (#100312)
GCC-14.1.1 emit an error due to uninitialized variables
x86.c:303:17: error: ‘EAX’ may be used uninitialized
[-Werror=maybe-uninitialized]
x86.c:970:35: error: ‘MaxLevel’ may be used uninitialized
[-Werror=maybe-uninitialized]
x86.c:987:48: error: ‘MaxExtLevel’ may be used uninitialized
[-Werror=maybe-uninitialized]
It doesn't handle properly that these variables initialized indirectly
in functions that takes pointers to them
Commit: c34d673b02ead039acd107f096c1f32c16b61e07
https://github.com/llvm/llvm-project/commit/c34d673b02ead039acd107f096c1f32c16b61e07
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/CMakeLists.txt
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/asan/tests/CMakeLists.txt
M compiler-rt/test/asan/Unit/lit.site.cfg.py.in
Log Message:
-----------
[asan][cmake][test] Fix finding dynamic asan runtime lib (#100083)
In a `runtimes` build on Solaris/amd64, there are two failues:
```
AddressSanitizer-Unit :: ./Asan-i386-calls-Dynamic-Test/failed_to_discover_tests_from_gtest
AddressSanitizer-Unit :: ./Asan-i386-inline-Dynamic-Test/failed_to_discover_tests_from_gtest
```
This happens when `lit` enumerates the tests with `--gtest_list_tests
--gtest_filter=-*DISABLED_*`. The error is twofold:
- The `LD_LIBRARY_PATH*` variables point at the 64-bit directory
(`lib/clang/19/lib/x86_64-pc-solaris2.11`) for a 32-bit test:
```
ld.so.1: Asan-i386-calls-Dynamic-Test: fatal:
/var/llvm/local-amd64-release-stage2-A-flang-clang18-runtimes/tools/clang/stage2-bins/./lib/../lib/clang/19/lib/x86_64-pc-solaris2.11/libclang_rt.asan.so:
wrong ELF class: ELFCLASS64
```
- While the tests are linked with `-Wl,-rpath`, that path always is the
64-bit directory again.
Accordingly, the fix consists of two parts:
- The code in `compiler-rt/test/asan/Unit/lit.site.cfg.py.in` to adjust
the `LD_LIBRARY_PATH*` variables is guarded by a `config.target_arch !=
config.host_arch` condition. This is wrong in two ways:
- The adjustment is always needed independent of the host arch. This is
what `compiler-rt/test/lit.common.cfg.py` already does.
- Besides, `config.host_arch` is ultimately set from
`CMAKE_HOST_SYSTEM_PROCESSOR`. On Linux/x86_64, this is `x86_64` (`uname
-m`) while on Solaris/amd64 it's `i386` (`uname -p`), explaining why the
transformation is skipped on Solaris, but not on Linux.
- Besides, `RPATH` needs to be set to the correct subdirectory, so
instead of using the default arch in `compiler-rt/CMakeLists.txt`, this
patch moves the code to a function which takes the test's arch into
account.
Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
Commit: 3993a47bb58f7b6da9940d084e62e54a821e81fc
https://github.com/llvm/llvm-project/commit/3993a47bb58f7b6da9940d084e62e54a821e81fc
Author: Edd Dawson <edd.dawson at sony.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/test/Driver/debug-options.c
M clang/test/Driver/lto-jobs.c
M clang/test/Driver/ps4-linker.c
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
A llvm/test/DebugInfo/X86/debug-aranges-sce-tuning.test
M llvm/test/DebugInfo/debuglineinfo-path.ll
Log Message:
-----------
[PS4/PS5][Driver][DWARF] Always emit .debug_aranges for SCE tuning (#100160)
Some of SIE's post-mortem analysis infrastructure currently makes use of
.debug_aranges, so we'd like to ensure the section's presence in
PlayStation binaries. The simplest way to do this is to force emission
when the debugger tuning is set to SCE (which is in turn typically
initialized from the target triple). This also simplifies the driver.
llvm/test/DebugInfo/debuglineinfo-path.ll has been marked as UNSUPPORTED
on PlayStation. When aranges are emitted, the DWARF in the test case is
such that relocations need to be applied to the aranges section in order
for symbolization to work. An alternative approach would be to implement
the application of relocations in DWARFDebugArangeSet. While experiments
show that this can be made to work with a modest patch, the test cases
would be rather contrived. Since I expect the only utility for such a
change would be to make this test case pass for PlayStation targets, and
few - if any - outside of PlayStation care about aranges, UNSUPPORTED
would seem to be a more practical option.
This was originally commited as 22eb290a96 (#99629) and later reverted
at 84658fb82b (#99711) due to test failures on SIE built bots. These
failures shouldn't recur due to 3b24e5d450 (#99897) and the
aforementioned change to debuglineinfo-path.ll.
SIE tracker: TOOLCHAIN-16951
Commit: ddf5725ef180692b60962ae56e352a7af6fc5919
https://github.com/llvm/llvm-project/commit/ddf5725ef180692b60962ae56e352a7af6fc5919
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/nsan/nsan.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/test/Instrumentation/NumericalStabilitySanitizer/memory.ll
Log Message:
-----------
[nsan] Emit calls to optimized functions (#98900)
As previously noted in nsan.cpp we can implement
optimized variants of `__nsan_copy_values` and
`__nsan_set_value_unknown` if a memory operation
size is known.
Now the instrumentation creates calls to optimized functions if there is
4, 8 or 16-byte memory operation like
`memset(X, value, 4/8/16)` or `memcpy(dst, src, 4/8/16)`
nsan.cpp provides definitions of the optimized functions.
Commit: a3de21cac1fb8f1dd98cfe1d1443e2d3f0a97351
https://github.com/llvm/llvm-project/commit/a3de21cac1fb8f1dd98cfe1d1443e2d3f0a97351
Author: Sam Parker <sam.parker at arm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/simd-arith.ll
M llvm/test/CodeGen/WebAssembly/vector-reduce.ll
Log Message:
-----------
[WebAssembly] Ofast pmin/pmax pattern matchers (#100107)
With fast-math, the ordered setcc nodes are converted to setcc nodes
which do not care about NaNs, so add patterns that use setlt, setle,
setgt and setge.
Commit: 1ead51a86c6c746a1b9948ca1ee142df223ffebd
https://github.com/llvm/llvm-project/commit/1ead51a86c6c746a1b9948ca1ee142df223ffebd
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/test/Fir/abstract-results.fir
Log Message:
-----------
[flang] fix C_PTR function result lowering (#100082)
Functions returning C_PTR were lowered to function returning intptr (i64
on 64bit arch). This caused conflicts when these functions were defined
as returning !fir.ref<none>/llvm.ptr in other compiler generated
contexts (e.g., malloc).
Lower them to return !fir.ref<none>.
This should deal with https://github.com/llvm/llvm-project/issues/97325
and https://github.com/llvm/llvm-project/issues/98644.
Commit: 9a258664024d12a06ba8eb9344e270a9bb5f5d87
https://github.com/llvm/llvm-project/commit/9a258664024d12a06ba8eb9344e270a9bb5f5d87
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MIRPrinter.h
M llvm/include/llvm/CodeGen/MachineModuleSlotTracker.h
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRPrintingPass.cpp
M llvm/lib/CodeGen/MachineModuleSlotTracker.cpp
M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
M llvm/unittests/MIR/MachineMetadata.cpp
Log Message:
-----------
CodeGen: Avoid using MachineFunction::getMMI in MachineModuleSlotTracker (#100310)
Commit: ba8126b6fef79bd344a247f6291aaec7b67bdff0
https://github.com/llvm/llvm-project/commit/ba8126b6fef79bd344a247f6291aaec7b67bdff0
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
Log Message:
-----------
[LV] Mark dead instructions in loop as free.
Update collectValuesToIgnore to also ignore dead instructions in the
loop. Such instructions will be removed by VPlan-based DCE and won't be
considered by the VPlan-based cost model.
This closes a gap between the legacy and VPlan-based cost model. In
practice with the default pipelines, there shouldn't be any dead
instructions in loops reaching LoopVectorize, but it is easy to generate
such cases by hand or automatically via fuzzers.
Fixes https://github.com/llvm/llvm-project/issues/99701.
Commit: eff6250494b4bc7feb0199912245e5bacad6f984
https://github.com/llvm/llvm-project/commit/eff6250494b4bc7feb0199912245e5bacad6f984
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/M68k/M68kFrameLowering.cpp
Log Message:
-----------
M68k: Remove hasDebugInfo check
Follow up to a03935b9841c4e30b27dd9399e0b93191ad443f3
Commit: 666e3326fedfb6a033494c36c36aa95c4124d642
https://github.com/llvm/llvm-project/commit/666e3326fedfb6a033494c36c36aa95c4124d642
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/Headers/ptrauth.h
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
A clang/test/AST/ast-dump-ptrauth-json.cpp
M clang/test/CodeGenCXX/mangle-fail.cpp
M clang/test/Sema/ptrauth-intrinsics-macro.c
A clang/test/SemaCXX/ptrauth-type-discriminator.cpp
Log Message:
-----------
[PAC] Define __builtin_ptrauth_type_discriminator (#100204)
The builtin computes the discriminator for a type, which can be used to
sign/authenticate function pointers and member function pointers.
If the type passed to the builtin is a C++ member function pointer type,
the result is the discriminator used to signed member function pointers
of that type. If the type is a function, function pointer, or function
reference type, the result is the discriminator used to sign functions
of that type. It is ill-formed to use this builtin with any other type.
A call to this function is an integer constant expression.
Co-Authored-By: John McCall rjmccall at apple.com
Commit: 6a1b119035bd329c54f6b5438e6989e49dcb0adb
https://github.com/llvm/llvm-project/commit/6a1b119035bd329c54f6b5438e6989e49dcb0adb
Author: Jessica Del <50999226+OutOfCache at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
Log Message:
-----------
[AMDGPU] Add intrinsics for atomic struct buffer loads (#100140)
Mark these intrinsics as atomic loads within LLVM to prevent hoisting
out of loops in cases where
the load is considered invariant.
Similar to https://github.com/llvm/llvm-project/pull/97707, but for
struct buffer loads.
Commit: 7fad04e94b7b594389111ae7eca0883ef18dc90b
https://github.com/llvm/llvm-project/commit/7fad04e94b7b594389111ae7eca0883ef18dc90b
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll
Log Message:
-----------
[LSR] Fix matching vscale immediates (#100080)
Somewhat confusingly a `SCEVMulExpr` is a `SCEVNAryExpr`, so can have
> 2 operands. Previously, the vscale immediate matching did not check
the number of operands of the `SCEVMulExpr`, so would ignore any
operands after the first two.
This led to incorrect codegen (and results) for ArmSME in IREE
(https://github.com/iree-org/iree), which sometimes addresses things
that are a `vscale * vscale` multiple away. The test added with this
change shows an example reduced from IREE. The second write should
be offset from the first `16 * vscale * vscale` (* 4 bytes), however,
previously LSR dropped the second vscale and instead offset the write by
`#4, mul vl`, which is an offset of `16 * vscale` (* 4 bytes).
Commit: 3cb5604d2c73b56f5e3ee48832591cab3d754b1d
https://github.com/llvm/llvm-project/commit/3cb5604d2c73b56f5e3ee48832591cab3d754b1d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/MachineOutliner.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
Log Message:
-----------
MachineOutliner: Use PM to query MachineModuleInfo (#99688)
Avoid getting this from the MachineFunction
Commit: cd82fee3918c4244777310cb97cd02e1ddcbfcf0
https://github.com/llvm/llvm-project/commit/cd82fee3918c4244777310cb97cd02e1ddcbfcf0
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
Log Message:
-----------
[nsan] Fix `Wstring-conversion` error (#100328)
Fix error: implicit conversion turns string literal into bool: 'const
char[46]' to 'bool' [-Werror,-Wstring-conversion]
Commit: 71a848632e2fbef3f2dc97c2dae845ddca0ec47e
https://github.com/llvm/llvm-project/commit/71a848632e2fbef3f2dc97c2dae845ddca0ec47e
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libcxx/test/libcxx/clang_modules_include.gen.py
M libcxx/test/std/localization/locale.categories/category.ctype/facet.ctype.special/facet.ctype.char.statics/classic_table.pass.cpp
Log Message:
-----------
[libcxx][test] Update picolib xfails (#99631)
clang_modules_include.gen.py works now, and I added some background to
classic_table.pass.cpp.
Opened https://github.com/picolibc/picolibc/issues/778 to see if that
one is possible to fix.
Commit: f0bd705c9b6bd59496b44934a893a5b74085a376
https://github.com/llvm/llvm-project/commit/f0bd705c9b6bd59496b44934a893a5b74085a376
Author: John Brawn <john.brawn at arm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
A llvm/test/CodeGen/ARM/block-order.mir
Log Message:
-----------
[CodeGen] Restore MachineBlockPlacement block ordering (#99351)
PR #91843 changed the algorithm used to find the next unplaced block so
that it iterates through the blocks in BlockFilter instead of iterating
through the blocks in the function and checking if they are in the block
filter. Unfortunately this sometimes results in a different block
ordering being chosen, as the order of blocks in BlockFilter comes from
the order in MachineLoopInfo, and in some cases this differs from the
order they are in the function. This can also give an end result that
has worse performance.
Fix this by making collectLoopBlockSet place blocks in its output in the
order that they are in the function.
Commit: d36edf8146cfea9f0407e2fb26283297eb6a6ac4
https://github.com/llvm/llvm-project/commit/d36edf8146cfea9f0407e2fb26283297eb6a6ac4
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Compiler.cpp
M clang/test/AST/Interp/literals.cpp
Log Message:
-----------
[clang][Interp] Bail out on value dependent variable initializers
Commit: aa53f0d6fd3ec9b4cec9dd14d4c1d1a6c4d7838c
https://github.com/llvm/llvm-project/commit/aa53f0d6fd3ec9b4cec9dd14d4c1d1a6c4d7838c
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/AST/ASTContext.cpp
Log Message:
-----------
[ASTContext] Make the end of the switch case unreachable in `encodeTypeForFunctionPointerAuth` (#99763)
This prevent the warning from compiler.
Commit: cba63c0f92d14fac238c52e2b60ae81e530acd53
https://github.com/llvm/llvm-project/commit/cba63c0f92d14fac238c52e2b60ae81e530acd53
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/CMakeLists.txt
Log Message:
-----------
[MLIR][OpenMP] Keep -verify-openmp-ops output as dependency (#99638)
Currently, the `mlir-tblgen -verify-openmp-ops` pseudo-backend, which
only performs an OpenMP dialect-specific set of checks and produces no
output, is prevented from being added as a dependency to the
`MLIROpenMPOpsIncGen` tablegen target.
However, a consequence of this is that it is not triggered with every
modification of the OpenMPOps.td file it's intended to check, although
it should. This patch fixes the issue by letting the empty output file
to be added to the `TABLEGEN_OUTPUT` CMake variable used by the
`add_public_tablegen_target` command below to set up dependencies.
Commit: 05e95067eeaaf4bac820d10abe146db49925a195
https://github.com/llvm/llvm-project/commit/05e95067eeaaf4bac820d10abe146db49925a195
Author: Luke Lau <luke at igalia.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
R llvm/test/CodeGen/RISCV/rvv/combine-vmv.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll
Log Message:
-----------
[RISCV] Update combine-vmv.ll to have more foldable cases. NFC
A lot of cases have differing AVLs which aren't foldable, update them so the peephole triggers on them and add explicit cases for non-foldable AVLs.
Also rename it to vmv.v.v-peephole.ll since it's not actually a DAG combine.
And remove a TODO, it's correct to fold if the two passthrus are the same.
Commit: 893a303962608469ec5bd01fe44e82c935152e9c
https://github.com/llvm/llvm-project/commit/893a303962608469ec5bd01fe44e82c935152e9c
Author: Pavel Skripkin <paskripkin at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/analyzer/checkers/mismatched_deallocator_example.cpp
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
M clang/test/Analysis/Malloc+MismatchedDeallocator+NewDelete.cpp
M clang/test/Analysis/MismatchedDeallocator-checker-test.mm
M clang/test/Analysis/NewDelete-intersections.mm
M clang/test/Analysis/free.c
M clang/test/Analysis/free.cpp
M clang/test/Analysis/getline-alloc.c
M clang/test/Analysis/kmalloc-linux.c
M clang/test/Analysis/malloc-fnptr-plist.c
M clang/test/Analysis/malloc-std-namespace.cpp
M clang/test/Analysis/malloc.c
M clang/test/Analysis/malloc.mm
M clang/test/Analysis/plist-macros.cpp
M clang/test/Analysis/weak-functions.c
M clang/test/Sema/attr-ownership.c
Log Message:
-----------
[clang][analyzer] Support `ownership_{returns,takes}` attributes (#98941)
Add support for checking mismatched ownership_returns/ownership_takes attributes.
Closes #76861
Commit: 1031335f2ee1879737576fde3a3425ce0046e773
https://github.com/llvm/llvm-project/commit/1031335f2ee1879737576fde3a3425ce0046e773
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libcxx/include/__math/hypot.h
M libcxx/include/cmath
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/numerics/c.math/cmath.pass.cpp
M libcxx/test/support/fp_compare.h
Log Message:
-----------
Revert "[libc++][math] Fix undue overflowing of `std::hypot(x,y,z)` (#93350)"
This reverts commit 9628777479a970db5d0c2d0b456dac6633864760.
More details in https://github.com/llvm/llvm-project/pull/93350, but
this broke the PowerPC sanitizer bots.
Commit: 2ce865d4905970c07477a9c4e37159664a785c81
https://github.com/llvm/llvm-project/commit/2ce865d4905970c07477a9c4e37159664a785c81
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
Log Message:
-----------
ARM: Avoid using MachineFunction::getMMI
Commit: 68a0d0c76223736351fd7c452bca3ba9d80ca342
https://github.com/llvm/llvm-project/commit/68a0d0c76223736351fd7c452bca3ba9d80ca342
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
M flang/test/Lower/OpenMP/private-commonblock.f90
Log Message:
-----------
[flang][OpenMP] Handle common blocks in delayed privatization (#100317)
Adds proper mapping of common block elements to block arguments in
parallel regions when delayed privatization is enabled.
Commit: a5bc549c5058cb75d5dab44422a055ab06580766
https://github.com/llvm/llvm-project/commit/a5bc549c5058cb75d5dab44422a055ab06580766
Author: Nico Weber <thakis at chromium.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
Log Message:
-----------
[gn] port 73ac9536268f
Commit: 559be8e2b55afbf6736fed646542fb25793f0f7e
https://github.com/llvm/llvm-project/commit/559be8e2b55afbf6736fed646542fb25793f0f7e
Author: DianQK <dianqk at dianqk.net>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
Log Message:
-----------
Reapply "[FunctionAttrs] Determine underlying object by `getUnderlyingObjectAggressive` (#100102)"
Added handling for `AllocaInst`.
This reverts commit 1ee686a55aa6365eff39bbd1dc2059b16be6c2f1.
Commit: 59eae919c938f890e9b9b4be8a3fa3cb1b11ed89
https://github.com/llvm/llvm-project/commit/59eae919c938f890e9b9b4be8a3fa3cb1b11ed89
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/Analysis/SimplifyQuery.h
M llvm/lib/Analysis/ValueTracking.cpp
A llvm/test/Transforms/InstCombine/pr100298.ll
Log Message:
-----------
[ValueTracking] Don't use CondContext in dataflow analysis of phi nodes (#100316)
See the following case:
```
define i16 @pr100298() {
entry:
br label %for.inc
for.inc:
%indvar = phi i32 [ -15, %entry ], [ %mask, %for.inc ]
%add = add nsw i32 %indvar, 9
%mask = and i32 %add, 65535
%cmp1 = icmp ugt i32 %mask, 5
br i1 %cmp1, label %for.inc, label %for.end
for.end:
%conv = trunc i32 %add to i16
%cmp2 = icmp ugt i32 %mask, 3
%shl = shl nuw i16 %conv, 14
%res = select i1 %cmp2, i16 %conv, i16 %shl
ret i16 %res
}
```
When computing knownbits of `%shl` with `%cmp2=false`, we cannot use
this condition in the analysis of `%mask (%for.inc -> %for.inc)`.
Fixes https://github.com/llvm/llvm-project/issues/100298.
Commit: c1c6ed83e9ac13c511961e5f5791034a63168e7e
https://github.com/llvm/llvm-project/commit/c1c6ed83e9ac13c511961e5f5791034a63168e7e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/docs/gpu/building.rst
M libc/docs/gpu/using.rst
M libc/lib/CMakeLists.txt
Log Message:
-----------
[libc] Remove 'packaged' GPU build support (#100208)
Summary:
Previously, the GPU built the `libc` in a fat binary version that was
used to pass this to the link job in offloading languages like CUDA or
OpenMP. This was mostly required because NVIDIA couldn't consume the
standard static library version. Recent patches have now created the
`clang-nvlink-wrapper` which lets us do that. Now, the C library is just
included implicitly by the toolchain (or passed with -Xoffload-linker
-lc).
This code can be fully removed, which will heavily simplify the build
(and removed some bugs and garbage files I've encoutnered).
Commit: 99c5140bb2b025cb91029792941e819bb30b39a0
https://github.com/llvm/llvm-project/commit/99c5140bb2b025cb91029792941e819bb30b39a0
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/GlobalISel/BUILD.gn
Log Message:
-----------
[gn build] Port 2ca300f914b1
Commit: 48e1eb4e6b0721488b0d07efab82bf12720186cb
https://github.com/llvm/llvm-project/commit/48e1eb4e6b0721488b0d07efab82bf12720186cb
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn
Log Message:
-----------
[gn build] Port ddb75ca6062c
Commit: e6c20e11e7bcd8d6916317888f95d98c13fdc21d
https://github.com/llvm/llvm-project/commit/e6c20e11e7bcd8d6916317888f95d98c13fdc21d
Author: Chaitanya <Krishna.Sankisa at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
A llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
A llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
M llvm/lib/Target/AMDGPU/CMakeLists.txt
R llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.cpp
R llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.h
M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
Log Message:
-----------
[AMDGPU] Move AMDGPUAsanInstrumentation outside of utils (#100323)
#98863 merged AMDGPUAsanInstrumentation module which missed
TransformUtils to be linked to AMDGPUUtils.
This PR moves AMDGPUAsanInstrumentation files outside utils folder and
adds them to AMDGPUCodegen lib.
Commit: e1052faaf81b4cb3d1fe2f32aa09d2dbcfabee23
https://github.com/llvm/llvm-project/commit/e1052faaf81b4cb3d1fe2f32aa09d2dbcfabee23
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/MC/AMDGPU/gfx10_err_pos.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_ds.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_smem.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopk.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopp.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
Log Message:
-----------
[AMDGPU][MC][NFC] Drop remaining -wavesize32/64 attributes in tests. (#100339)
Those are not needed now that
<https://github.com/llvm/llvm-project/pull/98400> is submitted.
Commit: 445bb35f954ecd5c60ced71523f6b32fc306d557
https://github.com/llvm/llvm-project/commit/445bb35f954ecd5c60ced71523f6b32fc306d557
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/docs/gpu/support.rst
Log Message:
-----------
[libc] Enable 'sscanf' on the GPU (#100211)
Summary:
We can enable the `sscanf` function on the GPU now.
Commit: 404071b059818ba51b6a832e5e09a93a4a8b579e
https://github.com/llvm/llvm-project/commit/404071b059818ba51b6a832e5e09a93a4a8b579e
Author: Matt Davis <mattd at nvidia.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/bitcast-vector-extract.ll
M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-pal.ll
M llvm/test/CodeGen/AMDGPU/mem-builtins.ll
M llvm/test/CodeGen/NVPTX/store-undef.ll
Log Message:
-----------
[SelectionDAG] Preserve volatile undef stores. (#99918)
This patch preserves `undef` SDNodes that are `volatile` qualified.
Previously, these nodes would be discarded. The motivation behind this
change is to adhere to the
[LangRef](https://llvm.org/docs/LangRef.html#volatile-memory-accesses),
even though that doc is mostly in terms of LLVM-IR, it seems reasonable
to imply that the volatile constraints also imply to SDNodes.
> Certain memory accesses, such as
[load](https://llvm.org/docs/LangRef.html#i-load)’s,
[store](https://llvm.org/docs/LangRef.html#i-store)’s, and
[llvm.memcpy](https://llvm.org/docs/LangRef.html#int-memcpy)’s may be
marked volatile. The optimizers must not change the number of volatile
operations or change their order of execution relative to other volatile
operations. The optimizers may change the order of volatile operations
relative to non-volatile operations. This is not Java’s “volatile” and
has no cross-thread synchronization behavior.
Source: https://llvm.org/docs/LangRef.html#volatile-memory-accesses
Commit: 929b474991ce643cff01eeeec830b29735460db4
https://github.com/llvm/llvm-project/commit/929b474991ce643cff01eeeec830b29735460db4
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort.pass.cpp
Log Message:
-----------
[libcxx][test] Explain picolib unsupported in sort.pass.cpp
This is not a hidden bug, it's just a very slow test under emulation.
Commit: 991460946886891de939203cc6a228b693efe406
https://github.com/llvm/llvm-project/commit/991460946886891de939203cc6a228b693efe406
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/docs/gpu/support.rst
Log Message:
-----------
Revert "[libc] Enable 'sscanf' on the GPU (#100211)"
Summary:
This fails tests in some situations, revert until it can be fixed.
This reverts commit 445bb35f954ecd5c60ced71523f6b32fc306d557.
Commit: 550b83d658755664a7f0f93b36242e885743a91b
https://github.com/llvm/llvm-project/commit/550b83d658755664a7f0f93b36242e885743a91b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/docs/gpu/building.rst
M libc/docs/gpu/using.rst
M libc/lib/CMakeLists.txt
Log Message:
-----------
Revert "[libc] Remove 'packaged' GPU build support (#100208)"
Summary:
I forgot that the OpenMP tests still look for this, reverting for now
until I can make a fix.
This reverts commit c1c6ed83e9ac13c511961e5f5791034a63168e7e.
Commit: 4bb3a1e16f3a854d05bc0b8c5b6f8f78effb1d93
https://github.com/llvm/llvm-project/commit/4bb3a1e16f3a854d05bc0b8c5b6f8f78effb1d93
Author: Chris Copeland <chris at chrisnc.net>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Headers/stdatomic.h
M clang/test/Headers/stdatomic.c
Log Message:
-----------
[clang] Define `ATOMIC_FLAG_INIT` correctly for C++. (#97534)
Commit: 20957d20913be92f9d88ea5ce862d898a386dad2
https://github.com/llvm/llvm-project/commit/20957d20913be92f9d88ea5ce862d898a386dad2
Author: Qiu Chaofan <qiucofan at cn.ibm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
A clang/test/CodeGen/PowerPC/save-reg-params.c
A clang/test/Driver/aix-save-reg-params.c
M clang/test/Driver/ppc-unsupported.c
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
A llvm/test/CodeGen/PowerPC/save-reg-params.ll
Log Message:
-----------
[AIX] Add -msave-reg-params to save arguments to stack (#97524)
In PowerPC ABI, a few initial arguments are passed through registers,
but their places in parameter save area are reserved, arguments passed
by memory goes after the reserved location.
For debugging purpose, we may want to save copy of the pass-by-reg
arguments into correct places on stack. The new option achieves by
adding new function level attribute and make argument lowering part
aware of it.
Commit: 558a8953680fd03bdd49a6708f3ea82d82328769
https://github.com/llvm/llvm-project/commit/558a8953680fd03bdd49a6708f3ea82d82328769
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
Log Message:
-----------
[compiler-rt] Move `endif` to correct place (#100342)
A couple of previous commits leaded to wrong endif placement inside the
source that caused build problem in
https://lab.llvm.org/buildbot/#/builders/13/builds/1020
See #99613 #99049
Commit: 2bb18e27b62c5b92fb704d4af373eca99c95e11b
https://github.com/llvm/llvm-project/commit/2bb18e27b62c5b92fb704d4af373eca99c95e11b
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn
Log Message:
-----------
[gn build] Port e6c20e11e7bc
Commit: b9995a14f5dee5620163e83468d3be4fcd3e67d0
https://github.com/llvm/llvm-project/commit/b9995a14f5dee5620163e83468d3be4fcd3e67d0
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/MachineLoopInfo.cpp
M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
A llvm/test/CodeGen/AMDGPU/machinelicm-undef-use.mir
Log Message:
-----------
[MachineLoopInfo] Fix assertion failure on undef use operands (#100137)
Fixes #100115
Commit: 6da6772bf0a33131aa8540c9d4f60d5db75c32b5
https://github.com/llvm/llvm-project/commit/6da6772bf0a33131aa8540c9d4f60d5db75c32b5
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/builtins/aarch64/sme-abi-vg.c
M compiler-rt/lib/builtins/aarch64/sme-abi.S
Log Message:
-----------
[AArch64][SME] Rewrite __arm_get_current_vg to preserve required registers (#100143)
The documentation for the __arm_get_current_vg support routine specifies
that the following registers are call-preserved:
- X1-X15, X19-X29 and SP
- Z0-Z31
- P0-P15
This patch rewrites the implementation of this routine in compiler-rt,
as the current version does not guarantee that these registers will be
preserved.
Commit: 07688d13414d08a1bea3cecf6607f93e4334222e
https://github.com/llvm/llvm-project/commit/07688d13414d08a1bea3cecf6607f93e4334222e
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
Revert "[LV] Add option to still enable the legacy cost model. (#99536)"
This reverts commit 9ba524427321b931bad156860755adf420aeec6a.
Remove the recently added temporary option vectorize-use-legacy-cost-model
as discussed on the PR adding it, now that we branched for 19.x.
Commit: 0b36144aba8d8d439bdc297008eb3bd43a199fca
https://github.com/llvm/llvm-project/commit/0b36144aba8d8d439bdc297008eb3bd43a199fca
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/CodeGen/X86/var-permute-128.ll
M llvm/test/CodeGen/X86/var-permute-256.ll
Log Message:
-----------
[X86] Add 'clamp out of range index' variable shuffles test coverage from #96754
Commit: de8c4bef3329ce0045b8167cdb96d53b2a1509df
https://github.com/llvm/llvm-project/commit/de8c4bef3329ce0045b8167cdb96d53b2a1509df
Author: Kai Luo <lkail at cn.ibm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/test/tsan/debug_alloc_stack.cpp
Log Message:
-----------
[tsan] Include unistd.h to declare gettid()
Try to fix https://lab.llvm.org/buildbot/#/builders/176/builds/14400.
Commit: 1f5807eb359fb172575e18bb063fd85e4dc836e9
https://github.com/llvm/llvm-project/commit/1f5807eb359fb172575e18bb063fd85e4dc836e9
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
Log Message:
-----------
[mlir][vector][nfc] Simplify `in_bounds` attr update (#100334)
Since the `in_bounds` attribute is mandatory, there's no need for logic
like this (`readOp.getInBounds()` is guaranteed to return a non-empty
ArrayRef):
```cpp
ArrayAttr inBoundsAttr = readOp.getInBounds()
? rewriter.getArrayAttr( readOp.getInBoundsAttr().getValue().drop_back(dimsToDrop))
: ArrayAttr();
```
Instead, we can do this:
```cpp
ArrayAttr inBoundsAttr = rewriter.getArrayAttr(
readOp.getInBoundsAttr().getValue().drop_back(dimsToDrop));
```
This is a small follow-up for #97049 - this change should've been
included there.
Commit: 5b15d9c441810121c23f9f421bbb007fd4c448e8
https://github.com/llvm/llvm-project/commit/5b15d9c441810121c23f9f421bbb007fd4c448e8
Author: Jan Leyonberg <jan_sjodin at yahoo.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
Log Message:
-----------
[clang][OpenMP] Propoagate debug location to OMPIRBuilder reduction codegen (#100358)
This patch propagates the debug location from Clang to the
OpenMPIRBuilder.
Fixes https://github.com/llvm/llvm-project/issues/97458
Commit: 557a7b8ae319527110ddaac93c896b2c0e6c824c
https://github.com/llvm/llvm-project/commit/557a7b8ae319527110ddaac93c896b2c0e6c824c
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/test/src/math/smoke/TotalOrderMagTest.h
M libc/test/src/math/smoke/TotalOrderTest.h
Log Message:
-----------
[libc][math][c23] Fix totalorder and totalordermag smoke tests (#100354)
FPBits::signaling_nan() defaults to setting the MSB of the payload to 1.
The tests also used signaling NaNs with a payload of 0x123. With
float16, the 1 in 0x123 aligns to the MSB of the payload, therefore
0x123 is greater than the default payload. However, that is not the case
with more precise floating-point types.
Commit: 1feef92a775daf8818faf766e0b1332421b48c5f
https://github.com/llvm/llvm-project/commit/1feef92a775daf8818faf766e0b1332421b48c5f
Author: Utkarsh Saxena <usx at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/test/SemaCXX/attr-lifetimebound.cpp
Log Message:
-----------
Fix lifetimebound for field access (#100197)
Fixes: https://github.com/llvm/llvm-project/issues/81589
There is no way to switch this off without `-Wno-dangling`.
Commit: 83ea7ce3a132001dfd7665c7eb50ef44cfd79802
https://github.com/llvm/llvm-project/commit/83ea7ce3a132001dfd7665c7eb50ef44cfd79802
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/Exceptions.cpp
Log Message:
-----------
[BOLT][NFC] Track fragment relationships using EquivalenceClasses
Three-way splitting can create references between split fragments (warm
to cold or vice versa) that are not handled by
`isChildOf/isParentOf/isChildOrParentOf`. Generalize fragment
relationships to allow checking if two functions belong to one group,
potentially in presence of ICF which can join multiple groups.
Test Plan: NFC for existing tests
Reviewers: maksfb, ayermolo, rafaelauler, dcci
Reviewed By: rafaelauler
Pull Request: https://github.com/llvm/llvm-project/pull/99979
Commit: 9d2dd009b60793f562ba1b00e3d02773f060e4b6
https://github.com/llvm/llvm-project/commit/9d2dd009b60793f562ba1b00e3d02773f060e4b6
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M bolt/lib/Core/BinaryContext.cpp
A bolt/test/X86/three-way-split-jt.s
Log Message:
-----------
[BOLT] Support more than two jump table parents
Multi-way splitting can cause multiple fragments to access the same jump
table. Relax the assumption that a jump table can only have up to two
parents.
Test Plan: added bolt/test/X86/three-way-split-jt.s
Reviewers: ayermolo, dcci, rafaelauler, maksfb
Reviewed By: rafaelauler, dcci
Pull Request: https://github.com/llvm/llvm-project/pull/99988
Commit: c4b66bf4d065d3bbc2e2fac8512a6df8e013c704
https://github.com/llvm/llvm-project/commit/c4b66bf4d065d3bbc2e2fac8512a6df8e013c704
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/builtins/README.txt
M compiler-rt/lib/builtins/trampoline_setup.c
M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
A llvm/test/CodeGen/AArch64/trampoline.ll
Log Message:
-----------
[AArch64] Implement INIT/ADJUST_TRAMPOLINE (#70267)
Add support for llvm.init.trampoline and llvm.adjust.trampoline
intrinsics for AArch64.
Fixes https://github.com/llvm/llvm-project/issues/65573
Fixes https://github.com/llvm/llvm-project/issues/76927
Fixes https://github.com/llvm/llvm-project/issues/83555
Updates https://github.com/llvm/llvm-project/pull/66157
Commit: 6c23f974d6fe43d8e5c0adbc4a4f89fbabc9d9ea
https://github.com/llvm/llvm-project/commit/6c23f974d6fe43d8e5c0adbc4a4f89fbabc9d9ea
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/config/linux/riscv/entrypoints.txt
Log Message:
-----------
[libc] Enable bind test for riscv (#100132)
The bind test was failing in the rv32 build bot because of how the build bot was set to run the tests: we were using shared directories between the host and qemu and the bind function was trying to create a file in this directory, thus creating it in the host machine.
The OS was returning "-1 ENXIO (No such device or address)", so we changed the rv32 buildbot to copy the binaries to qemu and dropped the shared directories feature.
Commit: 4d19676de417fa4dbfac07fc4fe0c30c232b3e68
https://github.com/llvm/llvm-project/commit/4d19676de417fa4dbfac07fc4fe0c30c232b3e68
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
M bolt/test/X86/pseudoprobe-decoding-inline.test
Log Message:
-----------
[BOLT] Add profile-use-pseudo-probes option
Move pseudo probe profile generation under --profile-use-pseudo-probes
option. Note that updating pseudo probes is independent from this flag.
Test Plan: updated pseudoprobe-decoding-inline.test
Reviewers: maksfb, rafaelauler, ayermolo, dcci, WenleiHe
Reviewed By: WenleiHe
Pull Request: https://github.com/llvm/llvm-project/pull/100299
Commit: f2b6f0b5868d052ef03431405b1053be18a36d75
https://github.com/llvm/llvm-project/commit/f2b6f0b5868d052ef03431405b1053be18a36d75
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/test/tsan/debug_alloc_stack.cpp
Log Message:
-----------
Revert "[tsan] Enable test on linux (#99659)"
This reverts commit 52ebd8d0577e07be9c25b56656d1974a84c40bf7.
Missing declaration for gettid() on the buildbot
(https://lab.llvm.org/buildbot/#/builders/72/builds/1592) and unfortunately
a fix-forward attempt for unistd.h didn't work
(de8c4bef3329ce0045b8167cdb96d53b2a1509df). Reverting for now.
Commit: 374bbc93bcb34268f175405a71806c4580495c6d
https://github.com/llvm/llvm-project/commit/374bbc93bcb34268f175405a71806c4580495c6d
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/test/tsan/debug_alloc_stack.cpp
Log Message:
-----------
Revert "[tsan] Include unistd.h to declare gettid()"
This reverts commit de8c4bef3329ce0045b8167cdb96d53b2a1509df.
Unfortunately the fix-forward didn't work. Reverting both and will have
Vitaly re-submit.
Commit: f83950ab8dfda1da882a6ef7b508639df251621a
https://github.com/llvm/llvm-project/commit/f83950ab8dfda1da882a6ef7b508639df251621a
Author: Angel Zhang <angel.zhang at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/test/Conversion/ConvertToSPIRV/arith.mlir
M mlir/test/Conversion/ConvertToSPIRV/combined.mlir
M mlir/test/Conversion/ConvertToSPIRV/func-signature-vector-unroll.mlir
M mlir/test/Conversion/ConvertToSPIRV/index.mlir
M mlir/test/Conversion/ConvertToSPIRV/scf.mlir
M mlir/test/Conversion/ConvertToSPIRV/simple.mlir
M mlir/test/Conversion/ConvertToSPIRV/ub.mlir
A mlir/test/Conversion/ConvertToSPIRV/vector-unroll.mlir
M mlir/test/Conversion/ConvertToSPIRV/vector.mlir
M mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
M mlir/test/lib/Conversion/ConvertToSPIRV/TestSPIRVFuncSignatureConversion.cpp
A mlir/test/lib/Conversion/ConvertToSPIRV/TestSPIRVVectorUnrolling.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[mlir][spirv] Implement vector unrolling for `convert-to-spirv` pass (#100138)
### Description
This PR builds on #99872. It implements a minimal version of function
body vector unrolling to convert vector types into 1D and with a size
supported by SPIR-V (2, 3 or 4 depending on the original dimension). The
ops that are currently supported include those with elementwise traits
(e.g. `arith.addi`), `vector.reduction` and `vector.transpose`. This PR
also includes new LIT tests that only check for vector unrolling.
### Future Plans
- Support more ops
---------
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: e7a3aeb1f86b8d45815b834e4e20b1fc7e71705d
https://github.com/llvm/llvm-project/commit/e7a3aeb1f86b8d45815b834e4e20b1fc7e71705d
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
Log Message:
-----------
Revert "[compiler-rt] Move `endif` to correct place (#100342)"
This reverts commit 558a8953680fd03bdd49a6708f3ea82d82328769.
This was a fix-forward for
https://github.com/llvm/llvm-project/pull/99613 that unfortunately
didn't work for the Android sanitizer buildbot. More information in that
pull request.
Commit: 59e1c6cd63eb9287df6516f9a5ae564075e9c218
https://github.com/llvm/llvm-project/commit/59e1c6cd63eb9287df6516f9a5ae564075e9c218
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
R compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
R compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp
Log Message:
-----------
Revert "[compiler-rt] Implement `DumpAllRegisters` for arm-linux and aarch64-linux (#99613)"
This reverts commit ef1c70d26b7e84a6f47c0c6a868b769935b2b008.
Unfortunately broke the sanitizer buildbot(s), and the fix-forward
didn't work. More details in
https://github.com/llvm/llvm-project/pull/99613
Commit: 9f08ae8d2dd1ff9ec3b033d099282dee05528413
https://github.com/llvm/llvm-project/commit/9f08ae8d2dd1ff9ec3b033d099282dee05528413
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Compiler.cpp
Log Message:
-----------
[clang][Interp][NFC] Fix getting the record decl from a pointer type
Commit: fbd303ba5dd98d4513d62058bc1ad463507464ce
https://github.com/llvm/llvm-project/commit/fbd303ba5dd98d4513d62058bc1ad463507464ce
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/var-permute-128.ll
Log Message:
-----------
[DAG] combineAndnp - fold ANDNP(x,PSHUFB(y,z)) -> PSHUFB(y,OR(z,x))
Based off #96754 - if we are zeroing out whole elements, then fold into the PSHUFB mask instead (if MSB is set the element is zero).
Allows us to replace the non-commutative ANDNP with a much simpler OR node.
Move this after ANDNP shuffle combining as that can do a better job of this for constant ANDNP + PSHUFB masks.
Commit: 1195df25f4df987d258e6b46c090ca3e72eccecb
https://github.com/llvm/llvm-project/commit/1195df25f4df987d258e6b46c090ca3e72eccecb
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
[libc] Make the libc files always available to clang for the GPU (#100396)
Summary:
The GPU build always wants these to be exported to `clang`. These will
be neccesary for setting up tests or using the `libc` from the clang
binary. This will cover the standard 'runtimes' build. If the user is
doing a direct compilation, we will just leave it as-is and assume they
know what they're doing.
Commit: 338c35aabfbede9ba10a4f48a13e63f37d6f8c7c
https://github.com/llvm/llvm-project/commit/338c35aabfbede9ba10a4f48a13e63f37d6f8c7c
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.cpp
M clang/test/AST/Interp/cxx20.cpp
Log Message:
-----------
[clang][Interp] Fix calling variadic call operators
Commit: 8d8fa01a66d5051356b698ef0264a01f6aade185
https://github.com/llvm/llvm-project/commit/8d8fa01a66d5051356b698ef0264a01f6aade185
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/docs/gpu/building.rst
M libc/docs/gpu/using.rst
M libc/lib/CMakeLists.txt
M offload/test/libc/assert.c
M offload/test/lit.cfg
Log Message:
-----------
Reapply "[libc] Remove 'packaged' GPU build support (#100208)"
This reverts commit 550b83d658755664a7f0f93b36242e885743a91b.
Commit: 7d787df5b932b73aae6532d1e981152f103f9244
https://github.com/llvm/llvm-project/commit/7d787df5b932b73aae6532d1e981152f103f9244
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
[Clang][NFC] Simplify initialization of `OverloadCandidate` objects. (#100318)
Initialize some fields of OverloadCandidate in its constructor. The goal
here is try to fix read of uninitialized variable (which I was not able
to reproduce)
https://github.com/llvm/llvm-project/pull/93430#issuecomment-2187544278
We should certainly try to improve the construction of
`OverloadCandidate` further as it can be quite britle.
Commit: 8a77961280536b680c404a49002a00b988ca45fc
https://github.com/llvm/llvm-project/commit/8a77961280536b680c404a49002a00b988ca45fc
Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
A flang/test/Driver/Inputs/config-1.cfg
A flang/test/Driver/Inputs/config-2.cfg
A flang/test/Driver/Inputs/config-2a.cfg
A flang/test/Driver/Inputs/config-6.cfg
A flang/test/Driver/Inputs/config/config-4.cfg
A flang/test/Driver/Inputs/config2/config-4.cfg
A flang/test/Driver/config-file.f90
Log Message:
-----------
[Flang][Driver] Enable config file options (#100343)
Config files provide a facility to invoke the compiler with a predefined
set of options. The patch only enables these options in the flang
driver. Functionality was always there.
Commit: dd82a84e0eeafb017c7220c4a9fbd0a8a407f8a9
https://github.com/llvm/llvm-project/commit/dd82a84e0eeafb017c7220c4a9fbd0a8a407f8a9
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
Log Message:
-----------
[Clang] Fix an assertion failure introduced by #93430 (#100313)
The PR #93430 introduced an assertion that did not make any sense. and
caused a regression. The fix is to simply remove the assertion.
No changelog. the intent is to backport this fix to clang 19.
Commit: e1a3aa8c0fb0103427c45a5c861fc98aa44a4821
https://github.com/llvm/llvm-project/commit/e1a3aa8c0fb0103427c45a5c861fc98aa44a4821
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
Log Message:
-----------
LV/Legality: fix style after cursory reading (NFC) (#100363)
Commit: 4e28d30e335e6e075f4624ae8d5782fef6d3f1ed
https://github.com/llvm/llvm-project/commit/4e28d30e335e6e075f4624ae8d5782fef6d3f1ed
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
Log Message:
-----------
LV/Legality: update outdated comment for isInvariant (NFC) (#100366)
Commit: 0c03b4ce1081383b7649ac0f5ba3cbaffaf5bf28
https://github.com/llvm/llvm-project/commit/0c03b4ce1081383b7649ac0f5ba3cbaffaf5bf28
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/abs-intrinsic.ll
M llvm/test/Transforms/InstCombine/sub.ll
Log Message:
-----------
[InstCombine] Infer sub nuw from dominating conditions (#100164)
Alive2: https://alive2.llvm.org/ce/z/g3xxnM
Commit: 5bae81ba9e6db16fac3cc0ee96b134f3f588c8f4
https://github.com/llvm/llvm-project/commit/5bae81ba9e6db16fac3cc0ee96b134f3f588c8f4
Author: Krzysztof Pszeniczny <kpszeniczny at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/test/CodeGen/X86/code_placement_ext_tsp_large.ll
Log Message:
-----------
[CodeGen] Add an option to skip extTSP BB placement for huge functions. (#99310)
The extTSP-based basic block layout algorithm improves the performance
of the generated code, but unfortunately it has a super-linear time
complexity. This leads to extremely long compilation times for certain
relatively rare kinds of autogenerated code.
This patch adds an `-mllvm` flag to optionally restrict extTSP only to
functions smaller than a specified threshold. While commit
bcdc0477319a26fd8dcdde5ace3bdd6743599f44 added a knob to to limit the
maximum chain size, it's still possible that for certain huge functions
the number of chains is very large, leading to a quadratic behaviour in
ExtTSPImpl::mergeChainPairs.
Commit: c5abcb0521dd81bfd8b736c5d03177cc3a2d0fe3
https://github.com/llvm/llvm-project/commit/c5abcb0521dd81bfd8b736c5d03177cc3a2d0fe3
Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
R llvm/test/CodeGen/X86/GlobalISel/phi.ll
A llvm/test/CodeGen/X86/isel-phi.ll
Log Message:
-----------
[X86][GlobalISel] Reorganize tests for G_PHI and support fp80 (#100047)
* Verified scalar support of G_PHI
* Added cases with i1, ptr and x86_fp80 types
* Added phi inputs variability
We don't enable tests for i686 due to lack of float/integer types in
legalizer. We don't distinguish between illegal 64 bit integer G_LOAD
and legal double load using X87. It leads to artificial G_MERGE_VALUES
of floats into a single double.
Commit: 2754c083cba1798b335947ad5e4f0d654b013904
https://github.com/llvm/llvm-project/commit/2754c083cba1798b335947ad5e4f0d654b013904
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
LAA: mark LoopInfo pointer const (NFC) (#100373)
Commit: 8c20d715c0989eb3a9e253a53ce9d25ad6e5ee10
https://github.com/llvm/llvm-project/commit/8c20d715c0989eb3a9e253a53ce9d25ad6e5ee10
Author: Dmitry Chernenkov <dmitryc at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[Bazel][mlir] Fix Bazel for f83950ab8dfda1da882a6ef7b508639df251621a
Commit: af611a0a98fec65ab86af4208ca74e01541baba1
https://github.com/llvm/llvm-project/commit/af611a0a98fec65ab86af4208ca74e01541baba1
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/test/Driver/linker-wrapper.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[LinkerWrapper] Fix `-Xoffload-linker a=b` in offloading (#100270)
Summary:
We have the `-Xoffload-linker=triple=arg` syntax that split the argument
meant only for a single toolchain. However this borke if it was an `a=b`
type argument. Make it only treat it like a triple if it's a valid
triple.
Commit: d85da4af4983fb8997865014ca5f87ad2db5e272
https://github.com/llvm/llvm-project/commit/d85da4af4983fb8997865014ca5f87ad2db5e272
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-pmadd.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode - PMADDWD/PMADDUBSW intrinsics don't create poison
Fix regression introduced by #84924
Commit: 073c199ae79f4bf9a89fcbf103cbdd6333c8512b
https://github.com/llvm/llvm-project/commit/073c199ae79f4bf9a89fcbf103cbdd6333c8512b
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Type.h
M clang/test/SemaCXX/decltype.cpp
A clang/test/SemaCXX/typeof.cpp
R clang/test/SemaCXX/typeof_unqual.cpp
Log Message:
-----------
[Clang][AST] Don't use canonical type when checking dependence in Type::isOverloadable (#98563)
Fixes #97646.
Commit: 046a17717d9c5b5385ecd914621b48bdd91524d0
https://github.com/llvm/llvm-project/commit/046a17717d9c5b5385ecd914621b48bdd91524d0
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libcxx/CMakeLists.txt
M libcxx/docs/BuildingLibcxx.rst
Log Message:
-----------
[libc++] Improve behavior when using relative path for LIBCXX_ASSERTION_HANDLER_FILE (#100157)
Fixes #80696
Commit: 5898a7f4954e13cabc694a44e293d9040a09b9f4
https://github.com/llvm/llvm-project/commit/5898a7f4954e13cabc694a44e293d9040a09b9f4
Author: Angel Zhang <angel.zhang at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
M mlir/lib/Dialect/SPIRV/Transforms/CMakeLists.txt
Log Message:
-----------
[mlir][spirv] Update dependencies for #100138 (#100397)
This PR updates CMake and Bazel dependencies for #100138.
Commit: 5a53add85a6d5be2d15eea32a3d06fec35e2c699
https://github.com/llvm/llvm-project/commit/5a53add85a6d5be2d15eea32a3d06fec35e2c699
Author: Finlay <finlay.marno at codeplay.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
Log Message:
-----------
[mlir] Add optimization attrs for gpu-to-llvmspv function declarations and calls (#99301)
Adds the attributes nounwind and willreturn to all function
declarations. Adds `memory(none)` equivalent to the id/dimension
function declarations. The function declaration attributes are copied to
the function calls.
`nounwind` is legal because there are no exception in SPIR-V. I also do
not see any reason why any of these functions would not return when used
correctly.
I'm confident that the get id/dim functions will have no externally
observable memory effects, but think the convergent functions will have
effects.
Commit: 7102592af740ed9f8b388c12dd2182039a58167d
https://github.com/llvm/llvm-project/commit/7102592af740ed9f8b388c12dd2182039a58167d
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M offload/cmake/OpenMPTesting.cmake
M offload/include/PluginManager.h
M offload/src/PluginManager.cpp
M offload/src/interface.cpp
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
A offload/test/tools/llvm-omp-device-info.c
M offload/tools/deviceinfo/CMakeLists.txt
A offload/tools/deviceinfo/llvm-offload-device-info.cpp
R offload/tools/deviceinfo/llvm-omp-device-info.cpp
Log Message:
-----------
[Offload] Repair and rename `llvm-omp-device-info` (to `-offload-`) (#100309)
The `llvm-omp-device-info` tool is very handy, but broke due to the lazy
evaluation of devices. This repairs the functionality and adds a test.
The tool is also renamed into `llvm-offload-device-info` as `-omp-` is
going away.
Commit: 83fb0643f7148499eb6ed19155ab69bfd8096ed7
https://github.com/llvm/llvm-project/commit/83fb0643f7148499eb6ed19155ab69bfd8096ed7
Author: memory-thrasher <39869500+memory-thrasher at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/AST/MicrosoftMangle.cpp
A clang/test/CodeGen/ms_mangler_templatearg_opte.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors-msvc.cpp
Log Message:
-----------
Adds a pseudonym to clang's windows mangler... (#97792)
…to handle template argument values that are pointers one-past-the-end
of a non-array symbol. Also improves error messages in other template
argument scenarios where clang bails.
https://github.com/llvm/llvm-project/issues/97756
I don't think I hooked up the unit test right. I'm not sure one is
really needed for what boils down to a tweaked if statement. Please
advise.
Commit: 0c274d527ae36db420c4273f83fcb6c859b28f1b
https://github.com/llvm/llvm-project/commit/0c274d527ae36db420c4273f83fcb6c859b28f1b
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll
Log Message:
-----------
[RISCV][TTI] Add coverage of odd sized vector loads and stores
Commit: cdc193459d90fad83d2eafaccfe03368a9a8a160
https://github.com/llvm/llvm-project/commit/cdc193459d90fad83d2eafaccfe03368a9a8a160
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/docs/GitHub.rst
Log Message:
-----------
Update the backporting docs (#100401)
The documentation implies the special commands only work with issues,
but they also work directly from a pull request.
Commit: 8fd9624cf729dd722a170a9dfd8f725966515231
https://github.com/llvm/llvm-project/commit/8fd9624cf729dd722a170a9dfd8f725966515231
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll
Log Message:
-----------
[RISCV][CostModel] Test default lowering strategy for vector LD/ST
Remove two options from the test command line:
* -riscv-v-vector-bits-min=128 -- This has no effect as v implied zvl128b,
which provides the same minimum.
* -riscv-v-fixed-length-vector-lmul-max=1 -- This one forced the backend
to split as if LMUL>m1 were illegal. This diverges significantly from
default behavior (where all LMUL are legal). Note that we do still
have splitting test coverage after this change. Look at e.g. 32 x i64.
Commit: bb0300cf7ce54bfbb1607348c89cb0525e12076b
https://github.com/llvm/llvm-project/commit/bb0300cf7ce54bfbb1607348c89cb0525e12076b
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Compiler.cpp
M clang/lib/AST/Interp/Compiler.h
M clang/test/AST/Interp/records.cpp
Log Message:
-----------
[clang][Interp] Fix initializing array subobjects with This pointers
We need to select the right array element once we see the CXXThisExpr.
Commit: ea222be0d9266d9d5c100496f8c9606f213454ee
https://github.com/llvm/llvm-project/commit/ea222be0d9266d9d5c100496f8c9606f213454ee
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M lld/test/COFF/lto-cpu-string.ll
M lld/test/ELF/lto/cpu-string.ll
M lld/test/ELF/lto/mllvm.ll
M lld/test/MachO/lto-cpu-string.ll
M llvm/docs/ReleaseNotes.rst
M llvm/lib/MC/MCParser/AsmParser.cpp
A llvm/test/MC/AArch64/align-fill-byte-zero.s
A llvm/test/MC/ARM/align-fill-byte-zero.s
M llvm/test/MC/AsmParser/directive_align.s
M llvm/test/MC/COFF/align-nops.s
M llvm/test/MC/ELF/align-nops.s
M llvm/test/MC/MachO/x86_32-optimal_nop.s
A llvm/test/MC/RISCV/align-fill-byte-zero.s
M llvm/test/MC/X86/code16gcc-align.s
Log Message:
-----------
[MC] Honour alignment directive fill value for non-intel (#100136)
As reported in https://llvm.org/PR30955, `.balign` with a fill-value of 0 did
not actually align using zeroes, on non-x86 targets.
This is because the check of whether to use the code alignment routines
or whether to just use the fill value was checking whether the fill
value was equal to `TextAlignFillValue`, which has not been changed from
its default of 0 on most targets (it has been changed for x86). However,
most targets do not set the fill value because it doesn't entirely make
sense -- i.e. on AArch64 there's no reasonable byte value to use for
alignment, as instructions are word-sized and have to be well-aligned.
I think the check at the end `AsmParser::parseDirectiveAlign` is
suspicious even on x86 - if you use `.balign <align>, 0x90` in a code
section, you don't end up with a block of `0x90` repeated, you end up
with a block of NOPs of various widths. This functionality is never
tested.
The fix here is to modify the check to ignore the default text align
fill value when choosing to do code alignment or not.
Fixes #30303
Commit: 97839a8862bde89f07060ff0aa4993a868a501cd
https://github.com/llvm/llvm-project/commit/97839a8862bde89f07060ff0aa4993a868a501cd
Author: Andy Kaylor <andrew.kaylor at intel.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/fp-contract.c
M clang/test/Driver/fp-model.c
Log Message:
-----------
[Driver] Clean up fp-contract handling in clang driver (#99723)
This change refactors the fp-contract handling in
RenderFloatingPointOptions in the clang driver code and fixes some
inconsistencies in the way warnings are reported for changes in the
fp-contract behavior.
Commit: 2e57e6366677390110f5382894c8afeba8da7419
https://github.com/llvm/llvm-project/commit/2e57e6366677390110f5382894c8afeba8da7419
Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M openmp/runtime/src/kmp_tasking.cpp
A openmp/runtime/test/tasking/issue-94260-1.cpp
A openmp/runtime/test/tasking/issue-94260-2.c
Log Message:
-----------
[OpenMP][libomp] Fix tasking debug assert (#95823)
The debug assert is meant to check that the index is a valid which means
the runtime needs to check against the size of the array instead of the
number of threads. A free()-ed thread put back in the thread pool may
index into anywhere inside the task team's available array from 0 to
tt_max_threads potentially.
Fixes: #94260
Commit: c628dbd030ff084fe5e06315ddf09a47182e9716
https://github.com/llvm/llvm-project/commit/c628dbd030ff084fe5e06315ddf09a47182e9716
Author: smanna12 <soumi.manna at intel.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Sema/SemaExprObjC.cpp
Log Message:
-----------
[Clang] Prevent null pointer dereference in designated initializer check (#97220)
This patch adds an assertion in clang::SemaObjC::BuildInstanceMessage()
to ensure getCurMethodDecl() returns a valid method declaration,
addressing a static analyzer finding.
Commit: 8d3252a8987818171878a26e4298b4b5dbf2a7e9
https://github.com/llvm/llvm-project/commit/8d3252a8987818171878a26e4298b4b5dbf2a7e9
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/include/__bit_reference
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__iterator/wrap_iter.h
M libcxx/include/deque
M libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
M libcxx/test/std/containers/sequences/array/iterators.pass.cpp
M libcxx/test/std/containers/sequences/deque/iterators.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/iterators.pass.cpp
M libcxx/test/std/containers/sequences/vector/iterators.pass.cpp
A libcxx/test/std/containers/views/views.span/span.iterators/iterator.pass.cpp
A libcxx/test/std/strings/string.view/string.view.iterators/iterators.pass.cpp
M libcxx/test/support/test_iterators.h
Log Message:
-----------
[libc++][spaceship] Implements X::iterator container requirements. (#99343)
This implements the requirements for the container iterator requirements
for array, deque, vector, and `vector<bool>`.
Implements:
- LWG3352 strong_equality isn't a thing
Implements parts of:
- P1614R2 The Mothership has Landed
Fixes: https://github.com/llvm/llvm-project/issues/62486
Commit: fb1e077982e90e715058188fa667ea5dd8027a98
https://github.com/llvm/llvm-project/commit/fb1e077982e90e715058188fa667ea5dd8027a98
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Basic/Targets/NVPTX.h
Log Message:
-----------
[NVPTX] Restore old va_list builtin type (#100438)
Summary:
This was changed to `void *` from `char *` unintentionally, put it back.
Commit: 3902710a447cd0dc39cc61f001fb023a502db499
https://github.com/llvm/llvm-project/commit/3902710a447cd0dc39cc61f001fb023a502db499
Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
A llvm/test/CodeGen/NVPTX/fence.ll
Log Message:
-----------
[NVPTX] Support fence instruction (#99649)
Commit: f729c09c3a56ec41b558eff1a6475a8d8bd20d41
https://github.com/llvm/llvm-project/commit/f729c09c3a56ec41b558eff1a6475a8d8bd20d41
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCMachObjectWriter.h
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MachObjectWriter.cpp
Log Message:
-----------
MC: Inline createMachObjectWriter into MCAsmBackend
We could do the same to COFF once WinCOFFObjectWriter is cleaned up
(#100303).
Commit: f719a339a89bd64900217dd06075e618ed587be9
https://github.com/llvm/llvm-project/commit/f719a339a89bd64900217dd06075e618ed587be9
Author: David Blaikie <dblaikie at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Core.cpp
Log Message:
-----------
Mark assert-used-only variable as [[maybe_unused]]
Seemed nicer than inlining, given the complexities of flag checking and
the multiple uses.
Commit: 0891ccc0c68c35e17562c752955788f08054bcdb
https://github.com/llvm/llvm-project/commit/0891ccc0c68c35e17562c752955788f08054bcdb
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
Log Message:
-----------
[Frontend][OpenMP] Apply ompx_attribute to all allowing leaf constructs (#100370)
By default, in a compound directive, a clause will apply to the unique
leaf construct that allows it. Clauses that could apply to multiple leaf
constructs follow different rules.
For ompx_attribute, apply it to all leaf constructs that allow it.
Commit: 0760aec54ca6f680f4786c4fc3bbae8f500deeab
https://github.com/llvm/llvm-project/commit/0760aec54ca6f680f4786c4fc3bbae8f500deeab
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/MachineTraceMetrics.cpp
Log Message:
-----------
MTM: fix issues after cursory reading (#100404)
Commit: 3db78fa1dd639ba5db761023e04f97418cfcd00e
https://github.com/llvm/llvm-project/commit/3db78fa1dd639ba5db761023e04f97418cfcd00e
Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
A llvm/test/CodeGen/NVPTX/load-store-sm-70.ll
M llvm/test/CodeGen/NVPTX/load-store.ll
Log Message:
-----------
[NVPTX] Add Volta Load/Store Atomics (.relaxed, .acquire, .release) and Volatile (.mmio/.volatile) support (#99709)
Followup to https://github.com/llvm/llvm-project/pull/98022 which broke
support for LLVM `unordered` atomic ordering.
This PR lowers `atomic unordered` to PTX volatile operations to preserve
atomicity, and adds a bunch of tests for this ordering to the NVPTX
backend (we had none).
Commit: 0dbd72d6abfd390fc62eab43e195c21feb5e9bd0
https://github.com/llvm/llvm-project/commit/0dbd72d6abfd390fc62eab43e195c21feb5e9bd0
Author: Brendan Dahl <brendan.dahl at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsWebAssembly.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/builtins-wasm.c
M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/half-precision.ll
M llvm/test/MC/WebAssembly/simd-encodings.s
Log Message:
-----------
[WebAssembly] Implement f16x8.replace_lane instruction. (#99388)
Use a builtin and intrinsic until half types are better supported for
instruction selection.
Commit: b00fddec2db19a372bb4cec5558163214e6f0043
https://github.com/llvm/llvm-project/commit/b00fddec2db19a372bb4cec5558163214e6f0043
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmacc.ll
Log Message:
-----------
[RISCV] Add test cases for failures to form widening FMA instructions. NFC
If the fp_extend is in the scalar domain before the shuffle, we
won't recognize the widening opportunity.
Commit: 59e07f34bdbd463254b0b2744bd0a587d2cd6438
https://github.com/llvm/llvm-project/commit/59e07f34bdbd463254b0b2744bd0a587d2cd6438
Author: Gang Chen <gangc at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
Log Message:
-----------
[AMDGPU][GlobaISel] wrap the load-splitting code in RegBank selection with condition (#98966)
The load-splitting code in RegBank selection is only relevant to those
listed address-spaces because there are cases in those address-spaces in
which we are not sure how far to split during legalization
---------
Signed-off-by: gangc <gangc at amd.com>
Commit: 2e3ee31d2901bd1faeb57703992358130d5f2dcc
https://github.com/llvm/llvm-project/commit/2e3ee31d2901bd1faeb57703992358130d5f2dcc
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/docs/gpu/support.rst
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/sscanf_test.cpp
Log Message:
-----------
[libc] Enable 'sscanf' on the GPU #100211
Summary:
We can enable the sscanf function on the GPU now. This required adding
the configs to the scanf list so that the GPU build didn't do float
conversions.
Commit: 8c7188aa4c1468971d18e9dff8f2b85aa7e9bfd9
https://github.com/llvm/llvm-project/commit/8c7188aa4c1468971d18e9dff8f2b85aa7e9bfd9
Author: Kevin McAfee <kmcafee at nvidia.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
A llvm/test/Transforms/DCE/nvvm-ldu-ldg-willreturn.ll
Log Message:
-----------
Update NVVM ldu/ldg intrinsics with IntrWillReturn and test for DCE (#98968)
Dead calls to these intrinsics were not being deleted at the IR level as
they were not marked `IntrWillReturn`, though they were being deleted
when building the SDAG. This fixes that and adds a test to confirm they
are deleted during `opt`
Commit: deb40a253a5448a7b1f8d9680a0ae512c2d17283
https://github.com/llvm/llvm-project/commit/deb40a253a5448a7b1f8d9680a0ae512c2d17283
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfw-web-simplification.ll
Log Message:
-----------
[RISCV] Add missing CHECK prefix to fixed-vectors-vfw-web-simplification.ll. NFC
The FOLDING prefix was ambiguous on one of the test cases. It would be
nice if the update script reported this.
Commit: 0ee32c45730c94be1b7d5fa60a0e8dff5751d014
https://github.com/llvm/llvm-project/commit/0ee32c45730c94be1b7d5fa60a0e8dff5751d014
Author: Sumanth Gundapaneni <sumanth.gundapaneni at amd.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
A llvm/test/CodeGen/AMDGPU/lrint.ll
Log Message:
-----------
[AMDGPU] Implement llvm.lrint intrinsic lowering (#98931)
This patch enabled the target-independent lowering of llvm.lrint via
GlobalISel.
For SelectionDAG, the instrinsic is custom lowered for AMDGPU.
Commit: 20eff684203287828d6722fc860b9d3621429542
https://github.com/llvm/llvm-project/commit/20eff684203287828d6722fc860b9d3621429542
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CXX/basic/basic.types/p10.cpp
M clang/test/Sema/constant-builtins-2.c
M clang/test/SemaCXX/class.cpp
M clang/test/SemaCXX/enum.cpp
Log Message:
-----------
[ExprConstant] Handle shift overflow the same way as other kinds of overflow (#99579)
We have a mechanism to allow folding expressions that aren't ICEs as an
extension; use it more consistently.
This ends up causing bad effects on diagnostics in a few cases, but
that's not specific to shifts; it's a general issue with the way those
uses handle overflow diagnostics.
Commit: b1f263e4c2466a693609a3930f53b9887be67b5b
https://github.com/llvm/llvm-project/commit/b1f263e4c2466a693609a3930f53b9887be67b5b
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/MachineLICM.cpp
Log Message:
-----------
[llvm][MachineLICM] Fix a comment typo. NFC
Commit: bfcfb0fd2dea5e06f74e49ff8b4e1dc10c9acf6a
https://github.com/llvm/llvm-project/commit/bfcfb0fd2dea5e06f74e49ff8b4e1dc10c9acf6a
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-trunc.mir
Log Message:
-----------
[GlobalIsel] Modernize truncate of ext. (#100338)
Credits:
https://github.com/llvm/llvm-project/pull/90964
https://reviews.llvm.org/D87050
combine-trunc.mir
Functional changes intended.
Commit: 10ff2bcb5eaf169b0d9f6f12851ccae339a54aaf
https://github.com/llvm/llvm-project/commit/10ff2bcb5eaf169b0d9f6f12851ccae339a54aaf
Author: Narayan <32898329+vortex73 at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
[Clang] Refactor uses of `Cand->Function` in SemaOverload.cpp (#98965)
- [ ] adds checks to called functions containing `Cand->Function` as an
argument.
- [ ] Assigned `Cand->Function` as a `FunctionDecl*` to enhance
readablity.
Solves: #98769 and #98942
Commit: 0431d6dab40b05d9f4a312a9c170c81a889bfb49
https://github.com/llvm/llvm-project/commit/0431d6dab40b05d9f4a312a9c170c81a889bfb49
Author: James Y Knight <jyknight at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/BuiltinsX86.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/lib/Sema/SemaX86.cpp
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/mmx-inline-asm.c
M clang/test/CodeGen/X86/mmx-shift-with-immediate.c
M clang/test/CodeGen/attr-target-x86-mmx.c
M clang/test/CodeGen/builtins-x86.c
M clang/test/CodeGen/palignr.c
R clang/test/CodeGen/pr26099.c
M clang/test/Headers/xmmintrin.c
M clang/test/Sema/x86-builtin-palignr.c
M clang/www/builtins.py
M llvm/include/llvm/IR/IntrinsicsX86.td
Log Message:
-----------
Clang: convert `__m64` intrinsics to unconditionally use SSE2 instead of MMX. (#96540)
The MMX instruction set is legacy, and the SSE2 variants are in every
way superior, when they are available -- and they have been available
since the Pentium 4 was released, 20 years ago.
Therefore, we are switching the "MMX" intrinsics to depend on SSE2,
unconditionally. This change entirely drops the ability to generate
vectorized code using compiler intrinsics for chips with MMX but without
SSE2: the Intel Pentium MMX, Pentium, II, and Pentium III (released
1997-1999), as well as AMD K6 and K7 series chips of around the same
timeframe. Targeting these older CPUs remains supported -- simply
without the ability to use MMX compiler intrinsics.
Migrating away from the use of MMX registers also fixes a rather
non-obvious requirement. The long-standing programming model for these
MMX intrinsics requires that the programmer be aware of the x87/MMX
mode-switching semantics, and manually call `_mm_empty()` between using
any MMX instruction and any x87 FPU instruction. If you neglect to, then
every future x87 operation will return a NaN result. This requirement is
not at all obvious to users of these these intrinsic functions, and
causes very difficult to detect bugs.
Worse, even if the user did write code that correctly calls
`_mm_empty()` in the right places, LLVM may sometimes reorder x87 and
mmx operations around each-other, unaware of this mode switching issue.
Eliminating the use of MMX registers eliminates this problem.
This change also deletes the now-unnecessary MMX `__builtin_ia32_*`
functions from Clang. Only 3 MMX-related builtins remain in use --
`__builtin_ia32_emms`, used by `_mm_empty`, and
`__builtin_ia32_vec_{ext,set}_v4si`, used by `_mm_insert_pi16` and
`_mm_extract_pi16`. Note particularly that the latter two lower to
generic, non-MMX, IR. Support for the LLVM intrinsics underlying these
removed builtins still remains, for the moment.
The file `clang/www/builtins.py` has been updated with mappings from the
newly-removed `__builtin_ia32` functions to the still-supported
equivalents in `mmintrin.h`.
(Originally uploaded at https://reviews.llvm.org/D86855 and
https://reviews.llvm.org/D94252)
Fixes issue #41665
Works towards #98272
Commit: c6e69b041a7e6d18463f6cf684b10fd46a62c496
https://github.com/llvm/llvm-project/commit/c6e69b041a7e6d18463f6cf684b10fd46a62c496
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M flang/docs/InternalProcedureTrampolines.md
Log Message:
-----------
[Flang][Docs] Update information about AArch64 trampolines (#100391)
Commits c4b66bf and 7647174 add support for AArch64 trampolines. Updated
documentation to reflect the changes.
Commit: 70c6e79e6d3e897418f3556a25e22e66ff018dc4
https://github.com/llvm/llvm-project/commit/70c6e79e6d3e897418f3556a25e22e66ff018dc4
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-07-25 (Thu, 25 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/CodeGen/ptrauth-function-attributes.c
M clang/test/CodeGen/ubsan-function.cpp
M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
M clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
M clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
M clang/test/Driver/aarch64-ptrauth.c
M clang/test/Preprocessor/ptrauth_feature.c
M clang/test/Sema/ptrauth-indirect-goto.c
Log Message:
-----------
[PAC][clang][test] Implement missing tests for some PAuth features (#100206)
Implement tests for the following PAuth-related features:
- driver, preprocessor and ELF codegen tests for type_info vtable
pointer discrimination #99726;
- driver, preprocessor, and ELF codegen (emitting function attributes) +
sema (emitting errors) tests for indirect gotos signing #97647;
- ELF codegen tests for ubsan type checks + auth #99590;
- ELF codegen tests for constant global init with polymorphic MI #99741;
- ELF codegen tests for C++ member function pointers auth #99576.
Commit: 74e14605d73e6286651d4b47ba5e04858cec7ebd
https://github.com/llvm/llvm-project/commit/74e14605d73e6286651d4b47ba5e04858cec7ebd
Author: David Blaikie <dblaikie at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M lld/test/MachO/objc-category-merging-erase-objc-name-test.s
Log Message:
-----------
Fix test to write to %T instead of the current working directory (which may not be writeable)
Commit: 8b094c9df34f3190b66d11d19379be1f4c89beec
https://github.com/llvm/llvm-project/commit/8b094c9df34f3190b66d11d19379be1f4c89beec
Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/docs/dev/header_generation.rst
Log Message:
-----------
[libc][newheadergen]: PyYaml Version Update (#100463)
- a lot of builds had an issue using new headergen because they do not
have PyYaml installed.
Commit: e846fb48038a34d8df3ad7412bbdcf37e9e7acc9
https://github.com/llvm/llvm-project/commit/e846fb48038a34d8df3ad7412bbdcf37e9e7acc9
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Log Message:
-----------
[lldb] Prevent passing a nullptr to std::string in ObjectFileMachO (#100421)
Prevent passing a nullptr to std::string::insert in
ObjectFileMachO::GetDependentModules. Calling GetCString on an empty
ConstString will return a nullptr, which is undefined behavior. Instead,
use the GetString helper which will return an empty string in that case.
rdar://132388027
Commit: 58fb51492d9669525662fa269295d85537968569
https://github.com/llvm/llvm-project/commit/58fb51492d9669525662fa269295d85537968569
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/resolve-directives.cpp
R flang/test/Semantics/OpenMP/copyprivate04.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
M flang/test/Semantics/OpenMP/reduction08.f90
M flang/test/Semantics/OpenMP/reduction09.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol05.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol08.f90
M flang/test/Semantics/OpenMP/symbol09.f90
Log Message:
-----------
Revert "[flang][OpenMP] Fix copyprivate semantic checks" (#100478)
Reverts llvm/llvm-project#95799
This caused errors in some internal test suites.
Commit: b79568654e38a14ef921af932ed96abd8961b1ed
https://github.com/llvm/llvm-project/commit/b79568654e38a14ef921af932ed96abd8961b1ed
Author: James Y Knight <jyknight at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
Clang: adjust MMX instrinsics release note.
Commit: 3f6eb13abf643afec17a73448ede380606531226
https://github.com/llvm/llvm-project/commit/3f6eb13abf643afec17a73448ede380606531226
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-07-25 (Thu, 25 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/aarch64-ptrauth.c
Log Message:
-----------
[PAC][clang] Enable `-fptrauth-indirect-gotos` as part of pauthtest ABI (#100480)
Commit: 7b51777ed89969ae86a0714565d195faf394b7db
https://github.com/llvm/llvm-project/commit/7b51777ed89969ae86a0714565d195faf394b7db
Author: Job Henandez Lara <hj93 at protonmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/totalordermag.cpp
A libc/src/math/generic/totalordermagf.cpp
A libc/src/math/generic/totalordermagf128.cpp
A libc/src/math/generic/totalordermagl.cpp
A libc/src/math/totalordermag.h
A libc/src/math/totalordermagf.h
A libc/src/math/totalordermagf128.h
A libc/src/math/totalordermagl.h
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/totalordermag_test.cpp
A libc/test/src/math/smoke/totalordermagf128_test.cpp
A libc/test/src/math/smoke/totalordermagf_test.cpp
A libc/test/src/math/smoke/totalordermagl_test.cpp
Log Message:
-----------
[libc][math][c23] add entrypoints and tests for totalordermag{f,l,f128} (#100159)
Fixes https://github.com/llvm/llvm-project/issues/100139
Commit: 393a957d1c9303b87361dfdc3b8e504ba435ea8e
https://github.com/llvm/llvm-project/commit/393a957d1c9303b87361dfdc3b8e504ba435ea8e
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency after 74a1ca504bf60f02431140ee72dbe1c158556237
Commit: 0af754213507972a0d0301bc195d65414d8dc193
https://github.com/llvm/llvm-project/commit/0af754213507972a0d0301bc195d65414d8dc193
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-07-25 (Thu, 25 Jul 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
A llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj-phi.ll
Log Message:
-----------
Reapply "[WebAssembly] Fix phi handling for Wasm SjLj (#99730)"
This reapplies #99730. #99730 contained a nondeterministic iteration
which failed the reverse-iteration bot
(https://lab.llvm.org/buildbot/#/builders/110/builds/474) and reverted
in
https://github.com/llvm/llvm-project/commit/f3f0d9928f982cfd302351f418bcc5b63cc1bb9d.
The fix is make the order of iteration of new predecessors
determintistic by using `SmallSetVector`.
```diff
--- a/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
@@ -1689,7 +1689,7 @@ void WebAssemblyLowerEmscriptenEHSjLj::handleLongjmpableCallsForWasmSjLj(
}
}
- SmallDenseMap<BasicBlock *, SmallPtrSet<BasicBlock *, 4>, 4>
+ SmallDenseMap<BasicBlock *, SmallSetVector<BasicBlock *, 4>, 4>
UnwindDestToNewPreds;
for (auto *CI : LongjmpableCalls) {
// Even if the callee function has attribute 'nounwind', which is true for
```
Commit: 115c89b94cb8af10c2029001a1dd28154d948a37
https://github.com/llvm/llvm-project/commit/115c89b94cb8af10c2029001a1dd28154d948a37
Author: Thurston Dang <thurston at google.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_float.ll
Log Message:
-----------
[msan] Enable and update neon_vst_float test case (#100435)
This enables the neon_vst_float test case
(https://github.com/llvm/llvm-project/pull/100210). Although MSan does
not yet generate useful IR, since opt is run with -disable-verify, the
test case should still run successfully.
This patch also makes minor fixes to the test case:
- 'ptr %a' is renamed to 'ptr %p' because update_test_checks.py is
case-insensitive, and was unexpectedly aliasing the %A and %a in the
expected output ('<1 x double> [[A]], <1 x double> [[B]], ptr [[A]]').
- The sample output for st1x{2,3,4} was previously accidentally
generated using a prototype version of MSan rather than trunk; these
instructions are not yet instrumented.
- Changes the comment on how the test case was generated, because '; |
sed -r 's/^\/\/ CHECK:[ ]*//'' was being interpreted by FileCheck to be
a CHECK: command.
Commit: e894df6392beea3723627329009f3e6d51d16f47
https://github.com/llvm/llvm-project/commit/e894df6392beea3723627329009f3e6d51d16f47
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp
Log Message:
-----------
[compiler-rt] Implement `DumpAllRegisters` for arm-linux and aarch64-linux (#100398)
Reland with a couple of build fixes
#100337 #100342 #99613
Commit: 2ba1aeed2efd8156717886f89f6d4270b1df7a18
https://github.com/llvm/llvm-project/commit/2ba1aeed2efd8156717886f89f6d4270b1df7a18
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
M lldb/source/Expression/IRMemoryMap.cpp
Log Message:
-----------
[lldb] Don't use a vm addr range starting at 0 for local memory (#100288)
When an inferior stub cannot allocate memory for lldb, and lldb needs to
store the result of expressions, it will do it in lldb's own memory
range ("host memory"). But it needs to find a virtual address range that
is not used in the inferior process. It tries to use the
qMemoryRegionInfo gdb remote serial protocol packet to find a range that
is inaccessible, starting at address 0 and moving up the size of each
region.
If the first region found at address 0 is inaccessible, lldb will use
the address range starting at 0 to mean "read lldb's host memory, not
the process memory", and programs that crash with a null dereference
will have poor behavior.
This patch skips consideration of a memory region that starts at address
0.
I also clarified the documentation of qMemoryRegionInfo to make it clear
that the stub is required to provide permissions for a memory range that
is accessable, it is not an optional key in this response. This issue
was originally found by a stub that did not list permissions in its
response, and lldb treated the first region returned as the one it would
use. (the stub also didn't support the memory-allocate packet)
Commit: 2307aac9b84936c7b1d64f274c7477ed1e55be8e
https://github.com/llvm/llvm-project/commit/2307aac9b84936c7b1d64f274c7477ed1e55be8e
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2024-07-24 (Wed, 24 Jul 2024)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/Exceptions.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
M bolt/test/X86/pseudoprobe-decoding-inline.test
A bolt/test/X86/three-way-split-jt.s
M clang/docs/ReleaseNotes.rst
M clang/docs/analyzer/checkers/mismatched_deallocator_example.cpp
M clang/include/clang/AST/Type.h
M clang/include/clang/Basic/BuiltinsWebAssembly.def
M clang/include/clang/Basic/BuiltinsX86.def
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Driver/Options.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/Compiler.cpp
M clang/lib/AST/Interp/Compiler.h
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/ptrauth.h
M clang/lib/Headers/stdatomic.h
M clang/lib/Headers/tmmintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaX86.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/test/AST/Interp/cxx20.cpp
M clang/test/AST/Interp/literals.cpp
M clang/test/AST/Interp/records.cpp
A clang/test/AST/ast-dump-ptrauth-json.cpp
M clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
M clang/test/Analysis/Malloc+MismatchedDeallocator+NewDelete.cpp
M clang/test/Analysis/MismatchedDeallocator-checker-test.mm
M clang/test/Analysis/NewDelete-intersections.mm
M clang/test/Analysis/free.c
M clang/test/Analysis/free.cpp
M clang/test/Analysis/getline-alloc.c
M clang/test/Analysis/kmalloc-linux.c
M clang/test/Analysis/malloc-fnptr-plist.c
M clang/test/Analysis/malloc-std-namespace.cpp
M clang/test/Analysis/malloc.c
M clang/test/Analysis/malloc.mm
M clang/test/Analysis/plist-macros.cpp
M clang/test/Analysis/weak-functions.c
M clang/test/CXX/basic/basic.types/p10.cpp
A clang/test/CodeGen/PowerPC/save-reg-params.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/mmx-inline-asm.c
M clang/test/CodeGen/X86/mmx-shift-with-immediate.c
M clang/test/CodeGen/attr-target-x86-mmx.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGen/builtins-x86.c
A clang/test/CodeGen/ms_mangler_templatearg_opte.cpp
M clang/test/CodeGen/palignr.c
R clang/test/CodeGen/pr26099.c
M clang/test/CodeGen/ptrauth-function-attributes.c
M clang/test/CodeGen/ubsan-function.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors-msvc.cpp
M clang/test/CodeGenCXX/mangle-fail.cpp
M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
M clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
M clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
M clang/test/Driver/aarch64-ptrauth.c
A clang/test/Driver/aix-save-reg-params.c
M clang/test/Driver/debug-options.c
M clang/test/Driver/fp-contract.c
M clang/test/Driver/fp-model.c
M clang/test/Driver/linker-wrapper.c
M clang/test/Driver/lto-jobs.c
M clang/test/Driver/ppc-unsupported.c
M clang/test/Driver/ps4-linker.c
M clang/test/Headers/stdatomic.c
M clang/test/Headers/xmmintrin.c
M clang/test/Preprocessor/ptrauth_feature.c
M clang/test/Sema/attr-ownership.c
M clang/test/Sema/constant-builtins-2.c
M clang/test/Sema/ptrauth-indirect-goto.c
M clang/test/Sema/ptrauth-intrinsics-macro.c
M clang/test/Sema/x86-builtin-palignr.c
M clang/test/SemaCXX/attr-lifetimebound.cpp
M clang/test/SemaCXX/class.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaCXX/decltype.cpp
M clang/test/SemaCXX/enum.cpp
A clang/test/SemaCXX/ptrauth-type-discriminator.cpp
A clang/test/SemaCXX/typeof.cpp
R clang/test/SemaCXX/typeof_unqual.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/www/builtins.py
M compiler-rt/CMakeLists.txt
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/asan/tests/CMakeLists.txt
M compiler-rt/lib/builtins/README.txt
M compiler-rt/lib/builtins/aarch64/sme-abi-vg.c
M compiler-rt/lib/builtins/aarch64/sme-abi.S
M compiler-rt/lib/builtins/cpu_model/x86.c
M compiler-rt/lib/builtins/trampoline_setup.c
M compiler-rt/lib/nsan/nsan.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/test/asan/Unit/lit.site.cfg.py.in
M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp
M compiler-rt/test/tsan/debug_alloc_stack.cpp
M flang/docs/InternalProcedureTrampolines.md
M flang/include/flang/Semantics/tools.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Driver/Inputs/config-1.cfg
A flang/test/Driver/Inputs/config-2.cfg
A flang/test/Driver/Inputs/config-2a.cfg
A flang/test/Driver/Inputs/config-6.cfg
A flang/test/Driver/Inputs/config/config-4.cfg
A flang/test/Driver/Inputs/config2/config-4.cfg
A flang/test/Driver/config-file.f90
M flang/test/Fir/abstract-results.fir
M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
M flang/test/Lower/OpenMP/private-commonblock.f90
R flang/test/Semantics/OpenMP/copyprivate04.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
M flang/test/Semantics/OpenMP/reduction08.f90
M flang/test/Semantics/OpenMP/reduction09.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol05.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol08.f90
M flang/test/Semantics/OpenMP/symbol09.f90
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/dev/header_generation.rst
M libc/docs/gpu/building.rst
M libc/docs/gpu/support.rst
M libc/docs/gpu/using.rst
M libc/docs/math/index.rst
M libc/lib/CMakeLists.txt
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/totalordermag.cpp
A libc/src/math/generic/totalordermagf.cpp
A libc/src/math/generic/totalordermagf128.cpp
A libc/src/math/generic/totalordermagl.cpp
A libc/src/math/totalordermag.h
A libc/src/math/totalordermagf.h
A libc/src/math/totalordermagf128.h
A libc/src/math/totalordermagl.h
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/TotalOrderMagTest.h
M libc/test/src/math/smoke/TotalOrderTest.h
A libc/test/src/math/smoke/totalordermag_test.cpp
A libc/test/src/math/smoke/totalordermagf128_test.cpp
A libc/test/src/math/smoke/totalordermagf_test.cpp
A libc/test/src/math/smoke/totalordermagl_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/sscanf_test.cpp
M libcxx/CMakeLists.txt
M libcxx/docs/BuildingLibcxx.rst
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/include/__bit_reference
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__iterator/wrap_iter.h
M libcxx/include/__math/hypot.h
M libcxx/include/cmath
M libcxx/include/deque
M libcxx/test/libcxx/clang_modules_include.gen.py
M libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort.pass.cpp
M libcxx/test/std/containers/sequences/array/iterators.pass.cpp
M libcxx/test/std/containers/sequences/deque/iterators.pass.cpp
M libcxx/test/std/containers/sequences/vector.bool/iterators.pass.cpp
M libcxx/test/std/containers/sequences/vector/iterators.pass.cpp
A libcxx/test/std/containers/views/views.span/span.iterators/iterator.pass.cpp
M libcxx/test/std/localization/locale.categories/category.ctype/facet.ctype.special/facet.ctype.char.statics/classic_table.pass.cpp
M libcxx/test/std/numerics/c.math/cmath.pass.cpp
A libcxx/test/std/strings/string.view/string.view.iterators/iterators.pass.cpp
M libcxx/test/support/fp_compare.h
M libcxx/test/support/test_iterators.h
M lld/test/COFF/lto-cpu-string.ll
M lld/test/ELF/lto/cpu-string.ll
M lld/test/ELF/lto/mllvm.ll
M lld/test/MachO/lto-cpu-string.ll
M lld/test/MachO/objc-category-merging-erase-objc-name-test.s
M lldb/docs/resources/lldbgdbremote.md
M lldb/source/Expression/IRMemoryMap.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M llvm/docs/GitHub.rst
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/Analysis/SimplifyQuery.h
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
M llvm/include/llvm/CodeGen/MIRPrinter.h
M llvm/include/llvm/CodeGen/MachineModuleSlotTracker.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/include/llvm/MC/MCMachObjectWriter.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRPrintingPass.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineLICM.cpp
M llvm/lib/CodeGen/MachineLoopInfo.cpp
M llvm/lib/CodeGen/MachineModuleSlotTracker.cpp
M llvm/lib/CodeGen/MachineOutliner.cpp
M llvm/lib/CodeGen/MachineTraceMetrics.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
M llvm/lib/ExecutionEngine/Orc/Core.cpp
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MachObjectWriter.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
A llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
A llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/M68k/M68kFrameLowering.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-trunc.mir
A llvm/test/CodeGen/AArch64/trampoline.ll
M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/bitcast-vector-extract.ll
M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-pal.ll
A llvm/test/CodeGen/AMDGPU/lrint.ll
A llvm/test/CodeGen/AMDGPU/machinelicm-undef-use.mir
M llvm/test/CodeGen/AMDGPU/mem-builtins.ll
A llvm/test/CodeGen/ARM/block-order.mir
A llvm/test/CodeGen/NVPTX/fence.ll
A llvm/test/CodeGen/NVPTX/load-store-sm-70.ll
M llvm/test/CodeGen/NVPTX/load-store.ll
M llvm/test/CodeGen/NVPTX/store-undef.ll
A llvm/test/CodeGen/PowerPC/save-reg-params.ll
R llvm/test/CodeGen/RISCV/rvv/combine-vmv.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfw-web-simplification.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmacc.ll
A llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll
M llvm/test/CodeGen/WebAssembly/half-precision.ll
A llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj-phi.ll
M llvm/test/CodeGen/WebAssembly/simd-arith.ll
M llvm/test/CodeGen/WebAssembly/vector-reduce.ll
R llvm/test/CodeGen/X86/GlobalISel/phi.ll
M llvm/test/CodeGen/X86/code_placement_ext_tsp_large.ll
M llvm/test/CodeGen/X86/combine-pmadd.ll
A llvm/test/CodeGen/X86/isel-phi.ll
M llvm/test/CodeGen/X86/var-permute-128.ll
M llvm/test/CodeGen/X86/var-permute-256.ll
A llvm/test/DebugInfo/X86/debug-aranges-sce-tuning.test
M llvm/test/DebugInfo/debuglineinfo-path.ll
A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_common_x_and_addr_getter.s
A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_strong_x_and_addr_getter.s
A llvm/test/ExecutionEngine/JITLink/AArch64/MachO_common_symbol_x_multiple_defs.s
M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s
M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_float.ll
M llvm/test/Instrumentation/NumericalStabilitySanitizer/memory.ll
A llvm/test/MC/AArch64/align-fill-byte-zero.s
M llvm/test/MC/AMDGPU/gfx10_err_pos.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
A llvm/test/MC/ARM/align-fill-byte-zero.s
M llvm/test/MC/AsmParser/directive_align.s
M llvm/test/MC/COFF/align-nops.s
M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_ds.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_smem.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopk.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopp.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
M llvm/test/MC/ELF/align-nops.s
M llvm/test/MC/MachO/x86_32-optimal_nop.s
A llvm/test/MC/RISCV/align-fill-byte-zero.s
M llvm/test/MC/WebAssembly/simd-encodings.s
M llvm/test/MC/X86/code16gcc-align.s
A llvm/test/Transforms/DCE/nvvm-ldu-ldg-willreturn.ll
M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
M llvm/test/Transforms/InstCombine/abs-intrinsic.ll
A llvm/test/Transforms/InstCombine/pr100298.ll
M llvm/test/Transforms/InstCombine/sub.ll
M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll
A llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/MIR/MachineMetadata.cpp
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/GlobalISel/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/OpenMP/CMakeLists.txt
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Dialect/SPIRV/Transforms/CMakeLists.txt
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Conversion/ConvertToSPIRV/arith.mlir
M mlir/test/Conversion/ConvertToSPIRV/combined.mlir
M mlir/test/Conversion/ConvertToSPIRV/func-signature-vector-unroll.mlir
M mlir/test/Conversion/ConvertToSPIRV/index.mlir
M mlir/test/Conversion/ConvertToSPIRV/scf.mlir
M mlir/test/Conversion/ConvertToSPIRV/simple.mlir
M mlir/test/Conversion/ConvertToSPIRV/ub.mlir
A mlir/test/Conversion/ConvertToSPIRV/vector-unroll.mlir
M mlir/test/Conversion/ConvertToSPIRV/vector.mlir
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
M mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
M mlir/test/lib/Conversion/ConvertToSPIRV/TestSPIRVFuncSignatureConversion.cpp
A mlir/test/lib/Conversion/ConvertToSPIRV/TestSPIRVVectorUnrolling.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
M offload/cmake/OpenMPTesting.cmake
M offload/include/PluginManager.h
M offload/src/PluginManager.cpp
M offload/src/interface.cpp
M offload/test/libc/assert.c
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
A offload/test/tools/llvm-omp-device-info.c
M offload/tools/deviceinfo/CMakeLists.txt
A offload/tools/deviceinfo/llvm-offload-device-info.cpp
R offload/tools/deviceinfo/llvm-omp-device-info.cpp
M openmp/runtime/src/kmp_tasking.cpp
A openmp/runtime/test/tasking/issue-94260-1.cpp
A openmp/runtime/test/tasking/issue-94260-2.c
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
rebase
Created using spr 1.3.4
Compare: https://github.com/llvm/llvm-project/compare/5540cc53ca44...2307aac9b849
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