[all-commits] [llvm/llvm-project] 924a1d: [Dwarf] Support `__ptrauth` qualifier in metadata ...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Tue Mar 19 15:39:22 PDT 2024
Branch: refs/heads/users/MaskRay/spr/support-add-decodeuleb128andincdecodesleb128andinc
Home: https://github.com/llvm/llvm-project
Commit: 924a1dceb59944fa9051acbbb7d2daac129ee0ef
https://github.com/llvm/llvm-project/commit/924a1dceb59944fa9051acbbb7d2daac129ee0ef
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/DIBuilder.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Verifier.cpp
M llvm/test/Assembler/debug-info.ll
A llvm/test/DebugInfo/AArch64/ptrauth.ll
M llvm/unittests/IR/MetadataTest.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
Log Message:
-----------
[Dwarf] Support `__ptrauth` qualifier in metadata nodes (#83862)
Reland #82363 after fixing build failure
https://lab.llvm.org/buildbot/#/builders/5/builds/41428.
Memory sanitizer detects usage of `RawData` union member which is not
filled directly. Instead, the code relies on filling `Data` union
member, which is a struct consisting of signing schema parameters.
According to https://en.cppreference.com/w/cpp/language/union, this is
UB:
"It is undefined behavior to read from the member of the union that
wasn't most recently written".
Instead of relying on compiler allowing us to do dirty things, do not
use union and only store `RawData`. Particular ptrauth parameters are
obtained on demand via bit operations.
Original PR description below.
Emit `__ptrauth`-qualified types as `DIDerivedType` metadata nodes in IR
with tag `DW_TAG_LLVM_ptrauth_type`, baseType referring to the type
which has the qualifier applied, and the following parameters
representing the signing schema:
- `ptrAuthKey` (integer)
- `ptrAuthIsAddressDiscriminated` (boolean)
- `ptrAuthExtraDiscriminator` (integer)
- `ptrAuthIsaPointer` (boolean)
- `ptrAuthAuthenticatesNullValues` (boolean)
Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>
Commit: ff60a84f04b4d8af63d581d4f9dd7ab0196a200e
https://github.com/llvm/llvm-project/commit/ff60a84f04b4d8af63d581d4f9dd7ab0196a200e
Author: Malay Sanghi <malay.sanghi at intel.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePassManager.h
Log Message:
-----------
Convert copy to r-value reference. (#85606)
That seems to be the intention based on calling code.
Commit: b1752ddf0a97969cdd931e6431c953cfd4079e50
https://github.com/llvm/llvm-project/commit/b1752ddf0a97969cdd931e6431c953cfd4079e50
Author: Matthias Springer <me at m-sp.org>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/reshape_dot.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
Log Message:
-----------
[mlir][sparse] Fix memory leaks (part 4) (#85729)
This commit fixes memory leaks in sparse tensor integration tests by
adding `bufferization.dealloc_tensor` ops.
Note: Buffer deallocation will be automated in the future with the
ownership-based buffer deallocation pass, making `dealloc_tensor`
obsolete (only codegen path, not when using the runtime library).
This commit fixes the remaining memory leaks in the MLIR test suite.
`check-mlir` now passes when built with ASAN.
Commit: cb2ca23345d3d9bde027a18d301949e8bdf606a6
https://github.com/llvm/llvm-project/commit/cb2ca23345d3d9bde027a18d301949e8bdf606a6
Author: Martin Storsjö <martin at martin.st>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/tools/llvm-shlib/CMakeLists.txt
Log Message:
-----------
[llvm-shlib] Fix the version naming style of libLLVM for Windows (#85710)
This reverts the changes from 91a384621e5b762d9c173ffd247cfeadd5f436a2
for Windows targets. The changes in that commit don't work as expected
for Windows targets (those parts of llvm_add_library don't quite behave
the same for Windows), while the previous status quo (producing a
library named "libLLVM-<major>.dll") is the defacto standard way of
doing versioned library names there, contrary to on Unix.
After that commit, the library always ended up named "libLLVM.dll",
executables linking against it would reference "libLLVM.dll", and
"libLLVM-<major>.dll" was provided as a symlink.
Thus revert this bit back to as it were, so that executables actually
link against a versioned libLLVM, and no separate symlink is needed.
The only thing that might be improved compared to the status quo as it
was before these changes, is that the import library is named
"lib/libLLVM-<major>.dll.a", while the common style would be to name it
plainly "lib/libLLVM.dll.a" (even while it produces references to
"libLLVM-<major>.dll", but none of these had that effect for Windows
targets.
(As a side note, the llvm-shlib library can be built for MinGW, but not
currently in MSVC configurations.)
Commit: f0a5e5055029e9ab1c49a8580f09fa4c0e172ee1
https://github.com/llvm/llvm-project/commit/f0a5e5055029e9ab1c49a8580f09fa4c0e172ee1
Author: Adrian Kuegel <akuegel at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/CodeGen/NVPTX/dynamic_stackalloc.ll
Log Message:
-----------
[llvm][NVPTX] Add missing feature guard.
Commit: 110f630105aed0670d82427fea55afbabc4a94c4
https://github.com/llvm/llvm-project/commit/110f630105aed0670d82427fea55afbabc4a94c4
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/unittests/Support/KnownBitsTest.cpp
Log Message:
-----------
[KnownBits] Remove useless lambdas from unit test
Commit: eb5623d10147d1069885ccaa57d81fae3260b926
https://github.com/llvm/llvm-project/commit/eb5623d10147d1069885ccaa57d81fae3260b926
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/TableGen/MacroFusion.td
Log Message:
-----------
[MacroFusion] Complete tests and fix indents
Commit: 59ff3adcc1310e22ab31163767e49b4edb20c6b4
https://github.com/llvm/llvm-project/commit/59ff3adcc1310e22ab31163767e49b4edb20c6b4
Author: martinboehme <mboehme at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/docs/tools/clang-formatted-files.txt
A clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
M clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
M clang/include/clang/Analysis/FlowSensitive/Logger.h
M clang/include/clang/Analysis/FlowSensitive/Transfer.h
M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
A clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
M clang/lib/Analysis/FlowSensitive/CMakeLists.txt
R clang/lib/Analysis/FlowSensitive/ControlFlowContext.cpp
M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
M clang/lib/Analysis/FlowSensitive/Logger.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/unittests/Analysis/FlowSensitive/DeterminismTest.cpp
M clang/unittests/Analysis/FlowSensitive/LoggerTest.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
Log Message:
-----------
[clang][dataflow][NFC] Rename `ControlFlowContext` to `AdornedCFG`. (#85640)
This expresses better what the class actually does, and it reduces the
number of
`Context`s that we have in the codebase.
A deprecated alias `ControlFlowContext` is available from the old
header.
Commit: eac68447adac3852524c66acac7ab64d90205f47
https://github.com/llvm/llvm-project/commit/eac68447adac3852524c66acac7ab64d90205f47
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Analysis/FlowSensitive/BUILD.gn
Log Message:
-----------
[gn build] Port 59ff3adcc131
Commit: b788e4655c4e06f6821bc220e5745d6a4f9d4d09
https://github.com/llvm/llvm-project/commit/b788e4655c4e06f6821bc220e5745d6a4f9d4d09
Author: martinboehme <mboehme at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/RecordOps.h
M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/unittests/Analysis/FlowSensitive/RecordOpsTest.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Model assignment to derived class from base. (#85064)
This is a relatively rare case, but
- It's still nice to get this right,
- We can remove the special case for this in
`VisitCXXOperatorCallExpr()` (that
simply bails out), and
- With this in place, I can avoid having to add a similar special case
in an
upcoming patch.
Commit: 5e486d17d4793e5114245b9a04a566ef45ffb21b
https://github.com/llvm/llvm-project/commit/5e486d17d4793e5114245b9a04a566ef45ffb21b
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Target/Target.td
A llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/include/llvm/Target/TargetSchedule.td
Log Message:
-----------
[TableGen][NFC] Move MacroFusion classes to TargetMacroFusion.td
To make structure clear.
Reviewers: dtcxzyw, arsenm
Reviewed By: arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/85748
Commit: 703920d4138d02bde4f4bf70ba809b63bef25c37
https://github.com/llvm/llvm-project/commit/703920d4138d02bde4f4bf70ba809b63bef25c37
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/hadd-combine.ll
Log Message:
-----------
[DAG] Matched FixedWidth pattern for ISD::AVGFLOORU (#84903)
Fixes: #84749
Commit: 6aaf9c83099b80e73ef2208ae9f7f300c7808659
https://github.com/llvm/llvm-project/commit/6aaf9c83099b80e73ef2208ae9f7f300c7808659
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
Log Message:
-----------
[clang][Interp][NFC] Sanitize collectBaseOffset parameters
Commit: a747e86caacf0ba3d5272474da8c10eb0b67dbc2
https://github.com/llvm/llvm-project/commit/a747e86caacf0ba3d5272474da8c10eb0b67dbc2
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/fpcast.ll
Log Message:
-----------
[InstCombine] Fold `fpto{s|u}i non-norm` to zero (#85569)
This patch enables more optimization after canonicalizing `fmul X, 0.0`
into a copysign.
I decide to implement this fold in InstCombine because
`computeKnownFPClass` may be expensive.
Alive2: https://alive2.llvm.org/ce/z/ASM8tQ
Commit: 1a6953a75d3120a4f9196911e6a6b79fcc315553
https://github.com/llvm/llvm-project/commit/1a6953a75d3120a4f9196911e6a6b79fcc315553
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
Log Message:
-----------
ValueTracking: Fix bug with fcmp false to nan constant
If we had a comparison to a literal nan with a false predicate,
we were incorrectly treating it as an unordered compare. This was
correct for fcmp true, but not fcmp false. I noticed this in the
review for e44d3b3e503fa12fdaead2936b28844aa36237c1 but misdiagnosed
the reason. Also change the test for the fcmp true case to be more
useful, but it wasn't wrong previously.
Commit: 0d40de754a8fc34e606d0a83902f950606f42385
https://github.com/llvm/llvm-project/commit/0d40de754a8fc34e606d0a83902f950606f42385
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Disasm.cpp
M clang/lib/AST/Interp/InterpFrame.h
Log Message:
-----------
[clang][Interp][NFC] Add InterpFrame::dump()
Commit: 29849d589c1969f6a07a69ef0d7a19896d358bc5
https://github.com/llvm/llvm-project/commit/29849d589c1969f6a07a69ef0d7a19896d358bc5
Author: nicebert <110385235+nicebert at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M openmp/libomptarget/test/api/ompx_dump_mapping_tables.cpp
Log Message:
-----------
[OpenMP] Fix ompx_dump_mapping_tables lit test (#85754)
Fixes ompx_dump_mapping_tables test by only using one device after
breaking built bots
Commit: db6049112790f6bee51883b6aa99d0660f17e3a5
https://github.com/llvm/llvm-project/commit/db6049112790f6bee51883b6aa99d0660f17e3a5
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
Log Message:
-----------
[mlir][bufferization] Check OpFilter before casting to BufferizableOpInterface (#85690)
This doesn't change functionality, but lets us avoid attaching all the
interfaces after 513cdb82223a106f183b49a40d9acb1f7efbbe7e turned casting
without loading into an error.
Commit: 5e379b63fcd942017593d278c8c2313744413904
https://github.com/llvm/llvm-project/commit/5e379b63fcd942017593d278c8c2313744413904
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
Log Message:
-----------
[AMDGPU][PromoteAlloca] Drop bitcast handling (#85747)
This is no longer needed with opaque pointers.
Commit: a4b23638d23d603001c19285a7c7535a8ce81317
https://github.com/llvm/llvm-project/commit/a4b23638d23d603001c19285a7c7535a8ce81317
Author: Felix Schneider <fx.schn at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/IR/AffineExpr.cpp
A mlir/unittests/IR/AffineExprTest.cpp
M mlir/unittests/IR/CMakeLists.txt
Log Message:
-----------
[mlir] Don't assert when simplifying certain `AffineExpr`s (#78855)
Currently, `simplifyMul()` asserts that either `lhs` or `rhs` is
symbolic or constant. This method is called by the overloaded `*`
operator for `AffineExpr`s which leads to a crash when building a
multiplication expression where neither operand is symbolic or constant.
This patch returns a `nullptr` from `simplifyMul()` to signal that the
expression could not be simplified instead.
Fix https://github.com/llvm/llvm-project/issues/75770
Commit: e85bfa65651eb45aefc8a9233e160f27af55f894
https://github.com/llvm/llvm-project/commit/e85bfa65651eb45aefc8a9233e160f27af55f894
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/test/Driver/aarch64-mcpu.c
M clang/test/Misc/target-invalid-cpu-note.c
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/TargetParser/Host.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64] Add support for Cortex-A520AE and Cortex-A720AE CPUs (#85401)
[AArch64] Add support for Cortex-A520AE and Cortex-A720AE CPUs
Cortex-A520AE and Cortex-A720AE are Armv9.2 AArch64 CPUs.
Technical Reference Manual for Cortex-A520AE:
https://developer.arm.com/documentation/107726/latest/
Technical Reference Manual for Cortex-A720AE:
https://developer.arm.com/documentation/102828/latest/
Commit: 29cde04c3972a54efeb6d09b1580b275f39c315a
https://github.com/llvm/llvm-project/commit/29cde04c3972a54efeb6d09b1580b275f39c315a
Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
Log Message:
-----------
[clang-format] Fixed the warning in building document for TableGenBreakingDAGArgOperators. (#85760)
Intend to fix the `Test documentation build `, degraded here
https://github.com/llvm/llvm-project/pull/83149 .
Commit: 6bc6e1ace9fa8453e164fa04b5d9acd5a77e089a
https://github.com/llvm/llvm-project/commit/6bc6e1ace9fa8453e164fa04b5d9acd5a77e089a
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M compiler-rt/test/tsan/signal_thread.cpp
Log Message:
-----------
[tsan][test] Switch setitimer(ITIMER_REAL, ...) to setitimer(ITIMER_VIRTUAL, ...)
Followup to #85188.
Commit: d9c31ee9568277e4303715736b40925e41503596
https://github.com/llvm/llvm-project/commit/d9c31ee9568277e4303715736b40925e41503596
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/test/CodeGen/SystemZ/int-usub-12.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
Log Message:
-----------
Fix overflow flag for i128 USUBO
We use the VSCBIQ/VSBIQ/VSBCBIQ family of instructions to implement
USUBO/USUBO_CARRY for the i128 data type. However, these instructions
use an inverted sense of the borrow indication flag (a value of 1
indicates *no* borrow, while a value of 0 indicated borrow). This
does not match the semantics of the boolean "overflow" flag of the
USUBO/USUBO_CARRY ISD nodes.
Fix this by generating code to explicitly invert the flag. These
cancel out of the result of USUBO feeds into an USUBO_CARRY.
To avoid unnecessary zero-extend operations, also improve the
DAGCombine handling of ZERO_EXTEND to optimize (zext (xor (trunc)))
sequences where appropriate.
Fixes: https://github.com/llvm/llvm-project/issues/83268
Commit: 8eee236021f72821d628ec31d8e8d1f92e7821d3
https://github.com/llvm/llvm-project/commit/8eee236021f72821d628ec31d8e8d1f92e7821d3
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Lower/CallInterface.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
Log Message:
-----------
[flang] Lower sequence associated argument passed by descriptor (#85696)
The current lowering did not handle sequence associated argument passed
by descriptor. This case is special because sequence association implies
that the actual and dummy argument need to to agree in rank and shape.
Usually, arguments that can be sequence associated are passed by raw
address, and the shape mistmatch is transparent. But there are three
cases of explicit and assumed-size arrays passed by descriptors:
- polymorphic arguments
- BIND(C) assumed-length arguments (F'2023 18.3.7 (5)).
- length parametrized derived types (TBD)
The callee side is expecting a descriptor containing the dummy rank and
shape. This was not the case. This patch fix that by evaluating the
dummy shape on the caller side using the interface (that has to be
available when arguments are passed by descriptors).
Commit: 9f6b6636c77ad4736c66efd0119b3be4541e9af4
https://github.com/llvm/llvm-project/commit/9f6b6636c77ad4736c66efd0119b3be4541e9af4
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/include/flang/Semantics/openmp-directive-sets.h
Log Message:
-----------
[Flang][OpenMP] Complete and organize directive sets (#85219)
This patch adds a couple of new directive sets for composite constructs,
completes some of the existing ones with missing values, refactors all*
sets to always build on the corresponding top* set and reorders sets and
directives alphabetically.
No functional change intended.
Commit: 577306133e14fc4f448b010920dc446607fcabaf
https://github.com/llvm/llvm-project/commit/577306133e14fc4f448b010920dc446607fcabaf
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
Log Message:
-----------
[mlir][bufferization] Fix OpFilter not to crash on unloaded dialects
Commit: d1c37959686db3303f6d5ffaeee12be12facc640
https://github.com/llvm/llvm-project/commit/d1c37959686db3303f6d5ffaeee12be12facc640
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/test/CodeGen/SystemZ/int-usub-12.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
Log Message:
-----------
Revert "Fix overflow flag for i128 USUBO"
This reverts commit d9c31ee9568277e4303715736b40925e41503596.
Commit: d0829fbdeda0a2faa8cf684e1396e579691bdfa2
https://github.com/llvm/llvm-project/commit/d0829fbdeda0a2faa8cf684e1396e579691bdfa2
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Lower/LoweringOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertType.cpp
M flang/test/Driver/driver-help-hidden.f90
R flang/test/Driver/flang-experimental-polymorphism-flag.f90
M flang/test/Driver/frontend-forwarding.f90
M flang/test/Fir/dispatch.f90
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/boxchar_emboxing.f90
M flang/test/HLFIR/call_with_poly_dummy.f90
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
M flang/test/Lower/HLFIR/allocatable-return.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
M flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg-polymorphic.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-poly-to-assumed-type.f90
M flang/test/Lower/HLFIR/convert-mbox-to-value.f90
M flang/test/Lower/HLFIR/designators-component-ref.f90
M flang/test/Lower/HLFIR/designators-parameter-array-slice.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-polymorphic-merge.f90
M flang/test/Lower/HLFIR/elemental-user-procedure-ref-polymorphic.f90
M flang/test/Lower/HLFIR/function-return-as-expr.f90
M flang/test/Lower/HLFIR/function-return-destroy.f90
M flang/test/Lower/HLFIR/ignore-rank-unlimited-polymorphic.f90
M flang/test/Lower/HLFIR/ignore-type-assumed-shape.f90
M flang/test/Lower/HLFIR/intentout-allocatable-components.f90
M flang/test/Lower/HLFIR/internal-procedures-polymorphic.f90
M flang/test/Lower/HLFIR/intrinsic-assumed-type.f90
M flang/test/Lower/HLFIR/parent-component-ref.f90
M flang/test/Lower/HLFIR/poly_expr_for_nonpoly_dummy.f90
M flang/test/Lower/HLFIR/polymorphic-expressions.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
M flang/test/Lower/HLFIR/select-type-selector.f90
M flang/test/Lower/HLFIR/transpose.f90
M flang/test/Lower/HLFIR/type-bound-call-mismatch.f90
M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
M flang/test/Lower/Intrinsics/extends_type_of.f90
M flang/test/Lower/Intrinsics/same_type_as.f90
M flang/test/Lower/Intrinsics/sizeof.f90
M flang/test/Lower/Intrinsics/spread.f90
M flang/test/Lower/Intrinsics/storage_size.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-return.f90
M flang/test/Lower/assumed-type.f90
M flang/test/Lower/default-initialization.f90
M flang/test/Lower/derived-type-finalization.f90
M flang/test/Lower/dispatch-table.f90
M flang/test/Lower/dispatch.f90
M flang/test/Lower/intentout-deallocate.f90
M flang/test/Lower/io-derived-type-2.f90
M flang/test/Lower/io-derived-type.f90
M flang/test/Lower/nullify-polymorphic.f90
M flang/test/Lower/pass-null-for-class-arg.f90
M flang/test/Lower/pointer-association-polymorphic.f90
M flang/test/Lower/pointer-disassociate.f90
M flang/test/Lower/polymorphic-temp.f90
M flang/test/Lower/polymorphic-types.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Lower/select-type-2.f90
M flang/test/Lower/select-type.f90
M flang/tools/bbc/bbc.cpp
Log Message:
-----------
[flang] Enable polymorphic lowering by default (#83285)
Polymorphic entity lowering status is good. The main remaining TODO is
to allow lowering of vector subscripted polymorphic entity, but this
does not deserve blocking all application using polymorphism.
Remove experimental option and enable lowering of polymorphic entity by
default.
Commit: d671ebe46ce6bb542ab81ea120751c985f3fe4a3
https://github.com/llvm/llvm-project/commit/d671ebe46ce6bb542ab81ea120751c985f3fe4a3
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
[Flang][Lower] NFC: Replace SmallVector with more suitable alternatives (#85227)
In this patch some uses of `llvm::SmallVector` in Flang's lowering to
MLIR are replaced by other types (i.e. `llvm::ArrayRef` and
`llvm::SmallVectorImpl`) which are intended for these uses. This
generally prevents relying on always passing small vectors with a
particular number of elements in the stack.
Commit: aeb4dd14440dd7a0f11cb9a97a733b08323f56c9
https://github.com/llvm/llvm-project/commit/aeb4dd14440dd7a0f11cb9a97a733b08323f56c9
Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Support/AMDHSAKernelDescriptor.h
M llvm/test/MC/AMDGPU/hsa-gfx12-v4.s
Log Message:
-----------
Fix macro expansion for AMDHSA_BITS_SET (#85661)
Corrects the `AMDHSA_BITS_SET` macro.
Commit: 953c13b5c90bed1e24fe95e90137c4e226ac2d09
https://github.com/llvm/llvm-project/commit/953c13b5c90bed1e24fe95e90137c4e226ac2d09
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
A llvm/test/CodeGen/AMDGPU/promote-alloca-scoring.ll
Log Message:
-----------
[AMDGPU][PromoteAlloca] Whole-function alloca promotion to vector (#84735)
Update PromoteAllocaToVector so it considers the whole function before promoting allocas.
Allocas are scored & sorted so the highest value ones are seen first. The budget is now per function instead of per alloca.
Passed internal performance testing.
Commit: ccf042e90e1b987d69f01378ed89b832f86d434a
https://github.com/llvm/llvm-project/commit/ccf042e90e1b987d69f01378ed89b832f86d434a
Author: Kai Sasaki <lewuathe at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/test/Integration/Dialect/Complex/CPU/correctness.mlir
Log Message:
-----------
[mlir][complex] Make CPU runner test platform agnostic (#85607)
Commit: c9bdeabdf4b46fbf1f6a9fcbf9cd61d460b18c08
https://github.com/llvm/llvm-project/commit/c9bdeabdf4b46fbf1f6a9fcbf9cd61d460b18c08
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M compiler-rt/test/tsan/signal_sync.cpp
Log Message:
-----------
[tsan][test] Switch setitimer(ITIMER_REAL, ...) to setitimer(ITIMER_VIRTUAL, ...)
Followup to #85188
Commit: 00ca80938b732ee43deb2a94bec1c7efef3025d4
https://github.com/llvm/llvm-project/commit/00ca80938b732ee43deb2a94bec1c7efef3025d4
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/IR/ConstantFold.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/icmp-global.ll
Log Message:
-----------
[ConstantFold] Fix comparison between special pointer constants
This code was assuming that the LHS would always be one of
GlobalVariable, BlockAddress or ConstantExpr. However, it can
also be a special constant like dso_local_equivalent or no_cfi.
Make sure this is handled gracefully.
Commit: 7edfbf2af2253297f48ff8adaba99373f67e8dca
https://github.com/llvm/llvm-project/commit/7edfbf2af2253297f48ff8adaba99373f67e8dca
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxxSliceArray.cpp
Log Message:
-----------
[lldb][DataFormatter] Fix format specifiers in LibCxxSliceArray summary provider (#85763)
This caused following warnings in an LLDB build:
```
[237/1072] Building CXX object tools/l...lusLanguage.dir/LibCxxSliceArray.cpp.o
/Volumes/Data/llvm-project/lldb/source/Plugins/Language/CPlusPlus/LibCxxSliceArray.cpp:38:53: warning: format specifies type 'unsigned long long' but the argument has type 'size_t' (aka 'unsigned long') [-Wformat]
38 | stream.Printf("stride=%" PRIu64 " size=%" PRIu64, stride, size);
| ~~~~~~~~~ ^~~~~~
/Volumes/Data/llvm-project/lldb/source/Plugins/Language/CPlusPlus/LibCxxSliceArray.cpp:38:61: warning: format specifies type 'unsigned long long' but the argument has type 'size_t' (aka 'unsigned long') [-Wformat]
38 | stream.Printf("stride=%" PRIu64 " size=%" PRIu64, stride, size);
| ~~~~~~~~~ ^~~~
2 warnings generated.
```
This patch simply changes the format specifiers to use the `%zu` for
`size_t`s.
Commit: 078aaf1f78e5df55618b71f1fe75993e4ccb6a72
https://github.com/llvm/llvm-project/commit/078aaf1f78e5df55618b71f1fe75993e4ccb6a72
Author: wanglei <wanglei at loongson.cn>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/test/MC/LoongArch/Macros/macros-li-bad.s
Log Message:
-----------
[LoongArch] Add diagnostics for PseudoLI_D instruction (#85742)
Simultaneously improved diagnostic testing for the `PseudoLI_W`
instruction.
Commit: 2f2f16f32bb2a6c250b19adbc229d9dc3b38640c
https://github.com/llvm/llvm-project/commit/2f2f16f32bb2a6c250b19adbc229d9dc3b38640c
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)
This patch moves some code in PFT to MLIR OpenMP lowering to the
`ClauseProcessor` class. This is so that some behavior that is related
to certain clauses stays within the `ClauseProcessor` and it's not the
caller the one responsible for always doing this when the clause is
present.
Commit: d712c5ed8fab4940ae0480e01fc72a944cbb79e6
https://github.com/llvm/llvm-project/commit/d712c5ed8fab4940ae0480e01fc72a944cbb79e6
Author: martinboehme <mboehme at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
Log Message:
-----------
[clang][dataflow] Make optional checker work for types derived from optional. (#84138)
`llvm::MaybeAlign` does this, for example.
It's not an option to simply ignore these derived classes because they
get cast
back to the optional classes (for example, simply when calling the
optional
member functions), and our transfer functions will then run on those
optional
classes and therefore require them to be properly initialized.
Commit: 4a6bc9fd14bd79f1edf5b651b43bd9bda9b90991
https://github.com/llvm/llvm-project/commit/4a6bc9fd14bd79f1edf5b651b43bd9bda9b90991
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/test/TableGen/MacroFusion.td
Log Message:
-----------
[MacroFusion] Add SingleFusion that accepts a single instruction pair
We add a common class `SingleFusion` that accepts a single instruction
pair to simplify fusion definitions.
Pull Request: https://github.com/llvm/llvm-project/pull/85750
Commit: 4f909da6bc880b816e000159ce2bf69862d0936e
https://github.com/llvm/llvm-project/commit/4f909da6bc880b816e000159ce2bf69862d0936e
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/test/Bitcode/dbg-record-roundtrip.ll
M llvm/tools/llvm-dis/llvm-dis.cpp
Log Message:
-----------
[RemoveDIs] Add flag to control loading into new debug mode from bitcode (#85649)
--load-bitcode-into-experimental-debuginfo-iterators
false: Convert to the old debug mode after reading.
true: Upgrade to the new debug info format (*).
unset: Same as false (for now).
(*) As of this patch it actually just means "don't convert to either
mode after loading". Auto-upgrading will be implemented in an upcoming
patch.
With this flag we can incrementally add support for RemoveDIs by
overriding the "unset" behaviour in individual tools. The flag can be
removed once all tools support the new debug info mode.
Commit: d4fb50d3e5fdf4aba4981371af53aa8fbbd6bf20
https://github.com/llvm/llvm-project/commit/d4fb50d3e5fdf4aba4981371af53aa8fbbd6bf20
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Split TransformDialect into a header-only lib in prep for PR85221
This lets users use TensorDialect without depending on all dialects
transitively. 513cdb82223a106f183b49a40d9acb1f7efbbe7e forces that
otherwise.
Commit: 08701e35ed6f29a2fca095a31f1ebbfe059d6d6e
https://github.com/llvm/llvm-project/commit/08701e35ed6f29a2fca095a31f1ebbfe059d6d6e
Author: Pravin Jagtap <prjagtap at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/global_atomic_optimizer_fp_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_optimizer_fp_no_rtn.ll
Log Message:
-----------
[AMDGPU][NFC] Test clean up. (#85775)
Added common check for DPP and Iterative strategies for uniform value
case since optimization applied is same.
Authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>
Commit: afec08ef9f1015ea3fe8d67b92acfbb7837c6e9f
https://github.com/llvm/llvm-project/commit/afec08ef9f1015ea3fe8d67b92acfbb7837c6e9f
Author: Max Winkler <max.enrico.winkler at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/intrin.h
A clang/lib/Headers/intrin0.h
M clang/lib/Headers/keylockerintrin.h
M clang/lib/Headers/x86gprintrin.h
M clang/lib/Headers/x86intrin.h
A clang/lib/Headers/yvals_core.h
Log Message:
-----------
[clang] Add `intrin0.h` header to mimic `intrin0.h` used by MSVC STL for clang-cl (#75711)
Fixes https://github.com/llvm/llvm-project/issues/53520.
#### Description ####
Provide `intrin0.h` to be the minimal set of intrinsics that the MSVC
STL requires.
The `intrin0.h` header matches the latest header provided by MSVC 1939
which does include some extra intrinsics that the MSVC STL does not use.
Inside `BuiltinHeaders.def` I kept the header description as `intrin.h`.
If you want me to change those to `intrin0.h` for the moved intrinsics
let me know.
This should now allow `immintrin.h` to be used with function targets for
runtime cpu detection of simd instruction sets without worrying about
the compile-time overhead from MSVC STL including `intrin.h` on clang.
I still need to figure out how to best update MSVC STL to detect for the
presence of `intrin0.h` from clang and to use this header over
`intrin.h`.
#### Testing ####
Built clang locally and ran the test suite. I still need to do a pass
over the existing unit tests for the ms intrinsics to make sure there
aren't any gaps. Wanted to get this PR up for discussion first.
Modified latest MSVC STL from github to point to `intrin0.h` for clang.
Wrote some test files that included MSVC STL headers that rely on
intrinsics such as `atomic`, `bit` and `vector`. Built the unit tests
against x86, arm, aarch64, and x64.
#### Benchmarks ####
The following include times are based on the x64 target with the
modified headers in this PR.
These timings were done by using `clang-cl.exe -ftime-trace` and taking
the wall time for parsing `intrin.h` and `intrin0.h`.
`intrin.h` takes ~897ms to parse.
`intrin0.h` takes ~1ms to parse.
If there is anything required or a different approach is preferred let
me know. I would very much like to move this over the finish line so we
can use function targets with clang-cl.
Commit: 4e612a62bd0f3c4f182ecd7652f92d288fc06894
https://github.com/llvm/llvm-project/commit/4e612a62bd0f3c4f182ecd7652f92d288fc06894
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Log Message:
-----------
[gn build] Port afec08ef9f10
Commit: 97fc16e14b16bd44dee1e1bf7211b4688b67027d
https://github.com/llvm/llvm-project/commit/97fc16e14b16bd44dee1e1bf7211b4688b67027d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitEXTRACT_VECTOR_ELT - share the same SDLoc instead of recreating it. NFC.
Commit: 9f433bf8cada5855669b43ff70263a1b61128ca4
https://github.com/llvm/llvm-project/commit/9f433bf8cada5855669b43ff70263a1b61128ca4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/CodeGen/X86/combine-pavg.ll
Log Message:
-----------
[X86] Add PAVG(0,x) test coverage for PR #85581
Commit: 9a3ece232ced907f87ed0d5846a57f6d9cbc9832
https://github.com/llvm/llvm-project/commit/9a3ece232ced907f87ed0d5846a57f6d9cbc9832
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/ExecutionEngine/Float16bits.cpp
Log Message:
-----------
[mlir][sparse] Fix the calling convention of __truncsfbf2 on windows x64
It also wants us to return the value in XMM0.
Commit: ef520ca6b18cf65fc7a13fcad1534f1d70332a88
https://github.com/llvm/llvm-project/commit/ef520ca6b18cf65fc7a13fcad1534f1d70332a88
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
Log Message:
-----------
Revert "[RISCV] Recursively split concat_vector into smaller LMULs (#83035)"
This reverts commit c59129a7c79448837d665de8f2743ad4b14666f6.
This causes regressions in some x264 workloads like pixel_var_8x8 due to it
interfering with the strided load combine. Reverting so I can try to rework
it as a lowering instead.
Commit: 92764c99e97ab2b347072718ba2a6799b3fe41c7
https://github.com/llvm/llvm-project/commit/92764c99e97ab2b347072718ba2a6799b3fe41c7
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/hadd-combine.ll
Log Message:
-----------
[DAG] Matched Fixedwidth Pattern for ISD::AVGCEILU (#85031)
Fixes: #84753
Commit: 930f21c6bc0fe05c1d08be6353f7c7c6c51f4dc0
https://github.com/llvm/llvm-project/commit/930f21c6bc0fe05c1d08be6353f7c7c6c51f4dc0
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Trim TransformDialectInterfaces to the bare minimum
Commit: e9da5f0083d12a7284c780e916c17b6a2785933e
https://github.com/llvm/llvm-project/commit/e9da5f0083d12a7284c780e916c17b6a2785933e
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
A openmp/libomptarget/test/offloading/fortran/target-nested-target-data.f90
Log Message:
-----------
[OpenMP] Fix target data region codegen being omitted for device pass (#85218)
This patch enables the BodyCodeGen callback to still trigger for the
TargetData nested region during the device pass. There maybe Target code
nested within the TargetData region for which this is required.
Also add tests for the same.
Commit: 335f3659820e2e771f5165d215300567be478b13
https://github.com/llvm/llvm-project/commit/335f3659820e2e771f5165d215300567be478b13
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/test/CodeGen/SystemZ/int-usub-12.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
Log Message:
-----------
Reapply: [SystemZ] Fix overflow flag for i128 USUBO
We use the VSCBIQ/VSBIQ/VSBCBIQ family of instructions to implement
USUBO/USUBO_CARRY for the i128 data type. However, these instructions
use an inverted sense of the borrow indication flag (a value of 1
indicates *no* borrow, while a value of 0 indicated borrow). This
does not match the semantics of the boolean "overflow" flag of the
USUBO/USUBO_CARRY ISD nodes.
Fix this by generating code to explicitly invert the flag. These
cancel out of the result of USUBO feeds into an USUBO_CARRY.
To avoid unnecessary zero-extend operations, also improve the
DAGCombine handling of ZERO_EXTEND to optimize (zext (xor (trunc)))
sequences where appropriate.
Fixes: https://github.com/llvm/llvm-project/issues/83268
Commit: 175ad6630a869831126dde80f0f9257f9c4c477f
https://github.com/llvm/llvm-project/commit/175ad6630a869831126dde80f0f9257f9c4c477f
Author: NagyDonat <donat.nagy at ericsson.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
M clang/test/Analysis/out-of-bounds-diagnostics.c
M clang/test/Analysis/taint-diagnostic-visitor.c
Log Message:
-----------
[analyzer] Mention possibility of underflow in array overflow errors (#84201)
The checker alpha.security.ArrayBoundV2 performs bounds checking in two
steps: first it checks for underflow, and if it isn't guaranteed then it
assumes that there is no underflow. After this, it checks for overflow,
and if that's guaranteed or the index is tainted then it reports it.
This meant that in situations where overflow and underflow are both
possible (but the index is either tainted or guaranteed to be invalid),
the checker was reporting just an overflow error.
This commit modifies the messages printed in these cases to mention the
possibility of an underflow.
---------
Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>
Commit: 4b10d1fdd31f46a9cdf3e7a196f9934d766a922f
https://github.com/llvm/llvm-project/commit/4b10d1fdd31f46a9cdf3e7a196f9934d766a922f
Author: Zack Johnson <zacklj89 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M compiler-rt/lib/interception/interception_win.cpp
Log Message:
-----------
[compiler-rt] Fixing UB on Windows for trampoline allocations (#85639)
Fixing the type of the constant to avoid undefined behavior with respect
to overflow.
Commit: 9f80444c2e669237a5c92013f1a42b91b5609012
https://github.com/llvm/llvm-project/commit/9f80444c2e669237a5c92013f1a42b91b5609012
Author: Sergio Afonso <safonsof at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
Revert "[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)"
Reverting due to failing gfortran test.
This reverts commit 2f2f16f32bb2a6c250b19adbc229d9dc3b38640c.
Commit: 94c6ce1de92f56879cad1bfa12ba23ef0ecfcd91
https://github.com/llvm/llvm-project/commit/94c6ce1de92f56879cad1bfa12ba23ef0ecfcd91
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] Use IRBuilderBase where possible (NFC)
Instead of hardcoding a specific IRBuilder type, use the base
class.
Commit: 835c1b56a82542d91c337e24140bd2b08a7bf715
https://github.com/llvm/llvm-project/commit/835c1b56a82542d91c337e24140bd2b08a7bf715
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/test/Bitcode/DIExpression-aggresult.ll
M llvm/test/Bitcode/dbg-record-roundtrip.ll
M llvm/test/Bitcode/upgrade-dbg-addr.ll
Log Message:
-----------
[RemoveDIs] Auto-upgrade debug intrinsics to DbgRecords (default false) (#85650)
If --load-bitcode-into-experimental-debuginfo-iterators is true then debug
intrinsics are auto-upgraded to DbgRecords (the new debug info format).
The upgrade is trivial because the two representations are semantically
identical. llvm.dbg.value with 4 operands and llvm.dbg.addr intrinsics are
upgraded in the same way as usual, but converted directly into DbgRecords
instead of debug intrinsics.
Commit: 5b59b3afe1cfe52c3c2cb9c9817ca21e589928a0
https://github.com/llvm/llvm-project/commit/5b59b3afe1cfe52c3c2cb9c9817ca21e589928a0
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
Log Message:
-----------
[NFC][RemoveDIs] Switch constant-hoisting to insert with iterators (#84738)
Seeing how constant-hoisting also happens to store an insertion-point in
a DenseMap, this means we have to install DenseMapInfo for hashing
BasicBlock::iterators and comparing them. I'm not really sure where to
put the DenseMapInfo declarations as BasicBlock.h seems most logical,
but that then means including DenseMap.h into pretty much all of LLVM.
I've sent this up to the compile time tracker to see whether there's a
major cost from this.
---------
Merged by: Stephen Tozer <stephen.tozer at sony.com>
Commit: c1328db9d8e41bb96e031eb3dfa884e56b07244b
https://github.com/llvm/llvm-project/commit/c1328db9d8e41bb96e031eb3dfa884e56b07244b
Author: Yitzhak Mandelbaum <ymand at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
Log Message:
-----------
[clang][dataflow] Refactor processing of terminator element (#84499)
This patch vastly simplifies the code handling terminators, without
changing any
behavior. Additionally, the simplification unblocks our ability to
address a
(simple) FIXME in the code to invoke `transferBranch`, even when builtin
options
are disabled.
Commit: d93363a0e803a9fb2889ff03237f4e93aacf0108
https://github.com/llvm/llvm-project/commit/d93363a0e803a9fb2889ff03237f4e93aacf0108
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M .github/workflows/llvm-tests.yml
Log Message:
-----------
workflows: Fix baseline version for llvm abi checks (#85166)
The baseline version calculations was assuming the minor release would
always be 0.
Commit: ef395a492aa931f428e99e1c0a93d4ad2fb0fcfa
https://github.com/llvm/llvm-project/commit/ef395a492aa931f428e99e1c0a93d4ad2fb0fcfa
Author: ostannard <oliver.stannard at arm.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
A clang/test/CodeGen/aarch64-soft-float-abi-errors.c
A clang/test/CodeGen/aarch64-soft-float-abi.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/target-avx-abi-diag.c
A clang/test/Driver/aarch64-soft-float-abi.c
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Sema/arm-vector-types-support.c
A llvm/test/CodeGen/AArch64/soft-float-abi.ll
Log Message:
-----------
[AArch64] Add soft-float ABI (#84146)
This is re-working of #74460, which adds a soft-float ABI for AArch64.
That was reverted because it causes errors when building the linux and
fuchsia kernels.
The problem is that GCC's implementation of the ABI compatibility checks
when using the hard-float ABI on a target without FP registers does it's
checks after optimisation. The previous version of this patch reported
errors for all uses of floating-point types, which is stricter than what
GCC does in practice.
This changes two things compared to the first version:
* Only check the types of function arguments and returns, not the types
of other values. This is more relaxed than GCC, while still guaranteeing
ABI compatibility.
* Move the check from Sema to CodeGen, so that inline functions are only
checked if they are actually used. There are some cases in the linux
kernel which depend on this behaviour of GCC.
Commit: 4aec1438cdb2326c3709d57a5ec22fe436d4d8f1
https://github.com/llvm/llvm-project/commit/4aec1438cdb2326c3709d57a5ec22fe436d4d8f1
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Make grab bag //libc:internal_includes textual, some of these don't even parse
Commit: 7ef433f62c199c414bffdcac1c8ee3159b29c5f5
https://github.com/llvm/llvm-project/commit/7ef433f62c199c414bffdcac1c8ee3159b29c5f5
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Constants.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/ReplaceConstant.cpp
M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
Log Message:
-----------
[NFC][RemoveDIs] Switch ConstantExpr::getAsInstruction to not insert (#84737)
Because the RemoveDIs work is putting a debug-info bit into
BasicBlock::iterator and iterators are needed for insertion, the
getAsInstruction method declaration would need to use a fully defined
instruction-iterator, which leads to a complicated
header-inclusion-order problem. Much simpler to instead just not insert,
and make it the callers problem to insert.
This is proportionate because there are only four call-sites to
getAsInstruction -- it would suck if we did this everywhere.
---------
Merged by: Stephen Tozer <stephen.tozer at sony.com>
Commit: b4b7d988bdb48827a822d9c87fdc460dceae5cab
https://github.com/llvm/llvm-project/commit/b4b7d988bdb48827a822d9c87fdc460dceae5cab
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/test/Driver/cuda-option.f90
Log Message:
-----------
[flang] Fix cuda-option test on Darwin (#85687)
On Darwin, -isysroot is needed and is automatically appended to
%flang and %flang_fc1, so use %flang_fc1 instead to have both -fc1
and -isysroot in the expected positions and avoid errors.
Commit: db4170a4f3a701a62f5c1ef2e6a30f490f107f7d
https://github.com/llvm/llvm-project/commit/db4170a4f3a701a62f5c1ef2e6a30f490f107f7d
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/test/Driver/cuda-option.f90
Log Message:
-----------
Revert "[flang] Fix cuda-option test on Darwin (#85687)"
Reverted due to buildbot failures:
https://lab.llvm.org/buildbot/#/builders/139/builds/61717/
This reverts commit b4b7d988bdb48827a822d9c87fdc460dceae5cab.
Commit: 885f93d62a0a7d2955a755cdc451d394577b36e2
https://github.com/llvm/llvm-project/commit/885f93d62a0a7d2955a755cdc451d394577b36e2
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/test/Driver/cuda-option.f90
Log Message:
-----------
Reapply "[flang] Fix cuda-option test on Darwin (#85687)"
This commit was mistakenly reverted in place of the actual failing
commit prior; reapplying.
This reverts commit db4170a4f3a701a62f5c1ef2e6a30f490f107f7d.
Commit: ab851f7fe946e7eed700ef9d82082eb721860189
https://github.com/llvm/llvm-project/commit/ab851f7fe946e7eed700ef9d82082eb721860189
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Constants.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/ReplaceConstant.cpp
M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
Log Message:
-----------
Revert "[NFC][RemoveDIs] Switch ConstantExpr::getAsInstruction to not insert (#84737)"
Reverted due to buildbot failures:
https://lab.llvm.org/buildbot/#/builders/139/builds/61717/
This reverts commit 7ef433f62c199c414bffdcac1c8ee3159b29c5f5.
Commit: b59c2a0eb499d8daf8086cd9875083d32496cc58
https://github.com/llvm/llvm-project/commit/b59c2a0eb499d8daf8086cd9875083d32496cc58
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/tools/llvm-objdump/MachO/AArch64/macho-relative-method-lists.test
M llvm/tools/llvm-objdump/MachODump.cpp
Log Message:
-----------
[llvm-objdump][macho] Fix relative method list dumping for little endian hosts (#85778)
`macho-relative-method-lists.test` is failing on little endian
platforms, when matching 'name'.
```
CHK32-NEXT: name 0x144 (0x{{[0-9a-f]*}}) instance_method_00
next:10'0 X error: no match found
18: name 0x144 (0x7ac)
```
This seems like the obvious fix.
Co-authored-by: Alex B <alexborcan at meta.com>
Commit: 0e7681867242ccf9138e7e6a9c2d9925b6ee1e49
https://github.com/llvm/llvm-project/commit/0e7681867242ccf9138e7e6a9c2d9925b6ee1e49
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/test/Analysis/ValueTracking/known-non-zero.ll
Log Message:
-----------
[ValueTracking] Test isKnownNonZero() range metadata with vector (NFC)
Commit: 6872a646523c1e85a98dfa20b2f4dd7774e10ba4
https://github.com/llvm/llvm-project/commit/6872a646523c1e85a98dfa20b2f4dd7774e10ba4
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Analysis/ValueTracking/known-non-zero.ll
Log Message:
-----------
[ValueTracking] Handle vector range metadata in isKnownNonZero()
Nowadays !range can be placed on instructions with vector of int
return value. Support this case in isKnownNonZero().
Commit: 6503b015d4a8971dcb69a63de7d8d203e4be79b6
https://github.com/llvm/llvm-project/commit/6503b015d4a8971dcb69a63de7d8d203e4be79b6
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Expr.h
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/test/Analysis/eval-predefined-exprs.cpp
M clang/test/SemaCXX/source_location.cpp
M clang/unittests/AST/DeclPrinterTest.cpp
M clang/unittests/AST/TypePrinterTest.cpp
Log Message:
-----------
[clang-cl] Fix value of __FUNCTION__ in MSVC mode. (#84014)
Predefined macro FUNCTION in clang is not returning the same string than
MS for templated functions.
See https://godbolt.org/z/q3EKn5zq4
For the same test case MSVC is returning:
function: TestClass::TestClass
function: TestStruct::TestStruct
function: TestEnum::TestEnum
The initial work for this was in the reverted patch
(https://github.com/llvm/llvm-project/pull/66120). This patch solves the
issues raised in the reverted patch.
Commit: d1e2305a6d70bbf565104644a4594cbf4f78e6ac
https://github.com/llvm/llvm-project/commit/d1e2305a6d70bbf565104644a4594cbf4f78e6ac
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
[ValueTracking] Fix release build
Move the declaration of the Ty variable outside the NDEBUG guard
and make use of it in the remainder of the function.
Commit: a1fb51453d9b47ea011f8b948f2f099da2edf2c9
https://github.com/llvm/llvm-project/commit/a1fb51453d9b47ea011f8b948f2f099da2edf2c9
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M libc/src/math/generic/atanf.cpp
Log Message:
-----------
[libc] Prevent constant propagation for atanf(+-Inf) in gcc. (#85733)
gcc bot failures with `atanf(+-Inf)`:
https://lab.llvm.org/buildbot/#/builders/250/builds/20331/steps/8/logs/stdio
Commit: 2cc75aed0925f3c7e8e50b2f4bdc94daac4cb08d
https://github.com/llvm/llvm-project/commit/2cc75aed0925f3c7e8e50b2f4bdc94daac4cb08d
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
Log Message:
-----------
[ValueTracking] Move MD_range handling to isKnownNonZeroFromOperator()
All the isKnownNonZero() handling for instructions should be inside
this function. This makes the structure more similar to
computeKnownBitsFromOperator() as well.
This may not be entirely NFC due to different depth handling.
Commit: 31eaf86a1e8f1870e6ee4c42088a5213bde294b8
https://github.com/llvm/llvm-project/commit/31eaf86a1e8f1870e6ee4c42088a5213bde294b8
Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-with-minbith-user.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-icmp-to-trunc.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll
M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/same-scalar-in-same-phi-extract.ll
M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll
Log Message:
-----------
[SLP]Improve minbitwidth analysis.
This improves overall analysis for minbitwidth in SLP. It allows to
analyze the trees with store/insertelement root nodes. Also, instead of
using single minbitwidth, detected from the very first analysis stage,
it tries to detect the best one for each trunc/ext subtree in the graph
and use it for the subtree.
Results in better code and less vector register pressure.
Metric: size..text
Program size..text
results results0 diff
test-suite :: SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant.test 92549.00 92609.00 0.1%
test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test 663381.00 663493.00 0.0%
test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test 663381.00 663493.00 0.0%
test-suite :: MultiSource/Benchmarks/Bullet/bullet.test 307182.00 307214.00 0.0%
test-suite :: External/SPEC/CFP2017speed/638.imagick_s/638.imagick_s.test 1394420.00 1394484.00 0.0%
test-suite :: External/SPEC/CFP2017rate/538.imagick_r/538.imagick_r.test 1394420.00 1394484.00 0.0%
test-suite :: External/SPEC/CFP2017rate/510.parest_r/510.parest_r.test 2040257.00 2040273.00 0.0%
test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12396098.00 12395858.00 -0.0%
test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test 909944.00 909768.00 -0.0%
SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant - 4 scalar
instructions remain scalar (good).
Spec2017/x264 - the whole function idct4x4dc is vectorized using <16
x i16> instead of <16 x i32>, also zext/trunc are removed. In other
places last vector zext/sext removed and replaced by
extractelement + scalar zext/sext pair.
MultiSource/Benchmarks/Bullet/bullet - reduce or <4 x i32> replaced by
reduce or <4 x i8>
Spec2017/imagick - Removed extra zext from 2 packs of the operations.
Spec2017/parest - Removed extra zext, replaced by extractelement+scalar
zext
Spec2017/blender - the whole bunch of vector zext/sext replaced by
extractelement+scalar zext/sext, some extra code vectorized in smaller
types.
Spec2006/gobmk - fixed cost estimation, some small code remains scalar.
Original Pull Request: https://github.com/llvm/llvm-project/pull/84334
The patch has the same functionality (no test changes, no changes in
benchmarks) as the original patch, just has some compile time
improvements + fixes for xxhash unittest, discovered earlier in the
previous version of the patch.
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/84536
Commit: 43a2ec483fe08064b53a6293682e9bab97df61a0
https://github.com/llvm/llvm-project/commit/43a2ec483fe08064b53a6293682e9bab97df61a0
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/docs/CommandGuide/dsymutil.rst
M llvm/include/llvm/CodeGen/NonRelocatableStringpool.h
M llvm/include/llvm/DWARFLinker/Classic/DWARFStreamer.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/include/llvm/DWARFLinker/Parallel/DWARFLinker.h
M llvm/lib/CodeGen/NonRelocatableStringpool.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerGlobalData.h
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/lib/DWARFLinker/Parallel/OutputSections.h
M llvm/lib/DWARFLinker/Parallel/StringEntryToDwarfStringPoolEntryMap.h
R llvm/test/tools/dsymutil/ARM/obfuscated.test
R llvm/test/tools/dsymutil/Inputs/obfuscated.2.arm64
R llvm/test/tools/dsymutil/Inputs/obfuscated.2.map
R llvm/test/tools/dsymutil/Inputs/obfuscated.arm64
R llvm/test/tools/dsymutil/Inputs/obfuscated.map
M llvm/test/tools/dsymutil/cmdline.test
M llvm/tools/dsymutil/CMakeLists.txt
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/dsymutil/LinkUtils.h
M llvm/tools/dsymutil/MachOUtils.cpp
M llvm/tools/dsymutil/MachOUtils.h
M llvm/tools/dsymutil/Options.td
R llvm/tools/dsymutil/SymbolMap.cpp
R llvm/tools/dsymutil/SymbolMap.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
Log Message:
-----------
[dsymutil] Remove support for obfuscated bitcode (#85713)
Remove support for obfuscated bitcode in dsymutil and the DWARF linker.
We no longer support bitcode submissions and the obfuscation support has
been removed from the rest of the compiler.
rdar://123863918
Commit: 66125ad8e9978e6fdec0e1c3ff83e717eff07aca
https://github.com/llvm/llvm-project/commit/66125ad8e9978e6fdec0e1c3ff83e717eff07aca
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
A llvm/test/CodeGen/X86/avgceils.ll
A llvm/test/CodeGen/X86/avgceilu.ll
A llvm/test/CodeGen/X86/avgfloors.ll
A llvm/test/CodeGen/X86/avgflooru.ll
Log Message:
-----------
[X86] Add test coverage for vector avgceils/avgceilu/avgfloors/avgflooru test patterns
SSE only has AVGCEILU vXi8/vXi16 support - but for other types we should be trying to use the fixed width expansion instead of extensions
Commit: c20596ca2bbeb1926ece1f03f25fdd138933c916
https://github.com/llvm/llvm-project/commit/c20596ca2bbeb1926ece1f03f25fdd138933c916
Author: Florian Mayer <fmayer at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
Log Message:
-----------
[NFC] [hwasan] also be more consistent when getting pointer types (#84399)
Commit: 25bb7436ca3edbb0f49cef96a27f1e507b973e6c
https://github.com/llvm/llvm-project/commit/25bb7436ca3edbb0f49cef96a27f1e507b973e6c
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/MC/MCInstrAnalysis.h
Log Message:
-----------
Trim trailing whitespaces in MCInstrAnalysis.h. NFC. (#85805)
Commit: 9a96fb4445f4e9d9a7899189758ee6afbeb6510b
https://github.com/llvm/llvm-project/commit/9a96fb4445f4e9d9a7899189758ee6afbeb6510b
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
M llvm/include/llvm/IR/Constants.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/ReplaceConstant.cpp
M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
Log Message:
-----------
Reapply "[NFC][RemoveDIs] Switch ConstantExpr::getAsInstruction to not insert (#84737)"
Fixes a build error caused by an unupdated getAsInstruction callsite in clang.
This reverts commit ab851f7fe946e7eed700ef9d82082eb721860189.
Commit: 8819f8799868a95bba24c0a574a9b1455e63b63d
https://github.com/llvm/llvm-project/commit/8819f8799868a95bba24c0a574a9b1455e63b63d
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
M mlir/test/Dialect/LLVMIR/nvvm.mlir
Log Message:
-----------
[MLIR][NVVM] Add barrier.arrive (#85412)
PR adds `nvvm.barrier.arrive` Op. It is useful op for producer consumer
modeling.
Commit: a40becdcbeca3da91b97ed1d81f9506f74fc8000
https://github.com/llvm/llvm-project/commit/a40becdcbeca3da91b97ed1d81f9506f74fc8000
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
Log Message:
-----------
[bazel][libc] Add more mess
Commit: 0081ec11d86f34982ac5b1df4f53943a92d5223f
https://github.com/llvm/llvm-project/commit/0081ec11d86f34982ac5b1df4f53943a92d5223f
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
Log Message:
-----------
[VectorCombine] Add a mask for SK_Broadcast shuffle costing (#85808)
This is part of a series of small patches to compute shuffle masks for
the couple of cases where we call getShuffleCost without one. My goal is
to add an invariant that all calls to getShuffleCost for fixed length
vectors have a mask.
Note that this code appears to be reachable with scalable vectors, and
thus we have to only pass a non-empty mask when the number of elements
is precisely known.
Commit: 081a66ffacfe85a37ff775addafcf3371e967328
https://github.com/llvm/llvm-project/commit/081a66ffacfe85a37ff775addafcf3371e967328
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGenHLSL/builtins/dot.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/idot.ll
Log Message:
-----------
[DXIL] implement dot intrinsic lowering for integers (#85662)
this implements part 1 of 2 for #83626
- `CGBuiltin.cpp` - modified to have seperate cases for signed and
unsigned integers.
- `SemaChecking.cpp` - modified to prevent the generation of a double
dot product intrinsic if the builtin were to be called directly.
- `IntrinsicsDirectX.td` creation of the signed and unsigned dot
intrinsics needed for instruction expansion.
- `DXILIntrinsicExpansion.cpp` - handle instruction expansion cases for
integer dot product.
Commit: 252e2551eab9b59f7dcbf8bb79a1432884d546e4
https://github.com/llvm/llvm-project/commit/252e2551eab9b59f7dcbf8bb79a1432884d546e4
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/test/Dialect/LLVMIR/sroa.mlir
Log Message:
-----------
[MLIR][LLVM][SROA] Avoid splitting dynamically indexed allocas (#85758)
This commit ensures that SROA does no longer attempt to split allocas
that are indexed into dynamically. Dynamic indices into arrays are
allowed to be negative or out-of-bounds, when the alloca containing the
array has memory backing these produced indices.
Commit: c63a291c64852a086cb447c7078e5312aac1a05c
https://github.com/llvm/llvm-project/commit/c63a291c64852a086cb447c7078e5312aac1a05c
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M libc/src/__support/CPP/array.h
A libc/src/__support/CPP/iterator.h
M libc/test/src/__support/CPP/CMakeLists.txt
A libc/test/src/__support/CPP/array_test.cpp
Log Message:
-----------
[libc][cpp] reverse_iterator support (#85702)
Towards the goal of implementing __cxa_finalize (#85651) I'd like to be able to
reverse iterate over cpp::arrays such as the one used in FixedVector.
Implement the enough iterator support to be able to iterate a cpp::array in
reverse, and add tests.
Of note, reverse iterator's begin() refers to forward iterator's end() (and
vice versa). When dereferenced (operator*), the reverse iterator returns a copy
that's been pre-decremented (the underlying forward iterator is advanced).
Commit: b9d83eff254668385fd3d9d5ddb5af762f378d7f
https://github.com/llvm/llvm-project/commit/b9d83eff254668385fd3d9d5ddb5af762f378d7f
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Analysis/PHITransAddr.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/DwarfEHPrepare.cpp
M llvm/lib/CodeGen/GCRootLowering.cpp
M llvm/lib/CodeGen/IndirectBrExpandPass.cpp
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/lib/CodeGen/IntrinsicLowering.cpp
M llvm/lib/CodeGen/JMCInstrumenter.cpp
M llvm/lib/CodeGen/SjLjEHPrepare.cpp
M llvm/lib/CodeGen/WinEHPrepare.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
M llvm/lib/Target/BPF/BPFPreserveDIType.cpp
M llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp
M llvm/lib/Target/Mips/Mips16HardFloat.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp
M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
M llvm/lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp
M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
M llvm/lib/Target/X86/X86LowerAMXType.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
M polly/lib/CodeGen/LoopGenerators.cpp
M polly/lib/Support/ScopHelper.cpp
Log Message:
-----------
[NFC][RemoveDIs] Use iterators for insertion at various call-sites (#84736)
These are the last remaining "trivial" changes to passes that use
Instruction pointers for insertion. All of this should be NFC, it's just
changing the spelling of how we identify a position.
In one or two locations, I'm also switching uses of getNextNode etc to
using std::next with iterators. This too should be NFC.
---------
Merged by: Stephen Tozer <stephen.tozer at sony.com>
Commit: e59f120e3a14ccdc55fcb7be996efaa768daabe0
https://github.com/llvm/llvm-project/commit/e59f120e3a14ccdc55fcb7be996efaa768daabe0
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
Log Message:
-----------
[RISCV] Add test for strided load combine regression. NFC
This adds a reduced test case for the regression seen in x264 with #83035.
If the intermediate concatenating shuffles are large enough then the
splitting combine will prevent the strided load combine which is
preferable.
Commit: 24f22b3f93f950348cbff35feb7ad9a5d16d916d
https://github.com/llvm/llvm-project/commit/24f22b3f93f950348cbff35feb7ad9a5d16d916d
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/test/ELF/aarch64-tlsdesc-zrel.s
M lld/test/ELF/pack-dyn-relocs.s
M llvm/test/tools/llvm-readobj/ELF/decompress-zlib-unsupported.test
M llvm/test/tools/llvm-readobj/ELF/decompress-zlib.test
M llvm/test/tools/llvm-readobj/ELF/decompress-zstd-unsupported.test
M llvm/test/tools/llvm-readobj/ELF/hex-dump-multi.s
M llvm/test/tools/llvm-readobj/ELF/hex-dump.test
M llvm/test/tools/llvm-readobj/ELF/string-dump-multi.s
M llvm/test/tools/llvm-readobj/ELF/string-dump.test
M llvm/tools/llvm-readobj/ObjDumper.cpp
Log Message:
-----------
[llvm-readelf] Print a blank line for the first hex/string dump
GNU readelf prints a blank line before the first hex/string dump, which
serves as a separator when there are other dump operations. Port the
behavior.
Pull Request: https://github.com/llvm/llvm-project/pull/85744
Commit: 09eb9f1136c8572c4c3f2ec46be50899c32fc881
https://github.com/llvm/llvm-project/commit/09eb9f1136c8572c4c3f2ec46be50899c32fc881
Author: Michele Scandale <michele.scandale at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
M llvm/test/Transforms/InstCombine/select-binop-foldable-floating-point.ll
M llvm/test/Transforms/InstCombine/select_meta.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
Log Message:
-----------
[InstCombine] Fix for folding `select` into floating point binary operators. (#83200)
Folding a `select` into a floating point binary operators can only be
done if the result is preserved for both case. In particular, if the
other operand of the `select` can be a NaN, then the transformation
won't preserve the result value.
Commit: 9ed1aa36be654f6687c4f9000c973b722217881c
https://github.com/llvm/llvm-project/commit/9ed1aa36be654f6687c4f9000c973b722217881c
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/AST/DeclPrinter.cpp
Log Message:
-----------
Fixing up an edit missed in #84014; NFC
Commit: ab76052fa9331f418d7911cafefabd4dd0c1941e
https://github.com/llvm/llvm-project/commit/ab76052fa9331f418d7911cafefabd4dd0c1941e
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.gfx12.ll
Log Message:
-----------
AMDGPU: Treat SWMMAC the same as MFMA and other WMMA for sched_barrier (#85721)
Commit: fe84369cc6759194e006f3f624a064bce13c84d4
https://github.com/llvm/llvm-project/commit/fe84369cc6759194e006f3f624a064bce13c84d4
Author: Kojo Acquah <KoolJBlack at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
M mlir/test/Dialect/ArmNeon/lower-to-arm-neon.mlir
Log Message:
-----------
[mlir][ArmNeon] Implements unrolling patterns for LowerContractionToSMMLAPattern (#84848)
This patch updates `LowerContractionToSMMLAPattern` to unroll larger vector contracts into multiple smmla instructions.
Now accepts up to [8,8,8] tiles (previously only [2,2,8]). The N/M dimensions must be powers of 2. `vector.extract_strided_slice`/`vector.insert_strided_slice` divides the contract into tiles to be processed in a row.
Commit: a7eaae4ec686ddfb8f91868fc8d053b2163f7ec7
https://github.com/llvm/llvm-project/commit/a7eaae4ec686ddfb8f91868fc8d053b2163f7ec7
Author: harishch4 <harishcse44 at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/separate-mp05.f90
Log Message:
-----------
[Flang] Fix to the module procedure interface block ignoring implicit… (#85735)
… of host scoping unit.
Fix as proposed by @thtsikas [here
](https://github.com/llvm/llvm-project/commit/11d07d9ef618497b825badee8b4f06a48575606b#commitcomment-139798026).
Commit: c7de4a39d5673b91189395f85ca6f71b1eeb115c
https://github.com/llvm/llvm-project/commit/c7de4a39d5673b91189395f85ca6f71b1eeb115c
Author: Brad Smith <brad at comstyle.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M openmp/runtime/test/lit.cfg
Log Message:
-----------
[OpenMP] Enable the affinity tests on FreeBSD, NetBSD and DragonFly (#85500)
FreeBSD, NetBSD and DragonFly also have affinity support. So enable the tests there as well.
Commit: b9a41b9e9b1441a7b0ca0fb95b9184f73bbfd4b5
https://github.com/llvm/llvm-project/commit/b9a41b9e9b1441a7b0ca0fb95b9184f73bbfd4b5
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
A openmp/libomptarget/test/offloading/workshare_chunk.c
Log Message:
-----------
[NFC][OpenMP] Add test checking clang offload chunking policy (#83261)
Verify how clang handles `dist_schedule(static, block_chunk)` and
`schedule(static, thread_chunk)` clauses for OpenMP offload loop
workshare pragmas.
Commit: 5f38436d34360d17b58f643650f3605bb9609a34
https://github.com/llvm/llvm-project/commit/5f38436d34360d17b58f643650f3605bb9609a34
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Driver/SanitizerArgs.cpp
A clang/test/Driver/fsanitize-signed-integer-overflow.c
Log Message:
-----------
[Driver] -fsanitize=undefined: don't expand to signed-integer-overflow if -fwrapv (#85501)
Linux kernel uses -fwrapv to change signed integer overflows from
undefined behaviors to defined behaviors. However, the security folks
still want -fsanitize=signed-integer-overflow diagnostics. Their
intention can be expressed with -fwrapv
-fsanitize=signed-integer-overflow (#80089). This mode by default
reports recoverable errors while still making signed integer overflows
defined (most UBSan checks are recoverable by default: you get errors in
stderr, but the program is not halted).
-fsanitize=undefined -fwrapv users likely want to suppress
signed-integer-overflow, unless signed-integer-overflow is explicitly
enabled. Implement this suppression.
Commit: 4bade55cc65db8b7f977dba4f13bf335e93317a8
https://github.com/llvm/llvm-project/commit/4bade55cc65db8b7f977dba4f13bf335e93317a8
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/test/ELF/aarch64-tlsdesc-zrel.s
Log Message:
-----------
[test] Fix aarch64-tlsdesc-zrel.s
Commit: 3176c157190c80b4279dec86c4b9b84472d8ccac
https://github.com/llvm/llvm-project/commit/3176c157190c80b4279dec86c4b9b84472d8ccac
Author: Andres Villegas <andresvi at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/docs/CommandGuide/dsymutil.rst
M llvm/include/llvm/CodeGen/NonRelocatableStringpool.h
M llvm/include/llvm/DWARFLinker/Classic/DWARFStreamer.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/include/llvm/DWARFLinker/Parallel/DWARFLinker.h
M llvm/lib/CodeGen/NonRelocatableStringpool.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerGlobalData.h
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/lib/DWARFLinker/Parallel/OutputSections.h
M llvm/lib/DWARFLinker/Parallel/StringEntryToDwarfStringPoolEntryMap.h
A llvm/test/tools/dsymutil/ARM/obfuscated.test
A llvm/test/tools/dsymutil/Inputs/obfuscated.2.arm64
A llvm/test/tools/dsymutil/Inputs/obfuscated.2.map
A llvm/test/tools/dsymutil/Inputs/obfuscated.arm64
A llvm/test/tools/dsymutil/Inputs/obfuscated.map
M llvm/test/tools/dsymutil/cmdline.test
M llvm/tools/dsymutil/CMakeLists.txt
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/dsymutil/LinkUtils.h
M llvm/tools/dsymutil/MachOUtils.cpp
M llvm/tools/dsymutil/MachOUtils.h
M llvm/tools/dsymutil/Options.td
A llvm/tools/dsymutil/SymbolMap.cpp
A llvm/tools/dsymutil/SymbolMap.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
Log Message:
-----------
Revert "[dsymutil] Remove support for obfuscated bitcode" (#85826)
Reverts llvm/llvm-project#85713 Since it is breaking Linux x64 builds.
Commit: 71b69dd21becdfbf8922674ce6ca4129926660ab
https://github.com/llvm/llvm-project/commit/71b69dd21becdfbf8922674ce6ca4129926660ab
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.cpp
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp
Log Message:
-----------
[WebAssembly] Pass ArrayRef by value (NFC) (#85732)
`ArrayRef` is supposed to be passed by value:
https://github.com/llvm/llvm-project/blob/bda05140fb758156ae35f3919e6283d94bfa3905/llvm/include/llvm/ADT/ArrayRef.h#L38-L39
Commit: e61922d327c39805a7303586f4b0accf3398c774
https://github.com/llvm/llvm-project/commit/e61922d327c39805a7303586f4b0accf3398c774
Author: Takuto Ikuta <tikuta at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Support/TimeProfiler.h
M llvm/lib/Support/TimeProfiler.cpp
M llvm/unittests/Support/TimeProfilerTest.cpp
Log Message:
-----------
Expose TimeTraceProfiler for Async Events (#83778)
To avoid issue like https://github.com/llvm/llvm-project/issues/56554
and https://github.com/llvm/llvm-project/issues/83236 due to no
guarantees for nested relationships between file level span and syntax
tree level span, I'd like to have a `timeTraceAsyncProfilerBegin`
specific to trace handling only `Source` spans around
https://github.com/llvm/llvm-project/blob/8715f256911786520bb727ce067098d7082ac45c/clang/lib/Sema/Sema.cpp#L153-L170.
This is a preparation PR to do that in [following
PR](https://github.com/llvm/llvm-project/pull/83961).
Commit: 1d296ec226903a09de0215e05d852b2b80712855
https://github.com/llvm/llvm-project/commit/1d296ec226903a09de0215e05d852b2b80712855
Author: Michael Jones <michaelrj at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][bazel] fix missing iterator inclusion (#85840)
Patch #85702 added a new iterator header for array to use, but didn't
add it as a dependency in the bazel build. This patch fixes the issue.
Commit: a0394f16912c49a6760fbc22ab9d29c6cac6fb0a
https://github.com/llvm/llvm-project/commit/a0394f16912c49a6760fbc22ab9d29c6cac6fb0a
Author: Paul T Robinson <paul.robinson at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/xmmintrin.h
Log Message:
-----------
[Headers][X86] Add rounding and exception notes to conversions (#83447)
Consistently describe rounding/truncating on convert intrinsics. Add
notes where an out-of-range result can raise an exception.
Commit: 3ff67d8c8069b9f42efcbe90ad7edeb6d8117a31
https://github.com/llvm/llvm-project/commit/3ff67d8c8069b9f42efcbe90ad7edeb6d8117a31
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/include/clang/AST/Type.h
M clang/lib/Sema/SemaChecking.cpp
Log Message:
-----------
[HLSL] Fix for build break introduced by #85662 (#85839)
This change fixes a test case failure caused by pr #85662
Commit: 0a40f5d1a05a4108b5d9febf3ea8df4c1244a340
https://github.com/llvm/llvm-project/commit/0a40f5d1a05a4108b5d9febf3ea8df4c1244a340
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/owning-memory.cpp
Log Message:
-----------
[clang-tidy] Add support for lambdas in cppcoreguidelines-owning-memory (#77246)
Implement proper support for lambdas and sub-functions/classes.
Moved from https://reviews.llvm.org/D157285
Fixes: #59389
Commit: 28c1279db3541bc7b246fd9da0da3da4e09f0eed
https://github.com/llvm/llvm-project/commit/28c1279db3541bc7b246fd9da0da3da4e09f0eed
Author: Piotr Zegar <piotr.zegar at nokia.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-stringview-data-usage.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
A clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage.cpp
Log Message:
-----------
[clang-tidy] Add bugprone-suspicious-stringview-data-usage check (#83716)
This check identifies suspicious usages of std::string_view::data() that
could lead to reading out-of-bounds data due to inadequate or incorrect
string null termination.
Closes #80854
Commit: a6e231bb2a7924f4269e6735d29a54b2318cd16c
https://github.com/llvm/llvm-project/commit/a6e231bb2a7924f4269e6735d29a54b2318cd16c
Author: alexfh <alexfh at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/Float2Int.h
M llvm/lib/Transforms/Scalar/Float2Int.cpp
M llvm/test/Transforms/Float2Int/basic.ll
Log Message:
-----------
Revert "[Float2Int] Resolve FIXME: Pick the smallest legal type that fits" (#85843)
Reverts llvm/llvm-project#79158, which causes a miscompile. See
https://github.com/llvm/llvm-project/pull/79158#issuecomment-2007842032
Commit: c2c1e6ee4ce0df3d000ba880fa6cf58441da6462
https://github.com/llvm/llvm-project/commit/c2c1e6ee4ce0df3d000ba880fa6cf58441da6462
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
Log Message:
-----------
[VPlan] Replace disjoint or with add instead of dropping disjoint. (#83821)
Dropping disjoint from an OR may yield incorrect results, as some
analysis may have converted it to an Add implicitly (e.g. SCEV used for
dependence analysis). Instead, replace it with an equivalent Add.
This is possible as all users of the disjoint OR only access lanes where
the operands are disjoint or poison otherwise.
Note that replacing all disjoint ORs with ADDs instead of dropping the
flags is not strictly necessary. It is only needed for disjoint ORs that
SCEV treated as ADDs, but those are not tracked.
There are other places that may drop poison-generating flags; those
likely need similar treatment.
Fixes https://github.com/llvm/llvm-project/issues/81872
PR: https://github.com/llvm/llvm-project/pull/83821
Commit: e4f9175d23950ecaef32db075ed47dafe3be555c
https://github.com/llvm/llvm-project/commit/e4f9175d23950ecaef32db075ed47dafe3be555c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
[BOLT] Update DIEStreamer (#85818)
commit 43a2ec483fe08064b53a6293682e9bab97df61a0
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: Tue Mar 19 08:30:47 2024 -0700
removed parameter Translator from the constructor of DwarfStreamer.
This patch fixes the build by updating the constructor of DIEStreamer
accordingly.
Commit: da118c93b40f74f6770cf8550903721555d3c97b
https://github.com/llvm/llvm-project/commit/da118c93b40f74f6770cf8550903721555d3c97b
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
Log Message:
-----------
[SLP]Do extra analysis int minbitwidth if some checks return false.
The instruction itself can be considered good for minbitwidth casting,
even if one of the operand checks returns false.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/84363
Commit: 0b59af4d86cf8d3ee3eb1a8e5673b1a21bb387b5
https://github.com/llvm/llvm-project/commit/0b59af4d86cf8d3ee3eb1a8e5673b1a21bb387b5
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-03-20 (Wed, 20 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/copysign-fneg-fabs.ll
M llvm/test/Transforms/InstCombine/fcmp.ll
Log Message:
-----------
[InstCombine] Clear sign-bit of the constant magnitude in copysign (#85787)
Alive2: https://alive2.llvm.org/ce/z/vFykcZ
Address the comment
https://github.com/llvm/llvm-project/pull/85772#discussion_r1530179048.
Unfortunately, non-splat vector constants are not supported because we
haven't implemented constant folding of fabs with vector operands.
Commit: 32a6e9d66945c28a9cae476b6d2eb803ca2ab098
https://github.com/llvm/llvm-project/commit/32a6e9d66945c28a9cae476b6d2eb803ca2ab098
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/docs/CommandGuide/dsymutil.rst
M llvm/include/llvm/CodeGen/NonRelocatableStringpool.h
M llvm/include/llvm/DWARFLinker/Classic/DWARFStreamer.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/include/llvm/DWARFLinker/Parallel/DWARFLinker.h
M llvm/lib/CodeGen/NonRelocatableStringpool.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerGlobalData.h
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/lib/DWARFLinker/Parallel/OutputSections.h
M llvm/lib/DWARFLinker/Parallel/StringEntryToDwarfStringPoolEntryMap.h
R llvm/test/tools/dsymutil/ARM/obfuscated.test
R llvm/test/tools/dsymutil/Inputs/obfuscated.2.arm64
R llvm/test/tools/dsymutil/Inputs/obfuscated.2.map
R llvm/test/tools/dsymutil/Inputs/obfuscated.arm64
R llvm/test/tools/dsymutil/Inputs/obfuscated.map
M llvm/test/tools/dsymutil/cmdline.test
M llvm/tools/dsymutil/CMakeLists.txt
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/dsymutil/LinkUtils.h
M llvm/tools/dsymutil/MachOUtils.cpp
M llvm/tools/dsymutil/MachOUtils.h
M llvm/tools/dsymutil/Options.td
R llvm/tools/dsymutil/SymbolMap.cpp
R llvm/tools/dsymutil/SymbolMap.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
Log Message:
-----------
[dsymutil] Remove support for obfuscated bitcode (#85713)
Remove support for obfuscated bitcode in dsymutil and the DWARF linker.
We no longer support bitcode submissions and the obfuscation support has
been removed from the rest of the compiler.
rdar://123863918
Commit: 8af3f74294d5e6ccf4e5c91ad5c25a1d7384ec1c
https://github.com/llvm/llvm-project/commit/8af3f74294d5e6ccf4e5c91ad5c25a1d7384ec1c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
Revert "[BOLT] Update DIEStreamer (#85818)"
This reverts commit e4f9175d23950ecaef32db075ed47dafe3be555c.
commit 3176c157190c80b4279dec86c4b9b84472d8ccac
Author: Andres Villegas <andresvi at google.com>
Date: Tue Mar 19 10:58:31 2024 -0700
reverted 43a2ec483fe08064b53a6293682e9bab97df61a0.
Commit: 4b61d5bd6155f43792dd37a8975df68365b1e24a
https://github.com/llvm/llvm-project/commit/4b61d5bd6155f43792dd37a8975df68365b1e24a
Author: Balaji V. Iyer <43187390+bviyer at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[ArmNeonTransforms][Bazel] Added appropriate deps for BUILD.bazel file. (#85852)
Commit: 3dc1b5044e25fc7e574719355091fccddad29ce4
https://github.com/llvm/llvm-project/commit/3dc1b5044e25fc7e574719355091fccddad29ce4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M libc/docs/dev/printf_behavior.rst
M libc/docs/dev/undefined_behavior.rst
M libc/src/stdio/printf_core/string_converter.h
M libc/test/src/stdio/sprintf_test.cpp
Log Message:
-----------
[libc] Make 'printf' converter output "(null)" instead of "null" (#85845)
Summary:
Currently we print `null` for the null pointer in a `%s` expression.
Although it's not defined by the standard, other implementations choose
to use `(null)` to indicate this. We also currently print `(nullptr)` so
I think it's more consistent to use parens in both cases.
Commit: 41283403f5a201c93b64b0f5b0e3ee3bc5f5e2b1
https://github.com/llvm/llvm-project/commit/41283403f5a201c93b64b0f5b0e3ee3bc5f5e2b1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
[BOLT] Update DWARFRewriter for 32a6e9d66945
Commit: 5cccc405e3981dfb97d5fee05b44a2ac6388191c
https://github.com/llvm/llvm-project/commit/5cccc405e3981dfb97d5fee05b44a2ac6388191c
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M openmp/libomptarget/test/offloading/barrier_fence.c
Log Message:
-----------
Revert "[OpenMP] Disable flaky barrier fence test (#85093)"
This reverts commit cd8843f87af2f04a85dda12b37738596cbf4cd5e.
Originally disabled to try to unstick the AMD build bot, didn't make a
difference after a week so it goes back in.
Commit: 85b6af198fdad9aead0449a645d839b1c7635dfd
https://github.com/llvm/llvm-project/commit/85b6af198fdad9aead0449a645d839b1c7635dfd
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
Log Message:
-----------
[libc][math][c23] Add linux/* entrypoints for nextup* and nextdown* (#85803)
See
https://github.com/llvm/llvm-project/pull/85484#discussion_r1526971653.
There already were entrypoints for linux/x86_64. I haven't tested on the other
targets and will rely on the buildbots.
Commit: 4549f8910ed9bc6479b6e641c2611d4b36a2cd63
https://github.com/llvm/llvm-project/commit/4549f8910ed9bc6479b6e641c2611d4b36a2cd63
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
Log Message:
-----------
[gn build] Port 28c1279db354
Commit: ac7a456181a8506c1adbe97dac72775b89a4fc24
https://github.com/llvm/llvm-project/commit/ac7a456181a8506c1adbe97dac72775b89a4fc24
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/tools/dsymutil/BUILD.gn
Log Message:
-----------
[gn build] Port 32a6e9d66945
Commit: 3cd9dccbb4235e057d0e53ab0b9673f3766800d4
https://github.com/llvm/llvm-project/commit/3cd9dccbb4235e057d0e53ab0b9673f3766800d4
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[cmake] Disable using FatLTO on Apple platforms (#85708)
FatLTO currently only supports ELF, so ensure we don't use it
on non-ELF platforms.
Commit: ffd08c7759000f55332f1657a1fab64a7adc03fd
https://github.com/llvm/llvm-project/commit/ffd08c7759000f55332f1657a1fab64a7adc03fd
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/DIBuilder.h
M llvm/include/llvm/IR/DebugInfo.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
M llvm/include/llvm/Transforms/Utils/ValueMapper.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/ADCE.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LCSSA.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Utils/MemoryOpRemark.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
M llvm/lib/Transforms/Utils/SSAUpdater.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
M llvm/test/Transforms/LoopRotate/dbgvalue.ll
M llvm/test/tools/llvm-reduce/remove-dp-values.ll
M llvm/tools/llvm-reduce/deltas/ReduceDbgRecords.cpp
M llvm/tools/llvm-reduce/deltas/ReduceDbgRecords.h
M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
M llvm/unittests/IR/ValueTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
Log Message:
-----------
[RemoveDIs][NFC] Rename DPValue -> DbgVariableRecord (#85216)
This is the major rename patch that prior patches have built towards.
The DPValue class is being renamed to DbgVariableRecord, which reflects
the updated terminology for the "final" implementation of the RemoveDI
feature. This is a pure string substitution + clang-format patch. The
only manual component of this patch was determining where to perform
these string substitutions: `DPValue` and `DPV` are almost exclusively
used for DbgRecords, *except* for:
- llvm/lib/target, where 'DP' is used to mean double-precision, and so
appears as part of .td files and in variable names. NB: There is a
single existing use of `DPValue` here that refers to debug info, which
I've manually updated.
- llvm/tools/gold, where 'LDPV' is used as a prefix for symbol
visibility enums.
Outside of these places, I've applied several basic string
substitutions, with the intent that they only affect DbgRecord-related
identifiers; I've checked them as I went through to verify this, with
reasonable confidence that there are no unintended changes that slipped
through the cracks. The substitutions applied are all case-sensitive,
and are applied in the order shown:
```
DPValue -> DbgVariableRecord
DPVal -> DbgVarRec
DPV -> DVR
```
Following the previous rename patches, it should be the case that there
are no instances of any of these strings that are meant to refer to the
general case of DbgRecords, or anything other than the DPValue class.
The idea behind this patch is therefore that pure string substitution is
correct in all cases as long as these assumptions hold.
Commit: cd34860705607ba804e20753f3ef4f2d4392df57
https://github.com/llvm/llvm-project/commit/cd34860705607ba804e20753f3ef4f2d4392df57
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.h
M lld/MachO/ObjC.cpp
M lld/MachO/ObjC.h
M lld/MachO/Options.td
A lld/test/MachO/objc-category-merging-complete-test.s
A lld/test/MachO/objc-category-merging-extern-class-minimal.s
Log Message:
-----------
[lld-macho] Implement ObjC category merging (-objc_category_merging) (#85727)
This change adds a flag to lld to enable category merging for MachoO +
ObjC.
It adds the '-objc_category_merging' flag for enabling this option and
uses the existing '-no_objc_category_merging' flag for disabling it.
In ld64, this optimization is enabled by default, but in lld, for now,
we require explicitly passing the '-objc_category_merging' flag in order
to enable it.
Behavior: if in the same link unit, multiple categories are extending
the same class, then they get merged into a single category.
Ex: Cat1(method1+method2,protocol1) + Cat2(method3+method4,protocol2,
property1) = Cat1_2(method1+method2+method3+method4,
protocol1+protocol2, property1)
Notes on implementation decisions made in this diff:
There is a possibility to further improve the current implementation by
directly merging the category data into the base class (if the base
class is present in the link unit) - this improvement may be done as a
follow-up. This improved functionality is already present in ld64.
We do the merging on the raw inputSections - after dead-stripping
(categories can't be dead stripped anyway).
The changes are mostly self-contained to ObjC.cpp, except for adding a
new flag (linkerOptimizeReason) to ConcatInputSection and StringPiece to
mark that this data has been optimized away. Another way to do it would
have been to just mark the pieces as not 'live' but this would cause the
old symbols to show up in the linker map as being dead-stripped - even
if dead-stripping is disabled. This flag allows us to match the ld64
behavior.
Note: This is a re-land of
https://github.com/llvm/llvm-project/pull/82928 after fixing using
already freed memory in `generatedSectionData`. This issue was detected
by ASAN build.
---------
Co-authored-by: Alex B <alexborcan at meta.com>
Commit: 4242d15e68580d1d1f7c4d782a59e6dffb698ca8
https://github.com/llvm/llvm-project/commit/4242d15e68580d1d1f7c4d782a59e6dffb698ca8
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
Log Message:
-----------
[flang][cuda] Update syntax of fir.cuda_kernel_launch to match fir.call (#85814)
`fir.cuda_kernel_launch` represents a call to a cuda kernel with the
chervon syntax. Its assembly format is meant to match `fir.call`. This
patch updates the format to match the syntax closer for args and their
types.
Commit: 12a6546395c6225112731f33608afed452c4f8d1
https://github.com/llvm/llvm-project/commit/12a6546395c6225112731f33608afed452c4f8d1
Author: Evan Wilde <etceterawilde at gmail.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Preprocessor/sysroot-prefix.c
Log Message:
-----------
Add support for sysroot-relative system header search paths (#82084)
Clang supported header searchpaths of the form `-I =/path`, relative to
the sysroot if one is passed, but did not implement that behavior for
`-iquote`, `-isystem`, or `-idirafter`.
This implements the `=` portion of the behavior implemented by GCC for
these flags described in
https://gcc.gnu.org/onlinedocs/gcc/Directory-Options.html.
Commit: 2377b9773d40d2daa249ac20fe452f041bb6a88c
https://github.com/llvm/llvm-project/commit/2377b9773d40d2daa249ac20fe452f041bb6a88c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/CodeGen/X86/pr85681.ll
Log Message:
-----------
[DAG] SimplifyShift - shift i1/vXi1 X, Y --> X (any non-zero shift amount is undefined).
Alive2: https://alive2.llvm.org/ce/z/SdESbg
Fixes #85681
Commit: 8cbb8ac02cc481723a0e0c20beab03fdc50accd9
https://github.com/llvm/llvm-project/commit/8cbb8ac02cc481723a0e0c20beab03fdc50accd9
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/test/Conversion/SPIRVToLLVM/misc-ops-to-llvm.mlir
M mlir/test/Dialect/SPIRV/Transforms/canonicalize.mlir
Log Message:
-----------
[mlir][spirv] Add folding for SelectOp (#85430)
Add missing constant propogation folder for spirv.Select
Implement additional folding when both selections are equivalent or the
condition is a constant Scalar/SplatVector.
Allows for constant folding in the IndexToSPIRV pass.
Part of work #70704
Commit: 5cfcd9bc13ac0f1be519e2e2d69276c82cbba3b9
https://github.com/llvm/llvm-project/commit/5cfcd9bc13ac0f1be519e2e2d69276c82cbba3b9
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
Log Message:
-----------
[cmake] Reenable FatLTO for Fuchsia toolchains
We can reenable this now that FatLTO won't be enabled for Mac platforms
Pull Request: https://github.com/llvm/llvm-project/pull/85709
Commit: 472a2ed48b8a2803d53350626bf8af120d96ee17
https://github.com/llvm/llvm-project/commit/472a2ed48b8a2803d53350626bf8af120d96ee17
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-19 (Tue, 19 Mar 2024)
Changed paths:
M .github/workflows/llvm-tests.yml
M bolt/lib/Rewrite/DWARFRewriter.cpp
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-stringview-data-usage.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
A clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/owning-memory.cpp
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/tools/clang-formatted-files.txt
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/Type.h
A clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
M clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
M clang/include/clang/Analysis/FlowSensitive/Logger.h
M clang/include/clang/Analysis/FlowSensitive/RecordOps.h
M clang/include/clang/Analysis/FlowSensitive/Transfer.h
M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Format/Format.h
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/Disasm.cpp
M clang/lib/AST/Interp/InterpFrame.h
M clang/lib/AST/TypePrinter.cpp
A clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
M clang/lib/Analysis/FlowSensitive/CMakeLists.txt
R clang/lib/Analysis/FlowSensitive/ControlFlowContext.cpp
M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
M clang/lib/Analysis/FlowSensitive/Logger.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/intrin.h
A clang/lib/Headers/intrin0.h
M clang/lib/Headers/keylockerintrin.h
M clang/lib/Headers/x86gprintrin.h
M clang/lib/Headers/x86intrin.h
M clang/lib/Headers/xmmintrin.h
A clang/lib/Headers/yvals_core.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
M clang/test/Analysis/eval-predefined-exprs.cpp
M clang/test/Analysis/out-of-bounds-diagnostics.c
M clang/test/Analysis/taint-diagnostic-visitor.c
A clang/test/CodeGen/aarch64-soft-float-abi-errors.c
A clang/test/CodeGen/aarch64-soft-float-abi.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/target-avx-abi-diag.c
M clang/test/CodeGenHLSL/builtins/dot.hlsl
M clang/test/Driver/aarch64-mcpu.c
A clang/test/Driver/aarch64-soft-float-abi.c
A clang/test/Driver/fsanitize-signed-integer-overflow.c
M clang/test/Misc/target-invalid-cpu-note.c
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/sysroot-prefix.c
M clang/test/Sema/arm-vector-types-support.c
M clang/test/SemaCXX/source_location.cpp
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/unittests/AST/DeclPrinterTest.cpp
M clang/unittests/AST/TypePrinterTest.cpp
M clang/unittests/Analysis/FlowSensitive/DeterminismTest.cpp
M clang/unittests/Analysis/FlowSensitive/LoggerTest.cpp
M clang/unittests/Analysis/FlowSensitive/RecordOpsTest.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M compiler-rt/lib/interception/interception_win.cpp
M compiler-rt/test/tsan/signal_sync.cpp
M compiler-rt/test/tsan/signal_thread.cpp
M flang/include/flang/Evaluate/characteristics.h
M flang/include/flang/Lower/CallInterface.h
M flang/include/flang/Lower/ConvertVariable.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Semantics/openmp-directive-sets.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertType.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Driver/cuda-option.f90
M flang/test/Driver/driver-help-hidden.f90
R flang/test/Driver/flang-experimental-polymorphism-flag.f90
M flang/test/Driver/frontend-forwarding.f90
M flang/test/Fir/dispatch.f90
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/boxchar_emboxing.f90
M flang/test/HLFIR/call_with_poly_dummy.f90
M flang/test/Lower/CUDA/cuda-kernel-calls.cuf
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
M flang/test/Lower/HLFIR/allocatable-return.f90
M flang/test/Lower/HLFIR/array-ctor-derived.f90
A flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg-polymorphic.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-poly-to-assumed-type.f90
M flang/test/Lower/HLFIR/convert-mbox-to-value.f90
M flang/test/Lower/HLFIR/designators-component-ref.f90
M flang/test/Lower/HLFIR/designators-parameter-array-slice.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-polymorphic-merge.f90
M flang/test/Lower/HLFIR/elemental-user-procedure-ref-polymorphic.f90
M flang/test/Lower/HLFIR/function-return-as-expr.f90
M flang/test/Lower/HLFIR/function-return-destroy.f90
M flang/test/Lower/HLFIR/ignore-rank-unlimited-polymorphic.f90
M flang/test/Lower/HLFIR/ignore-type-assumed-shape.f90
M flang/test/Lower/HLFIR/intentout-allocatable-components.f90
M flang/test/Lower/HLFIR/internal-procedures-polymorphic.f90
M flang/test/Lower/HLFIR/intrinsic-assumed-type.f90
M flang/test/Lower/HLFIR/parent-component-ref.f90
M flang/test/Lower/HLFIR/poly_expr_for_nonpoly_dummy.f90
M flang/test/Lower/HLFIR/polymorphic-expressions.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-nopass.f90
M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
M flang/test/Lower/HLFIR/select-type-selector.f90
M flang/test/Lower/HLFIR/transpose.f90
M flang/test/Lower/HLFIR/type-bound-call-mismatch.f90
M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
M flang/test/Lower/Intrinsics/extends_type_of.f90
M flang/test/Lower/Intrinsics/same_type_as.f90
M flang/test/Lower/Intrinsics/sizeof.f90
M flang/test/Lower/Intrinsics/spread.f90
M flang/test/Lower/Intrinsics/storage_size.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-return.f90
M flang/test/Lower/assumed-type.f90
M flang/test/Lower/default-initialization.f90
M flang/test/Lower/derived-type-finalization.f90
M flang/test/Lower/dispatch-table.f90
M flang/test/Lower/dispatch.f90
M flang/test/Lower/intentout-deallocate.f90
M flang/test/Lower/io-derived-type-2.f90
M flang/test/Lower/io-derived-type.f90
M flang/test/Lower/nullify-polymorphic.f90
M flang/test/Lower/pass-null-for-class-arg.f90
M flang/test/Lower/pointer-association-polymorphic.f90
M flang/test/Lower/pointer-disassociate.f90
M flang/test/Lower/polymorphic-temp.f90
M flang/test/Lower/polymorphic-types.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Lower/select-type-2.f90
M flang/test/Lower/select-type.f90
M flang/test/Semantics/separate-mp05.f90
M flang/tools/bbc/bbc.cpp
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/dev/printf_behavior.rst
M libc/docs/dev/undefined_behavior.rst
M libc/docs/math/index.rst
M libc/src/__support/CPP/array.h
A libc/src/__support/CPP/iterator.h
M libc/src/math/generic/atanf.cpp
M libc/src/stdio/printf_core/string_converter.h
M libc/test/src/__support/CPP/CMakeLists.txt
A libc/test/src/__support/CPP/array_test.cpp
M libc/test/src/stdio/sprintf_test.cpp
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.h
M lld/MachO/ObjC.cpp
M lld/MachO/ObjC.h
M lld/MachO/Options.td
M lld/test/ELF/aarch64-tlsdesc-zrel.s
M lld/test/ELF/pack-dyn-relocs.s
A lld/test/MachO/objc-category-merging-complete-test.s
A lld/test/MachO/objc-category-merging-extern-class-minimal.s
M lldb/source/Plugins/Language/CPlusPlus/LibCxxSliceArray.cpp
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/CommandGuide/dsymutil.rst
M llvm/docs/ReleaseNotes.rst
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/CodeGen/NonRelocatableStringpool.h
M llvm/include/llvm/DWARFLinker/Classic/DWARFStreamer.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/include/llvm/DWARFLinker/Parallel/DWARFLinker.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DIBuilder.h
M llvm/include/llvm/IR/DebugInfo.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/MC/MCInstrAnalysis.h
M llvm/include/llvm/Support/AMDHSAKernelDescriptor.h
M llvm/include/llvm/Support/TimeProfiler.h
M llvm/include/llvm/Target/Target.td
A llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/include/llvm/Target/TargetSchedule.td
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
M llvm/include/llvm/Transforms/Scalar/Float2Int.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
M llvm/include/llvm/Transforms/Utils/ValueMapper.h
M llvm/lib/Analysis/PHITransAddr.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/DwarfEHPrepare.cpp
M llvm/lib/CodeGen/GCRootLowering.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/IndirectBrExpandPass.cpp
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/lib/CodeGen/IntrinsicLowering.cpp
M llvm/lib/CodeGen/JMCInstrumenter.cpp
M llvm/lib/CodeGen/NonRelocatableStringpool.cpp
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/SjLjEHPrepare.cpp
M llvm/lib/CodeGen/WinEHPrepare.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinker.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerGlobalData.h
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/lib/DWARFLinker/Parallel/OutputSections.h
M llvm/lib/DWARFLinker/Parallel/StringEntryToDwarfStringPoolEntryMap.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/DebugProgramInstruction.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/ReplaceConstant.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Support/TimeProfiler.cpp
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
M llvm/lib/Target/BPF/BPFPreserveDIType.cpp
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/Mips/Mips16HardFloat.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp
M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
M llvm/lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp
M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.cpp
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp
M llvm/lib/Target/X86/X86LowerAMXType.cpp
M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/ADCE.cpp
M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/Float2Int.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LCSSA.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Utils/MemoryOpRemark.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
M llvm/lib/Transforms/Utils/SSAUpdater.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/ValueTracking/known-non-zero.ll
M llvm/test/Assembler/debug-info.ll
M llvm/test/Bitcode/DIExpression-aggresult.ll
M llvm/test/Bitcode/dbg-record-roundtrip.ll
M llvm/test/Bitcode/upgrade-dbg-addr.ll
M llvm/test/CodeGen/AArch64/hadd-combine.ll
A llvm/test/CodeGen/AArch64/soft-float-abi.ll
M llvm/test/CodeGen/AMDGPU/global_atomic_optimizer_fp_rtn.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_optimizer_fp_no_rtn.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.gfx12.ll
A llvm/test/CodeGen/AMDGPU/promote-alloca-scoring.ll
A llvm/test/CodeGen/DirectX/idot.ll
M llvm/test/CodeGen/NVPTX/dynamic_stackalloc.ll
M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
M llvm/test/CodeGen/SystemZ/int-usub-12.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
A llvm/test/CodeGen/X86/avgceils.ll
A llvm/test/CodeGen/X86/avgceilu.ll
A llvm/test/CodeGen/X86/avgfloors.ll
A llvm/test/CodeGen/X86/avgflooru.ll
M llvm/test/CodeGen/X86/combine-pavg.ll
A llvm/test/CodeGen/X86/pr85681.ll
A llvm/test/DebugInfo/AArch64/ptrauth.ll
M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
M llvm/test/MC/AMDGPU/hsa-gfx12-v4.s
M llvm/test/MC/LoongArch/Macros/macros-li-bad.s
M llvm/test/TableGen/MacroFusion.td
M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
M llvm/test/Transforms/Float2Int/basic.ll
M llvm/test/Transforms/InstCombine/copysign-fneg-fabs.ll
M llvm/test/Transforms/InstCombine/fcmp.ll
M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
M llvm/test/Transforms/InstCombine/fpcast.ll
M llvm/test/Transforms/InstCombine/select-binop-foldable-floating-point.ll
M llvm/test/Transforms/InstCombine/select_meta.ll
M llvm/test/Transforms/InstSimplify/ConstProp/icmp-global.ll
M llvm/test/Transforms/LoopRotate/dbgvalue.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-with-minbith-user.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-icmp-to-trunc.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll
M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/same-scalar-in-same-phi-extract.ll
M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll
R llvm/test/tools/dsymutil/ARM/obfuscated.test
R llvm/test/tools/dsymutil/Inputs/obfuscated.2.arm64
R llvm/test/tools/dsymutil/Inputs/obfuscated.2.map
R llvm/test/tools/dsymutil/Inputs/obfuscated.arm64
R llvm/test/tools/dsymutil/Inputs/obfuscated.map
M llvm/test/tools/dsymutil/cmdline.test
M llvm/test/tools/llvm-objdump/MachO/AArch64/macho-relative-method-lists.test
M llvm/test/tools/llvm-readobj/ELF/decompress-zlib-unsupported.test
M llvm/test/tools/llvm-readobj/ELF/decompress-zlib.test
M llvm/test/tools/llvm-readobj/ELF/decompress-zstd-unsupported.test
M llvm/test/tools/llvm-readobj/ELF/hex-dump-multi.s
M llvm/test/tools/llvm-readobj/ELF/hex-dump.test
M llvm/test/tools/llvm-readobj/ELF/string-dump-multi.s
M llvm/test/tools/llvm-readobj/ELF/string-dump.test
M llvm/test/tools/llvm-reduce/remove-dp-values.ll
M llvm/tools/dsymutil/CMakeLists.txt
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/dsymutil/LinkUtils.h
M llvm/tools/dsymutil/MachOUtils.cpp
M llvm/tools/dsymutil/MachOUtils.h
M llvm/tools/dsymutil/Options.td
R llvm/tools/dsymutil/SymbolMap.cpp
R llvm/tools/dsymutil/SymbolMap.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-dis/llvm-dis.cpp
M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
M llvm/tools/llvm-objdump/MachODump.cpp
M llvm/tools/llvm-readobj/ObjDumper.cpp
M llvm/tools/llvm-reduce/deltas/ReduceDbgRecords.cpp
M llvm/tools/llvm-reduce/deltas/ReduceDbgRecords.h
M llvm/tools/llvm-shlib/CMakeLists.txt
M llvm/tools/obj2yaml/macho2yaml.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
M llvm/unittests/IR/MetadataTest.cpp
M llvm/unittests/IR/ValueTest.cpp
M llvm/unittests/Support/KnownBitsTest.cpp
M llvm/unittests/Support/TimeProfilerTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Analysis/FlowSensitive/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/dsymutil/BUILD.gn
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/lib/ExecutionEngine/Float16bits.cpp
M mlir/lib/IR/AffineExpr.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
M mlir/test/Conversion/SPIRVToLLVM/misc-ops-to-llvm.mlir
M mlir/test/Dialect/ArmNeon/lower-to-arm-neon.mlir
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Dialect/LLVMIR/sroa.mlir
M mlir/test/Dialect/SPIRV/Transforms/canonicalize.mlir
M mlir/test/Integration/Dialect/Complex/CPU/correctness.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/reshape_dot.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
A mlir/unittests/IR/AffineExprTest.cpp
M mlir/unittests/IR/CMakeLists.txt
M openmp/libomptarget/test/api/ompx_dump_mapping_tables.cpp
M openmp/libomptarget/test/offloading/barrier_fence.c
A openmp/libomptarget/test/offloading/fortran/target-nested-target-data.f90
A openmp/libomptarget/test/offloading/workshare_chunk.c
M openmp/runtime/test/lit.cfg
M polly/lib/CodeGen/IslNodeBuilder.cpp
M polly/lib/CodeGen/LoopGenerators.cpp
M polly/lib/Support/ScopHelper.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
don't update macho2yaml.cpp
Created using spr 1.3.5-bogner
Compare: https://github.com/llvm/llvm-project/compare/ae37a013e64e...472a2ed48b8a
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