LLVM/project 4ff264dllvm/include/llvm/ADT ScopeExit.h

[LLVM][ADT] Deprecate `make_scope_exit` in favour of CTAD (#174109)

DeltaFile
+6-1llvm/include/llvm/ADT/ScopeExit.h
+6-11 files

LLVM/project c438773clang/lib/Analysis ThreadSafetyCommon.cpp, lldb/source/Plugins/Platform/Windows PlatformWindows.cpp

[LLVM][ADT] Migrate users of `make_scope_exit` to CTAD (#174030)

This is a followup to #173131, which introduced the CTAD functionality.
DeltaFile
+11-11llvm/lib/Analysis/LazyCallGraph.cpp
+9-10lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
+7-8llvm/unittests/Support/MemoryBufferTest.cpp
+7-7clang/lib/Analysis/ThreadSafetyCommon.cpp
+6-6llvm/lib/CAS/UnifiedOnDiskCache.cpp
+5-6mlir/lib/Bytecode/Reader/BytecodeReader.cpp
+45-48153 files not shown
+272-301159 files

LLVM/project 376beddlibcxx/include optional, libcxx/test/std/utilities/optional/optional.object/optional.object.ctor in_place_t.pass.cpp

[libc++] Fix constraints for `optional`'s constructors taking `in_place_t` and related `make_optional` overloads (#173467)

Some constraints are incorrect for constructors of `optional<T&>`:
- for the `(in_place_t, Arg&&)` constructor, it should be more
constrained to reject dangling references;
- for the `(in_place_t, initializer_list<U>, Args&&...)` constructor, it
shouldn't be available for `optional<T&>` at all.

For `make_optional` overloads, the standard wording already required
them to propagate SFINAE constraints before LWG3627 (via "_Effects_:
Equivalent to", see also [structure.specifications]/4). So they need to
be constrained.

Drive-by: Refactor test files to run more cases during constant
evaluation.
DeltaFile
+78-32libcxx/test/std/utilities/optional/optional.specalg/make_optional_explicit.pass.cpp
+46-13libcxx/test/std/utilities/optional/optional.specalg/make_optional_explicit_initializer_list.pass.cpp
+34-6libcxx/include/optional
+32-1libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/in_place_t.pass.cpp
+190-524 files

LLVM/project ec7b637libcxx/include chrono, libcxx/include/__chrono year_month_weekday.h weekday.h

[libc++][chrono] P2592R3: Hashing for chrono (#165132)

DeltaFile
+95-0libcxx/test/std/time/time.hash/time.hash_enabled.pass.cpp
+43-0libcxx/include/chrono
+26-0libcxx/include/__chrono/year_month_weekday.h
+25-0libcxx/include/__chrono/weekday.h
+23-0libcxx/include/__chrono/year_month_day.h
+22-0libcxx/include/__chrono/month_weekday.h
+234-014 files not shown
+370-120 files

LLVM/project e9b2b21clang/lib/Analysis UnsafeBufferUsage.cpp, clang/test/SemaCXX warn-unsafe-buffer-usage-libc-functions.cpp

[-Wunsafe-buffer-usage] Fix a false negative introduced in #173096 (#174253)

A downstream test recovers a false negative introduced in #173096, where
it changed the use of variable `FmtArgIdx` to `FmtArgStartingIdx`. The
two variables are different in that `FmtArgIdx` refers to the index of
the format string and `FmtArgStartingIdx` refers to the index of the
first format argument. The consequence is that the analysis will miss
reporting an unsafe format string.

This fix also upstreams the test catching the FN.
DeltaFile
+2-0clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
+1-1clang/lib/Analysis/UnsafeBufferUsage.cpp
+3-12 files

LLVM/project 7178bc6mlir/include/mlir/Dialect/OpenACC OpenACCOps.td, mlir/lib/Dialect/OpenACC/IR OpenACC.cpp

[acc] add RegionBranchTerminatorOpInterface to acc.terminator (#174165)

This further helps with propagation in data flow analysis through acc
regions. Also cleaned up some comments in the unit test.
DeltaFile
+4-39mlir/test/Dialect/OpenACC/region-branchop-interface.mlir
+10-0mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
+4-1mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
+18-403 files

LLVM/project bee801bllvm/include/llvm/IR IntrinsicsAMDGPU.td, llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

rebase

Created using spr 1.3.8-beta.1
DeltaFile
+28-742llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
+755-5llvm/test/CodeGen/X86/pr162812.ll
+631-86llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+547-0llvm/test/Instrumentation/MemorySanitizer/AArch64/aarch64-matmul.ll
+240-291llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+216-314llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
+2,417-1,438982 files not shown
+29,579-9,079988 files

LLVM/project 344100fllvm/include/llvm/IR IntrinsicsAMDGPU.td, llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.8-beta.1

[skip ci]
DeltaFile
+28-742llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
+755-5llvm/test/CodeGen/X86/pr162812.ll
+631-86llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+547-0llvm/test/Instrumentation/MemorySanitizer/AArch64/aarch64-matmul.ll
+240-291llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+216-314llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
+2,417-1,438981 files not shown
+29,577-9,079987 files

LLVM/project 9be47fellvm/include/llvm/IR IntrinsicsAMDGPU.td, llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

rebase

Created using spr 1.3.8-beta.1
DeltaFile
+28-742llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
+755-5llvm/test/CodeGen/X86/pr162812.ll
+631-86llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+547-0llvm/test/Instrumentation/MemorySanitizer/AArch64/aarch64-matmul.ll
+240-291llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+216-314llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
+2,417-1,438981 files not shown
+29,577-9,079987 files

LLVM/project 99a4852llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/X86 copyable-non-inst-in-stores.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+18-15llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+4-15llvm/test/Transforms/SLPVectorizer/X86/copyable-non-inst-in-stores.ll
+22-302 files

LLVM/project 5ec3191compiler-rt/lib/asan asan_interceptors.h asan_interceptors.cpp, compiler-rt/lib/interception interception_aix.cpp

[asan] Adjust interception compatibility for AIX (#131870)

Adjust asan interceptor compatbility for AIX. AIX uses dlsym to retrieve
addresses of exported functions. However, some functions in libc.a, such
as memcpy, are not exported, so we currently have a limitation in
retrieving these addresses.

Issue: https://github.com/llvm/llvm-project/issues/138916
DeltaFile
+48-3compiler-rt/lib/interception/interception_aix.cpp
+25-3compiler-rt/lib/asan/asan_interceptors.h
+9-0compiler-rt/lib/asan/asan_interceptors.cpp
+8-0compiler-rt/lib/sanitizer_common/sanitizer_libc.cpp
+3-3compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
+1-1compiler-rt/lib/asan/asan_malloc_linux.cpp
+94-101 files not shown
+95-107 files

LLVM/project 3572e62llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/RISCV x264-satd-8x4.ll basic-strided-loads.ll

[SLPVectorizer] Widen rt stride loads (#162336)

Suppose we are given pointers of the form: `%b + x * %s + y * %c_i`
where `%c_i`s are constants and %s is a run-time fixed value.
If the pointers can be rearranged as follows:

```
 %b + 0 * %s + 0
 %b + 0 * %s + 1
 %b + 0 * %s + 2
 ...
 %b + 0 * %s + w

 %b + 1 * %s + 0
 %b + 1 * %s + 1
 %b + 1 * %s + 2
 ...
 %b + 1 * %s + w
 ...

    [5 lines not shown]
DeltaFile
+209-9llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+12-56llvm/test/Transforms/SLPVectorizer/RISCV/x264-satd-8x4.ll
+3-17llvm/test/Transforms/SLPVectorizer/RISCV/basic-strided-loads.ll
+224-823 files

LLVM/project 050c447llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp InstCombineInternal.h

Revert "[InstCombine] Support DemandElts in SimplifyDemandedFPClass" (#174242)

Reverts llvm/llvm-project#174176

Revert to unblock bots.
https://lab.llvm.org/buildbot/#/builders/123/builds/32907
DeltaFile
+23-48llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+0-25llvm/lib/Transforms/InstCombine/InstCombineInternal.h
+23-732 files

LLVM/project 8ac911bllvm/test/Transforms/SLPVectorizer/X86 copyable-non-inst-in-stores.ll

[SLP][NFC]Add a test with the leading non-instruction in sores, which cannot be handled as copyable
DeltaFile
+50-0llvm/test/Transforms/SLPVectorizer/X86/copyable-non-inst-in-stores.ll
+50-01 files

LLVM/project 0140394mlir/lib/Bindings/Python DialectQuant.cpp DialectLLVM.cpp, mlir/test/python/dialects pdl_types.py

[mlir][Python] port dialect extensions to use core PyConcreteType, PyConcreteAttribute
DeltaFile
+455-355mlir/lib/Bindings/Python/DialectQuant.cpp
+164-133mlir/lib/Bindings/Python/DialectLLVM.cpp
+154-112mlir/lib/Bindings/Python/DialectSparseTensor.cpp
+142-89mlir/lib/Bindings/Python/DialectTransform.cpp
+134-72mlir/lib/Bindings/Python/DialectPDL.cpp
+103-100mlir/test/python/dialects/pdl_types.py
+1,152-8615 files not shown
+1,419-1,01511 files

LLVM/project 8bc6e79mlir/include/mlir/Bindings/Python IRAttributes.h IRTypes.h, mlir/lib/Bindings/Python IRAttributes.cpp IRTypes.cpp

[mlir][Python] move IRTypes and IRAttributes to public headers
DeltaFile
+949-1,394mlir/lib/Bindings/Python/IRAttributes.cpp
+636-959mlir/lib/Bindings/Python/IRTypes.cpp
+593-0mlir/include/mlir/Bindings/Python/IRAttributes.h
+391-2mlir/include/mlir/Bindings/Python/IRTypes.h
+59-72mlir/test/python/lib/PythonTestModuleNanobind.cpp
+15-2mlir/include/mlir/Bindings/Python/IRCore.h
+2,643-2,4292 files not shown
+2,648-2,4328 files

LLVM/project 68d6a2fmlir/include/mlir/Bindings/Python IRCore.h NanobindUtils.h, mlir/lib/Bindings/Python IRCore.cpp IRModule.h

[mlir][Python] create MLIRPythonSupport
DeltaFile
+957-1,109mlir/lib/Bindings/Python/IRCore.cpp
+1,830-0mlir/include/mlir/Bindings/Python/IRCore.h
+0-1,348mlir/lib/Bindings/Python/IRModule.h
+436-0mlir/include/mlir/Bindings/Python/NanobindUtils.h
+0-436mlir/lib/Bindings/Python/NanobindUtils.h
+279-0mlir/lib/Bindings/Python/Globals.cpp
+3,502-2,89326 files not shown
+4,244-3,69632 files

LLVM/project c29b311llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp InstCombineInternal.h

Revert "[InstCombine] Support DemandElts in SimplifyDemandedFPClass (#174176)"

This reverts commit 3c9d46ae338ea39f638342ac0e6f09d1cd8d10fa.
DeltaFile
+23-48llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+0-25llvm/lib/Transforms/InstCombine/InstCombineInternal.h
+23-732 files

LLVM/project a052b57llvm/utils/TableGen/Common CodeGenDAGPatterns.cpp CodeGenDAGPatterns.h

[TableGen] Remove TypeInfer::isConcrete/getConcrete. NFC (#174235)

These don't use any state from TypeInfer and only wrap methods in
TypeSetByHwMode. We can use the TypeSetByHwMode methods directly.
DeltaFile
+5-4llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
+0-9llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
+5-132 files

LLVM/project 4c65b5bllvm/include/llvm/Frontend/OpenMP ClauseT.h

[OpenMP] Fix member type name in LooprangeT

The second parameter to the `looprange` clause is "count", nor "end".
DeltaFile
+2-2llvm/include/llvm/Frontend/OpenMP/ClauseT.h
+2-21 files

LLVM/project 7b73ba5clang-tools-extra/clang-doc Serialize.cpp JSONGenerator.cpp, clang-tools-extra/clang-doc/assets class-template.mustache

[clang-doc] Add friends to class template (#173960)

This patch also allows comments to be associated with friend
declarations. Currently, it seems like the comments for friend `RecordDecl`
are taken from the actual class declaration, while a friend
function's comments are taken from the actual `friend` declaration.
DeltaFile
+59-3clang-tools-extra/test/clang-doc/json/class.cpp
+35-0clang-tools-extra/clang-doc/assets/class-template.mustache
+5-2clang-tools-extra/clang-doc/Serialize.cpp
+5-2clang-tools-extra/clang-doc/JSONGenerator.cpp
+4-0clang-tools-extra/clang-doc/BitcodeReader.cpp
+2-0clang-tools-extra/clang-doc/BitcodeWriter.cpp
+110-71 files not shown
+111-77 files

LLVM/project b06bef3mlir/lib/Bindings/Python DialectQuant.cpp DialectLLVM.cpp, mlir/test/python/dialects pdl_types.py

[mlir][Python] port dialect extensions to use core PyConcreteType, PyConcreteAttribute
DeltaFile
+455-355mlir/lib/Bindings/Python/DialectQuant.cpp
+164-133mlir/lib/Bindings/Python/DialectLLVM.cpp
+154-112mlir/lib/Bindings/Python/DialectSparseTensor.cpp
+142-89mlir/lib/Bindings/Python/DialectTransform.cpp
+134-72mlir/lib/Bindings/Python/DialectPDL.cpp
+103-100mlir/test/python/dialects/pdl_types.py
+1,152-8615 files not shown
+1,419-1,01511 files

LLVM/project 8593437llvm/lib/Transforms/Vectorize VPlanValue.h

[VPlan] Simplify ~VPDef (NFCI).

Slightly simplify ~VPDef to avoid setting Def to nullptr, which is done
when remove the VPValue from VPDef, via VPValue's destructor.

Also use to_vector() instead of make_early_inc_range; as this is a
vector that may get modified, to_vector is appropriate.
DeltaFile
+1-2llvm/lib/Transforms/Vectorize/VPlanValue.h
+1-21 files

LLVM/project 7fd173cmlir/lib/Bindings/Python DialectQuant.cpp DialectLLVM.cpp, mlir/test/python/dialects pdl_types.py

[mlir][Python] port dialect extensions to use core PyConcreteType, PyConcreteAttribute
DeltaFile
+455-355mlir/lib/Bindings/Python/DialectQuant.cpp
+164-133mlir/lib/Bindings/Python/DialectLLVM.cpp
+126-109mlir/lib/Bindings/Python/DialectSparseTensor.cpp
+142-89mlir/lib/Bindings/Python/DialectTransform.cpp
+134-72mlir/lib/Bindings/Python/DialectPDL.cpp
+103-100mlir/test/python/dialects/pdl_types.py
+1,124-8585 files not shown
+1,391-1,01211 files

LLVM/project 6cbfa25clang-tools-extra/clang-doc JSONGenerator.cpp Serialize.cpp, clang-tools-extra/clang-doc/assets class-template.mustache

[clang-doc] Add friends to class template

This patch also allows comments to be associated with friend
declarations. Currently, it seems like the comments for friend `RecordDecl`
are taken from the actual class declaration, while a friend
function's comments are taken from the actual `friend` declaration.
DeltaFile
+59-3clang-tools-extra/test/clang-doc/json/class.cpp
+35-0clang-tools-extra/clang-doc/assets/class-template.mustache
+5-2clang-tools-extra/clang-doc/JSONGenerator.cpp
+5-2clang-tools-extra/clang-doc/Serialize.cpp
+4-0clang-tools-extra/clang-doc/BitcodeReader.cpp
+2-0clang-tools-extra/clang-doc/BitcodeWriter.cpp
+110-71 files not shown
+111-77 files

LLVM/project c5fd49fclang-tools-extra/clang-doc JSONGenerator.cpp, clang-tools-extra/clang-doc/assets class-template.mustache

[clang-doc] Add nested records to class template (#173959)

Nested records already had some tags, but they weren't
compatible with the current JSON scheme.
DeltaFile
+26-4clang-tools-extra/test/clang-doc/json/class.cpp
+12-12clang-tools-extra/clang-doc/assets/class-template.mustache
+7-1clang-tools-extra/clang-doc/JSONGenerator.cpp
+45-173 files

LLVM/project a428025mlir/lib/Bindings/Python DialectQuant.cpp DialectLLVM.cpp, mlir/test/python/dialects pdl_types.py

[mlir][Python] port dialect extensions to use core PyConcreteType, PyConcreteAttribute
DeltaFile
+454-355mlir/lib/Bindings/Python/DialectQuant.cpp
+164-133mlir/lib/Bindings/Python/DialectLLVM.cpp
+125-109mlir/lib/Bindings/Python/DialectSparseTensor.cpp
+141-89mlir/lib/Bindings/Python/DialectTransform.cpp
+134-72mlir/lib/Bindings/Python/DialectPDL.cpp
+103-100mlir/test/python/dialects/pdl_types.py
+1,121-8585 files not shown
+1,386-1,01211 files

LLVM/project a7ab82cmlir/include/mlir/Bindings/Python IRAttributes.h IRTypes.h, mlir/lib/Bindings/Python IRAttributes.cpp IRTypes.cpp

[mlir][Python] move IRTypes and IRAttributes to public headers
DeltaFile
+949-1,394mlir/lib/Bindings/Python/IRAttributes.cpp
+636-959mlir/lib/Bindings/Python/IRTypes.cpp
+593-0mlir/include/mlir/Bindings/Python/IRAttributes.h
+391-2mlir/include/mlir/Bindings/Python/IRTypes.h
+59-72mlir/test/python/lib/PythonTestModuleNanobind.cpp
+15-2mlir/include/mlir/Bindings/Python/IRCore.h
+2,643-2,4292 files not shown
+2,648-2,4328 files

LLVM/project b6965b6mlir/include/mlir/Bindings/Python IRCore.h NanobindUtils.h, mlir/lib/Bindings/Python IRCore.cpp IRModule.h

fix after rebase

[mlir][Python] create MLIRPythonSupport
DeltaFile
+957-1,109mlir/lib/Bindings/Python/IRCore.cpp
+1,830-0mlir/include/mlir/Bindings/Python/IRCore.h
+0-1,348mlir/lib/Bindings/Python/IRModule.h
+0-436mlir/lib/Bindings/Python/NanobindUtils.h
+436-0mlir/include/mlir/Bindings/Python/NanobindUtils.h
+279-0mlir/lib/Bindings/Python/Globals.cpp
+3,502-2,89326 files not shown
+4,244-3,69632 files

LLVM/project b23ceb1mlir/include/mlir/Bindings/Python IRCore.h, mlir/lib/Bindings/Python Rewrite.cpp IRCore.cpp

fix after rebase
DeltaFile
+35-11mlir/lib/Bindings/Python/Rewrite.cpp
+18-19mlir/lib/Bindings/Python/IRCore.cpp
+7-7mlir/include/mlir/Bindings/Python/IRCore.h
+60-373 files