[all-commits] [llvm/llvm-project] 8f86c6: compiler-rt: Fix variadic macro warnings [-Wc++20-...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Wed Mar 27 10:00:15 PDT 2024
Branch: refs/heads/users/MaskRay/spr/object-define-elftypeendian-as-alias-for-targetendianness
Home: https://github.com/llvm/llvm-project
Commit: 8f86c6bf9524a5f8c9ae26a6599678008d8c9386
https://github.com/llvm/llvm-project/commit/8f86c6bf9524a5f8c9ae26a6599678008d8c9386
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp
M compiler-rt/lib/hwasan/hwasan_interceptors.cpp
M compiler-rt/lib/msan/msan_interceptors.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_printf.cpp
Log Message:
-----------
compiler-rt: Fix variadic macro warnings [-Wc++20-extensions]
They began complaining since #84520.
Commit: 350bda4419e15e5d68a87667988458546fa2e0c2
https://github.com/llvm/llvm-project/commit/350bda4419e15e5d68a87667988458546fa2e0c2
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx11-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w32-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w64-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w64.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll
Log Message:
-----------
AMDGPU: Rename intrinsics and remove f16/bf16 versions for load transpose (#86313)
Rename the intrinsics to close to the instruction mnemonic names:
Use global_load_tr_b64 and global_load_tr_b128 instead of
global_load_tr.
This patch also removes f16/bf16 versions of builtins/intrinsics. To
simplify the design, we should avoid enumerating all possible types in
implementing builtins. We can always use bitcast.
Commit: 366592b4eb54d807ebecee122b7dd06031c5f4f9
https://github.com/llvm/llvm-project/commit/366592b4eb54d807ebecee122b7dd06031c5f4f9
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaChecking.cpp
A clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/pow-errors.hlsl
Log Message:
-----------
[HLSL] prevent generation of double intrinsics via the builtins (#86555)
fixes #86551
closes #86552
Thanks to #86440 and #86407 it makes more sense for us to do type checks
early via Sema to prevent the generation of invalid intrinsics.
Commit: c48aa781a31c76b27cadcd1b78022393c450824b
https://github.com/llvm/llvm-project/commit/c48aa781a31c76b27cadcd1b78022393c450824b
Author: Thomas Köppe <tkoeppe at google.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M mlir/include/mlir/Analysis/Presburger/Matrix.h
Log Message:
-----------
Add missing declarations of explicit template instantiations. (#86591)
Found with `-Wundefined-func-template`.
Commit: 83eb8aee4bf9d518b3a2b485640207e7717805b4
https://github.com/llvm/llvm-project/commit/83eb8aee4bf9d518b3a2b485640207e7717805b4
Author: Takuto Ikuta <tikuta at google.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M clang/lib/Sema/Sema.cpp
Log Message:
-----------
Use timeTraceAsyncProfilerBegin for Source span (#83961)
This fixes incorrect trace for https://github.com/llvm/llvm-project/issues/56554.
This shows trace like
https://ui.perfetto.dev/#!/?s=aa809778dc50f2b155b062317fa18bbe2bb2fb9175e6282add8121c7c178214e
for the case shown in https://github.com/llvm/llvm-project/issues/83236.
https://github.com/llvm/llvm-project/pull/83778 is preparing PR.
Fix #56554
Commit: 8bd1f9116aab879183f34707e6d21c7051d083b6
https://github.com/llvm/llvm-project/commit/8bd1f9116aab879183f34707e6d21c7051d083b6
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/Address.h
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBlocks.h
M clang/lib/CodeGen/CGBuilder.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGCXXABI.h
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGCall.h
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGCleanup.h
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGNonTrivialStruct.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CGValue.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenPGO.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/CodeGen/Targets/Sparc.cpp
M clang/lib/CodeGen/Targets/SystemZ.cpp
M clang/lib/CodeGen/Targets/XCore.cpp
M clang/utils/TableGen/MveEmitter.cpp
M llvm/include/llvm/IR/IRBuilder.h
Log Message:
-----------
[CodeGen][arm64e] Add methods and data members to Address, which are needed to authenticate signed pointers (#67454)
To authenticate pointers, CodeGen needs access to the key and
discriminators that were used to sign the pointer. That information is
sometimes known from the context, but not always, which is why `Address`
needs to hold that information.
This patch adds methods and data members to `Address`, which will be
needed in subsequent patches to authenticate signed pointers, and uses
the newly added methods throughout CodeGen. Although this patch isn't
strictly NFC as it causes CodeGen to use different code paths in some
cases (e.g., `mergeAddressesInConditionalExpr`), it doesn't cause any
changes in functionality as it doesn't add any information needed for
authentication.
In addition to the changes mentioned above, this patch introduces class
`RawAddress`, which contains a pointer that we know is unsigned, and
adds several new functions for creating `Address` and `LValue` objects.
Commit: 6420f379268e9178f9f938cef223194ad3daae4e
https://github.com/llvm/llvm-project/commit/6420f379268e9178f9f938cef223194ad3daae4e
Author: YAMAMOTO Takashi <yamamoto at midokura.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj.ll
M llvm/test/CodeGen/WebAssembly/lower-em-sjlj-alias.ll
M llvm/test/CodeGen/WebAssembly/lower-em-sjlj-debuginfo.ll
M llvm/test/CodeGen/WebAssembly/lower-em-sjlj.ll
M llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj.ll
M llvm/test/CodeGen/WebAssembly/lower-wasm-sjlj.ll
Log Message:
-----------
[WebAssembly] Implement an alternative translation for -wasm-enable-sjlj (#84137)
Instead of maintaining per-function-invocation malloc()'ed tables to track which functions each label belongs to, store the equivalent info in jump buffers (jmp_buf) themselves.
Also, use a less emscripten-looking ABI symbols:
```
saveSetjmp -> __wasm_setjmp
testSetjmp -> __wasm_setjmp_test
getTempRet0 -> (removed)
__wasm_longjmp -> (no change)
```
While I want to use this for WASI, it should work for emscripten as well.
An example runtime and a few tests:
https://github.com/yamt/garbage/tree/wasm-sjlj-alt2/wasm/longjmp
wasi-libc version of the runtime:
https://github.com/WebAssembly/wasi-libc/pull/483
emscripten version of the runtime:
https://github.com/emscripten-core/emscripten/pull/21502
Discussion:
https://docs.google.com/document/d/1ZvTPT36K5jjiedF8MCXbEmYjULJjI723aOAks1IdLLg/edit
Commit: 9c8dd5e6f6bd93deb95de9642632223f54a18a11
https://github.com/llvm/llvm-project/commit/9c8dd5e6f6bd93deb95de9642632223f54a18a11
Author: Longsheng Mou <moulongsheng at huawei.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/CodeGen/Targets/X86.cpp
A clang/test/CodeGen/X86/x86_64-vaarg.c
M clang/test/CodeGenCXX/x86_64-vaarg.cpp
Log Message:
-----------
[X86_64] fix SSE type error in vaarg. (#86377)
tweak the position of the ++neededSSE when Lo is NoClass and Hi is SSE.
Fix #86371.
Commit: ce73b1672a6053d5974dc2342881aac02efe2dbb
https://github.com/llvm/llvm-project/commit/ce73b1672a6053d5974dc2342881aac02efe2dbb
Author: dong jianqiang <dongjianqiang2 at huawei.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
Log Message:
-----------
[CodeExtractor] Resolving the Inconsistency of Compiled Binary Files (#86497)
When the compiler enables ALSR by default, binary inconsistency occurs
when the extractCodeRegion function is called. The reason is that the
sequence of traversing ExitBlocks containers of the SmallPtrSet type is
changed due to randomization of BasicBlock pointers.
This fixes https://github.com/llvm/llvm-project/issues/86427
Commit: 3e664ac9cd83a2f466e40d1167c08c71a719500e
https://github.com/llvm/llvm-project/commit/3e664ac9cd83a2f466e40d1167c08c71a719500e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
Log Message:
-----------
[RISCV] Use inheritance instead of instantiating multiclasses inside another multiclass. NFC
Commit: 93f9fb2c825dba48db64d5f726b54bcbd4766009
https://github.com/llvm/llvm-project/commit/93f9fb2c825dba48db64d5f726b54bcbd4766009
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
Log Message:
-----------
[RISCV] Rename Binary->Ternary and Unary->Binary for some cases in RISCVInstrInfoZvk.td. NFC
For instructions that use vd as an input and not just a merge, we
weren't including it in the operand count for the naming.
Commit: cc3b6f94952e1184df44c2b039d21665116151ed
https://github.com/llvm/llvm-project/commit/cc3b6f94952e1184df44c2b039d21665116151ed
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/test/Dialect/SPIRV/Transforms/canonicalize.mlir
Log Message:
-----------
[mlir][spirv] Add folding for [S|U|GreaterThan[Equal] (#85434)
Add missing constant propogation folder for [S|U]GreaterThan[Equal].
Implement additional folding when the operands are equal for all ops.
Allows for constant folding in the IndexToSPIRV pass.
Part of work #70704
Commit: a6b870db091830844431f77eb47aa30fc1d70bed
https://github.com/llvm/llvm-project/commit/a6b870db091830844431f77eb47aa30fc1d70bed
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/abd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sad.ll
Log Message:
-----------
[RISCV] Enable sub(max, min) lowering for ABDS and ABDU (#86592)
We have the ISD nodes for representing signed and unsigned absolute
difference. For RISCV, we have vector min/max in the base vector
extension, so we can expand to the sub(max,min) lowering.
We could almost use the default expansion, but since fixed length
min/max are custom (not legal), the default expansion doesn't cover the
fixed vector cases. The expansion here is just a copy of the generic
code specialized to allow the custom min/max nodes to be created so they
can in turn be legalized to the _vl variants.
Existing DAG combines handle the recognition of absolute difference
idioms and conversion into the respective ISD::ABDS and ISD::ABDU nodes.
This change does have the net effect of potentially pushing a free
floating zero/sign extend after the expansion, and we don't do a great
job of folding that into later expressions. However, since in general
narrowing can reduce required work (by reducing LMUL) this seems like
the right general tradeoff.
Commit: bc31be7949a3d5382be0e15e3957fa957da9de45
https://github.com/llvm/llvm-project/commit/bc31be7949a3d5382be0e15e3957fa957da9de45
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/test/CodeCompletion/member-access.cpp
Log Message:
-----------
[clang][CodeComplete] Handle deref operator in getApproximateType (#86466)
This allows completing after `(*this).` in a dependent context.
Fixes https://github.com/clangd/clangd/issues/1952
Commit: 7196518f1f32d4d294bcf050790a2ba26b819645
https://github.com/llvm/llvm-project/commit/7196518f1f32d4d294bcf050790a2ba26b819645
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M lld/test/ELF/driver.test
Log Message:
-----------
[ELF,test] Improve -r incompatibility tests
Commit: 3e046ee0c944b5a55f30b3ce0153791d91dbb134
https://github.com/llvm/llvm-project/commit/3e046ee0c944b5a55f30b3ce0153791d91dbb134
Author: Sam Clegg <sbc at chromium.org>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/test/ELF/lto/libcall-archive.ll
Log Message:
-----------
[lld][ELF] Add `--why-extract` for bitcode libcalls (#78781)
The Wasm linker already records these and its seems useful to do so.
Commit: 08a321e1b7ffdd72154ae808821d20fe511c83b6
https://github.com/llvm/llvm-project/commit/08a321e1b7ffdd72154ae808821d20fe511c83b6
Author: Kai Sasaki <lewuathe at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Complex/IR/ComplexOps.td
M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
M mlir/test/Dialect/Complex/canonicalize.mlir
Log Message:
-----------
[mlir][complex] Canonicalize complex.div by one (#85513)
We can canonicalize the complex.div if the divisor is one (real = 1.0,
imag = 0.0) with the input number itself.
Ref: https://www.cuemath.com/numbers/division-of-complex-numbers/
Commit: 64a71147024ebcc58655adc28a17c9f17a517aed
https://github.com/llvm/llvm-project/commit/64a71147024ebcc58655adc28a17c9f17a517aed
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SMInstructions.td
Log Message:
-----------
AMDGPU: Simplify SMInstruction definitions, NFC (#86613)
Copy OtherPredicates from Pseudo to Real. Real should inherit predicates
from the corresponding Pseudo
Commit: c6a65e4b0c80245d766ae2f2f7305b5371d096f5
https://github.com/llvm/llvm-project/commit/c6a65e4b0c80245d766ae2f2f7305b5371d096f5
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
M clang-tools-extra/clangd/test/inlayHints.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
Log Message:
-----------
[clangd] Support go-to-definition on type hints. The protocol part (#85497)
This is in preparation for implementing go-to-definition support on type
inlay hints, switching the `label` field within the InlayHint protocol from a
string to an array of `InlayHintLabelPart`.
Commit: 817f453aa576286aaca0a6b0244e6ab08516b80c
https://github.com/llvm/llvm-project/commit/817f453aa576286aaca0a6b0244e6ab08516b80c
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV][TTI] Refactor getCastInstrCost to exit early (#86619)
To reduce the indentation by using early returns, this patch hoist the
return for illegal type and non vector type earlier.
It should mostly be an NFC.
Commit: 5dc0c75aabb9811e03cc8025905fed6dc2dd7bda
https://github.com/llvm/llvm-project/commit/5dc0c75aabb9811e03cc8025905fed6dc2dd7bda
Author: ShihPo Hung <shihpo.hung at sifive.com>
Date: 2024-03-25 (Mon, 25 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV][TTI] Fix missing return in the end of function
Commit: 5c663aa9ae4656c46d09914994859118759b426b
https://github.com/llvm/llvm-project/commit/5c663aa9ae4656c46d09914994859118759b426b
Author: ZhangYin <zhangyin2018 at iscas.ac.cn>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libcxx/test/std/experimental/simd/simd.class/simd_ctor_broadcast.pass.cpp
M libcxx/test/std/experimental/simd/simd.class/simd_ctor_conversion.pass.cpp
M libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp
M libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_conversion.pass.cpp
M libcxx/test/std/experimental/simd/simd.reference/reference_assignment.pass.cpp
M libcxx/test/std/experimental/simd/test_utils.h
Log Message:
-----------
[libc++] <experimental/simd> Reduce types for template parameter U in tests (#83781)
Commit: 6ff61914a1ef2c05702ba73cf31ffdeed59c1740
https://github.com/llvm/llvm-project/commit/6ff61914a1ef2c05702ba73cf31ffdeed59c1740
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/aarch64-ptrauth.c
Log Message:
-----------
[Driver] Reject -fptrauth-intrinsics on non-AArch64 targets
And add a driver test missing from the original patch #65996.
Commit: 6a6f9bf38e65ec45b32da4b578e2830341a9b364
https://github.com/llvm/llvm-project/commit/6a6f9bf38e65ec45b32da4b578e2830341a9b364
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/AST/APValue.cpp
Log Message:
-----------
[clang] Fix assertion failure when printing atomic apvalues (#85259)
When printing an `_Atomic(some struct type)`, we would later run into an
assertion because we do a `Ty->castAs<RecordType>()`, which doesn't work
with an `AtomicType`.
Commit: 14c30189fb8782535ac9a5a52160e3fc62e7e78c
https://github.com/llvm/llvm-project/commit/14c30189fb8782535ac9a5a52160e3fc62e7e78c
Author: Bevin Hansson <59652494+bevin-hansson at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptosi129.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptoui129.ll
Log Message:
-----------
[ExpandLargeFpConvert] Fix incorrect values in fp-to-int conversion. (#86514)
The IR for a double-to-i129 conversion looks like this in one of the
blocks in compiler-rt:
%cmp5.i = icmp ult i16 %3, -129, !dbg !24
But in ExpandLargeFpConvert, it looks like:
%13 = icmp ult i129 %12, 4294967167, !dbg !19
ExpandLargeFpConvert is wrong; the value should have been
signed before negating, but instead we get a very large
unsigned value. Another value in the same pass also has this
issue.
Commit: 4d315ff382de912e5129b417c997116851088d4b
https://github.com/llvm/llvm-project/commit/4d315ff382de912e5129b417c997116851088d4b
Author: David Green <david.green at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
M llvm/test/CodeGen/AArch64/setcc_knownbits.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ctlz-zero-undef.mir
Log Message:
-----------
[GlobalISel] Add CTLZ known bits. (#86436)
Replicated from SDAG.
Commit: eb70b485a91361eee83d3744d1bd3e4c3a23692f
https://github.com/llvm/llvm-project/commit/eb70b485a91361eee83d3744d1bd3e4c3a23692f
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Export more headers by a single target only. (#86637)
Ideally, header files should be used by only one target, but this is
hard because CMake is less strict with headers (no layering check). But
even with bazel, headers should only be exported once in the `hdrs`
attribute. Other targets may use them in the `srcs` attribute to avoid
circular dependencies.
Commit: 3f8431ec66ffcfaf1bd864261f425b12ab1b59b8
https://github.com/llvm/llvm-project/commit/3f8431ec66ffcfaf1bd864261f425b12ab1b59b8
Author: XChy <xxs_chy at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/ADT/SCCIterator.h
Log Message:
-----------
[SCCIterator] Union MST node by rank correctly (#86389)
Fixes #85975
Commit: 4fa736ba41fce885047bd5a242230b216ea85c70
https://github.com/llvm/llvm-project/commit/4fa736ba41fce885047bd5a242230b216ea85c70
Author: NagyDonat <donat.nagy at ericsson.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/include/clang/Basic/SyncScope.h
Log Message:
-----------
[Clang] NFC Silence compiler warning spam (#86532)
This non-functional change eliminates the compiler warning
```
/repo/llvm-project/clang/include/clang/Basic/SyncScope.h: In member function ‘virtual bool clang::AtomicScopeGenericModel::isValid(unsigned int) const’:
/repo/llvm-project/clang/include/clang/Basic/SyncScope.h:255:14: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
return S >= static_cast<unsigned>(System) &&
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
which was appearing repeatedly, as this header is included into very
many source files (through various chains of 6-7 header files).
Commit: fbc247367a86e8a711584801586ec9616268d889
https://github.com/llvm/llvm-project/commit/fbc247367a86e8a711584801586ec9616268d889
Author: David Green <david.green at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-build-vector.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-insert-vector-elt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector-widen-crash.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xtn.mir
M llvm/test/CodeGen/AArch64/aarch64-smull.ll
M llvm/test/CodeGen/AArch64/arm64-extract-insert-varidx.ll
M llvm/test/CodeGen/AArch64/bitcast.ll
M llvm/test/CodeGen/AArch64/bswap.ll
M llvm/test/CodeGen/AArch64/fptoi.ll
M llvm/test/CodeGen/AArch64/itofp.ll
M llvm/test/CodeGen/AArch64/load.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
M llvm/test/CodeGen/AArch64/shift.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalization for small anyext/sext/zext (#86438)
Similar to #85625, some of the codegen is still far from optimal but
this helps fix quite a few fallback cases.
Commit: 256343a0e919bc09f65a8ee26751b561fa2dbfc1
https://github.com/llvm/llvm-project/commit/256343a0e919bc09f65a8ee26751b561fa2dbfc1
Author: Thomas Symalla <5754458+tsymalla at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
M llvm/test/CodeGen/AMDGPU/schedule-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll
Log Message:
-----------
Revert "Update amdgpu_gfx functions to use s0-s3 for inreg SGPR arguments on targets using scratch instructions for stack #78226" (#86273)
Reverts llvm/llvm-project#81394
This reverts commit 3ac243bc0d7922d083af2cf025247b5698556062.
It is not handling RSrc registers s0-s3 correctly. This leads to a
broken test, where it expects s0-s3 as function argument and uses it as
RSrc register as well.
We need to re-visit the patch, but apparently we only want to have s0-s3
as
argument registers if we don't need them as RSrc registers.
Commit: 77cbc9bf601861ed92e36f7833422e31c22dd159
https://github.com/llvm/llvm-project/commit/77cbc9bf601861ed92e36f7833422e31c22dd159
Author: Victor Perez <victor.perez at codeplay.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
M mlir/tools/mlir-tblgen/LLVMIRConversionGen.cpp
Log Message:
-----------
[MLIR][LLVM] Add `llvm.experimental.constrained.fptrunc` operation (#86260)
Add operation mapping to the LLVM
`llvm.experimental.constrained.fptrunc.*` intrinsic.
The new operation implements the new
`LLVM::FPExceptionBehaviorOpInterface` and
`LLVM::RoundingModeOpInterface` interfaces.
---------
Signed-off-by: Victor Perez <victor.perez at codeplay.com>
Commit: c7198e0af34fc94722876d61af6e65758c316af5
https://github.com/llvm/llvm-project/commit/c7198e0af34fc94722876d61af6e65758c316af5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
Log Message:
-----------
[DAG] Fold insert_subvector(N0, extract_subvector(N0, N2), N2) --> N0 (#86487)
Handle the case where we've ended up inserting back into the source vector we extracted the subvector from.
Commit: d06ba376833553f38b5cbc606e479ed7936e5f5b
https://github.com/llvm/llvm-project/commit/d06ba376833553f38b5cbc606e479ed7936e5f5b
Author: Michal Paszkowski <michal at paszkowski.org>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/SPIRV/CMakeLists.txt
A llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
A llvm/lib/Target/SPIRV/SPIRVCommandLine.h
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/test/CodeGen/SPIRV/LinkOnceODR.ll
M llvm/test/CodeGen/SPIRV/LinkOnceODRFun.ll
M llvm/test/CodeGen/SPIRV/assume.ll
M llvm/test/CodeGen/SPIRV/exec_mode_float_control_khr.ll
M llvm/test/CodeGen/SPIRV/expect.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_double.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_float.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_half.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_double.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_float.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_half.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_integers.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative1.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative2.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative3.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative4.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_two_calls.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_usm_storage_classes/intel-usm-addrspaces.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_no_integer_wrap_decoration.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_subgroup_rotate/subgroup-rotate.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_uniform_group_instructions/uniform-group-instructions.ll
A llvm/test/CodeGen/SPIRV/extensions/both-allowed-disallowed-extension-error.ll
A llvm/test/CodeGen/SPIRV/extensions/enable-all-extensions-but-one.ll
A llvm/test/CodeGen/SPIRV/extensions/enable-all-extensions.ll
A llvm/test/CodeGen/SPIRV/extensions/invalid-extension-list-format.ll
A llvm/test/CodeGen/SPIRV/extensions/unknown-extension-name.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/add.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/and.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fadd.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmax.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmaximum.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmin.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fminimum.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmul.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/mul.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/or.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smax.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smin.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umax.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umin.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/xor.ll
M llvm/test/CodeGen/SPIRV/transcoding/NoSignedUnsignedWrap.ll
Log Message:
-----------
[SPIR-V] Support extension toggling and enabling all (#85503)
Commit: f5e1cd5625bccef71b7c914b39fcc5d547ebb610
https://github.com/llvm/llvm-project/commit/f5e1cd5625bccef71b7c914b39fcc5d547ebb610
Author: Michal Paszkowski <michal at paszkowski.org>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/docs/SPIRVUsage.rst
Log Message:
-----------
[SPIR-V] Extend SPIRVUsage.rst document (#84744)
Commit: 5d7e7abc82ec87fe0cca3bc2afe67b70be5d0151
https://github.com/llvm/llvm-project/commit/5d7e7abc82ec87fe0cca3bc2afe67b70be5d0151
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86SchedIceLake.td
M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
Log Message:
-----------
[X86] ICX - vector XMM splat use Port 1 or 5 when boradcasting the shift amount
Noticed while trying to compare splat vs per-element shift perf stats for #39424
Confirmed with uops.info
Commit: 5fc619b5ee227ab4d22319dad8d2ba6fc1660091
https://github.com/llvm/llvm-project/commit/5fc619b5ee227ab4d22319dad8d2ba6fc1660091
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/X86/avgceilu.ll
Log Message:
-----------
[DAG] Update ISD::AVG folds to use hasOperation to allow Custom matching prior to legalization
Fixes issue where AVX1 targets weren't matching 256-bit AVGCEILU cases.
Commit: 5b544b511c7133fcb26a5c563b746a4baefb38d6
https://github.com/llvm/llvm-project/commit/5b544b511c7133fcb26a5c563b746a4baefb38d6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/ctpop.mir
Log Message:
-----------
[Mips] ctpop.mir - regenerate checks to improve codegen diff in #86505
Commit: f01377d8ebcb1f52fe75a236cdf34f1b8b1e99fb
https://github.com/llvm/llvm-project/commit/f01377d8ebcb1f52fe75a236cdf34f1b8b1e99fb
Author: Nazım Can Altınova <canaltinova at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
A compiler-rt/test/tsan/signal_in_mutex_lock.cpp
Log Message:
-----------
[tsan] Mark `pthread_*_lock` functions as blocking (#84162)
Fixes #83561.
When a thread is blocked on a mutex and we send an async signal to that
mutex, it never arrives because tsan thinks that `pthread_mutex_lock` is
not a blocking function. This patch marks `pthread_*_lock` functions as
blocking so we can successfully deliver async signals like `SIGPROF`
when the thread is blocked on them.
See the issue also for more details. I also added a test, which is a
simplified version of the compiler explorer example I posted in the
issue.
Please let me know if you have any other ideas or things to improve!
Happy to work on them.
Also I filed #83844 which is more tricky because we don't have a libc
wrapper for `SYS_futex`. I'm not sure how to intercept this yet. Please
let me know if you have ideas on that as well. Thanks!
Commit: fe97a6148ebce0091c03abd12abd814cb55afe24
https://github.com/llvm/llvm-project/commit/fe97a6148ebce0091c03abd12abd814cb55afe24
Author: Nazım Can Altınova <canaltinova at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M compiler-rt/include/sanitizer/linux_syscall_hooks.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
A compiler-rt/test/tsan/signal_in_futex_wait.cpp
Log Message:
-----------
[tsan] Add callbacks for futex syscalls and mark them as blocking on tsan (#86537)
Fixes #83844.
This PR adds callbacks to mark futex syscalls as blocking. Unfortunately
we didn't have a mechanism before to mark syscalls as a blocking call,
so I had to implement it, but it mostly reuses the `BlockingCall`
implementation
[here](https://github.com/llvm/llvm-project/blob/96819daa3d095cf9f662e0229dc82eaaa25480e8/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp#L362-L380).
The issue includes some information but this issue was discovered
because Rust uses futexes directly. So most likely we need to update
Rust as well to use these callbacks.
Also see the latest comments in #85188 for some context.
I also sent another PR #84162 to mark `pthread_*_lock` calls as
blocking.
Commit: da9ac43433ace54b262cd8552a9fafac21186381
https://github.com/llvm/llvm-project/commit/da9ac43433ace54b262cd8552a9fafac21186381
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Sema/SemaDecl.cpp
A clang/test/CodeGen/aarch64-mixed-target-attributes.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/Sema/attr-target-clones-aarch64.c
Log Message:
-----------
[FMV] Allow mixing target_version with target_clones. (#86493)
The latest ACLE allows it and further clarifies the following
in regards to the combination of the two attributes:
"If the `default` matches with another explicitly provided
version in the same translation unit, then the compiler can
emit only one function instead of the two. The explicitly
provided version shall be preferred."
("default" refers to the default clone here)
https://github.com/ARM-software/acle/pull/310
Commit: f914e8e77c4703814e2f2dcef1d4569b17837c92
https://github.com/llvm/llvm-project/commit/f914e8e77c4703814e2f2dcef1d4569b17837c92
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
A llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
M llvm/test/CodeGen/AArch64/sme-streaming-body-streaming-compatible-interface.ll
M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
Log Message:
-----------
[AArch64][SME] Add coalescer barrier for args/results in locally streaming functions. (#85388)
Similar to how we protected FP/fixed-vector arguments and results from
calls, we should do the same for arguments/results from locally-streaming
functions such that those are not spilled/filled as ZPR registers.
This may cause a small regression (additional spills/fills), which is
addressed by #85386.
Commit: bfb12ef33a90bd20c3a76094ef4393a8defbb712
https://github.com/llvm/llvm-project/commit/bfb12ef33a90bd20c3a76094ef4393a8defbb712
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M lld/COFF/DriverUtils.cpp
M lld/test/COFF/export.test
Log Message:
-----------
[LLD][COFF] Allow additional attributes in forwarding exports. (#86535)
Testing with MSVC link.exe showed that it respects such options, while
LLD currently discards them.
Commit: 4dc322524871df02578a05b260dacf28ff130c02
https://github.com/llvm/llvm-project/commit/4dc322524871df02578a05b260dacf28ff130c02
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/host/src/rtl.cpp
Log Message:
-----------
[Libomptarget] Replace global `PluginTy::get` interface with references (#86595)
Summary:
We have a plugin singleton that implements the Plugin interface. This
then spawns separate device and kernels. Previously when these needed to
reach into the global singleton they would use the `PluginTy::get`
routine to get access to it. In the future we will move away from this
as the lifetime of the plugin will be handled by `libomptarget`
directly. This patch removes uses of this inside of the plugin
implementaion themselves by simply keeping a reference to the plugin
inside of the device.
The external `__tgt_rtl` functions still use the global method, but will
be removed later.
Commit: 603db7425ffa96915854f425b027cc8403ab333d
https://github.com/llvm/llvm-project/commit/603db7425ffa96915854f425b027cc8403ab333d
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M lld/COFF/Driver.cpp
M lld/test/COFF/export.test
Log Message:
-----------
[LLD][COFF] Preserve all attributes from forwarding exports from parsed .def files. (#86564)
It's similar to #86535, but for export specified in .def files.
Commit: 19ca79e8671439338b429982c457304c70eca701
https://github.com/llvm/llvm-project/commit/19ca79e8671439338b429982c457304c70eca701
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/__support/FPUtil/BasicOperations.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/math/CMakeLists.txt
A libc/src/math/canonicalize.h
A libc/src/math/canonicalizef.h
A libc/src/math/canonicalizef128.h
A libc/src/math/canonicalizel.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/canonicalize.cpp
A libc/src/math/generic/canonicalizef.cpp
A libc/src/math/generic/canonicalizef128.cpp
A libc/src/math/generic/canonicalizel.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/CanonicalizeTest.h
A libc/test/src/math/smoke/canonicalize_test.cpp
A libc/test/src/math/smoke/canonicalizef128_test.cpp
A libc/test/src/math/smoke/canonicalizef_test.cpp
A libc/test/src/math/smoke/canonicalizel_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math][c23] Implement canonicalize functions (#85940)
Fixes: #85286
Commit: 59e052568e7d46cc0489269e3c76f53bb21941f5
https://github.com/llvm/llvm-project/commit/59e052568e7d46cc0489269e3c76f53bb21941f5
Author: ycdtosa <ycdtosa at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/AttrDocs.td
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/SemaCXX/warn-exit-time-destructors.cpp
Log Message:
-----------
[[clang::always_destroy]] attribute silences warn-exit-time-destructor (#86486)
This attribute tells the compiler that the variable must have its exit-time
destructor run, so it makes sense that it would silence the warning telling
users that an exit-time destructor is required.
Fixes https://github.com/llvm/llvm-project/issues/68686
Commit: feebcd65fb7e0534f5219e05432a05e45aa8cd2a
https://github.com/llvm/llvm-project/commit/feebcd65fb7e0534f5219e05432a05e45aa8cd2a
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
Log Message:
-----------
[clang] Fix -Wunused-variable in SemaDecl.cpp (NFC)
llvm-project/clang/lib/Sema/SemaDecl.cpp:11653:20:
error: unused variable 'OldMVKind' [-Werror,-Wunused-variable]
MultiVersionKind OldMVKind = OldFD->getMultiVersionKind();
^
1 error generated.
Commit: caa225825075237cd6b15757476dd1999bec290b
https://github.com/llvm/llvm-project/commit/caa225825075237cd6b15757476dd1999bec290b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
Log Message:
-----------
[LLVM] Remove nuw neg (#86295)
This patch removes APIs that creating NUW neg. It is a trivial case
because `sub nuw 0, X` always gets simplified into zero.
I believe there is no optimization opportunities in the real-world
applications that we can take advantage of the nuw flag.
Motivated by
https://github.com/llvm/llvm-project/pull/84792#discussion_r1524891134.
Compile-time improvement:
https://llvm-compile-time-tracker.com/compare.php?from=d1f182c895728d89c5c3d198b133e212a5d9d4a3&to=da7b7478b7cbb32c09d760f6b8d0e67901e0d533&stat=instructions:u
Commit: 3a2c70b3713a856ea416d92abdddb7893fca308b
https://github.com/llvm/llvm-project/commit/3a2c70b3713a856ea416d92abdddb7893fca308b
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/AST/TypePrinter.cpp
M clang/unittests/AST/DeclPrinterTest.cpp
Log Message:
-----------
Fix printing of templated records. (#86339)
Fixed the printing of templated argument list and added test case.
Commit: 93d33a1355438638232e66991f3a90c376c61fea
https://github.com/llvm/llvm-project/commit/93d33a1355438638232e66991f3a90c376c61fea
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
Log Message:
-----------
[PatternMatch] Refactor `m_SpecificInt` to avoid constructing APInt. NFC. (#86259)
This patch passes APInt by const reference in m_SpecificInt instead of
by value. Specifically, it refactors `m_SpecificInt(uint64_t V)` to
avoid APInt construction and dangling reference.
I believe it is safe to pass the APInt by const reference into
`m_SpecificInt` even if it is a temporary.
See also https://en.cppreference.com/w/cpp/language/lifetime
> All temporary objects are destroyed as the last step in evaluating the
[full-expression](https://en.cppreference.com/w/cpp/language/expressions#Full-expressions)
that (lexically) contains the point where they were created
Compile-time impact:
https://llvm-compile-time-tracker.com/compare.php?from=d1f182c895728d89c5c3d198b133e212a5d9d4a3&to=7edf459b95ab2be33b70ec67faf87b3b8cc84f09&stat=instructions:u
Commit: 308ed0233a3da5b3a7d646808c6470ac30870603
https://github.com/llvm/llvm-project/commit/308ed0233a3da5b3a7d646808c6470ac30870603
Author: Il-Capitano <52455591+Il-Capitano at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
M llvm/test/CodeGen/AArch64/arm64-anyregcc.ll
M llvm/test/CodeGen/AArch64/arm64-patchpoint.ll
Log Message:
-----------
[Intrinsics] Make `patchpoint.i64` generic on its return type (#85911)
Currently patchpoints can only have two result types, `void` and `i64`.
This limits the result to general purpose registers.
This patch makes `patchpoint.i64` an overloadable intrinsic, allowing
result values that can fit in a single register (e.g. integers,
pointers, floats).
Commit: dfde6e89ecc10b1f1eebdb0e409ef1a084030a6c
https://github.com/llvm/llvm-project/commit/dfde6e89ecc10b1f1eebdb0e409ef1a084030a6c
Author: Hui <hui.xie1990 at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libcxx/test/std/utilities/variant/variant.get/get_if_index.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_if_type.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_index.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_type.pass.cpp
M libcxx/test/std/utilities/variant/variant.helpers/variant_alternative.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_args.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_args.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit/visit.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit/visit_return_type.pass.cpp
M libcxx/test/support/variant_test_helpers.h
Log Message:
-----------
[libc++][test] Remove tests that testing std::variant<T&> (#84222)
Fixes #83600
Commit: 54ca1e2c041a3780eca83549d7f7137581d32abb
https://github.com/llvm/llvm-project/commit/54ca1e2c041a3780eca83549d7f7137581d32abb
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/partial-vec-invalid-cost.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/minbitwidth-root-trunc.ll
Log Message:
-----------
[SLP]Fix PR80027: include initial trunc nodes to the demoted values.
Need to include initial sext/zext/trunc nodes to the list of the demoted
root values to correctly calculate the cost and handle the
vectorization.
Commit: 47f4a07a2fe8db0ccf63dc1bf6f991124d8eff81
https://github.com/llvm/llvm-project/commit/47f4a07a2fe8db0ccf63dc1bf6f991124d8eff81
Author: David Green <david.green at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownBitsVectorTest.cpp
Log Message:
-----------
[GlobalISel] Add Knownbits for G_LOAD/ZEXTLOAD/SEXTLOAD with range metadata (#86431)
Similar to #80829 for GlobalISel.
Commit: a51d13f5db08e36e0b734bc2aa9b5c4fea9cf116
https://github.com/llvm/llvm-project/commit/a51d13f5db08e36e0b734bc2aa9b5c4fea9cf116
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/include/flang/Common/idioms.h
M flang/lib/Evaluate/constant.cpp
Log Message:
-----------
[Flang] Add new CHECK_MSG() function (#86576)
Added a new variant of the CHECK() function that takes a custom message
as a parameter. This is useful for more meaninful error messages when
the compiler is expected to crash.
Fixes #78931
Commit: ca594fedeb3d6bb8ee0f80c92b0089147fb5e757
https://github.com/llvm/llvm-project/commit/ca594fedeb3d6bb8ee0f80c92b0089147fb5e757
Author: Tim Creech <timothy.m.creech at intel.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/docs/UsersManual.rst
M llvm/docs/ReleaseNotes.rst
Log Message:
-----------
Update documentation and release notes for llvm-profgen COFF support (#84864)
This change:
- Updates the existing Clang User's Manual section on SPGO so that it
describes how to use llvm-profgen to perform SPGO on Windows. This is
new functionality implemented in #83972.
- Fixes a minor typo in the existing llvm-profgen invocation example.
- Adds an LLVM release note on this new functionality in llvm-profgen.
Commit: 89ef3130cf16f1965475396ad3a50760558cc08a
https://github.com/llvm/llvm-project/commit/89ef3130cf16f1965475396ad3a50760558cc08a
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Create a separate target for BytecodeOpInterface. (#86655)
This matches the CMake targets and reduces the number of headers that
need to be included in multiple targets.
Commit: 2e38c50e5c53d66d4968fbd47b78e71a220a28ca
https://github.com/llvm/llvm-project/commit/2e38c50e5c53d66d4968fbd47b78e71a220a28ca
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/include/clang/AST/DeclContextInternals.h
M clang/lib/Interpreter/IncrementalParser.cpp
Log Message:
-----------
[clang-repl] Fix remove invalidates iterators in CleanUpPTU() (#85378)
Using remove() on DeclContext::lookup_result list invalidates iterators.
This assertion failure was one (fortunate) symptom:
```
clang/include/clang/AST/DeclBase.h:1337: reference clang::DeclListNode::iterator::operator*() const: Assertion `Ptr && "dereferencing end() iterator"' failed.
```
Commit: b3117564508ce53b3af408bf2b8ab643a6030bc4
https://github.com/llvm/llvm-project/commit/b3117564508ce53b3af408bf2b8ab643a6030bc4
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/Address.h
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBlocks.h
M clang/lib/CodeGen/CGBuilder.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGCXXABI.h
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGCall.h
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGCleanup.h
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGNonTrivialStruct.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CGValue.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenPGO.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/CodeGen/Targets/Sparc.cpp
M clang/lib/CodeGen/Targets/SystemZ.cpp
M clang/lib/CodeGen/Targets/XCore.cpp
M clang/utils/TableGen/MveEmitter.cpp
M llvm/include/llvm/IR/IRBuilder.h
Log Message:
-----------
Revert "[CodeGen][arm64e] Add methods and data members to Address, which are needed to authenticate signed pointers (#67454)" (#86674)
This reverts commit 8bd1f9116aab879183f34707e6d21c7051d083b6.
It appears that the commit broke msan bots.
Commit: 507e59aa757bdc690ebc0bf69c6d3c84061061a8
https://github.com/llvm/llvm-project/commit/507e59aa757bdc690ebc0bf69c6d3c84061061a8
Author: Julian Nagele <mail at jnagele.net>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
A llvm/test/Verifier/tbaa-struct.ll
Log Message:
-----------
[TBAA] Tests for invalid tbaa.struct metadata (#86167)
These tests show invalid tbaa.struct metadata that is currently accepted
in preparation for a change to the IR Verifier that will then reject it.
PR: https://github.com/llvm/llvm-project/pull/86167
Commit: 26d896f3688a8bff6faf85ccce557e320108997f
https://github.com/llvm/llvm-project/commit/26d896f3688a8bff6faf85ccce557e320108997f
Author: Rafael Ubal <rubal at mathworks.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
Log Message:
-----------
Fixes in 'tosa.reshape' lowering and folder (#85798)
- Revamped lowering conversion pattern for `tosa.reshape` to handle previously unsupported combinations of dynamic dimensions in input and output tensors. The lowering strategy continues to rely on pairs `tensor.collapse_shape` + `tensor.expand_shape`, which allow for downstream fusion with surrounding `linalg.generic` ops.
- Fixed bug in canonicalization pattern `ReshapeOp::fold()` in `TosaCanonicalizations.cpp`. The input and result types being equal is not a sufficient condition for folding. If there is more than 1 dynamic dimension in the input and result types, a productive reshape could still occur.
- This work exposed the fact that bufferization does not properly handle a `tensor.collapse_shape` op producing a 0D tensor from a dynamically shaped one due to a limitation in `memref.collapse_shape`. While the proper way to address this would involve releasing the `memref.collapse_shape` restriction and verifying correct bufferization, this is left as possible future work. For now, this scenario is avoided by casting the `tosa.reshape` input tensor to a static shape if necessary (see `inferReshapeInputType()`.
- An extended set of tests are intended to cover relevant conversion paths. Tests are named using pattern `test_reshape_<rank>_{up|down|same}_{s2s|s2d|d2s|d2d}_{explicit|auto}[_empty][_identity]`, where:
- `<rank>` is the input rank (e.g., 3d, 6d)
- `{up|down|same}` indicates whether the reshape increases, decreases, or retains the input rank.
- `{s2s|s2d|d2s|d2d}` indicates whether reshape converts a statically shaped input to a statically shaped result (`s2s`), a statically shaped input to a dynamically shaped result (`s2d`), etc.
- `{explicit|auto}` is used to indicate that all values in the `new_shape` attribute are >=0 (`explicit`) or that a -1 placeholder value is used (`auto`).
- `empty` is used to indicate that `new_shape` includes a component set to 0.
- `identity` is used when the input and result shapes are the same.
Commit: 06bb8c9f202e37f215b26ca0dd9b2d8adaf5a83d
https://github.com/llvm/llvm-project/commit/06bb8c9f202e37f215b26ca0dd9b2d8adaf5a83d
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopLoadElim/versioning-scev-invalidation.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction-unroll.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
Log Message:
-----------
[VPlan] Explicitly handle scalar pointer inductions. (#83068)
Add a new PtrAdd opcode to VPInstruction that corresponds to
IRBuilder::CreatePtrAdd, which creates a GEP with source element type
i8.
This is then used to model scalarizing VPWidenPointerInductionRecipe by
introducing scalar-steps to model the index increment followed by a
PtrAdd.
Note that PtrAdd needs to be able to generate code for only the first
lane or for all lanes. This may warrant introducing a separate recipe
for scalarizing that can be created without relying on the underlying
IR.
Depends on https://github.com/llvm/llvm-project/pull/80271
PR: https://github.com/llvm/llvm-project/pull/83068
Commit: e933c05cd2cb97974cfca9544ebbdb9af349d602
https://github.com/llvm/llvm-project/commit/e933c05cd2cb97974cfca9544ebbdb9af349d602
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/widen_fadd.ll
M llvm/test/CodeGen/X86/widen_fmul.ll
M llvm/test/CodeGen/X86/widen_fsub.ll
Log Message:
-----------
[X86] Add fadd/fsub/fmul tests showing failure to concat operands together and perform as a wider vector
We don't want to concat fadd/fsub/fmul if both operands would need concatenating (as the fp op is usually cheaper than the concat), but if at least one operand is free to concat (i.e. constant or extracted from a wider vector), then we should try to concat the fp op.
Commit: d18bee2313ab8274fad386b1c0227316bf4238b2
https://github.com/llvm/llvm-project/commit/d18bee2313ab8274fad386b1c0227316bf4238b2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/widen_fadd.ll
M llvm/test/CodeGen/X86/widen_fmul.ll
M llvm/test/CodeGen/X86/widen_fsub.ll
Log Message:
-----------
[X86] combineConcatVectorOps - concatenate FADD/FSUB/FMUL ops if we don't increase the number of INSERT_SUBVECTOR nodes.
FADD/FSUB/FMUL are usually less port-bound than INSERT_SUBVECTOR, so only concatenate if it reduces the instruction count and doesn't introduce extra INSERT_SUBVECTOR nodes.
Commit: ecfffbfd3921fd47f3afc1d03a7518b34ec396b3
https://github.com/llvm/llvm-project/commit/ecfffbfd3921fd47f3afc1d03a7518b34ec396b3
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/src/__support/OSUtil/CMakeLists.txt
M libc/src/__support/OSUtil/baremetal/CMakeLists.txt
A libc/src/__support/OSUtil/baremetal/quick_exit.cpp
R libc/src/__support/OSUtil/baremetal/quick_exit.h
M libc/src/__support/OSUtil/darwin/CMakeLists.txt
R libc/src/__support/OSUtil/darwin/quick_exit.h
M libc/src/__support/OSUtil/gpu/CMakeLists.txt
M libc/src/__support/OSUtil/gpu/quick_exit.cpp
R libc/src/__support/OSUtil/gpu/quick_exit.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/quick_exit.cpp
R libc/src/__support/OSUtil/linux/quick_exit.h
M libc/src/__support/OSUtil/quick_exit.h
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/_Exit.cpp
M libc/src/stdlib/exit.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][OSUtil] refactor quick_exit to be an object library everywhere (#85955)
The usage of __builtin_unreachable after calls to quick_exit were distressing.
If a function is properly marked [[noreturn]] then __builtin_unreachable is not
necessary.
Looking into this further, we seem to have header only implementations for CPU
targets. The inline nature of these functions is curious; we're going to exit,
it doesn't matter if we need to pay the call of a function or not. If we just
make these functions have distinct TUs rather than be header only, we can clean
up the cmake rules for quick_exit which were different between CPU and GPU.
Remove darwin support for quick_exit. This isn't being tested, and we can bring
it back when necessary.
Commit: 87519a2830eab4b634a5816f53fe773929eed531
https://github.com/llvm/llvm-project/commit/87519a2830eab4b634a5816f53fe773929eed531
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
Log Message:
-----------
[RISCV] Combine (mul (zext, zext)) -> (zext (mul (zext, zext))) (#86465)
Building on #86248, we can also narrow the width of a mul of zexts.
This is specifically legal because on RVV we always extend to the next
power of 2 width, and multiplying two N bit integers produces a maximum
value of 2\*N bits.
So as long as we keep an inner zext of 2\*N, we will have enough space
for the multiply and won't overflow.
Alive2 proof: https://alive2.llvm.org/ce/z/XteYyb
Commit: 4998587e6f5f66d464ac22ad4c11fe9afd2d56ab
https://github.com/llvm/llvm-project/commit/4998587e6f5f66d464ac22ad4c11fe9afd2d56ab
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/test/Lower/HLFIR/procedure-pointer-component-structure-constructor.f90
Log Message:
-----------
[Flang] Support for passing procedure pointer, reference to a function that returns a procedure pointer to structure constructor. (#86533)
This PR fixes `not yet implemented: procedure pointer component in
structure constructor` as shown in the following test case.
```
MODULE M
TYPE :: DT
PROCEDURE(Fun), POINTER, NOPASS :: pp1
END TYPE
CONTAINS
INTEGER FUNCTION Fun(Arg)
INTEGER :: Arg
Fun = Arg
END FUNCTION
END MODULE
PROGRAM MAIN
USE M
IMPLICIT NONE
TYPE (DT) :: v2
PROCEDURE(FUN), POINTER :: pp2
v2 = DT(pp2)
v2 = DT(bar())
CONTAINS
FUNCTION BAR() RESULT(res)
PROCEDURE(FUN), POINTER :: res
END
END
```
Commit: 6e261d9c37a49b19552b439712703968ea88ee2a
https://github.com/llvm/llvm-project/commit/6e261d9c37a49b19552b439712703968ea88ee2a
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree-visitor.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/Fortran-parsers.cpp
M flang/lib/Parser/unparse.cpp
A flang/test/Parser/unrecognized-dir.f90
Log Message:
-----------
[flang] Accept more unrecognized !DIR$ compiler directives (#85829)
When encountering an unparsable !DIR$ compiler directive line, accept it
as a whole source line and emit a warning that it is unrecognizable.
Fixes https://github.com/llvm/llvm-project/issues/59107,
https://github.com/llvm/llvm-project/issues/82212, and
https://github.com/llvm/llvm-project/issues/82654.
Commit: 6d579cd1d91cdde5adfa455bda7903e737e9d5cf
https://github.com/llvm/llvm-project/commit/6d579cd1d91cdde5adfa455bda7903e737e9d5cf
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/InstallAPI/DylibVerifier.cpp
Log Message:
-----------
[InstallAPI] Add missing license header to file, NFC
Commit: f50f0caf87d762ca1c4a0122bd29d2fc9c667113
https://github.com/llvm/llvm-project/commit/f50f0caf87d762ca1c4a0122bd29d2fc9c667113
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/resolve61.f90
Log Message:
-----------
[flang] Fix crash in name resolution (#85835)
ConvertToObjectEntity() returns true for use- and host-associated object
symbols, too. Ensure in this case that the symbol really is a
non-associated object.
Fixes https://github.com/llvm/llvm-project/issues/85776.
Commit: 2f63718f8567413a1c596bda803663eb58d6da5a
https://github.com/llvm/llvm-project/commit/2f63718f8567413a1c596bda803663eb58d6da5a
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M lldb/source/Core/Module.cpp
Log Message:
-----------
[lldb] Don't clear a Module's UnwindTable when adding a SymbolFile (#86603)
Fixing a crash in lldb when `symbols.auto-download` setting is enabled.
When doing a backtrace, this feature has lldb search for a SymbolFile
for stack frames when we are backtracing, and add them either
synchoronously or asynchronously, depending on the specific setting
used.
Module::SetSymbolFileFileSpec clears the Module's UnwindTable, once we
find a new SymbolFile. We may be adding a source of unwind information
that we did not have when lldb was working only with the executable
binary.
What happens in practice is that we're using a reference to the Module's
UnwindTable, and then the other thread getting the SymbolFile clears it
and now the first thread is referring to freed memory and we can crash.
When built with address sanitizer, it crashes much more reliably.
Given that unwind information used for exception handling -- eh_frame,
compact unwind -- is present in executable binaries, the only thing
we're likely to *add* would be DWARF's `debug_frame` if that was also
available. The actual value of re-creating the UnwindTable when we have
added a SymbolFile is not large.
I also tried fixing this by changing the Module to have a shared_ptr to
the UnwindTable, so we could have two different UnwindTable's in use
simultaneously for a brief period. This would be fine TODAY, but it
introduces a very subtle bug that someone will have a heck of a time
figuring out in the future.
In the end, I believe the safest approach is to sacrifice the possible
marginal gain of reconstructing the UnwindTable once a SymbolFile has
been added, to sidestep this whole problem area.
Also, in `Module::GetUnwindTable()`, call `DownloadSymbolFileAsync`
before we create the UnwindTable for the first time, in case the symbol
file is fetched synchronously, we will have it for that possible
marginal gain.
Commit: 44d037cc258dcf179d2c48c93996bb406ecd0fae
https://github.com/llvm/llvm-project/commit/44d037cc258dcf179d2c48c93996bb406ecd0fae
Author: Abhin P Jose <abhinjose at live.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/DiagnosticHandler.h
M llvm/unittests/Linker/LinkModulesTest.cpp
M llvm/unittests/Support/ThreadPool.cpp
Log Message:
-----------
Change type of DiagnosticHandlerTy (#86504)
Changing type of DiagnosticHandlerTy due to adding
-Wcast-function-type-mismatch to -Wextra
group(https://github.com/llvm/llvm-project/pull/86131#issuecomment-2018014179).
Changed the reference argument DiagnosticInfo to a pointer and edited
the test cases failing due to this change. Added another small change
where Gtest api was throwing an warning due varargs argument not being
passed.
Commit: 375ddd677c08fa32ed188ba20097c1cb0949d846
https://github.com/llvm/llvm-project/commit/375ddd677c08fa32ed188ba20097c1cb0949d846
Author: Alfie Richards <alfie.richards at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/test/MC/ARM/basic-arm-instructions.s
M llvm/test/MC/ARM/load-store-acquire-release-v8-thumb.s
M llvm/test/MC/ARM/load-store-acquire-release-v8.s
Log Message:
-----------
[ARM][MC] Add GNU Alias for ldrexd, ldaexd, stlexd, and strexd instructions (#86507)
These aliases were supported previously there was a regression at some point.
This adds back the alternate forms and tidies up this section of code a little.
See https://github.com/llvm/llvm-project/pull/83436#issuecomment-2010213714 for the initial report regarding this change.
Commit: 348f9e73d7175f67750dc40b15cf1fc888bf60b5
https://github.com/llvm/llvm-project/commit/348f9e73d7175f67750dc40b15cf1fc888bf60b5
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
Log Message:
-----------
[lldb] Fix warning: comparison of unsigned expression in >= 0 is always true
lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp:1195:15: warning:
comparison of unsigned expression in ‘>= 0’ is always true
1195 | if (weekday >= 0 && weekday < 7)
| ~~~~~~~~^~~~
Commit: 3140d138e4ae9bba35dd23ce2eb0d1e088596f0a
https://github.com/llvm/llvm-project/commit/3140d138e4ae9bba35dd23ce2eb0d1e088596f0a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/extractelement-load.ll
Log Message:
-----------
[X86] extractelement-load.ll - use X86 instead of X32 check prefix. NFC
X32 should be used for gnux32 triples
Commit: c8b85add2ec1916f3aa5139dfd258e42a946a468
https://github.com/llvm/llvm-project/commit/c8b85add2ec1916f3aa5139dfd258e42a946a468
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/extractelement-load.ll
Log Message:
-----------
[X86] extractelement-load.ll - add test case for #85419
Commit: 3ada883f7c96e099e1a665c091751bff5f16690e
https://github.com/llvm/llvm-project/commit/3ada883f7c96e099e1a665c091751bff5f16690e
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
A flang/include/flang/Runtime/reduce.h
M flang/include/flang/Runtime/reduction.h
M flang/lib/Semantics/check-call.cpp
M flang/runtime/CMakeLists.txt
M flang/runtime/complex-reduction.c
M flang/runtime/complex-reduction.h
M flang/runtime/io-api.cpp
A flang/runtime/reduce.cpp
M flang/runtime/reduction-templates.h
M flang/runtime/tools.cpp
M flang/runtime/tools.h
M flang/unittests/Runtime/Reduction.cpp
Log Message:
-----------
[flang][runtime] Runtime support for REDUCE() (#86214)
Supports the REDUCE() transformational intrinsic function of Fortran
(see F'2023 16.9.173) in a manner similar to the existing support for
SUM(), PRODUCT(), &c. There are APIs for total reductions to scalar
results, and APIs for partial reductions that reduce the rank of the
argument by one.
This implementation requires more functions than other reductions
because the various possible types of the user-supplied OPERATION=
function need to be elaborated.
Once the basic API in reduce.h has been approved, later patches will
implement lowering.
REDUCE() is primarily for completeness, not portability; only one other
Fortran compiler implements this F'2018 feature today, and only some
types work correctly with it.
Commit: 5a0382ce7ab3577630bdbb396e9ddaed8749101e
https://github.com/llvm/llvm-project/commit/5a0382ce7ab3577630bdbb396e9ddaed8749101e
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/lib/Evaluate/check-expression.cpp
A flang/test/Semantics/structconst09.f90
Log Message:
-----------
[flang] Catch non-constant targets for procedure pointer initialization (#86338)
Detect attempts to use non-constant targets, including internal
procedures, as initializers for procedure pointers, including components
of structure components being used as initializers.
Commit: b06913103fe7d3abeb474369eb69e7dfab7f8893
https://github.com/llvm/llvm-project/commit/b06913103fe7d3abeb474369eb69e7dfab7f8893
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/AST/TypePrinter.cpp
Log Message:
-----------
Fix failure in buildbot (#86661)
Sanitizer failure in
https://lab.llvm.org/buildbot/#/builders/19/builds/25788
Commit: 5cf1e2e2ec7da58403182265f2a7d2d5c1c87854
https://github.com/llvm/llvm-project/commit/5cf1e2e2ec7da58403182265f2a7d2d5c1c87854
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/log-vec.ll
A llvm/test/CodeGen/DirectX/log.ll
A llvm/test/CodeGen/DirectX/log10.ll
A llvm/test/CodeGen/DirectX/log2.ll
A llvm/test/CodeGen/DirectX/log2_error.ll
Log Message:
-----------
[DXIL] Implement log intrinsic Lowering (#86569)
Completes #86192
`DXIL.td` - add log2 to dxilop lowering
`DXILIntrinsicExpansion.cpp` - add log and log10 to log2 expansions
Commit: 7860f970666f46184ad740db48a69882d62e64fc
https://github.com/llvm/llvm-project/commit/7860f970666f46184ad740db48a69882d62e64fc
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/include/flang/Common/idioms.h
M flang/include/flang/Common/template.h
M flang/include/flang/Common/unwrap.h
A flang/include/flang/Common/variant.h
M flang/include/flang/Common/visit.h
M flang/runtime/CMakeLists.txt
M flang/runtime/io-stmt.h
M flang/runtime/unit.cpp
M flang/runtime/unit.h
Log Message:
-----------
[flang][runtime] Use cuda::std::variant in the CUDA build. (#86615)
Added `FLANG_LIBCUDACXX_PATH` CMake variable to specify
installation of header-only libcudacxx library.
If it is specified, the `<cuda/std/variant>` is used to provide
implementation of `std::variant`.
Commit: e75989e93063d1ac2626c3478c28ca364e04ef28
https://github.com/llvm/llvm-project/commit/e75989e93063d1ac2626c3478c28ca364e04ef28
Author: smanna12 <soumi.manna at intel.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
Log Message:
-----------
[NFC][Clang] Fix potential dereferencing of nullptr (#85944)
This patch replaces getAs<> with castAs<> to resolve potential static
analyzer bugs for
1. Dereferencing a pointer issue with nullptr FPT when calling
ResolveExceptionSpec() in
checkEscapingByref(clang::VarDecl *, clang::Sema &).
3. Dereferencing a pointer issue with nullptr ElementTy->getAs() when
calling getElementType() in
clang::Sema::SemaBuiltinFPClassification(clang::CallExpr *, unsigned
int).
4. Dereferencing a pointer issue with nullptr ConvType->getAs() when
calling getKeyword() in
clang::Sema::ActOnConversionDeclarator(clang::CXXConversionDecl *).
Commit: 8f01ecaeb8e537511718c4df123fb92633d9f73d
https://github.com/llvm/llvm-project/commit/8f01ecaeb8e537511718c4df123fb92633d9f73d
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/include/flang/Parser/tools.h
M flang/lib/Parser/tools.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/init01.f90
M flang/test/Semantics/resolve81.f90
Log Message:
-----------
[flang] Special-case handling of INTRINSIC in type-decl-stmt (#86518)
Fortran allows the INTRINSIC attribute to be specified with a distinct
attribute statement, and also as part of the attribute list of a
type-declaration-stmt. This is an odd case (especially as the declared
type is mandated to be ignored if it doesn't match the type of the
intrinsic function) that can lead to odd error messages and crashes,
since the rest of name resolution expects that intrinsics with explicit
declarations will have been declared with INTRINSIC attribute
statements. Resolve by handling an "inline" INTRINSIC attribute as a
special case while processing a type-declaration-stmt, so that
real, intrinsic :: acos, asin, atan
is processed exactly as if it had been
intrinsic acos, asin, atan; real acos, asin, atan
Fixes https://github.com/llvm/llvm-project/issues/86382.
Commit: 39c03a2fbcdd6f20e0457faa5e169f4948f9422b
https://github.com/llvm/llvm-project/commit/39c03a2fbcdd6f20e0457faa5e169f4948f9422b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
Log Message:
-----------
[RISCV] Remove unnecessary overrides of a defaulted template argument. NFC
Commit: bf4fc00bb73c73ccc7a78cd6d28287dd58c71e2c
https://github.com/llvm/llvm-project/commit/bf4fc00bb73c73ccc7a78cd6d28287dd58c71e2c
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[mlir][vector] Refactor linearize.mlir (#86648)
This patch refactors the `linearize.mlir` test - currently it contains
some duplication and can be tricky to follow.
Summary of changes:
* reduce duplication by introducing a shared check prefix (`ALL`) and
by introducing `-check-prefixes`,
* make sure that every "check" line is directly above the
corresponding line of input MLIR,
* group check lines corresponding to a particular prefix together (so
that it's easier to see the expected output for a particular
prefix),
* remove `CHECK` from prefix names (with multiple prefixes that's just
noise that can be avoided) and use a bit more descriptive prefixes
instead (`CHECK0` -> `BW-0`, where `BW` stands for bitwidth),
* unify indentation,
* `nonvec_result` -> `test_tensor_no_linearize` (for consistency with
`test_index_no_linearize`).
NOTE: This change only updates the format of the "CHECK" lines and
doesn't affect what's being tested.
This change is intended as preparation for adding support for scalable
vectors to `LinearizeConstant` and `LinearizeVectorizable` - i.e.
patterns that `linearlize.mlir` is meant to test.
Commit: f92f77521263c8f20171b62688ecc86de9c9dfa9
https://github.com/llvm/llvm-project/commit/f92f77521263c8f20171b62688ecc86de9c9dfa9
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/lib/Semantics/tools.cpp
Log Message:
-----------
[flang][NFC] Address reported "possible missing return" (#86523)
A function uses "if constexpr" to consider all possible types in a
variant, but looks as if it can fall out without returning an
expression. Add a final "else" with a crash to make things more clear
and to protect against unlikely future extensions of the type.
Fixes https://github.com/llvm/llvm-project/issues/86391.
Commit: 81fc43a39878dbd938b45d7735fe6e0fe37b03c3
https://github.com/llvm/llvm-project/commit/81fc43a39878dbd938b45d7735fe6e0fe37b03c3
Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/unittests/TableGen/CMakeLists.txt
Log Message:
-----------
[unittests] Fix `TableGenTests` with `LLVM_LINK_LLVM_DYLIB` (#86664)
Since the restructuring in commit fa3d789df1, the option
DISABLE_LLVM_LINK_LLVM_DYLIB is counter-productive and leads to
CommandLine Error: Option 'debug-counter' registered more than once!
Commit: 4c4ea249cef8db71d30517aab60a081e764260e1
https://github.com/llvm/llvm-project/commit/4c4ea249cef8db71d30517aab60a081e764260e1
Author: smanna12 <soumi.manna at intel.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
Log Message:
-----------
[NFC][CLANG] Fix static analyzer bugs about unnecessary object copies with auto keyword (#85962)
Reported by Static Analyzer Tool:
In clang::dataflow::Environment::initialize(): Using the auto keyword
without an & causes the copy of an object of type LambdaCapture
Commit: f050a098b5e0745b6c230410f433e48dcc46d160
https://github.com/llvm/llvm-project/commit/f050a098b5e0745b6c230410f433e48dcc46d160
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/test/Conversion/ArithToSPIRV/fast-math.mlir
Log Message:
-----------
[mlir][spirv] Remove `enableFastMathMode` flag from SPIR-V conversion (#86578)
Most of arith/math ops support fastmath attribute, use it instead of
global flag.
Commit: f4fc959c35eb862776ac2e83cb9f41aa88989e3f
https://github.com/llvm/llvm-project/commit/f4fc959c35eb862776ac2e83cb9f41aa88989e3f
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/tools.cpp
A flang/test/Semantics/deferred01.f90
Log Message:
-----------
[flang] Catch impossible but necessary TBP override (#86558)
An apparent attempt to override a type-bound procedure is not allowed to
be interpreted as on override when the procedure is PRIVATE and the
override attempt appears in another module. However, if the TBP that
would have been overridden is a DEFERRED procedure in an abstract base
type, the override must take place. PRIVATE DEFERRED procedures must
therefore have all of their overrides appear in the same module as the
abstract base type.
Commit: 313734795c67ca0bfb82f96b39e123774ddf24b4
https://github.com/llvm/llvm-project/commit/313734795c67ca0bfb82f96b39e123774ddf24b4
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp
Log Message:
-----------
[clang-tidy] Fix fix-it overlaps in readability-static-definition-in-anonymous-namespace (#86599)
Because check emitted multiple warnings for every template instance
fix-it couldn't be applied due to overlaps.
Using TK_IgnoreUnlessSpelledInSource and restricting check to C++ only.
Commit: 26dd12871ca8a3dcc5e6920add231af354310088
https://github.com/llvm/llvm-project/commit/26dd12871ca8a3dcc5e6920add231af354310088
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
Log Message:
-----------
[SLP]Do not propagate nuw/nsw flags for alt nodes, affected by
minbitwidth analysis.
Need to drop nuw/nsw flags, if the alternate node is resized after the
minbitwidth analysis, to avoid producing poison values in corner cases.
Commit: 1eaef44532266694c28f49f5c0373e7fc93d4f82
https://github.com/llvm/llvm-project/commit/1eaef44532266694c28f49f5c0373e7fc93d4f82
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
Log Message:
-----------
[TosaToTensor] Fix a warning (#86703)
This patch fixes:
mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp:76:46: error:
'multiplies' may not intend to support class template argument
deduction [-Werror,-Wctad-maybe-unsupported]
Commit: 8cb4eb991401093fbfbc255ea752210d0bd5acfe
https://github.com/llvm/llvm-project/commit/8cb4eb991401093fbfbc255ea752210d0bd5acfe
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
Log Message:
-----------
[RISCV] Remove unneeded VAESKF_MV_I tablegen class. NFC
It is identical to PALUVINoVm so we can use that instead.
Commit: d0e97fe38b91dac909e6a53ab16d306e5ef0b512
https://github.com/llvm/llvm-project/commit/d0e97fe38b91dac909e6a53ab16d306e5ef0b512
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
Log Message:
-----------
[ArithToSPIRV] Fix a warning (#86702)
mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp:995:11: error:
unused variable 'converter' [-Werror,-Wunused-variable]
Commit: da6cc4a24ff8953d51f7dc2c4974e8fc9089d693
https://github.com/llvm/llvm-project/commit/da6cc4a24ff8953d51f7dc2c4974e8fc9089d693
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/MIRParser/MILexer.cpp
M llvm/lib/CodeGen/MIRParser/MILexer.h
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-nneg-disjoint.ll
Log Message:
-----------
[CodeGen] Add nneg and disjoint flags (#86650)
MachineInstr learned the new flags.
Commit: 29318abe1d2c55e8543255d70f26ac93261b74a4
https://github.com/llvm/llvm-project/commit/29318abe1d2c55e8543255d70f26ac93261b74a4
Author: Jason Molenda <jason at molenda.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
R lldb/test/Shell/SymbolFile/target-symbols-add-unwind.test
Log Message:
-----------
[lldb] Remove test for add-symbol-file adds unwind source
In
commit 2f63718f8567413a1c596bda803663eb58d6da5a
Author: Jason Molenda <jmolenda at apple.com>
Date: Tue Mar 26 09:07:15 2024 -0700
[lldb] Don't clear a Module's UnwindTable when adding a SymbolFile (#86603)
I changed lldb to not clear a Module's UnwindTable when we add a
SymbolFile to a binary, because the added benefit is marginal, and
handling this reconstruction correctly is difficult. This test was
written to explicitly create a test without unwind info in the
binary, then add a symbol file with the unwind info, and check that
it is present. I've intentionally broken this, so I'm removing the
test.
Commit: 0c3e24f7c90243040fedcdfbbb417505f7cc0102
https://github.com/llvm/llvm-project/commit/0c3e24f7c90243040fedcdfbbb417505f7cc0102
Author: Ella Ma <alansnape3058 at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/utils/analyzer/exploded-graph-rewriter.py
Log Message:
-----------
[analyzer] Allow egraph rewriter not to open the generated HTML directly (#85515)
When developing on a headless device through SSH, we do not have a
browser or even an X environment. Hence, it would be more convenient if
the rewriter could stop before attempting to open the generated HTML
file. Then, it can be opened remotely through an HTML server.
This patch adds a new option `--dump-html-only` to make the rewriter
stop before opening the generated HTML in a browser. The new option is
marked in conflict with the existing `--dump-dot-only` option to prevent
unexpected behaviors.
Commit: 1ad29a5c7131a31883d24cc41388c5a3565c7a4f
https://github.com/llvm/llvm-project/commit/1ad29a5c7131a31883d24cc41388c5a3565c7a4f
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/RISCV/trunc-to-large-than-bw.ll
Log Message:
-----------
[SLP][NFC]Add a test with truncated loads, but incorrect trunc after
minbitwidth analysis.
Commit: 342f7d0d35774ffdcb56e8b92252763a59bd2c29
https://github.com/llvm/llvm-project/commit/342f7d0d35774ffdcb56e8b92252763a59bd2c29
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/trunc-to-large-than-bw.ll
M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
Log Message:
-----------
[SLP]Fix PR86620: check final minbitwidth for truncs/exts before
accepting it.
If the minbitwidth is deduced from the demanded elements, need to check
the final bitwidthfor trunc/ext instruction, bot blindly accepting
the used one.
Commit: 1c9d5c25ae43778a1f5bd14898223c33a203d4d5
https://github.com/llvm/llvm-project/commit/1c9d5c25ae43778a1f5bd14898223c33a203d4d5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] foldAddSubBoolOfMaskedVal - reuse existing SDLoc instead of regenerating it. NFC.
Commit: 8edb12fe6cf81d194a4553da5d10e976bc4cfd4f
https://github.com/llvm/llvm-project/commit/8edb12fe6cf81d194a4553da5d10e976bc4cfd4f
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/unittests/IR/PatternMatch.cpp
Log Message:
-----------
[IR] Add `m_c_BitwiseLogic` in pattern match; NFC
Just a missing matcher that came up in #73362
Closes #86632
Commit: cf6e62d8c308c7bf2885c422983c80842d735456
https://github.com/llvm/llvm-project/commit/cf6e62d8c308c7bf2885c422983c80842d735456
Author: Alex Zinenko <zinenko at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
Log Message:
-----------
[mlir][doc] NFC fix incorrect filename in td match interface
Commit: 2fbc40d36dd8e21fab4cc6cb43984baaa39bcd59
https://github.com/llvm/llvm-project/commit/2fbc40d36dd8e21fab4cc6cb43984baaa39bcd59
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV] Split compound if statement to fix a crash.
We're not allowed to call getELEN when the vector extension
is not enabled. If we're looking at a vector type, isTypeLegal would
only return true if the vector extensions are enabled. So early out
for non-vector types before we call isTypeLegal and getELEN.
Commit: 148a55795de7ac465a8e494d5d382e100da643f6
https://github.com/llvm/llvm-project/commit/148a55795de7ac465a8e494d5d382e100da643f6
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
R flang/lib/Lower/OpenMP/ClauseT.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
A llvm/include/llvm/Frontend/OpenMP/ClauseT.h
Log Message:
-----------
[flang][OpenMP] Make OpenMP clause representation language-agnostic (#86289)
The clause templates defined in ClauseT.h were originally based on
flang's parse tree nodes. Since those representations are going to be
reused for clang (together with the clause splitting code), it makes
sense to separate them from flang, and instead have them based on the
actual OpenMP spec (v5.2).
The member names in the templates follow the naming presented in the
spec, and the representation (e.g. members) is derived from the clause
definitions as described in the spec.
Since the representations of some clauses has changed (while preserving
the information), the current code using the clauses (especially the
code converting parser::OmpClause to omp::Clause) needs to be adjusted.
This patch does not make any functional changes.
Commit: 601d7eab0665ba298d81952da11593124fd893a0
https://github.com/llvm/llvm-project/commit/601d7eab0665ba298d81952da11593124fd893a0
Author: Karthika Devi C <quic_kartc at quicinc.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
A polly/include/polly/Support/PollyDebug.h
M polly/lib/Analysis/DependenceInfo.cpp
M polly/lib/Analysis/PolyhedralInfo.cpp
M polly/lib/Analysis/PruneUnprofitable.cpp
M polly/lib/Analysis/ScopBuilder.cpp
M polly/lib/Analysis/ScopDetection.cpp
M polly/lib/Analysis/ScopInfo.cpp
M polly/lib/CMakeLists.txt
M polly/lib/CodeGen/CodeGeneration.cpp
M polly/lib/CodeGen/IslAst.cpp
A polly/lib/Support/PollyDebug.cpp
M polly/lib/Support/SCEVValidator.cpp
M polly/lib/Transform/DeLICM.cpp
M polly/lib/Transform/FlattenAlgo.cpp
M polly/lib/Transform/FlattenSchedule.cpp
M polly/lib/Transform/ForwardOpTree.cpp
M polly/lib/Transform/ManualOptimizer.cpp
M polly/lib/Transform/MatmulOptimizer.cpp
M polly/lib/Transform/ScheduleOptimizer.cpp
M polly/lib/Transform/ScheduleTreeTransform.cpp
M polly/lib/Transform/ScopInliner.cpp
M polly/lib/Transform/Simplify.cpp
M polly/lib/Transform/ZoneAlgo.cpp
A polly/test/Support/pollyDebug.ll
Log Message:
-----------
[polly] Add polly-debug flag to print debug info from all parts of polly (#78549)
This flag enable the user to print debug Info from all the passes and
helpers inside polly at once. This will help a novice user as well to
work in polly without explicitly having to know which parts of polly has
actually kicked in and pass them via -debug-only.
Commit: 0e5c504d3d80eb1488483a15269c2155f9e04bd7
https://github.com/llvm/llvm-project/commit/0e5c504d3d80eb1488483a15269c2155f9e04bd7
Author: Emil Pedersen <3mille.prenom.nom at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
A llvm/test/DebugInfo/X86/dbg-value-funcarg-duplicates.ll
Log Message:
-----------
[DebugInfo] [SelectionDAG] Fix handling of duplicate dbg values (#86598)
Before this fix, a duplicate llvm.dbg.value intrinsic referring to an
argument, after an alloca, would be generated with `$noreg`, losing
debug information. Instead, we silently drop the second debug info, so
it doesn't break the first one.
rdar://125375717
Commit: 28ddbd4a863c4c1b6c36deb6edf305ee93412cd4
https://github.com/llvm/llvm-project/commit/28ddbd4a863c4c1b6c36deb6edf305ee93412cd4
Author: Chris B <chris.bieneman at me.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/include/clang/AST/Type.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/lib/AST/Interp/Program.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ScanfFormatString.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/SwiftCallingConv.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/CodeGen/Targets/LoongArch.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
Log Message:
-----------
[NFC] Refactor ConstantArrayType size storage (#85716)
In PR #79382, I need to add a new type that derives from
ConstantArrayType. This means that ConstantArrayType can no longer use
`llvm::TrailingObjects` to store the trailing optional Expr*.
This change refactors ConstantArrayType to store a 60-bit integer and
4-bits for the integer size in bytes. This replaces the APInt field
previously in the type but preserves enough information to recreate it
where needed.
To reduce the number of places where the APInt is re-constructed I've
also added some helper methods to the ConstantArrayType to allow some
common use cases that operate on either the stored small integer or the
APInt as appropriate.
Resolves #85124.
Commit: 5e6e40fee31d5db2f44d604b0362e1e819f41ba5
https://github.com/llvm/llvm-project/commit/5e6e40fee31d5db2f44d604b0362e1e819f41ba5
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy] Improve performance of google-runtime-int (#86596)
Main problem with performance of this check is caused by hasAncestor
matcher, and to be more precise by an llvm::DenseSet and std::deque in
matchesAnyAncestorOf.
To reduce impact of this matcher, multiple conditions that were checked
in check method were copied into AST matcher that is now checked before
hasAncestor.
Using custom getCheckTraversalKind to exclude template instances that
shouldn't be checked anyway is an additional improvement, but gain from
that one is low.
Tested on ffl_tests.cc, visible reduction from ~442 seconds to ~15
seconds (~96% reduction).
Closes #86553
Commit: 156c2907462bc5e97d13d3e7d334a32a291bc787
https://github.com/llvm/llvm-project/commit/156c2907462bc5e97d13d3e7d334a32a291bc787
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M lldb/include/lldb/Core/Progress.h
M lldb/source/API/SystemInitializerFull.cpp
M lldb/source/Core/Progress.cpp
M lldb/unittests/Core/ProgressReportTest.cpp
Log Message:
-----------
[lldb] Implement coalescing of disjoint progress events (#84854)
This implements coalescing of progress events using a timeout, as
discussed in the RFC on Discourse [1]. This PR consists of two commits
which, depending on the feedback, I may split up into two PRs. For now,
I think it's easier to review this as a whole.
1. The first commit introduces a new generic `Alarm` class. The class
lets you to schedule a function (callback) to be executed after a given
timeout expires. You can cancel and reset a callback before its
corresponding timeout expires. It achieves this with the help of a
worker thread that sleeps until the next timeout expires. The only
guarantee it provides is that your function is called no sooner than the
requested timeout. Because the callback is called directly from the
worker thread, a long running callback could potentially block the
worker thread. I intentionally kept the implementation as simple as
possible while addressing the needs for the `ProgressManager` use case.
If we want to rely on this somewhere else, we can reassess whether we
need to address those limitations.
2. The second commit uses the Alarm class to coalesce progress events.
To recap the Discourse discussion, when multiple progress events with
the same title execute in close succession, they get broadcast as one to
`eBroadcastBitProgressCategory`. The `ProgressManager` keeps track of
the in-flight progress events and when the refcount hits zero, the Alarm
class is used to schedule broadcasting the event. If a new progress
event comes in before the alarm fires, the alarm is reset (and the
process repeats when the new progress event ends). If no new event comes
in before the timeout expires, the progress event is broadcast.
[1]
https://discourse.llvm.org/t/rfc-improve-lldb-progress-reporting/75717/
Commit: 8ea94b614bd8ac74802867588129bcfd0a326620
https://github.com/llvm/llvm-project/commit/8ea94b614bd8ac74802867588129bcfd0a326620
Author: Félix-Antoine Constantin <60141446+felix642 at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
Log Message:
-----------
[clang-tidy] Improved modernize-use-using by fixing a false-negative (#82947)
The check needs a parent decl to match but if the typedef is in a
function, the parent is a declStmt which is not a decl by itself.
Improved the matcher to match on either a decl or a declstmt and extract
the decl from the stmt in the latter case.
Fixes #72179
Commit: 8a84596310f5b141817c784f0b4b46a636767e6e
https://github.com/llvm/llvm-project/commit/8a84596310f5b141817c784f0b4b46a636767e6e
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/Fortran-parsers.cpp
Log Message:
-----------
[flang] Dodge bogus GCC 13.2.0 error message in new code (#86708)
Rearrange some new code a little bit to avoid a bogus error message
coming out from GCC 13.2.0 about an uninitialized data member in a
parser.
Commit: 982ebeb212ddb354e2babc1ce1ddfccc06b6ea27
https://github.com/llvm/llvm-project/commit/982ebeb212ddb354e2babc1ce1ddfccc06b6ea27
Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/sar_fold.ll
Log Message:
-----------
[X86] Pre-commit test case for bug in combineShiftRightArithmetic
It has been noticed that combineShiftRightArithmetic isn't dealing
properly with large shift amounts, as demonstrated by the test
case added in this commit.
I think the problem partly is related to X86 using i8 as shift amount
type during ISel. So shift amount larger then 127 may be treated
as negative shift amounts if not being careful.
Commit: 4c72cfa31798a67c6daa25d474bcfe536e4fa0c0
https://github.com/llvm/llvm-project/commit/4c72cfa31798a67c6daa25d474bcfe536e4fa0c0
Author: Michael Jones <michaelrj at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/test/src/math/smoke/CanonicalizeTest.h
Log Message:
-----------
[libc] Remove definition of LIBC_NAMESPACE in test (#86704)
The canonicalize test added in #85940 defined the LIBC_NAMESPACE macro.
this macro is intended to be set only by the build system and never in
the code.
Commit: 14e17ea1f62d9861f90a6a31e7c8a1d12bb081fc
https://github.com/llvm/llvm-project/commit/14e17ea1f62d9861f90a6a31e7c8a1d12bb081fc
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-loop.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
Log Message:
-----------
[flang][acc] Add support for lowering combined constructs (#86696)
PR#80319 added support to record combined construct semantics via an
attribute. Add lowering support for this.
Commit: 3e6e54eb795ce7a1ccd47df8c22fc08125a88886
https://github.com/llvm/llvm-project/commit/3e6e54eb795ce7a1ccd47df8c22fc08125a88886
Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/sar_fold.ll
Log Message:
-----------
[X86] Fix miscompile in combineShiftRightArithmetic (#86597)
When folding (ashr (shl, x, c1), c2) we need to treat c1 and c2
as unsigned to find out if the combined shift should be a left
or right shift.
Also do an early out during pre-legalization in case c1 and c2
has differet types, as that otherwise complicated the comparison
of c1 and c2 a bit.
Commit: 2d97ba22f8ca0fbb8896fd0f54c0cd7c69f4d0cd
https://github.com/llvm/llvm-project/commit/2d97ba22f8ca0fbb8896fd0f54c0cd7c69f4d0cd
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/src/stdlib/strfromd.cpp
M libc/src/stdlib/strfromf.cpp
M libc/src/stdlib/strfroml.cpp
Log Message:
-----------
[libc]: Remove unused includes from strfrom*.cpp (#86657)
Removes unused header includes from `strfrom*()` implementation files.
Commit: a3f21a32495abeaddfa64a9789cd8c1b3fdad87c
https://github.com/llvm/llvm-project/commit/a3f21a32495abeaddfa64a9789cd8c1b3fdad87c
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/src/__support/macros/config.h
M libc/test/src/__support/arg_list_test.cpp
Log Message:
-----------
[libc] Remove LIBC_HAS_ATTRIBUTE macro (#86656)
Resolves #86547
Replace occurrences of the macro `LIBC_HAS_ATTRIBUTE` with `__has_attribute`.
Commit: ac1af75051195e63cc518cf12312dd4eaf2e9bf8
https://github.com/llvm/llvm-project/commit/ac1af75051195e63cc518cf12312dd4eaf2e9bf8
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Builtins.td
M clang/lib/AST/ExprConstant.cpp
M clang/test/Sema/constant-builtins-2.c
Log Message:
-----------
[clang] Implement constexpr support for __builtin_{clzg,ctzg} (#86577)
Fixes #86549.
Commit: 158401493a42014947ef2fb64ca761b57741815a
https://github.com/llvm/llvm-project/commit/158401493a42014947ef2fb64ca761b57741815a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
M llvm/test/MC/RISCV/rv32zcmp-invalid.s
M llvm/test/MC/RISCV/rv64zcmp-invalid.s
Log Message:
-----------
[RISCV] Check that the stack adjust immediate for cm.push/pop* has the correct sign and is divisible by 16. (#85295)
To do this I've added a new AsmOperand for cm.push to expect a negative
value. We also use that to customize the print function so that we don't
need to detect cm.push opcode to add the negative sign.
I've renamed some places that used Spimm to be StackAdj since that's
what is being parsed. I'm still not about where we should use Spimm or
StackAdj.
I've removed the printSpimm helper function which in one usage printed
the sp[5:4]<<4 value and the other usage printed the full stack
adjustment. There wasn't anything interesting about how it was printed
it just passed the value to the raw_stream. If there was something
special needed, it's unclear whether it would be the same for the two
different usages so I inlined it.
One open question is whether we need to support stack adjustments
expressed as an expression rather than a literal integer.
Commit: b0b8b16bb8dfb8c60fe9665c6a1c306306b716d2
https://github.com/llvm/llvm-project/commit/b0b8b16bb8dfb8c60fe9665c6a1c306306b716d2
Author: Florian Mayer <fmayer at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
Log Message:
-----------
[NFC] [HWASan] Add link to proof for address calculation (#86367)
Commit: 880eb339cae3acba9be0b2ea3271dba22ea9ec1f
https://github.com/llvm/llvm-project/commit/880eb339cae3acba9be0b2ea3271dba22ea9ec1f
Author: Florian Mayer <fmayer at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
Log Message:
-----------
[NFC] [HWASan] make getAndroidSlotPtr function generic (#86200)
This is so we can use a different slot for stack MTE.
Commit: d5224b73ccd09a6759759791f58426b6acd4a2e2
https://github.com/llvm/llvm-project/commit/d5224b73ccd09a6759759791f58426b6acd4a2e2
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
Log Message:
-----------
[tsan] Refine fstat{,64} interceptors (#86625)
In glibc versions before 2.33. `libc_nonshared.a` defines
`__fxstat/__fxstat64` but there is no `fstat/fstat64`. glibc 2.33 added
`fstat/fstat64` and obsoleted `__fxstat/__fxstat64`. Ports added after
2.33 do not provide `__fxstat/__fxstat64`, so our `fstat/fstat64`
interceptors using `__fxstat/__fxstat64` interceptors would lead to
runtime failures on such ports (LoongArch and certain RISC-V ports).
Similar to https://reviews.llvm.org/D118423, refine the conditions that
we define fstat{,64} interceptors. `fstat` is supported by musl/*BSD
while `fstat64` is glibc only.
Commit: 80487e1c622d51f4c0df12b64cca8a0b346e9b85
https://github.com/llvm/llvm-project/commit/80487e1c622d51f4c0df12b64cca8a0b346e9b85
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy][NFC] Reorder entrys in release notes
Sort entrys in release notes.
Commit: a22bd00ce03a77a38be2911979a4c4f2ca01379d
https://github.com/llvm/llvm-project/commit/a22bd00ce03a77a38be2911979a4c4f2ca01379d
Author: Alina Sbirlea <asbirlea at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] [bazel] [NFC] Format deps.
Commit: c6d419c15bf836085392212b8ab7600f7402829b
https://github.com/llvm/llvm-project/commit/c6d419c15bf836085392212b8ab7600f7402829b
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Dialect/Tosa/level_check.mlir
Log Message:
-----------
[TOSA] Allow all integer types in most ops (#86509)
As discussed in one of the previous TOSA community meetings, we would
like to allow for more integer types in the TOSA dialect to enable more
use cases.
For strict standards conformance, the TosaValidation pass can be used.
Follow up PRs will extend conversions from TOSA where needed.
Commit: 630283c38bce9ec188c96ddb90b8251afc2b3d8e
https://github.com/llvm/llvm-project/commit/630283c38bce9ec188c96ddb90b8251afc2b3d8e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/src/__support/OSUtil/baremetal/quick_exit.cpp
Log Message:
-----------
[libc] Fix misplaced `[[noreturn]]` attribute.
Summary:
This needs to go after `extern "C"`.
Commit: 1949f7d6c9bd59172c01c7933e1c558797c47eac
https://github.com/llvm/llvm-project/commit/1949f7d6c9bd59172c01c7933e1c558797c47eac
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/fuchsia.cpp
M compiler-rt/lib/scudo/standalone/mem_map_fuchsia.cpp
M compiler-rt/lib/scudo/standalone/report_linux.cpp
M compiler-rt/lib/scudo/standalone/string_utils.cpp
M compiler-rt/lib/scudo/standalone/string_utils.h
M compiler-rt/lib/scudo/standalone/tests/strings_test.cpp
M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
M compiler-rt/lib/scudo/standalone/vector.h
Log Message:
-----------
[scudo] Clean up string handling (#86364)
Do not abort if a vector cannot increase its own capacity. In that case,
push_back calls silently fail.
Modify the ScopedString implementation so that it no longer requires two
passes to do the format. Move the helper functions to be private member
functions so that they can use push_back directly. This allows the
capacity to be increased under the hood and/or silently discards data if
the capacity is exceeded and cannot be increased.
Add new tests for the Vector and ScopedString for capacity increase
failures.
Doing this so that if a map call fails, and we are attempting to write
an error string, we can still get some of the message dumped. This also
avoids crashing in Scudo code, and makes the caller handle any failures.
Commit: 80bba17914dec52789d2e75ed560acb11cce959a
https://github.com/llvm/llvm-project/commit/80bba17914dec52789d2e75ed560acb11cce959a
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M libc/src/__support/FPUtil/BasicOperations.h
Log Message:
-----------
[libc][FPUtil] fixup missing explicit cast (#86736)
The arm32 buildbot reports an error because UInt::operator bool() is explicit,
thus an explicit cast is necessary.
Link: #85940
Commit: 86692258637549ed9f863c3d2ba47b49f61bbc1f
https://github.com/llvm/llvm-project/commit/86692258637549ed9f863c3d2ba47b49f61bbc1f
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
[compiler-rt] Allow building builtins.a without a libc (#86737)
compiler-rt may depend on libc (memset etc). Likewise a libc built by
clang may depend on compiler-rt builtins.
This circular dependency doesn't matter much once they're both compiled.
The easy compilation order to build both from source is:
1. install libc headers somewhere
2. build compiler-rt builtins against those headers
3. build libc against compiler-rt builtins
This patch relaxes the cmake sanity check to pass without requiring a
libc library. That allows the above sequence to work. Otherwise one
needs to build a static libc, then use that to pass the compiler-rt
cmake check, then build a normal libc.
Commit: d31278896208d856b277e34bd7e2a63899f0b57b
https://github.com/llvm/llvm-project/commit/d31278896208d856b277e34bd7e2a63899f0b57b
Author: Xiangyang (Mark) Guo <helloguo at fb.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Analysis/InlineOrder.cpp
Log Message:
-----------
[InlineOrder] fix the calculation of Cost for CostBenefitPriority (#86630)
getCost() expects that isVariable() is true.
https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Analysis/InlineCost.h#L146
Co-authored-by: helloguo <helloguo at meta.com>
Commit: 09155ac290b0906ac8011c87ee43d7c7a2710387
https://github.com/llvm/llvm-project/commit/09155ac290b0906ac8011c87ee43d7c7a2710387
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Log Message:
-----------
[LegalizeDAG] Remove unneeded temporary SDValues from PerformInsertVectorEltInMemory. NFC
There were 3 temporaries that just renamed the 3 well name arguments to the
function to Tmp1-3. Looks like this was done when the code was extracted from
elsewhere into a separate function 15 years ago.
Commit: b1a633bc014a845a58f0f3c4e442219051646c19
https://github.com/llvm/llvm-project/commit/b1a633bc014a845a58f0f3c4e442219051646c19
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
Log Message:
-----------
[NFC][NVPTX] remove truncating c-style cast (#85889)
While a stack size large enough to cause this truncation to be a problem
would certainly cause other issues and not produce a valid program
anyway, this cast is triggering our Coverity static analysis. Removing
it seems cleaner.
Commit: 7db40463229bb1c9fb15b2107d878fe70d1eda65
https://github.com/llvm/llvm-project/commit/7db40463229bb1c9fb15b2107d878fe70d1eda65
Author: Vadim Paretsky <vadim.paretsky at intel.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M openmp/runtime/src/kmp_collapse.cpp
A openmp/runtime/test/worksharing/for/collapse_test.inc
A openmp/runtime/test/worksharing/for/omp_collapse_many_GELTGT_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_many_GTGEGT_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_many_LTLEGE_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_many_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_one_int.c
Log Message:
-----------
[OpenMP] add loop collapse tests (#86243)
This PR adds loop collapse tests ported from MSVC.
---------
Co-authored-by: Vadim Paretsky <b-vadipa at microsoft.com>
Commit: c43932ebdc407ed9633f7468dcb061b635e99a8d
https://github.com/llvm/llvm-project/commit/c43932ebdc407ed9633f7468dcb061b635e99a8d
Author: SevenIsSeven <150881358+SevenIsSeven at users.noreply.github.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/BasicBlock.h
Log Message:
-----------
fix build error in MSVC build (#86622)
This commit(https://github.com/llvm/llvm-project/pull/84738) introduced
following compile warning then treated-as-error in MSVC build.
>>>"'^': unsafe mix of type 'unsigned int' and type 'bool' in operation"
---------
Co-authored-by: Seven <Seven.Li at amd.com>
Commit: 3324f4d4f4bd82bc9fd43062d21a450671a3531b
https://github.com/llvm/llvm-project/commit/3324f4d4f4bd82bc9fd43062d21a450671a3531b
Author: Aart Bik <ajcbik at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
A mlir/test/Dialect/SparseTensor/no_fold_into_consumer.mlir
Log Message:
-----------
[mlir][sparse] avoid incompatible linalg fuse-into-consumer (#86752)
This fixes an "infinite" loop bug, where the incoming IR was repeatedly
rewritten while adding identical cast operations. The test for
compatible types should include the notion of an encoding. If it
differs, then a
naive fusion into the consumer is invalid.
Commit: 54a9f0e441c7cc3c954d24cfde00cb933306a9e9
https://github.com/llvm/llvm-project/commit/54a9f0e441c7cc3c954d24cfde00cb933306a9e9
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/lib/Target/RISCV/RISCVInstrGISel.td
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vscale32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vscale64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vscale-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vscale-rv64.mir
Log Message:
-----------
[RISCV][GISEL] Legalize, regbankselect, and instruction-select G_VSCALE (#85967)
G_VSCALE should be lowered using VLENB. If the type is not sXLen it
should be lowered using a G_VSCALE on the narrow type and a G_MUL.
regbank select and instruction select are straightforward so we really
only need to add tests to show it works.
Commit: 373d8755140df0c760e9c292c5f88479cdda6f4c
https://github.com/llvm/llvm-project/commit/373d8755140df0c760e9c292c5f88479cdda6f4c
Author: Pavel Kosov <kpdev42 at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CGExpr.cpp
A clang/test/CodeGen/cfi-check-attrs.c
M clang/test/CodeGen/cfi-check-fail.c
Log Message:
-----------
[cfi][CodeGen] Call SetLLVMFunctionAttributes{,ForDefinition} on __cf… (#78253)
…i_check
This causes __cfi_check, just as __cfi_check_fail, to get the proper
target-specific attributes, in particular uwtable for unwind table
generation. Previously, nounwind attribute could be inferred for
__cfi_check, which caused it to lose its unwind table even with
-funwind-table option.
~~
Huawei RRI, OS Lab
Co-authored-by: Nikolai Kholiavin <kholiavin.nikolai at huawei-partners.com>
Commit: d345599c2851c7ef25d2350244cbfe7cfef36386
https://github.com/llvm/llvm-project/commit/d345599c2851c7ef25d2350244cbfe7cfef36386
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/CodeGen/LowLevelTypeUtils.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RegisterBankInfo.cpp
Log Message:
-----------
[GISEL][NFC] Use getElementCount instead of getNumElements in more places
These cases in particular are done as a precommit to support
legalization, regbank selection, and instruction selection for extends,
splat vectors, and integer compares in #85938.
Commit: d023995ae2cc6ab968ec305ea7b6f11b6ac2e78f
https://github.com/llvm/llvm-project/commit/d023995ae2cc6ab968ec305ea7b6f11b6ac2e78f
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
Log Message:
-----------
AMDGPU: Simplify EmitAMDGPUBuiltinExpr for load transposes, NFC (#86707)
We should not manually get the types of the loading data.
Instead, we can get the types from the intrinsics directly.
Commit: 4720e3831b814fdd2e8441ee0ac05b6934fdf533
https://github.com/llvm/llvm-project/commit/4720e3831b814fdd2e8441ee0ac05b6934fdf533
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h
Log Message:
-----------
[NFC][Sanitizer] Refine the restriction on SizeClassAllocator64::kRegionSize (#86270)
This patch replaces the `SANITIZER_WORDSIZE / 2` with
`sizeof(CompactPtrT) * 8`, replaces hardcoded `4` with
`kCompactPtrScale` in assertion.
Commit: 10b07f2324aa990664c4141ffab534603af35c7a
https://github.com/llvm/llvm-project/commit/10b07f2324aa990664c4141ffab534603af35c7a
Author: Matthias Springer <me at m-sp.org>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
Log Message:
-----------
[mlir][Interfaces] `ValueBoundsConstraintSet`: Add `dump` helper function (#86634)
This commit adds a helper function that dumps the constraint set and the
mapping of columns to values/dims. For debugging only.
Example output:
```
==========
Columns:
(column dim value)
0 1 linalg.fill (result 0)
1 1 tensor.extract_slice (result 0)
2 n/a affine.min (result 0)
3 n/a scf.for (bbarg 0)
4 n/a func.func (bbarg 2)
Constraint set:
Domain: 0, Range: 1, Symbols: 4, Locals: 0
6 constraints
(None None None None None const)
1 -1 0 0 0 0 = 0
0 1 -1 0 0 0 = 0
0 0 -1 -1 1 0 >= 0
0 0 -1 0 0 4 >= 0
0 0 0 1 0 0 >= 0
0 0 0 -1 1 -1 >= 0
==========
```
Commit: fa1b807befdc7b31b1c0e0ab625170924f7b4951
https://github.com/llvm/llvm-project/commit/fa1b807befdc7b31b1c0e0ab625170924f7b4951
Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/test/Dialect/Transform/ops-invalid.mlir
Log Message:
-----------
[mlir] fix crash in transform.print verification (#86679)
Transform op trait verification calls `getEffects`, and since trait
verification runs before op verification, this call cannot assume the op
to be valid. However, the operand getters now return a `TypedValue` that
unconditionally casts the value to the expected type, leading to an
assertion failure. Use the untyped mechanism instead.
Fixes #84701.
Commit: 7545c635729a2055a429c5decd26a619a8d6e74b
https://github.com/llvm/llvm-project/commit/7545c635729a2055a429c5decd26a619a8d6e74b
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/cast.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-extractelement.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-insertelement.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
Log Message:
-----------
[RISCV][TTI] Scale the cost of the sext/zext with LMUL (#86617)
Use the destination data type to measure the LMUL size for
latency/throughput cost
Commit: 082e7c480e033c1b973b8379a31929d04e236868
https://github.com/llvm/llvm-project/commit/082e7c480e033c1b973b8379a31929d04e236868
Author: Teresa Johnson <tejohnson at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
Log Message:
-----------
[MemProf] Remove empty edges once after cloning (#85320)
Restructure the handling of edges that become empty during the cloning
process. Instead of removing them as they become empty (no context ids
and alloc type), do this once after all cloning is complete.
This has no effect on the cloning result, but prepares for a follow on
change that does improve the cloning. The structural change here reduces
the diffs for the follow on change, which would be much more difficult
with the previous handling.
Commit: 4d03a9ecc697a11f0edd3c31440a7cae3398e24a
https://github.com/llvm/llvm-project/commit/4d03a9ecc697a11f0edd3c31440a7cae3398e24a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
Log Message:
-----------
[RISCV] Preserve MMO when expanding PseudoRV32ZdinxSD/PseudoRV32ZdinxLD. (#85877)
This allows the asm printer to print the stack spill/reload messages.
Commit: 9961c03e9ec2fc47cb42fd16141b89dd8d8e2c01
https://github.com/llvm/llvm-project/commit/9961c03e9ec2fc47cb42fd16141b89dd8d8e2c01
Author: Jeremy Day <jadaytime at gmail.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Support/Windows/Path.inc
Log Message:
-----------
Return `errc::no_such_file_or_directory` in `fs::access` if `GetFileAttributesW` fails (#83495)
Fixes https://github.com/llvm/llvm-project/issues/83046
There is a race condition when calling `GetFileAttributesW` that can
cause it to return `ERROR_ACCESS_DENIED` on a path which exists, which
is unexpected for callers using this function to check for file
existence by passing `AccessMode::Exist`. This was manifesting as a
compiler crash on Windows downstream in the Swift compiler when using
the `-index-store-path` flag (more information in
https://github.com/apple/llvm-project/issues/8224).
I looked for alternate APIs to avoid bringing in `shlwapi.h`, but didn't
see any good candidates. I'm not tied at all to this solution, any
feedback and alternative approaches are more than welcome.
Commit: fa9ee4a7f9f7fb9f586d40939269205fc3061c17
https://github.com/llvm/llvm-project/commit/fa9ee4a7f9f7fb9f586d40939269205fc3061c17
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M openmp/runtime/src/kmp_collapse.cpp
Log Message:
-----------
[NFC][OpenMP] Silent unused variable in `kmp_collapse.cpp`
Commit: a7ac0dd624962de1ccb55f1ed1357f548477f593
https://github.com/llvm/llvm-project/commit/a7ac0dd624962de1ccb55f1ed1357f548477f593
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M openmp/runtime/src/kmp_csupport.cpp
Log Message:
-----------
[NFC][OpenMP] Use `SimpleVLA` to replace variable length arrays in C++
Commit: ecf6bb2b4dbd26bbff2cee79db010369faa2fe90
https://github.com/llvm/llvm-project/commit/ecf6bb2b4dbd26bbff2cee79db010369faa2fe90
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
A llvm/test/MC/RISCV/rvv/zvkned-invalid.s
A llvm/test/MC/RISCV/rvv/zvknh-invalid.s
A llvm/test/MC/RISCV/rvv/zvksed-invalid.s
A llvm/test/MC/RISCV/rvv/zvksh-invalid.s
M llvm/test/MC/RISCV/rvv/zvksh.s
Log Message:
-----------
[RISCV] Add register overlap checks to the assembler for some Zvk* instructions. (#86745)
>From the spec
| Instruction | Register | Cannot Overlap |
| ----------- | -------- | -------------- |
| vaes*.vs | vs2 | vd |
| vsm4r.vs | vs2 | vd |
| vsha2c[hl] | vs1, vs2 | vd |
| vsha2ms | vs1, vs2 | vd |
| sm3me | vs2 | vd |
| vsm3c | vs2 | vd |
Commit: 8a9c1701704182d551bf9df1ff43363db56caab4
https://github.com/llvm/llvm-project/commit/8a9c1701704182d551bf9df1ff43363db56caab4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/test/CodeGen/RISCV/zcmp-additional-stack.ll
Log Message:
-----------
[RISCV] Align stack size down to a multiple of 16 before using cm.push/pop. (#86073)
This an alternative to #84935 to fix the miscompile, but not be optimal.
The immediate for cm.push/pop must be a multiple of 16. For RVE, it
might not be. It's not easy to increase the stack size without messing
up cfa directives and maybe other things.
This patch rounds the stack size down to a multiple of 16 before
clamping it to 48. This causes an extra addi to be emitted to handle the
remainder.
Once this commited, I can commit #84989 to add verification for these
instructions being generated with valid offsets.
Commit: da3e58e74ad160c3dfa89e92f7dd31efeee6b258
https://github.com/llvm/llvm-project/commit/da3e58e74ad160c3dfa89e92f7dd31efeee6b258
Author: ShihPo Hung <shihpo.hung at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/cast.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-extractelement.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-insertelement.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
Log Message:
-----------
Revert "[RISCV][TTI] Scale the cost of the sext/zext with LMUL (#86617)"
This reverts commit 7545c635729a2055a429c5decd26a619a8d6e74b as it's
failing on the Linux bots.
Commit: f1dff836593d4601e3ad78117df1d980d284bb9c
https://github.com/llvm/llvm-project/commit/f1dff836593d4601e3ad78117df1d980d284bb9c
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Expose GPUCommonPass.h only by a single target. (#86730)
Move `GPUOpsLowering.cpp` from `//mlir:GPUCommonTransforms` to
`//mlir:GPUToGPURuntimeTransforms` to match the CMake setup.
Ideally, header files should be used by only one target, but this is
hard because CMake is less strict with headers (no layering check). But
even with bazel, headers should only be exported once in the `hdrs`
attribute. Other targets may use them in the `srcs` attribute to avoid
circular dependencies.
Commit: 9c0c98ed376f8705d0856f29a7ec659120187612
https://github.com/llvm/llvm-project/commit/9c0c98ed376f8705d0856f29a7ec659120187612
Author: Carlos Alberto Enciso <carlos.alberto.enciso at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVCodeViewReader.h
M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVDWARFReader.h
M llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
A llvm/tools/llvm-debuginfo-analyzer/README.md
R llvm/tools/llvm-debuginfo-analyzer/README.txt
Log Message:
-----------
[llvm-debuginfo-analyzer][DOC] Convert 'README.txt' to markdown. (#86394)
As part of the WebAssembly support work
https://github.com/llvm/llvm-project/pull/85566
The README.txt is a bit odd since it only lists issues and problems
without talking about what works. It’s also hard to read on the GitHub
web view.
- Convert to Markdown and linking to the command docs
https://llvm.org/docs/CommandGuide/llvm-debuginfo-analyzer
- Rename some left 'elf reader' to 'DWARF reader'.
Commit: 22bfc58cd08cd58c8866ef79f3529d314dcb77e5
https://github.com/llvm/llvm-project/commit/22bfc58cd08cd58c8866ef79f3529d314dcb77e5
Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
A llvm/test/CodeGen/RISCV/make-compressible-zbc.mir
Log Message:
-----------
[RISCV] Teach RISCVMakeCompressible handle byte/half load/store for Zcb. (#83375)
For targets with Zcb, this patch makes llvm generate more compress
c.lb/lbu/lh/lhu/sb/sh instructions.
Commit: 16993c793a7d81771ea17a2991f76e87b4b0a6c0
https://github.com/llvm/llvm-project/commit/16993c793a7d81771ea17a2991f76e87b4b0a6c0
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
Log Message:
-----------
[NFC][HWASAN] Regenerate test
Commit: 05a7b22a0132bebe99aabee591d3acc99d793ae1
https://github.com/llvm/llvm-project/commit/05a7b22a0132bebe99aabee591d3acc99d793ae1
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
A llvm/test/Transforms/Inline/RISCV/inline-target-features.ll
A llvm/test/Transforms/Inline/RISCV/lit.local.cfg
Log Message:
-----------
[RISCV] Add areInlineCompatible for riscv target (#86639)
Inline a callee if its target-features are a subset of the callers
target-features.
Commit: 577e0ef94fb0b4ba9f97a6f58a1961f7ba247d21
https://github.com/llvm/llvm-project/commit/577e0ef94fb0b4ba9f97a6f58a1961f7ba247d21
Author: Alina Sbirlea <asbirlea at google.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M clang/unittests/AST/DeclPrinterTest.cpp
Log Message:
-----------
[clang][AST] Silence unused-value warnings in unittest DeclPrinterTest
Commit: aa2d5d54130bd9c5e9efb9ae3eaec631f227f13b
https://github.com/llvm/llvm-project/commit/aa2d5d54130bd9c5e9efb9ae3eaec631f227f13b
Author: ShihPo Hung <shihpo.hung at sifive.com>
Date: 2024-03-26 (Tue, 26 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/cast.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-extractelement.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-insertelement.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
Log Message:
-----------
Recommit "[RISCV][TTI] Scale the cost of the sext/zext with LMUL (#86617)"
Changes in Recommit:
Add an additional check on sign/zero extend to the same type.
Original message:
Use the destination data type to measure the LMUL size for
latency/throughput cost
Commit: 6d13263d4a723689d025423562269ea6ccb6bfc2
https://github.com/llvm/llvm-project/commit/6d13263d4a723689d025423562269ea6ccb6bfc2
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/binop-zext.ll
Log Message:
-----------
[RISCV] Add tests for combineBinOpOfZExts. NFC (#86689)
Unlike add, sub and mul, we don't have widening instructions for div,
rem and logical ops, so we don't have any test coverage if we were to
extend combineBinOpOfZExts to handle them.
Adding tests coincidentally revealed that logical ops are already
narrowed as a generic DAG combine via
DAGCombiner::hoistLogicOpWithSameOpcodeHands. So we don't actually need
to run combineBinOpOfZExts on them.
Commit: defc4859b032ccaec69f24b6cfd9882fece5f093
https://github.com/llvm/llvm-project/commit/defc4859b032ccaec69f24b6cfd9882fece5f093
Author: Jack Styles <99514724+Stylie777 at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/test/Driver/aarch64-sve.c
M clang/test/Preprocessor/aarch64-target-features.c
M llvm/docs/ReleaseNotes.rst
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64] Remove Automatic Enablement of FEAT_F32MM (#85203)
When `+sve` is passed in the command line, if the Architecture being
targeted is V8.6A/V9.1A or later, `+f32mm` is also added. This enables
FEAT_32MM, however at the time of writing no CPU's support this. This
leads to the FEAT_32MM instructions being compiled for CPU's that do not
support them.
This commit removes the automatic enablement, however the option is
still able to be used by passing `+f32mm`.
Commit: 2938f1cff9f880d03c900a2bdcd078af937d9433
https://github.com/llvm/llvm-project/commit/2938f1cff9f880d03c900a2bdcd078af937d9433
Author: zhongyunde 00443407 <zhongyunde at huawei.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
Log Message:
-----------
[InstCombine] Refactor powi(X,Y) / X to call foldPowiReassoc, NFC
Commit: bd9bb31bce0754c0a04d5c842ab3e7f8dd467861
https://github.com/llvm/llvm-project/commit/bd9bb31bce0754c0a04d5c842ab3e7f8dd467861
Author: zhongyunde 00443407 <zhongyunde at huawei.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/test/Transforms/InstCombine/powi.ll
Log Message:
-----------
[InstCombine] add restrict reassoc for the powi(X,Y) / X
add restrict reassoc for the powi(X,Y) / X according the discuss on PR69998.
Commit: df75183d70e029352a49c93f275db703c81a65c1
https://github.com/llvm/llvm-project/commit/df75183d70e029352a49c93f275db703c81a65c1
Author: Julian Nagele <j.nagele at apple.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Verifier.h
M llvm/lib/IR/Verifier.cpp
M llvm/test/CodeGen/AArch64/arm64-abi_align.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
M llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll
M llvm/test/Transforms/SROA/tbaa-struct3.ll
M llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll
M llvm/test/Transforms/Scalarizer/basic.ll
M llvm/test/Verifier/tbaa-struct.ll
Log Message:
-----------
[TBAA] Add verifier for tbaa.struct metadata (#86709)
Adds logic to the IR verifier that checks whether !tbaa.struct nodes are
well-formed. That is, it checks that the operands of !tbaa.struct nodes
are in groups of three, that each group of three operands consists of
two integers and a valid tbaa node, and that the regions described by
the offset and size operands are non-overlapping.
PR: https://github.com/llvm/llvm-project/pull/86709
Commit: f15b7deeaaf9028a31f66110a10f1313ed5e57f7
https://github.com/llvm/llvm-project/commit/f15b7deeaaf9028a31f66110a10f1313ed5e57f7
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
Log Message:
-----------
[RISCV] Add test case to show missing vmerge fold on tied pseudos. NFC
Note we can't use vwaddu.wv because it will get combined away with #78403
Commit: cc23ee8250c2eda3f28c4d25c412e68ec78ecbe1
https://github.com/llvm/llvm-project/commit/cc23ee8250c2eda3f28c4d25c412e68ec78ecbe1
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M lld/COFF/Config.h
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/test/COFF/exportas.test
Log Message:
-----------
[LLD][COFF] Add support for EXPORTAS import name type. (#86541)
#78772 added similar support for .def file parser and import library
writer. This PR adds missing bits in LLD to propagate EXPORTAS name and
allow it in `/export` parser. This is syntax is used by MSVC for ARM64EC
`__declspec(dllexport)` handling.
Commit: c9d12664f2f967ec170ed16d9a57af2f48e832c8
https://github.com/llvm/llvm-project/commit/c9d12664f2f967ec170ed16d9a57af2f48e832c8
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Object/COFFImportFile.cpp
M llvm/test/tools/llvm-lib/arm64ec-implib.test
Log Message:
-----------
[llvm-dlltool][llvm-lib][COFF] Don't override NONAME exports with demangled ARM64EC symbols. (#86722)
Commit: ab7dba233a058cc8310ef829929238b5d8440b30
https://github.com/llvm/llvm-project/commit/ab7dba233a058cc8310ef829929238b5d8440b30
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/CSKY/csky-abi.c
M clang/test/CodeGen/LoongArch/abi-lp64d.c
M clang/test/CodeGen/PowerPC/aix-altivec-vaargs.c
M clang/test/CodeGen/PowerPC/aix-vaargs.c
M clang/test/CodeGen/PowerPC/ppc64le-varargs-f128.c
M clang/test/CodeGen/RISCV/riscv32-vararg.c
M clang/test/CodeGen/RISCV/riscv64-vararg.c
M clang/test/CodeGen/WebAssembly/wasm-varargs.c
M clang/test/CodeGen/X86/va-arg-sse.c
M clang/test/CodeGen/X86/x86_64-vaarg.c
M clang/test/CodeGen/aarch64-ABI-align-packed.c
M clang/test/CodeGen/aarch64-varargs.c
M clang/test/CodeGen/arm-varargs.c
M clang/test/CodeGen/hexagon-linux-vararg.c
M clang/test/CodeGen/mips-varargs.c
M clang/test/CodeGen/pr53127.cpp
A clang/test/CodeGen/varargs-with-nonzero-default-address-space.c
M clang/test/CodeGen/xcore-abi.c
M clang/test/CodeGenCXX/ext-int.cpp
M clang/test/CodeGenCXX/ibm128-declarations.cpp
M clang/test/CodeGenCXX/x86_64-vaarg.cpp
M clang/test/Modules/codegen.test
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/test/Bitcode/compatibility-3.6.ll
M llvm/test/Bitcode/compatibility-3.7.ll
M llvm/test/Bitcode/compatibility-3.8.ll
M llvm/test/Bitcode/compatibility-3.9.ll
M llvm/test/Bitcode/compatibility-4.0.ll
M llvm/test/Bitcode/compatibility-5.0.ll
M llvm/test/Bitcode/compatibility-6.0.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Bitcode/thinlto-function-summary.ll
M llvm/test/Bitcode/variableArgumentIntrinsic.3.2.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/SystemZ/vararg-kernel.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_debug_info.ll
M llvm/test/Transforms/GlobalOpt/inalloca-varargs.ll
M llvm/test/Transforms/IROutliner/illegal-vaarg.ll
M llvm/test/Transforms/IROutliner/outline-vaarg-intrinsic.ll
M llvm/test/Transforms/NewGVN/pr31483.ll
M llvm/test/Transforms/Reassociate/vaarg_movable.ll
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/basic.ll
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[CodeGen][LLVM] Make the `va_list` related intrinsics generic. (#85460)
Currently, the builtins used for implementing `va_list` handling
unconditionally take their arguments as unqualified `ptr`s i.e. pointers
to AS 0. This does not work for targets where the default AS is not 0 or
AS 0 is not a viable AS (for example, a target might choose 0 to
represent the constant address space). This patch changes the builtins'
signature to take generic `anyptr` args, which corrects this issue. It
is noisy due to the number of tests affected. A test for an upstream
target which does not use 0 as its default AS (SPIRV for HIP device
compilations) is added as well.
Commit: ef316da4a2c5954a02c92707b5cb621402b76910
https://github.com/llvm/llvm-project/commit/ef316da4a2c5954a02c92707b5cb621402b76910
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
Log Message:
-----------
AMDGPU: Fix dead check prefixes in test
Commit: 1103a2a337e90d8c7cc417b89e43c7a33aaea21e
https://github.com/llvm/llvm-project/commit/1103a2a337e90d8c7cc417b89e43c7a33aaea21e
Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
A llvm/test/MC/AMDGPU/hsa-amdgpu-exprs.s
A llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
A llvm/test/MC/AMDGPU/hsa-tg-split.s
Log Message:
-----------
Reland [AMDGPU] MCExpr-ify MC layer kernel descriptor (#86494)
Kernel descriptor attributes, with their respective emit and asm parse functionality, converted to MCExpr.
Relands #80855 with fixes
Commit: 408c36522f7eb8638314b584995daf5790968842
https://github.com/llvm/llvm-project/commit/408c36522f7eb8638314b584995daf5790968842
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn build] Port 1103a2a337e9
Commit: 51388fbab1b9454dfe24c4ac1c8b4a009162386a
https://github.com/llvm/llvm-project/commit/51388fbab1b9454dfe24c4ac1c8b4a009162386a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitSub - reuse existing SDLoc instead of regenerating it. NFC.
Commit: 9247f3185c7e1f7a2c1071fa61e283deb21091aa
https://github.com/llvm/llvm-project/commit/9247f3185c7e1f7a2c1071fa61e283deb21091aa
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] foldAddSubOfSignBit - reuse existing SDLoc instead of regenerating it. NFC.
Commit: 875aed17b978bf58a01d31572af6964e91a9f641
https://github.com/llvm/llvm-project/commit/875aed17b978bf58a01d31572af6964e91a9f641
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Add combineExtractFromVectorLoad helper - pulled out of combineExtractVectorElt
Prep work for #85419 to make it easier to reuse in other combines
Commit: e82765bf07a978674c0e75c8b2e20f154ae24a4c
https://github.com/llvm/llvm-project/commit/e82765bf07a978674c0e75c8b2e20f154ae24a4c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/masked_store.ll
Log Message:
-----------
[X86] masked_store.ll - add nounwind to remove cfi noise
Commit: b8cc838427efa80eb5ca4ec7c8adb53e4adfc4c7
https://github.com/llvm/llvm-project/commit/b8cc838427efa80eb5ca4ec7c8adb53e4adfc4c7
Author: komalverma04 <komal148btit21 at igdtuw.ac.in>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
Log Message:
-----------
[analyzer][docs] Document the `optin.performance.Padding` checker (#86411)
Closes #73675
Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>
Co-authored-by: NagyDonat <donat.nagy at ericsson.com>
Commit: 4f9aab2b500d3df0cc5d54f2d29c8199507af66c
https://github.com/llvm/llvm-project/commit/4f9aab2b500d3df0cc5d54f2d29c8199507af66c
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/utils/TableGen/Common/CMakeLists.txt
A llvm/utils/TableGen/Common/GlobalISel/CombinerUtils.cpp
M llvm/utils/TableGen/Common/GlobalISel/CombinerUtils.h
A llvm/utils/TableGen/Common/GlobalISel/PatternParser.cpp
A llvm/utils/TableGen/Common/GlobalISel/PatternParser.h
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
Log Message:
-----------
[NFC][TableGen][GlobalISel] Move MIR pattern parsing out of combiner (#86789)
Reland of cfa0833ccc7450a322e709583e894e4c96ce682e
Commit: 26464f2662d13c7c6ef9f8180b1653c046cd60a7
https://github.com/llvm/llvm-project/commit/26464f2662d13c7c6ef9f8180b1653c046cd60a7
Author: Justin Cady <desk at justincady.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/test/CodeGen/X86/stack-protector.ll
Log Message:
-----------
[FreeBSD] Mark __stack_chk_guard dso_local except for PPC64 (#86665)
Adjust logic of 1cb9f37a17ab to match freebsd/freebsd-src at 9a4d48a645a7a.
D113443 is the original attempt to bring this FreeBSD patch to
llvm-project,
but it never landed. This change is required to build FreeBSD kernel
modules
with -fstack-protector using a standard LLVM toolchain. The FreeBSD
kernel
loader does not handle R_X86_64_REX_GOTPCRELX relocations.
Fixes #50932.
Commit: 932949dbb517b089af28fdc480a16a738ee5db78
https://github.com/llvm/llvm-project/commit/932949dbb517b089af28fdc480a16a738ee5db78
Author: Egor Zhdan <e_zhdan at apple.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaObjCProperty.cpp
A clang/test/APINotes/Inputs/APINotes/SomeOtherKit.apinotes
A clang/test/APINotes/Inputs/BrokenHeaders/APINotes.apinotes
A clang/test/APINotes/Inputs/BrokenHeaders/SomeBrokenLib.h
A clang/test/APINotes/Inputs/BrokenHeaders2/APINotes.apinotes
A clang/test/APINotes/Inputs/BrokenHeaders2/SomeBrokenLib.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Headers/FrameworkWithActualPrivateModule.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/PrivateHeaders/FrameworkWithActualPrivateModule_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/PrivateHeaders/FrameworkWithActualPrivateModule_Private.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/Headers/FrameworkWithWrongCase.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/PrivateHeaders/FrameworkWithWrongCase_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Headers/FrameworkWithWrongCasePrivate.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/PrivateHeaders/FrameworkWithWrongCasePrivate_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/LayeredKit.framework/Headers/LayeredKit.h
A clang/test/APINotes/Inputs/Frameworks/LayeredKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Headers/LayeredKitImpl.apinotes
A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Headers/LayeredKitImpl.h
A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit_private.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKitForNullAnnotation.h
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module_private.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_Private.h
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_PrivateForNullAnnotation.h
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_private.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/APINotes/SomeOtherKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Headers/SomeOtherKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Headers/SomeOtherKit.h
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Headers/TopLevelPrivateKit.h
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Headers/TopLevelPrivateKit_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private.h
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private_private.apinotes
A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Headers/VersionedKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Headers/VersionedKit.h
A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Headers/APINotes.apinotes
A clang/test/APINotes/Inputs/Headers/BrokenTypes.apinotes
A clang/test/APINotes/Inputs/Headers/BrokenTypes.h
A clang/test/APINotes/Inputs/Headers/ExternCtx.apinotes
A clang/test/APINotes/Inputs/Headers/ExternCtx.h
A clang/test/APINotes/Inputs/Headers/HeaderLib.apinotes
A clang/test/APINotes/Inputs/Headers/HeaderLib.h
A clang/test/APINotes/Inputs/Headers/InstancetypeModule.apinotes
A clang/test/APINotes/Inputs/Headers/InstancetypeModule.h
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCase.h
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCasePrivate.h
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCasePrivate_Private.apinotes
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCase_Private.apinotes
A clang/test/APINotes/Inputs/Headers/Namespaces.apinotes
A clang/test/APINotes/Inputs/Headers/Namespaces.h
A clang/test/APINotes/Inputs/Headers/PrivateLib.apinotes
A clang/test/APINotes/Inputs/Headers/PrivateLib.h
A clang/test/APINotes/Inputs/Headers/PrivateLib_private.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
A clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/Inputs/Headers/module.private.modulemap
A clang/test/APINotes/Inputs/yaml-reader-errors/UIKit.apinotes
A clang/test/APINotes/Inputs/yaml-reader-errors/UIKit.h
A clang/test/APINotes/Inputs/yaml-reader-errors/module.modulemap
A clang/test/APINotes/availability.m
A clang/test/APINotes/broken_types.m
A clang/test/APINotes/case-for-private-apinotes-file.c
A clang/test/APINotes/extern-context.cpp
A clang/test/APINotes/instancetype.m
A clang/test/APINotes/module-cache.m
A clang/test/APINotes/namespaces.cpp
A clang/test/APINotes/nullability.c
A clang/test/APINotes/nullability.m
A clang/test/APINotes/objc-forward-declarations.m
A clang/test/APINotes/objc_designated_inits.m
A clang/test/APINotes/properties.m
A clang/test/APINotes/retain-count-convention.m
A clang/test/APINotes/search-order.m
A clang/test/APINotes/swift-import-as.cpp
A clang/test/APINotes/top-level-private-modules.c
A clang/test/APINotes/types.m
A clang/test/APINotes/versioned-multi.c
A clang/test/APINotes/versioned.m
A clang/test/APINotes/yaml-convert-diags.c
A clang/test/APINotes/yaml-parse-diags.c
A clang/test/APINotes/yaml-reader-errors.m
Log Message:
-----------
[APINotes] Upstream the remaining API Notes fixes and tests
This upstreams the last bits of Clang API Notes functionality that is
currently implemented in the Apple fork:
https://github.com/apple/llvm-project/tree/next/clang/lib/APINotes
Commit: b343b02a88821cab320e7d9976a05eabd0df29ec
https://github.com/llvm/llvm-project/commit/b343b02a88821cab320e7d9976a05eabd0df29ec
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn
Log Message:
-----------
[gn build] Port 4f9aab2b500d
Commit: 2fa46ca922178ec049006a1b4851058400cbada9
https://github.com/llvm/llvm-project/commit/2fa46ca922178ec049006a1b4851058400cbada9
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M .github/workflows/scorecard.yml
Log Message:
-----------
[workflows] Update the version of the scorecard-action (#86753)
I'm hoping this will fix the errors we've been seeing the last few days:
2024-03-19T20:44:07.4841482Z 2024/03/19 20:44:07 error signing scorecard
json results: error signing payload: getting key from Fulcio: verifying
SCT: updating local metadata and targets: error updating to TUF remote
mirror: invalid key
Commit: 6e6d266fb8cc1398e7d5a220a9332d88ce074464
https://github.com/llvm/llvm-project/commit/6e6d266fb8cc1398e7d5a220a9332d88ce074464
Author: zibi2 <62662650+zibi2 at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.pass.cpp
Log Message:
-----------
[libc++] Fix one case in saturate_cast.pass.cpp for 64-bit on z/OS (#86724)
On z/OS int128 is disabled causing one of the cases in
`saturate_cast.pass.cpp` to fail. The failure is only in 64-bit mode.
In this case `the std::numeric_limits<long long int>::max()` is within
`std::numeric_limits<unsigned long int>::min()`
and `std::numeric_limits<unsigned long int>::max()` therefore,
saturate_cast<unsigned long int>( sBigMax) == LONG_MAX and not ULONG_MAX
as original test.
In 32-bit, `saturate_cast<unsigned long int>( sBigMax) == ULONG_MAX`
like on other platforms where int128 is enabled.
This PR is required to pass this test case on z/OS and possibly on other
platforms where int128 is not supported/enabled.
---------
Co-authored-by: Sean Perry <perry at ca.ibm.com>
Commit: 2cb7ea1553a5c7be81bee4ed3c51b7727b9d2ee8
https://github.com/llvm/llvm-project/commit/2cb7ea1553a5c7be81bee4ed3c51b7727b9d2ee8
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M lldb/source/Target/StackFrame.cpp
Log Message:
-----------
[lldb][nfc] Delete unused variable (#86740)
This was made unused by d9ec4b24a84addb8bd77b5d9dd990181351cf84c.
Commit: f5296df97c6bdc6cb658691e5863fdbf336d4430
https://github.com/llvm/llvm-project/commit/f5296df97c6bdc6cb658691e5863fdbf336d4430
Author: Kevin P. Neal <52762977+kpneal at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
Log Message:
-----------
[FPEnv][AMDGPU] Correct AMDGPUSimplifyLibCalls handling of strictfp attribute. (#86705)
The AMDGPUSimplifyLibCalls pass was lowering function calls with the
strictfp attribute to sequences that included function calls incorrectly
lacking the attribute. This patch corrects that.
The pass now also emits the correct constrained fp call instead of
normal FP instructions when in a function with the strictfp attribute.
Replacing non-constrained calls with constrained calls when required
is still on the IRBuilder's TODO list.
Commit: b43ec8e62b5f5a39be378c460339217511261400
https://github.com/llvm/llvm-project/commit/b43ec8e62b5f5a39be378c460339217511261400
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/phi-node-bitwidt-op-not.ll
Log Message:
-----------
[SLP]Fix PR86798: handle phi nodes being trunced, but not its operands.
If the phi node is trunced, but not its operand(s), need to handle this
situation in the assertion, code already does the right transformation.
Commit: 11b20d7ab09511d9e2bcd40606dfd3b31976efe0
https://github.com/llvm/llvm-project/commit/11b20d7ab09511d9e2bcd40606dfd3b31976efe0
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaConcept.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[clang] Fix an out-of-bound crash when checking template partial specializations. (#86794)
I found this issue (a separate one) during the investigation of #86757,
the crash is similar in substituteParameterMappings, but at different
inner places.
This was an out-of-bound issue where we access front element in an empty
written template argument list to get the instantiation source range.
This patch fixes it by adding a proper guard.
Commit: 9f84594e4ef87a50d1599814ba99fb735da76826
https://github.com/llvm/llvm-project/commit/9f84594e4ef87a50d1599814ba99fb735da76826
Author: Zequan Wu <zequanwu at google.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Log Message:
-----------
[lldb][Dwarf] Add missing timer when parsing .debug_abbrev. (#86568)
The time spent on parsing `.debug_abbrev` is also part of debug info
parsing time.
Commit: 6d3ec56d3ce1478ac42a400a80532b8f732477fe
https://github.com/llvm/llvm-project/commit/6d3ec56d3ce1478ac42a400a80532b8f732477fe
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/extractelement-load.ll
M llvm/test/CodeGen/X86/masked_store.ll
M llvm/test/CodeGen/X86/shrink_vmul.ll
Log Message:
-----------
[X86] combineExtractWithShuffle - use combineExtractFromVectorLoad to extract scalar load from shuffled vector load
Improves #85419
Commit: 91896607ffb84561a7a2e466a00fdf1938c5bb63
https://github.com/llvm/llvm-project/commit/91896607ffb84561a7a2e466a00fdf1938c5bb63
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/include/clang-c/Index.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Specifiers.h
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaType.cpp
A clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
A clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
A clang/test/CodeGen/RISCV/riscv-vector-callingconv.c
A clang/test/CodeGen/RISCV/riscv-vector-callingconv.cpp
M clang/tools/libclang/CXType.cpp
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/BinaryFormat/Dwarf.def
M llvm/include/llvm/IR/CallingConv.h
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.td
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
A llvm/test/CodeGen/RISCV/rvv/callee-saved-regs.ll
Log Message:
-----------
[RISCV] RISCV vector calling convention (1/2) (#77560)
[RISCV] RISCV vector calling convention (1/2)
This is the vector calling convention based on
https://github.com/riscv-non-isa/riscv-elf-psabi-doc,
the idea is to split between "scalar" callee-saved registers
and "vector" callee-saved registers. "scalar" ones remain the
original strategy, however, "vector" ones are handled together
with RVV objects.
The stack layout would be:
|--------------------------| <-- FP
| callee-allocated save |
| area for register varargs|
|--------------------------|
| callee-saved registers | <-- scalar callee-saved
| (scalar) |
|--------------------------|
| RVV alignment padding |
|--------------------------|
| callee-saved registers | <-- vector callee-saved
| (vector) |
|--------------------------|
| RVV objects |
|--------------------------|
| padding before RVV |
|--------------------------|
| scalar local variables |
|--------------------------| <-- BP
| variable size objects |
|--------------------------| <-- SP
Note: This patch doesn't contain "tuple" type, e.g. vint32m1x2.
It will be handled in https://github.com/riscv-non-isa/riscv-elf-psabi-doc (2/2).
Differential Revision: https://reviews.llvm.org/D154576
Commit: 58de1e2c5eee548a9b365e3b1554d87317072ad9
https://github.com/llvm/llvm-project/commit/58de1e2c5eee548a9b365e3b1554d87317072ad9
Author: Wesley Wiser <wwiser at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFrameInfo.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCDwarf.h
M llvm/lib/CodeGen/CFIInstrInserter.cpp
M llvm/lib/CodeGen/MachineFrameInfo.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/MC/MCDwarf.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h
M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
M llvm/lib/Target/MSP430/MSP430FrameLowering.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86FrameLowering.h
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/test/CodeGen/PowerPC/huge-frame-size.ll
A llvm/test/CodeGen/X86/huge-stack.ll
Log Message:
-----------
Fix stack layout for frames larger than 2gb (#84114)
For very large stack frames, the offset from the stack pointer to a local can be more than 2^31 which overflows various `int` offsets in the frame lowering code.
This patch updates the frame lowering code to calculate the offsets as 64-bit values and resolves the overflows, resulting in the correct codegen for very large frames.
Fixes #48911
Commit: 13b653ab112736b92cd7f8ef249ced2b148ee7f4
https://github.com/llvm/llvm-project/commit/13b653ab112736b92cd7f8ef249ced2b148ee7f4
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/test/CodeGen/RISCV/riscv-func-attr-target-err.c
M clang/test/CodeGen/RISCV/riscv-func-attr-target.c
M clang/test/CodeGen/RISCV/rvb-intrinsics/riscv32-zbb-error.c
M clang/test/CodeGen/RISCV/rvb-intrinsics/riscv64-zbkb-error.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-error.c
M clang/utils/TableGen/RISCVVEmitter.cpp
Log Message:
-----------
[clang][RISCV] Enable RVV with function attribute __attribute__((target("arch=+v"))) (#83674)
It is currently not possible to use "RVV type" and "RVV intrinsics" if
the "zve32x" is not enabled globally. However in some cases we may want
to use them only in some functions, for instance:
```
#include <riscv_vector.h>
__attribute__((target("+zve32x")))
vint32m1_t rvv_add(vint32m1_t v1, vint32m1_t v2, size_t vl) {
return __riscv_vadd(v1, v2, vl);
}
int other_add(int i1, int i2) {
return i1 + i2;
}
```
, it is supposed to be compilable even the vector is not specified, e.g.
`clang -target riscv64 -march=rv64gc -S test.c`.
Commit: 51f7b262425959d4e2bd6bc79fed283586d0472e
https://github.com/llvm/llvm-project/commit/51f7b262425959d4e2bd6bc79fed283586d0472e
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M libc/src/__support/CPP/bit.h
M libc/src/__support/UInt.h
M libc/test/src/__support/CPP/bit_test.cpp
M libc/test/src/__support/math_extras_test.cpp
Log Message:
-----------
[libc][support][UInt] implement 128b math helpers (#86531)
Flush out the remaining UInt<128> support and add test coverage.
We could have used cpp::popcount in the implementation of
UInt::has_single_bit, but
has_single_bit has a perhaps useful early return.
Commit: aa2c14de1adcd265bf0c0fb44f97b5d6c1c38710
https://github.com/llvm/llvm-project/commit/aa2c14de1adcd265bf0c0fb44f97b5d6c1c38710
Author: Terry Wilmarth <terry.l.wilmarth at intel.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M openmp/runtime/src/kmp_runtime.cpp
Log Message:
-----------
[OpenMP] Close up permissions on /tmp files (#85469)
The SHM or /tmp files that might be created during library registration
don't need to have such open permissions, so this change fixes that.
Commit: 009f88fc0e3a036be97ef7b222b90af342bae0b7
https://github.com/llvm/llvm-project/commit/009f88fc0e3a036be97ef7b222b90af342bae0b7
Author: Yusra Syeda <99052248+ysyeda at users.noreply.github.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/include/llvm/Object/GOFF.h
M llvm/include/llvm/Object/GOFFObjectFile.h
M llvm/lib/Object/GOFFObjectFile.cpp
M llvm/unittests/Object/GOFFObjectFileTest.cpp
Log Message:
-----------
[SystemZ][z/OS] TXT records in the GOFF reader (#74526)
This PR adds handling for TXT records in the GOFF reader.
---------
Authored-by: Yusra Syeda <yusra.syeda at ibm.com>
Commit: c388690a8b96cbdfa8c38a1e050088201da648e5
https://github.com/llvm/llvm-project/commit/c388690a8b96cbdfa8c38a1e050088201da648e5
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M libcxx/include/__algorithm/copy.h
M libcxx/include/__algorithm/copy_backward.h
M libcxx/include/__algorithm/copy_move_common.h
M libcxx/include/__algorithm/move.h
M libcxx/include/__algorithm/move_backward.h
Log Message:
-----------
[libc++][NFC] Simplify copy and move lowering to memmove a bit (#83574)
We've introduced `__constexpr_memmove` a while ago, which simplified the
implementation of the copy and move lowering a bit. This allows us to
remove some of the boilerplate.
Commit: 313bf28f98f714a0bd8f74a3beb4631d94428f89
https://github.com/llvm/llvm-project/commit/313bf28f98f714a0bd8f74a3beb4631d94428f89
Author: David Green <david.green at arm.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/test/CodeGen/Thumb2/mve-vpt-optimisations.mir
Log Message:
-----------
[ARM][MVE] Remove kill flags when reusing VPR register. (#86300)
The vpr register may no longer be killed where it was, so we should be
removing the kill flags.
Commit: 78f0871beed002187e65cc1334087596e9c11043
https://github.com/llvm/llvm-project/commit/78f0871beed002187e65cc1334087596e9c11043
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFrameInfo.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCDwarf.h
M llvm/lib/CodeGen/CFIInstrInserter.cpp
M llvm/lib/CodeGen/MachineFrameInfo.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/MC/MCDwarf.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h
M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
M llvm/lib/Target/MSP430/MSP430FrameLowering.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86FrameLowering.h
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/test/CodeGen/PowerPC/huge-frame-size.ll
R llvm/test/CodeGen/X86/huge-stack.ll
Log Message:
-----------
Revert rG58de1e2c5eee548a9b365e3b1554d87317072ad9 "Fix stack layout for frames larger than 2gb (#84114)"
This is failing on some EXPENSIVE_CHECKS buildbots
Commit: 77118536b52bf5256eed85f61451d0beb6cf5dc3
https://github.com/llvm/llvm-project/commit/77118536b52bf5256eed85f61451d0beb6cf5dc3
Author: Marc Auberer <marc.auberer at chillibits.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M libc/docs/dev/code_style.rst
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/atomic.h
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/type_traits/add_pointer.h
M libc/src/__support/CPP/type_traits/decay.h
M libc/src/__support/CPP/type_traits/is_destructible.h
M libc/src/__support/CPP/type_traits/is_function.h
M libc/src/__support/CPP/type_traits/is_lvalue_reference.h
M libc/src/__support/CPP/type_traits/is_reference.h
M libc/src/__support/CPP/type_traits/is_rvalue_reference.h
M libc/src/__support/CPP/type_traits/is_trivially_copyable.h
M libc/src/__support/CPP/type_traits/is_trivially_destructible.h
M libc/src/__support/CPP/type_traits/remove_all_extents.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/gpu/FMA.h
M libc/src/__support/macros/config.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/macros/sanitizer.h
M libc/src/__support/math_extras.h
M libc/src/__support/memory_size.h
M libc/src/string/memory_utils/generic/builtin.h
M libc/src/string/memory_utils/utils.h
M libc/utils/gpu/server/rpc_server.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Remove obsolete LIBC_HAS_BUILTIN macro (#86554)
Fixes #86546 and removes the macro `LIBC_HAS_BUILTIN`. This was
necessary to support older compilers that did not support
`__has_builtin`. All of the compilers we support already have this
builtin.
See: https://libc.llvm.org/compiler_support.html
All uses now use `__has_builtin` directly
cc @nickdesaulniers
Commit: 6a0ec8e25cba9d398cf525889c53835cf40247a3
https://github.com/llvm/llvm-project/commit/6a0ec8e25cba9d398cf525889c53835cf40247a3
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M lldb/include/lldb/Symbol/UnwindTable.h
M lldb/source/Core/Module.cpp
M lldb/source/Symbol/UnwindTable.cpp
A lldb/test/Shell/SymbolFile/target-symbols-add-unwind.test
Log Message:
-----------
[lldb] Revive shell test after updating UnwindTable (#86770)
In
commit 2f63718f8567413a1c596bda803663eb58d6da5a
Author: Jason Molenda <jmolenda at apple.com>
Date: Tue Mar 26 09:07:15 2024 -0700
[lldb] Don't clear a Module's UnwindTable when adding a SymbolFile
(#86603)
I stopped clearing a Module's UnwindTable when we add a SymbolFile to
avoid the memory management problems with adding a symbol file
asynchronously while the UnwindTable is being accessed on another
thread. This broke the target-symbols-add-unwind.test shell test on
Linux which removes the DWARF debub_frame section from a binary, loads
it, then loads the unstripped binary with the DWARF debug_frame section
and checks that the UnwindPlans for a function include debug_frame.
I originally decided that I was willing to sacrifice the possiblity of
additional unwind sources from a symbol file because we rely on assembly
emulation so heavily, they're rarely critical. But there are targets
where we we don't have emluation and rely on things like DWARF
debug_frame a lot more, so this probably wasn't a good choice.
This patch adds a new UnwindTable::Update method which looks for any new
sources of unwind information and adds it to the UnwindTable, and calls
that after a new SymbolFile has been added to a Module.
Commit: 468c6bea2280491283e45239ad1c0ac6a59b3da8
https://github.com/llvm/llvm-project/commit/468c6bea2280491283e45239ad1c0ac6a59b3da8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Object/GOFFObjectFile.cpp
Log Message:
-----------
Fix "result of 32-bit shift implicitly converted to 64 bits" MSVC warning. NFCI.
Commit: f92fa7e2cf38341211af262b21c568bef4d76b10
https://github.com/llvm/llvm-project/commit/f92fa7e2cf38341211af262b21c568bef4d76b10
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/huge-stack-offset.ll
M llvm/test/CodeGen/X86/huge-stack-offset2.ll
Log Message:
-----------
[X86] Add -verify-machineinstrs to huge stack tests
Help identify EXPENSIVE_CHECKS regressions identified in #84114
Commit: 9669aba13295de5ccdefc44e22e30c0295e6afd2
https://github.com/llvm/llvm-project/commit/9669aba13295de5ccdefc44e22e30c0295e6afd2
Author: AtariDreams <gfunni234 at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
Log Message:
-----------
[Thumb1] LivePhysRegs to LiveRegUnits (#84474)
This removes the r7 exception because otherwise, LiveRegUnits will try
to use that register.
Commit: 6ad1cf3b37f0eefa5f43f90990ec3dcf5c87dead
https://github.com/llvm/llvm-project/commit/6ad1cf3b37f0eefa5f43f90990ec3dcf5c87dead
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
M clang/include/clang/InstallAPI/HeaderFile.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/Headers/AAA.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/Headers/SpecialUmbrella.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/PrivateHeaders/AAA_Private.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/PrivateHeaders/SpecialPrivateUmbrella.h
A clang/test/InstallAPI/umbrella-headers-unix.test
A clang/test/InstallAPI/umbrella-headers.test
M clang/tools/clang-installapi/InstallAPIOpts.td
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
Log Message:
-----------
[InstallAPI] Add *umbrella-header options (#86587)
Umbrella headers are a concept for Darwin-based libraries. They allow
framework authors to control the order in which their headers should be
parsed and allow clients to access available headers by including a
single header.
InstallAPI will attempt to find the umbrella based on the name of the
framework. Users can also specify this explicitly by using command line
options specifying the umbrella header by file path. There can be an
umbrella header per access level.
Commit: 0099c584bad3bdeb62fede61fb89fdcc022bd2a0
https://github.com/llvm/llvm-project/commit/0099c584bad3bdeb62fede61fb89fdcc022bd2a0
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Remove -lm on macOS (#86706)
Bazel links this library by default which leads to this linker warning
on macOS:
```
ld: warning: ignoring duplicate libraries: '-lm'
```
Commit: fca48312a833464369ce1615c60e09f1d71e4aad
https://github.com/llvm/llvm-project/commit/fca48312a833464369ce1615c60e09f1d71e4aad
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/strings_test.cpp
Log Message:
-----------
Fix signed/unsigned comparison warning. NFC.
Commit: 4d177435bae03551245ffdc4dfcee5345323121d
https://github.com/llvm/llvm-project/commit/4d177435bae03551245ffdc4dfcee5345323121d
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang][OpenMP] Rename makeList overloads to make{Objects,Clauses}, NFC (#86725)
Reserve `makeList` to create a list given an explicit converter
function.
Commit: 1c965801c42c92ff0b768e31348285514ecf5511
https://github.com/llvm/llvm-project/commit/1c965801c42c92ff0b768e31348285514ecf5511
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Log Message:
-----------
[LegalizeDAG] Merge PerformInsertVectorEltInMemory into ExpandInsertToVectorThroughStack. NFC (#86755)
These functions are very similar. We can share them like we do for
EXTRACT_VECTOR_ELT and EXTRACT_SUBVECTOR.
Commit: c335accb07c0cfa4bd7f47edc94c9005692edfcc
https://github.com/llvm/llvm-project/commit/c335accb07c0cfa4bd7f47edc94c9005692edfcc
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M lld/ELF/Relocations.cpp
A lld/test/ELF/pack-dyn-relocs-ifunc.s
Log Message:
-----------
[ELF] --pack-dyn-relocs=android+relr: place IRELATIVE in .rela.plt (#86751)
Current Bionic processes relocations in this order:
* DT_ANDROID_REL[A]
* DT_RELR
* DT_REL[A]
* DT_JMPREL
If an IRELATIVE relocation is in DT_ANDROID_REL[A], it would read
unrelocated (incorrect) global variables associated with RELR when
--pack-dyn-relocs=android+relr is enabled. Work around this by placing
IRELATIVE in .rel[a].plt (DT_JMPREL).
Link: https://r.android.com/3014185
Commit: 08e2860a244604cf4c98394970d392fae163c205
https://github.com/llvm/llvm-project/commit/08e2860a244604cf4c98394970d392fae163c205
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-27 (Wed, 27 Mar 2024)
Changed paths:
M .github/workflows/scorecard.yml
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
M clang-tools-extra/clangd/test/inlayHints.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/DeclContextInternals.h
M clang/include/clang/AST/Type.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
M clang/include/clang/Basic/Specifiers.h
M clang/include/clang/Basic/SyncScope.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/InstallAPI/HeaderFile.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/AST/APValue.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/lib/AST/Interp/Program.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ScanfFormatString.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/SwiftCallingConv.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/CodeGen/Targets/LoongArch.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaObjCProperty.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
A clang/test/APINotes/Inputs/APINotes/SomeOtherKit.apinotes
A clang/test/APINotes/Inputs/BrokenHeaders/APINotes.apinotes
A clang/test/APINotes/Inputs/BrokenHeaders/SomeBrokenLib.h
A clang/test/APINotes/Inputs/BrokenHeaders2/APINotes.apinotes
A clang/test/APINotes/Inputs/BrokenHeaders2/SomeBrokenLib.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Headers/FrameworkWithActualPrivateModule.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/PrivateHeaders/FrameworkWithActualPrivateModule_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/PrivateHeaders/FrameworkWithActualPrivateModule_Private.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/Headers/FrameworkWithWrongCase.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/PrivateHeaders/FrameworkWithWrongCase_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Headers/FrameworkWithWrongCasePrivate.h
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/PrivateHeaders/FrameworkWithWrongCasePrivate_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/LayeredKit.framework/Headers/LayeredKit.h
A clang/test/APINotes/Inputs/Frameworks/LayeredKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Headers/LayeredKitImpl.apinotes
A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Headers/LayeredKitImpl.h
A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit_private.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKitForNullAnnotation.h
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module_private.modulemap
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_Private.h
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_PrivateForNullAnnotation.h
A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_private.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/APINotes/SomeOtherKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Headers/SomeOtherKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Headers/SomeOtherKit.h
A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Headers/TopLevelPrivateKit.h
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Headers/TopLevelPrivateKit_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Modules/module.private.modulemap
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private.apinotes
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private.h
A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private_private.apinotes
A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Headers/VersionedKit.apinotes
A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Headers/VersionedKit.h
A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Modules/module.modulemap
A clang/test/APINotes/Inputs/Headers/APINotes.apinotes
A clang/test/APINotes/Inputs/Headers/BrokenTypes.apinotes
A clang/test/APINotes/Inputs/Headers/BrokenTypes.h
A clang/test/APINotes/Inputs/Headers/ExternCtx.apinotes
A clang/test/APINotes/Inputs/Headers/ExternCtx.h
A clang/test/APINotes/Inputs/Headers/HeaderLib.apinotes
A clang/test/APINotes/Inputs/Headers/HeaderLib.h
A clang/test/APINotes/Inputs/Headers/InstancetypeModule.apinotes
A clang/test/APINotes/Inputs/Headers/InstancetypeModule.h
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCase.h
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCasePrivate.h
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCasePrivate_Private.apinotes
A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCase_Private.apinotes
A clang/test/APINotes/Inputs/Headers/Namespaces.apinotes
A clang/test/APINotes/Inputs/Headers/Namespaces.h
A clang/test/APINotes/Inputs/Headers/PrivateLib.apinotes
A clang/test/APINotes/Inputs/Headers/PrivateLib.h
A clang/test/APINotes/Inputs/Headers/PrivateLib_private.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
A clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
A clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/Inputs/Headers/module.private.modulemap
A clang/test/APINotes/Inputs/yaml-reader-errors/UIKit.apinotes
A clang/test/APINotes/Inputs/yaml-reader-errors/UIKit.h
A clang/test/APINotes/Inputs/yaml-reader-errors/module.modulemap
A clang/test/APINotes/availability.m
A clang/test/APINotes/broken_types.m
A clang/test/APINotes/case-for-private-apinotes-file.c
A clang/test/APINotes/extern-context.cpp
A clang/test/APINotes/instancetype.m
A clang/test/APINotes/module-cache.m
A clang/test/APINotes/namespaces.cpp
A clang/test/APINotes/nullability.c
A clang/test/APINotes/nullability.m
A clang/test/APINotes/objc-forward-declarations.m
A clang/test/APINotes/objc_designated_inits.m
A clang/test/APINotes/properties.m
A clang/test/APINotes/retain-count-convention.m
A clang/test/APINotes/search-order.m
A clang/test/APINotes/swift-import-as.cpp
A clang/test/APINotes/top-level-private-modules.c
A clang/test/APINotes/types.m
A clang/test/APINotes/versioned-multi.c
A clang/test/APINotes/versioned.m
A clang/test/APINotes/yaml-convert-diags.c
A clang/test/APINotes/yaml-parse-diags.c
A clang/test/APINotes/yaml-reader-errors.m
M clang/test/CodeCompletion/member-access.cpp
M clang/test/CodeGen/CSKY/csky-abi.c
M clang/test/CodeGen/LoongArch/abi-lp64d.c
M clang/test/CodeGen/PowerPC/aix-altivec-vaargs.c
M clang/test/CodeGen/PowerPC/aix-vaargs.c
M clang/test/CodeGen/PowerPC/ppc64le-varargs-f128.c
M clang/test/CodeGen/RISCV/riscv-func-attr-target-err.c
M clang/test/CodeGen/RISCV/riscv-func-attr-target.c
A clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
A clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
A clang/test/CodeGen/RISCV/riscv-vector-callingconv.c
A clang/test/CodeGen/RISCV/riscv-vector-callingconv.cpp
M clang/test/CodeGen/RISCV/riscv32-vararg.c
M clang/test/CodeGen/RISCV/riscv64-vararg.c
M clang/test/CodeGen/RISCV/rvb-intrinsics/riscv32-zbb-error.c
M clang/test/CodeGen/RISCV/rvb-intrinsics/riscv64-zbkb-error.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-error.c
M clang/test/CodeGen/WebAssembly/wasm-varargs.c
M clang/test/CodeGen/X86/va-arg-sse.c
A clang/test/CodeGen/X86/x86_64-vaarg.c
M clang/test/CodeGen/aarch64-ABI-align-packed.c
A clang/test/CodeGen/aarch64-mixed-target-attributes.c
M clang/test/CodeGen/aarch64-varargs.c
M clang/test/CodeGen/arm-varargs.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
A clang/test/CodeGen/cfi-check-attrs.c
M clang/test/CodeGen/cfi-check-fail.c
M clang/test/CodeGen/hexagon-linux-vararg.c
M clang/test/CodeGen/mips-varargs.c
M clang/test/CodeGen/pr53127.cpp
A clang/test/CodeGen/varargs-with-nonzero-default-address-space.c
M clang/test/CodeGen/xcore-abi.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/ext-int.cpp
M clang/test/CodeGenCXX/ibm128-declarations.cpp
M clang/test/CodeGenCXX/x86_64-vaarg.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx11-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w32-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w64-err.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w64.cl
A clang/test/Driver/aarch64-ptrauth.c
M clang/test/Driver/aarch64-sve.c
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/Headers/AAA.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/Headers/SpecialUmbrella.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/PrivateHeaders/AAA_Private.h
A clang/test/InstallAPI/Inputs/Umbrella/Umbrella.framework/PrivateHeaders/SpecialPrivateUmbrella.h
A clang/test/InstallAPI/umbrella-headers-unix.test
A clang/test/InstallAPI/umbrella-headers.test
M clang/test/Modules/codegen.test
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Sema/attr-target-clones-aarch64.c
M clang/test/Sema/constant-builtins-2.c
M clang/test/SemaCXX/warn-exit-time-destructors.cpp
A clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/pow-errors.hlsl
M clang/test/SemaTemplate/concepts.cpp
M clang/tools/clang-installapi/InstallAPIOpts.td
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
M clang/tools/libclang/CXType.cpp
M clang/unittests/AST/DeclPrinterTest.cpp
M clang/utils/TableGen/RISCVVEmitter.cpp
M clang/utils/analyzer/exploded-graph-rewriter.py
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/include/sanitizer/linux_syscall_hooks.h
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp
M compiler-rt/lib/hwasan/hwasan_interceptors.cpp
M compiler-rt/lib/msan/msan_interceptors.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
M compiler-rt/lib/sanitizer_common/sanitizer_printf.cpp
M compiler-rt/lib/scudo/standalone/fuchsia.cpp
M compiler-rt/lib/scudo/standalone/mem_map_fuchsia.cpp
M compiler-rt/lib/scudo/standalone/report_linux.cpp
M compiler-rt/lib/scudo/standalone/string_utils.cpp
M compiler-rt/lib/scudo/standalone/string_utils.h
M compiler-rt/lib/scudo/standalone/tests/strings_test.cpp
M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
M compiler-rt/lib/scudo/standalone/vector.h
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
A compiler-rt/test/tsan/signal_in_futex_wait.cpp
A compiler-rt/test/tsan/signal_in_mutex_lock.cpp
M flang/include/flang/Common/idioms.h
M flang/include/flang/Common/template.h
M flang/include/flang/Common/unwrap.h
A flang/include/flang/Common/variant.h
M flang/include/flang/Common/visit.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree-visitor.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Parser/tools.h
A flang/include/flang/Runtime/reduce.h
M flang/include/flang/Runtime/reduction.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/constant.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
R flang/lib/Lower/OpenMP/ClauseT.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Parser/Fortran-parsers.cpp
M flang/lib/Parser/tools.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/tools.cpp
M flang/runtime/CMakeLists.txt
M flang/runtime/complex-reduction.c
M flang/runtime/complex-reduction.h
M flang/runtime/io-api.cpp
M flang/runtime/io-stmt.h
A flang/runtime/reduce.cpp
M flang/runtime/reduction-templates.h
M flang/runtime/tools.cpp
M flang/runtime/tools.h
M flang/runtime/unit.cpp
M flang/runtime/unit.h
M flang/test/Lower/HLFIR/procedure-pointer-component-structure-constructor.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-loop.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
A flang/test/Parser/unrecognized-dir.f90
A flang/test/Semantics/deferred01.f90
M flang/test/Semantics/init01.f90
M flang/test/Semantics/resolve61.f90
M flang/test/Semantics/resolve81.f90
A flang/test/Semantics/structconst09.f90
M flang/unittests/Runtime/Reduction.cpp
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/dev/code_style.rst
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/atomic.h
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/type_traits/add_pointer.h
M libc/src/__support/CPP/type_traits/decay.h
M libc/src/__support/CPP/type_traits/is_destructible.h
M libc/src/__support/CPP/type_traits/is_function.h
M libc/src/__support/CPP/type_traits/is_lvalue_reference.h
M libc/src/__support/CPP/type_traits/is_reference.h
M libc/src/__support/CPP/type_traits/is_rvalue_reference.h
M libc/src/__support/CPP/type_traits/is_trivially_copyable.h
M libc/src/__support/CPP/type_traits/is_trivially_destructible.h
M libc/src/__support/CPP/type_traits/remove_all_extents.h
M libc/src/__support/FPUtil/BasicOperations.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/gpu/FMA.h
M libc/src/__support/OSUtil/CMakeLists.txt
M libc/src/__support/OSUtil/baremetal/CMakeLists.txt
A libc/src/__support/OSUtil/baremetal/quick_exit.cpp
R libc/src/__support/OSUtil/baremetal/quick_exit.h
M libc/src/__support/OSUtil/darwin/CMakeLists.txt
R libc/src/__support/OSUtil/darwin/quick_exit.h
M libc/src/__support/OSUtil/gpu/CMakeLists.txt
M libc/src/__support/OSUtil/gpu/quick_exit.cpp
R libc/src/__support/OSUtil/gpu/quick_exit.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/quick_exit.cpp
R libc/src/__support/OSUtil/linux/quick_exit.h
M libc/src/__support/OSUtil/quick_exit.h
M libc/src/__support/UInt.h
M libc/src/__support/macros/config.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/macros/sanitizer.h
M libc/src/__support/math_extras.h
M libc/src/__support/memory_size.h
M libc/src/math/CMakeLists.txt
A libc/src/math/canonicalize.h
A libc/src/math/canonicalizef.h
A libc/src/math/canonicalizef128.h
A libc/src/math/canonicalizel.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/canonicalize.cpp
A libc/src/math/generic/canonicalizef.cpp
A libc/src/math/generic/canonicalizef128.cpp
A libc/src/math/generic/canonicalizel.cpp
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/_Exit.cpp
M libc/src/stdlib/exit.cpp
M libc/src/stdlib/strfromd.cpp
M libc/src/stdlib/strfromf.cpp
M libc/src/stdlib/strfroml.cpp
M libc/src/string/memory_utils/generic/builtin.h
M libc/src/string/memory_utils/utils.h
M libc/test/src/__support/CPP/bit_test.cpp
M libc/test/src/__support/arg_list_test.cpp
M libc/test/src/__support/math_extras_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/CanonicalizeTest.h
A libc/test/src/math/smoke/canonicalize_test.cpp
A libc/test/src/math/smoke/canonicalizef128_test.cpp
A libc/test/src/math/smoke/canonicalizef_test.cpp
A libc/test/src/math/smoke/canonicalizel_test.cpp
M libc/utils/gpu/server/rpc_server.cpp
M libcxx/include/__algorithm/copy.h
M libcxx/include/__algorithm/copy_backward.h
M libcxx/include/__algorithm/copy_move_common.h
M libcxx/include/__algorithm/move.h
M libcxx/include/__algorithm/move_backward.h
M libcxx/test/std/experimental/simd/simd.class/simd_ctor_broadcast.pass.cpp
M libcxx/test/std/experimental/simd/simd.class/simd_ctor_conversion.pass.cpp
M libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp
M libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_conversion.pass.cpp
M libcxx/test/std/experimental/simd/simd.reference/reference_assignment.pass.cpp
M libcxx/test/std/experimental/simd/test_utils.h
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_if_index.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_if_type.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_index.pass.cpp
M libcxx/test/std/utilities/variant/variant.get/get_type.pass.cpp
M libcxx/test/std/utilities/variant/variant.helpers/variant_alternative.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.assign/T.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/T.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.mod/emplace_index_args.pass.cpp
M libcxx/test/std/utilities/variant/variant.variant/variant.mod/emplace_type_args.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit/visit.pass.cpp
M libcxx/test/std/utilities/variant/variant.visit/visit_return_type.pass.cpp
M libcxx/test/support/variant_test_helpers.h
M lld/COFF/Config.h
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/DWARF.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
M lld/test/COFF/export.test
M lld/test/COFF/exportas.test
M lld/test/ELF/driver.test
M lld/test/ELF/lto/libcall-archive.ll
A lld/test/ELF/pack-dyn-relocs-ifunc.s
M lldb/include/lldb/Core/Progress.h
M lldb/include/lldb/Symbol/UnwindTable.h
M lldb/source/API/SystemInitializerFull.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/Progress.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Symbol/UnwindTable.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/unittests/Core/ProgressReportTest.cpp
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.rst
M llvm/docs/SPIRVUsage.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/SCCIterator.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/BinaryFormat/Dwarf.def
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVCodeViewReader.h
M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVDWARFReader.h
M llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
A llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/CallingConv.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DiagnosticHandler.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InstrTypes.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/Verifier.h
M llvm/include/llvm/Object/ELFObjectFile.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/Object/GOFF.h
M llvm/include/llvm/Object/GOFFObjectFile.h
M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Analysis/InlineOrder.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/CodeGen/LowLevelTypeUtils.cpp
M llvm/lib/CodeGen/MIRParser/MILexer.cpp
M llvm/lib/CodeGen/MIRParser/MILexer.h
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RegisterBankInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/InterfaceStub/ELFObjHandler.cpp
M llvm/lib/ObjCopy/ELF/ELFObject.cpp
M llvm/lib/Object/COFFImportFile.cpp
M llvm/lib/Object/GOFFObjectFile.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/Support/Windows/Path.inc
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SMInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
M llvm/lib/Target/RISCV/RISCVCallingConv.td
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrGISel.td
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SPIRV/CMakeLists.txt
A llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
A llvm/lib/Target/SPIRV/SPIRVCommandLine.h
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86SchedIceLake.td
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Analysis/CostModel/RISCV/cast.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-extractelement.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-insertelement.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/Bitcode/compatibility-3.6.ll
M llvm/test/Bitcode/compatibility-3.7.ll
M llvm/test/Bitcode/compatibility-3.8.ll
M llvm/test/Bitcode/compatibility-3.9.ll
M llvm/test/Bitcode/compatibility-4.0.ll
M llvm/test/Bitcode/compatibility-5.0.ll
M llvm/test/Bitcode/compatibility-6.0.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Bitcode/thinlto-function-summary.ll
M llvm/test/Bitcode/variableArgumentIntrinsic.3.2.ll
A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-nneg-disjoint.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-build-vector.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-insert-vector-elt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector-widen-crash.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xtn.mir
M llvm/test/CodeGen/AArch64/aarch64-smull.ll
M llvm/test/CodeGen/AArch64/arm64-abi_align.ll
M llvm/test/CodeGen/AArch64/arm64-anyregcc.ll
M llvm/test/CodeGen/AArch64/arm64-extract-insert-varidx.ll
M llvm/test/CodeGen/AArch64/arm64-patchpoint.ll
M llvm/test/CodeGen/AArch64/bitcast.ll
M llvm/test/CodeGen/AArch64/bswap.ll
M llvm/test/CodeGen/AArch64/fptoi.ll
M llvm/test/CodeGen/AArch64/itofp.ll
M llvm/test/CodeGen/AArch64/load.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
M llvm/test/CodeGen/AArch64/setcc_knownbits.ll
M llvm/test/CodeGen/AArch64/shift.ll
A llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
M llvm/test/CodeGen/AArch64/sme-streaming-body-streaming-compatible-interface.ll
M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ctlz-zero-undef.mir
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll
M llvm/test/CodeGen/AMDGPU/schedule-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll
A llvm/test/CodeGen/DirectX/log-vec.ll
A llvm/test/CodeGen/DirectX/log.ll
A llvm/test/CodeGen/DirectX/log10.ll
A llvm/test/CodeGen/DirectX/log2.ll
A llvm/test/CodeGen/DirectX/log2_error.ll
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/ctpop.mir
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vscale32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vscale64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vscale-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vscale-rv64.mir
A llvm/test/CodeGen/RISCV/make-compressible-zbc.mir
M llvm/test/CodeGen/RISCV/rvv/abd.ll
A llvm/test/CodeGen/RISCV/rvv/binop-zext.ll
A llvm/test/CodeGen/RISCV/rvv/callee-saved-regs.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sad.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
M llvm/test/CodeGen/RISCV/zcmp-additional-stack.ll
M llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
M llvm/test/CodeGen/SPIRV/LinkOnceODR.ll
M llvm/test/CodeGen/SPIRV/LinkOnceODRFun.ll
M llvm/test/CodeGen/SPIRV/assume.ll
M llvm/test/CodeGen/SPIRV/exec_mode_float_control_khr.ll
M llvm/test/CodeGen/SPIRV/expect.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_double.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_float.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_half.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_double.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_float.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_half.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_integers.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative1.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative2.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative3.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative4.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_two_calls.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_optnone.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_usm_storage_classes/intel-usm-addrspaces.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_no_integer_wrap_decoration.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_subgroup_rotate/subgroup-rotate.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_uniform_group_instructions/uniform-group-instructions.ll
A llvm/test/CodeGen/SPIRV/extensions/both-allowed-disallowed-extension-error.ll
A llvm/test/CodeGen/SPIRV/extensions/enable-all-extensions-but-one.ll
A llvm/test/CodeGen/SPIRV/extensions/enable-all-extensions.ll
A llvm/test/CodeGen/SPIRV/extensions/invalid-extension-list-format.ll
A llvm/test/CodeGen/SPIRV/extensions/unknown-extension-name.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/add.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/and.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fadd.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmax.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmaximum.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmin.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fminimum.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmul.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/mul.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/or.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smax.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smin.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umax.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umin.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/xor.ll
M llvm/test/CodeGen/SPIRV/transcoding/NoSignedUnsignedWrap.ll
M llvm/test/CodeGen/Thumb2/mve-vpt-optimisations.mir
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj.ll
M llvm/test/CodeGen/WebAssembly/lower-em-sjlj-alias.ll
M llvm/test/CodeGen/WebAssembly/lower-em-sjlj-debuginfo.ll
M llvm/test/CodeGen/WebAssembly/lower-em-sjlj.ll
M llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj.ll
M llvm/test/CodeGen/WebAssembly/lower-wasm-sjlj.ll
M llvm/test/CodeGen/X86/avgceilu.ll
M llvm/test/CodeGen/X86/extractelement-load.ll
M llvm/test/CodeGen/X86/huge-stack-offset.ll
M llvm/test/CodeGen/X86/huge-stack-offset2.ll
M llvm/test/CodeGen/X86/masked_store.ll
M llvm/test/CodeGen/X86/sar_fold.ll
M llvm/test/CodeGen/X86/shrink_vmul.ll
M llvm/test/CodeGen/X86/stack-protector.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/widen_fadd.ll
M llvm/test/CodeGen/X86/widen_fmul.ll
M llvm/test/CodeGen/X86/widen_fsub.ll
A llvm/test/DebugInfo/X86/dbg-value-funcarg-duplicates.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/SystemZ/vararg-kernel.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_debug_info.ll
A llvm/test/MC/AMDGPU/hsa-amdgpu-exprs.s
A llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
A llvm/test/MC/AMDGPU/hsa-tg-split.s
M llvm/test/MC/ARM/basic-arm-instructions.s
M llvm/test/MC/ARM/load-store-acquire-release-v8-thumb.s
M llvm/test/MC/ARM/load-store-acquire-release-v8.s
M llvm/test/MC/RISCV/rv32zcmp-invalid.s
M llvm/test/MC/RISCV/rv64zcmp-invalid.s
A llvm/test/MC/RISCV/rvv/zvkned-invalid.s
A llvm/test/MC/RISCV/rvv/zvknh-invalid.s
A llvm/test/MC/RISCV/rvv/zvksed-invalid.s
A llvm/test/MC/RISCV/rvv/zvksh-invalid.s
M llvm/test/MC/RISCV/rvv/zvksh.s
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptosi129.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptoui129.ll
M llvm/test/Transforms/GlobalOpt/inalloca-varargs.ll
M llvm/test/Transforms/IROutliner/illegal-vaarg.ll
M llvm/test/Transforms/IROutliner/outline-vaarg-intrinsic.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
A llvm/test/Transforms/Inline/RISCV/inline-target-features.ll
A llvm/test/Transforms/Inline/RISCV/lit.local.cfg
M llvm/test/Transforms/InstCombine/powi.ll
M llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll
M llvm/test/Transforms/LoopLoadElim/versioning-scev-invalidation.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction-unroll.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
M llvm/test/Transforms/NewGVN/pr31483.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
M llvm/test/Transforms/Reassociate/vaarg_movable.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/partial-vec-invalid-cost.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/trunc-to-large-than-bw.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/minbitwidth-root-trunc.ll
M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
A llvm/test/Transforms/SLPVectorizer/X86/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_diamond_match.ll
M llvm/test/Transforms/SROA/tbaa-struct3.ll
M llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll
M llvm/test/Transforms/Scalarizer/basic.ll
A llvm/test/Verifier/tbaa-struct.ll
M llvm/test/tools/llvm-lib/arm64ec-implib.test
M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
A llvm/tools/llvm-debuginfo-analyzer/README.md
R llvm/tools/llvm-debuginfo-analyzer/README.txt
M llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
M llvm/tools/llvm-readobj/ELFDumper.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownBitsVectorTest.cpp
M llvm/unittests/IR/PatternMatch.cpp
M llvm/unittests/Linker/LinkModulesTest.cpp
M llvm/unittests/Object/GOFFObjectFileTest.cpp
M llvm/unittests/Support/ThreadPool.cpp
M llvm/unittests/TableGen/CMakeLists.txt
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/utils/TableGen/Common/CMakeLists.txt
A llvm/utils/TableGen/Common/GlobalISel/CombinerUtils.cpp
M llvm/utils/TableGen/Common/GlobalISel/CombinerUtils.h
A llvm/utils/TableGen/Common/GlobalISel/PatternParser.cpp
A llvm/utils/TableGen/Common/GlobalISel/PatternParser.h
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/MCTargetDesc/BUILD.gn
M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn
M mlir/include/mlir/Analysis/Presburger/Matrix.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/Complex/IR/ComplexOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Conversion/ArithToSPIRV/fast-math.mlir
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Complex/canonicalize.mlir
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Dialect/SPIRV/Transforms/canonicalize.mlir
A mlir/test/Dialect/SparseTensor/no_fold_into_consumer.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
M mlir/test/Dialect/Transform/ops-invalid.mlir
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/Target/LLVMIR/Import/basic.ll
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/tools/mlir-tblgen/LLVMIRConversionGen.cpp
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/host/src/rtl.cpp
M openmp/runtime/src/kmp_collapse.cpp
M openmp/runtime/src/kmp_csupport.cpp
M openmp/runtime/src/kmp_runtime.cpp
A openmp/runtime/test/worksharing/for/collapse_test.inc
A openmp/runtime/test/worksharing/for/omp_collapse_many_GELTGT_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_many_GTGEGT_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_many_LTLEGE_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_many_int.c
A openmp/runtime/test/worksharing/for/omp_collapse_one_int.c
A polly/include/polly/Support/PollyDebug.h
M polly/lib/Analysis/DependenceInfo.cpp
M polly/lib/Analysis/PolyhedralInfo.cpp
M polly/lib/Analysis/PruneUnprofitable.cpp
M polly/lib/Analysis/ScopBuilder.cpp
M polly/lib/Analysis/ScopDetection.cpp
M polly/lib/Analysis/ScopInfo.cpp
M polly/lib/CMakeLists.txt
M polly/lib/CodeGen/CodeGeneration.cpp
M polly/lib/CodeGen/IslAst.cpp
A polly/lib/Support/PollyDebug.cpp
M polly/lib/Support/SCEVValidator.cpp
M polly/lib/Transform/DeLICM.cpp
M polly/lib/Transform/FlattenAlgo.cpp
M polly/lib/Transform/FlattenSchedule.cpp
M polly/lib/Transform/ForwardOpTree.cpp
M polly/lib/Transform/ManualOptimizer.cpp
M polly/lib/Transform/MatmulOptimizer.cpp
M polly/lib/Transform/ScheduleOptimizer.cpp
M polly/lib/Transform/ScheduleTreeTransform.cpp
M polly/lib/Transform/ScopInliner.cpp
M polly/lib/Transform/Simplify.cpp
M polly/lib/Transform/ZoneAlgo.cpp
A polly/test/Support/pollyDebug.ll
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
rename TargetEndianness to Endianness and migrate all in-tree users
Created using spr 1.3.5-bogner
Compare: https://github.com/llvm/llvm-project/compare/4137f904c554...08e2860a2446
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