LLVM/project eaa889aclang-tools-extra/clang-tidy/bugprone ExceptionEscapeCheck.cpp ExceptionEscapeCheck.h, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Add fine-graded configuration for 'bugprone-exception-escape' (#164081)

Need these options to complete
https://github.com/llvm/llvm-project/issues/160825, but I think it's
generally beneficial to fine-tune this check.

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Co-authored-by: Victor Chernyakin <chernyakin.victor.j at outlook.com>
DeltaFile
+47-0clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-options.cpp
+32-10clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
+25-0clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-escape.rst
+7-0clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
+3-1clang-tools-extra/docs/ReleaseNotes.rst
+114-115 files

LLVM/project d0081aallvm/test/CodeGen/SPIRV zero-length-array.ll

[NFC][SPIRV] Make the zero-length-array.ll test explicit about what is generated (#166910)

This patch doesn't change anything. Just adds more explicit checks to
verify what is generated in this case when an alloca has a zero-sized
array.

I'd expect an `OpRuntimeArray`, but nothing is generated.
DeltaFile
+10-3llvm/test/CodeGen/SPIRV/zero-length-array.ll
+10-31 files

LLVM/project abdb9a0llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone BUILD.gn, llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cert BUILD.gn

[gn build] Port 4b433cbdeec7
DeltaFile
+1-0llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
+0-1llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cert/BUILD.gn
+1-12 files

LLVM/project 4b433cbclang-tools-extra/clang-tidy/bugprone ExceptionCopyConstructorThrowsCheck.cpp ExceptionCopyConstructorThrowsCheck.h, clang-tools-extra/clang-tidy/cert ThrownExceptionTypeCheck.cpp ThrownExceptionTypeCheck.h

[clang-tidy] Rename 'cert-err60-cpp' to 'bugprone-exception-copy-constructor-throws' (#164061)

Closes https://github.com/llvm/llvm-project/issues/157299.

---------

Co-authored-by: Victor Chernyakin <chernyakin.victor.j at outlook.com>
DeltaFile
+129-0clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-copy-constructor-throws.cpp
+0-129clang-tools-extra/test/clang-tidy/checkers/cert/throw-exception-type.cpp
+36-0clang-tools-extra/clang-tidy/bugprone/ExceptionCopyConstructorThrowsCheck.cpp
+0-34clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.cpp
+33-0clang-tools-extra/clang-tidy/bugprone/ExceptionCopyConstructorThrowsCheck.h
+0-33clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.h
+198-1968 files not shown
+249-20214 files

LLVM/project 6408703polly/lib/CodeGen CodeGeneration.cpp, polly/test/CodeGen/Metadata fallback_vec_annotate.ll

[Polly] Retain vectorization for fallback loop when RTC is unsatisfiable (#165525)

When Polly generates a false runtime condition (RTC), the associated
Polly generated loop is never executed and is eventually eliminated. As
a result, the fallback loop becomes the default execution path.
Disabling vectorization for this fallback loop will be
counterproductive. This patch ensures that vectorization is only
disabled when the RTC is not false (no Codegen failure).
DeltaFile
+28-0polly/test/CodeGen/Metadata/fallback_vec_annotate.ll
+15-9polly/lib/CodeGen/CodeGeneration.cpp
+43-92 files

LLVM/project 5927bb5llvm/test/CodeGen/SPIRV non_int_constant_null.ll

Pre-commit test
DeltaFile
+10-0llvm/test/CodeGen/SPIRV/non_int_constant_null.ll
+10-01 files

LLVM/project a38d0d1llvm/lib/Target/SPIRV SPIRVAsmPrinter.cpp, llvm/test/CodeGen/SPIRV non_int_constant_null.ll

[SPIRV] Fix failing assertion in SPIRVAsmPrinter

When +SPV_KHR_float_controls2 and there was a non-int OpConstantZero we
would call MI.getOperand(1).getImm() when MI was not an OpTypeInt (the
associated test has an OpTypeArray zeroinitialized).

This patch adds the missing condition.
DeltaFile
+12-11llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
+18-3llvm/test/CodeGen/SPIRV/non_int_constant_null.ll
+30-142 files

LLVM/project 4c75cbfllvm/test/CodeGen/SPIRV zero-length-array.ll

Add . at the end of comment

Co-authored-by: Marcos Maronas <marcos.maronas at intel.com>
DeltaFile
+1-1llvm/test/CodeGen/SPIRV/zero-length-array.ll
+1-11 files

LLVM/project f613801clang/test/Preprocessor riscv-target-features.c, llvm/docs RISCVUsage.rst

[RISCV][llvm] Support Smpmpmt version 0.6 (#166322)

spec:
https://github.com/riscv/riscv-isa-manual/blob/smpmpmt/src/smpmpmt.adoc

Co-Authored-by: Jesse Huang <jesse.huang at sifive.com>
DeltaFile
+9-0clang/test/Preprocessor/riscv-target-features.c
+4-0llvm/test/CodeGen/RISCV/attributes.ll
+3-0llvm/lib/Target/RISCV/RISCVFeatures.td
+3-0llvm/test/MC/RISCV/attribute-arch.s
+3-0llvm/docs/RISCVUsage.rst
+1-0llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
+23-02 files not shown
+25-08 files

LLVM/project d10a851llvm/lib/Target/WebAssembly WebAssemblyTargetTransformInfo.cpp, llvm/test/CodeGen/WebAssembly memory-interleave.ll

[WebAssembly] Implement more of getCastInstrCost (#164612)

Fill out more information for sign and zero extend and add some truncate
information; however, the primary change is to int/fp conversions. In
particular, fp to (narrow) int appears to be relatively expensive.
DeltaFile
+6-272llvm/test/CodeGen/WebAssembly/memory-interleave.ll
+41-41llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
+65-1llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
+112-3143 files

LLVM/project bb863b1llvm/lib/CodeGen/SelectionDAG SelectionDAG.cpp, llvm/test/CodeGen/AMDGPU compute-known-bits-nofpclass.ll

DAG: Handle AssertNoFPClass in computeKnownBits

It's possible to determine the sign bit if the value is known
one of the positive/negative classes and not-nan.
DeltaFile
+21-0llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+0-2llvm/test/CodeGen/AMDGPU/compute-known-bits-nofpclass.ll
+21-22 files

LLVM/project 0a6dd90llvm/test/CodeGen/AMDGPU compute-known-bits-nofpclass.ll

AMDGPU: Add baseline test for known bits of AssertNoFPClass
DeltaFile
+48-0llvm/test/CodeGen/AMDGPU/compute-known-bits-nofpclass.ll
+48-01 files

LLVM/project 7d29b71mlir/lib/Conversion/ArithToAPFloat ArithToAPFloat.cpp

use notifyMatchFailure
DeltaFile
+2-2mlir/lib/Conversion/ArithToAPFloat/ArithToAPFloat.cpp
+2-21 files

LLVM/project 4408e45clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp, clang/unittests/Basic DiagnosticTest.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+242-98llvm/lib/Support/SpecialCaseList.cpp
+21-103llvm/include/llvm/Support/SpecialCaseList.h
+20-14llvm/unittests/Support/SpecialCaseListTest.cpp
+6-10clang/lib/Basic/Diagnostic.cpp
+3-5clang/unittests/Basic/DiagnosticTest.cpp
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+294-2324 files not shown
+300-23610 files

LLVM/project 09d0523clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp, clang/unittests/Basic DiagnosticTest.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+243-99llvm/lib/Support/SpecialCaseList.cpp
+21-103llvm/include/llvm/Support/SpecialCaseList.h
+20-14llvm/unittests/Support/SpecialCaseListTest.cpp
+6-10clang/lib/Basic/Diagnostic.cpp
+3-5clang/unittests/Basic/DiagnosticTest.cpp
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+295-2334 files not shown
+301-23710 files

LLVM/project 78ac3a4clang/test/Sema/AArch64 arm_sve_feature_dependent_sve_AND_sve2___sme.c arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme_RP___sme.c, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll amdgcn.bitcast.512bit.ll

rebase

Created using spr 1.3.7
DeltaFile
+22,501-17,294llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+0-16,470clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
+6,649-5,373llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+10,289-0llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-sve-instructions.s
+10,287-0llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-sve-instructions.s
+9,945-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme_RP___sme.c
+59,671-39,13711,583 files not shown
+910,778-237,70711,589 files

LLVM/project 6647af0clang/test/Sema/AArch64 arm_sve_feature_dependent_sve_AND_sve2___sme.c arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme_RP___sme.c, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll amdgcn.bitcast.512bit.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+22,501-17,294llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+0-16,470clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
+6,649-5,373llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+10,289-0llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-sve-instructions.s
+10,287-0llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-sve-instructions.s
+9,945-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme_RP___sme.c
+59,671-39,13711,583 files not shown
+910,706-237,69611,589 files

LLVM/project 493a590clang/docs WarningSuppressionMappings.rst, clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+172-93llvm/lib/Support/SpecialCaseList.cpp
+21-103llvm/include/llvm/Support/SpecialCaseList.h
+6-10clang/lib/Basic/Diagnostic.cpp
+3-5clang/unittests/Basic/DiagnosticTest.cpp
+2-2clang/docs/WarningSuppressionMappings.rst
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+206-2153 files not shown
+210-2179 files

LLVM/project 1966b6cclang/docs WarningSuppressionMappings.rst, clang/lib/Basic Diagnostic.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+172-93llvm/lib/Support/SpecialCaseList.cpp
+21-103llvm/include/llvm/Support/SpecialCaseList.h
+19-13llvm/unittests/Support/SpecialCaseListTest.cpp
+6-10clang/lib/Basic/Diagnostic.cpp
+3-5clang/unittests/Basic/DiagnosticTest.cpp
+2-2clang/docs/WarningSuppressionMappings.rst
+223-2264 files not shown
+229-23010 files

LLVM/project 21782c6clang/docs WarningSuppressionMappings.rst, clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+172-93llvm/lib/Support/SpecialCaseList.cpp
+21-103llvm/include/llvm/Support/SpecialCaseList.h
+6-10clang/lib/Basic/Diagnostic.cpp
+3-5clang/unittests/Basic/DiagnosticTest.cpp
+2-2clang/docs/WarningSuppressionMappings.rst
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+206-2153 files not shown
+210-2179 files

LLVM/project 53c9cb0clang/docs WarningSuppressionMappings.rst, clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+172-84llvm/lib/Support/SpecialCaseList.cpp
+21-103llvm/include/llvm/Support/SpecialCaseList.h
+6-10clang/lib/Basic/Diagnostic.cpp
+3-5clang/unittests/Basic/DiagnosticTest.cpp
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+2-2clang/docs/WarningSuppressionMappings.rst
+206-2063 files not shown
+210-2089 files

LLVM/project eb76cb4clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp, llvm/include/llvm/Support SpecialCaseList.h

rebase

Created using spr 1.3.7
DeltaFile
+174-73llvm/lib/Support/SpecialCaseList.cpp
+22-99llvm/include/llvm/Support/SpecialCaseList.h
+2-3clang/lib/Basic/Diagnostic.cpp
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+1-1llvm/lib/ObjectYAML/ELFYAML.cpp
+202-1792 files not shown
+202-1818 files

LLVM/project 5f8f1d4clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+174-61llvm/lib/Support/SpecialCaseList.cpp
+20-96llvm/include/llvm/Support/SpecialCaseList.h
+2-3clang/lib/Basic/Diagnostic.cpp
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+1-1llvm/lib/ObjectYAML/ELFYAML.cpp
+200-1642 files not shown
+200-1668 files

LLVM/project 7a72051clang/lib/Basic Diagnostic.cpp SanitizerSpecialCaseList.cpp, llvm/include/llvm/Support SpecialCaseList.h

rebase

Created using spr 1.3.7
DeltaFile
+174-61llvm/lib/Support/SpecialCaseList.cpp
+20-96llvm/include/llvm/Support/SpecialCaseList.h
+2-3clang/lib/Basic/Diagnostic.cpp
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+1-1llvm/lib/ObjectYAML/ELFYAML.cpp
+200-1642 files not shown
+200-1668 files

LLVM/project 927fb27clang/lib/Basic SanitizerSpecialCaseList.cpp ProfileList.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+174-61llvm/lib/Support/SpecialCaseList.cpp
+20-96llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+1-1llvm/lib/ObjectYAML/ELFYAML.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+199-1622 files not shown
+199-1648 files

LLVM/project da60e0aclang/lib/Basic SanitizerSpecialCaseList.cpp Diagnostic.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+52-41llvm/lib/Support/SpecialCaseList.cpp
+29-22llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+85-675 files

LLVM/project d54faf9clang/lib/Basic SanitizerSpecialCaseList.cpp Diagnostic.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+174-61llvm/lib/Support/SpecialCaseList.cpp
+20-96llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+198-1615 files

LLVM/project 07ceaa5clang/lib/Basic SanitizerSpecialCaseList.cpp Diagnostic.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+52-41llvm/lib/Support/SpecialCaseList.cpp
+29-22llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+85-675 files

LLVM/project 56c4c5fclang/lib/Basic SanitizerSpecialCaseList.cpp ProfileList.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+52-41llvm/lib/Support/SpecialCaseList.cpp
+27-20llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+83-655 files

LLVM/project 7550efcclang/lib/Basic SanitizerSpecialCaseList.cpp ProfileList.cpp, llvm/include/llvm/Support SpecialCaseList.h

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+52-41llvm/lib/Support/SpecialCaseList.cpp
+27-20llvm/include/llvm/Support/SpecialCaseList.h
+2-2clang/lib/Basic/SanitizerSpecialCaseList.cpp
+1-1clang/lib/Basic/ProfileList.cpp
+1-1clang/lib/Basic/Diagnostic.cpp
+83-655 files