[all-commits] [llvm/llvm-project] 4f1276: [BOLT] Set entry counts in BAT YAML profile (#91775)

Amir Ayupov via All-commits all-commits at lists.llvm.org
Sun May 12 17:33:35 PDT 2024


  Branch: refs/heads/users/aaupov/spr/boltbat-add-entries-for-deleted-basic-blocks
  Home:   https://github.com/llvm/llvm-project
  Commit: 4f127667ca57875f0984f81d5790479b902022e0
      https://github.com/llvm/llvm-project/commit/4f127667ca57875f0984f81d5790479b902022e0
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-05-10 (Fri, 10 May 2024)

  Changed paths:
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/test/X86/bolt-address-translation-yaml.test

  Log Message:
  -----------
  [BOLT] Set entry counts in BAT YAML profile (#91775)

Align with DataReader::readProfile that sets entry block counts from
FuncBranchData->EntryData.

Test Plan: updated bolt-address-translation-yaml.test


  Commit: 5cd280433e8e063bf3c2390eaf152e726db5b0fb
      https://github.com/llvm/llvm-project/commit/5cd280433e8e063bf3c2390eaf152e726db5b0fb
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-05-10 (Fri, 10 May 2024)

  Changed paths:
    M clang/unittests/Format/QualifierFixerTest.cpp

  Log Message:
  -----------
  [clang-format] Move QualifierFixerTest::LangOpts to IsQualifierType test

This should fix buildbot failures in:
https://lab.llvm.org/buildbot/#/builders/5/builds/43303
https://lab.llvm.org/buildbot/#/builders/168/builds/20347


  Commit: 1351aabf542b25e3ff1d36f4f2abe6727d0f19aa
      https://github.com/llvm/llvm-project/commit/1351aabf542b25e3ff1d36f4f2abe6727d0f19aa
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add test for CWG1820 "Qualified typedef names" (#91765)

[P1787R6](https://wg21.link/p1787r6):
> [CWG1820](https://cplusplus.github.io/CWG/issues/1820.html) is
resolved by requiring that a qualified declarator-id declare an entity.

P1787R6 changes wording of [dcl.pre]/9. Quote from the current draft
([[dcl.pre]/5](https://eel.is/c++draft/dcl.pre#5)):
> If a
[declarator-id](https://eel.is/c++draft/dcl.decl.general#nt:declarator-id)
is a name, the
[init-declarator](https://eel.is/c++draft/dcl.decl.general#nt:init-declarator)
and (hence) the declaration introduce that
name[.](https://eel.is/c++draft/dcl.pre#5.sentence-1)
> [Note [3](https://eel.is/c++draft/dcl.pre#note-3): Otherwise, the
[declarator-id](https://eel.is/c++draft/dcl.decl.general#nt:declarator-id)
is a
[qualified-id](https://eel.is/c++draft/expr.prim.id.qual#nt:qualified-id)
or names a destructor or its
[unqualified-id](https://eel.is/c++draft/expr.prim.id.unqual#nt:unqualified-id)
is a [template-id](https://eel.is/c++draft/temp.names#nt:template-id)
and no name is
introduced[.](https://eel.is/c++draft/dcl.pre#5.sentence-2)
— end note]


  Commit: 52c5a81001663d4ca8fca5e7b1634a6a5b0bd021
      https://github.com/llvm/llvm-project/commit/52c5a81001663d4ca8fca5e7b1634a6a5b0bd021
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
    M llvm/lib/Target/AMDGPU/SIProgramInfo.h
    M llvm/unittests/MC/AMDGPU/SIProgramInfoMCExprs.cpp

  Log Message:
  -----------
  [AMDGPU] Fix unittest linking error with `LLVM_LINK_LLVM_DYLIB` (#91727)

Follow-up to https://github.com/llvm/llvm-project/pull/88257


  Commit: 575177f610274e909a17450c29d2e997f7a7f13d
      https://github.com/llvm/llvm-project/commit/575177f610274e909a17450c29d2e997f7a7f13d
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/test/Driver/x86-target-features.c
    M clang/test/Preprocessor/x86_target_features.c
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/TargetParser/X86TargetParser.cpp

  Log Message:
  -----------
  [X86] Add sub-feature nf (no flags update) for APX

This is a follow-up patch for #74199


  Commit: 31774b6a8a88b435ce79f9ba048ef8bb00e2817e
      https://github.com/llvm/llvm-project/commit/31774b6a8a88b435ce79f9ba048ef8bb00e2817e
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [analyzer] Treat bitwise_cast, std::addressof, and new as trivial in WebKit checkers. (#91830)


  Commit: 9d66dcaf172cdaa78a6709df989bcaaf90d2ccee
      https://github.com/llvm/llvm-project/commit/9d66dcaf172cdaa78a6709df989bcaaf90d2ccee
  Author: Spenser Bauman <sbauman at mathworks.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
    M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir

  Log Message:
  -----------
  [mlir][tosa] Work around GCC bug in tosa-to-tensor (#91521)

GCC 12 and 13 generate incorrect code for a pattern in the
tosa-to-tensor pass responsible for lowering tosa.reshape. This results
in the tosa.reshape lowering producing IR which fails to verify. I've
narrowed down the set of cmake flags needed to reproduce the issue to
this:

    cmake -G Ninja ../llvm \
      -DLLVM_ENABLE_PROJECTS="mlir" \
      -DLLVM_TARGETS_TO_BUILD=host \
      -DLLVM_ENABLE_PROJECTS=mlir \
      -DCMAKE_BUILD_TYPE="Release" \
      -DCMAKE_CXX_FLAGS_RELEASE="-O2" \
      -DCMAKE_CXX_FLAGS="-O2" \
      -DCMAKE_CXX_COMPILER=g++ \
      -DCMAKE_C_COMPILER=gcc

This is the failing test case:

func.func @fails_in_gcc_12(%arg0: tensor<?xf32>) -> tensor<1x1x1x?xf32>
{
%0 = tosa.reshape %arg0 {new_shape = array<i64: 1, 1, 1, -1>} :
(tensor<?xf32>) -> tensor<1x1x1x?xf32>
      return %0 : tensor<1x1x1x?xf32>
    }

This should lower to a tensor.expand_shape operation like so:

    func.func @foo(%arg0: tensor<?xf32>) -> tensor<1x1x1x?xf32> {
      %c0 = arith.constant 0 : index
      %dim = tensor.dim %arg0, %c0 : tensor<?xf32>
      %c1 = arith.constant 1 : index
%expanded = tensor.expand_shape %arg0 [[0, 1, 2, 3]] output_shape [1, 1,
1, %dim] : tensor<?xf32> into tensor<1x1x1x?xf32>
      return %expanded : tensor<1x1x1x?xf32>
    }

Under GCC 12/13 with the above cmake configuration, the
tensor.expand_shape looks like this

%2 = "tensor.expand_shape"(%arg0) <{reassociation = [[0, 1, 2, 3]],
static_output_shape = array<i64>}> : (tensor<?xf32>) ->
tensor<?x1x1x?xf32>

The key difference is the computed output type of `tensor<?x1x1x?xf32>`
rather than the expected `tensor<1x1x1x?xf32>`. This expand_shape fails
to verify with this error message:

error: 'tensor.expand_shape' op expected number of static shape dims to
be equal to the output rank (4) but found 0 inputs instead

The problematic code is calculating the intermediate shape of the
generated tensor.expand_shape operation in the
expand_shape/collapse_shape sequence that implements tosa.reshape.

    // Compute result shape
    bool resultIsStatic = true;
    auto resultShape = llvm::map_to_vector(newShape, [&](int64_t size) {
      // Omitted

// If we do not know the total size of the tensor, keep this dimension
      // dynamic in the result shape.
      if (!inputIsStatic) {
        resultIsStatic = false;
        return ShapedType::kDynamic;
      }
    });

    if (resultIsStatic) {
      // do something
      return;
    }

    // do something else
    return;

The failure point seems to be the update of the resultIsStatic variable
in the lambda body. The assignment of false is not propagated to the use
in the if-statement, resulting in the branch being taken when it should
not.

I've found several modification to the code that gets around the bug.
The version I settled on is one which makes the logic a little more
obvious.


  Commit: 079fdef7d26d2004b5bfd467fddadf1906bc814b
      https://github.com/llvm/llvm-project/commit/079fdef7d26d2004b5bfd467fddadf1906bc814b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/test/Analysis/CostModel/AArch64/masked_ldst.ll
    M llvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-gather.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/RISCV/masked_ldst.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-op-cost.ll

  Log Message:
  -----------
  [TTI] getCommonMaskedMemoryOpCost - use the target getMemoryOpCost/getCFInstrCost implementations.

We were using the default implementations instead of the CRTP versions.


  Commit: 23fe1fc6b78b7643a801ce3eb53d14b47b1dd0ff
      https://github.com/llvm/llvm-project/commit/23fe1fc6b78b7643a801ce3eb53d14b47b1dd0ff
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Analysis/CostModel/X86/masked-gather-i32-with-i8-index.ll
    M llvm/test/Analysis/CostModel/X86/masked-gather-i64-with-i8-index.ll
    M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll

  Log Message:
  -----------
  [TTI][X86] getGSScalarCost - don't bother with adding cost of ICMP for each i1 mask element

These can nearly always be folded into the existing cost of the branch, and brings the throughput costs of the scalarised gather/scatter code much closer to the llvm-mca/uica estimates


  Commit: 3773191fc4e088fb06592e0404296f6051b1d4f7
      https://github.com/llvm/llvm-project/commit/3773191fc4e088fb06592e0404296f6051b1d4f7
  Author: Shan Huang <52285902006 at stu.ecnu.edu.cn>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/test/Transforms/JumpThreading/guard-split-debuginfo.ll
    A llvm/test/Transforms/JumpThreading/preserving-debugloc-bitcast.ll
    A llvm/test/Transforms/JumpThreading/preserving-debugloc-fold-select.ll

  Log Message:
  -----------
  [DebugInfo][JumpThreading] Fix missing debug location updates (#91581)


  Commit: cdd782183dc6a074baa1dbc92b37f1f4dbb4725f
      https://github.com/llvm/llvm-project/commit/cdd782183dc6a074baa1dbc92b37f1f4dbb4725f
  Author: Shan Huang <52285902006 at stu.ecnu.edu.cn>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LICM.cpp
    A llvm/test/Transforms/LICM/debugloc-preserve-fmul-drop-fdiv.ll

  Log Message:
  -----------
  [DebugInfo][LICM] Fix missing debug location updates (#91729)


  Commit: 1337622a492f4e77604b09ac8ff97042e46d8d42
      https://github.com/llvm/llvm-project/commit/1337622a492f4e77604b09ac8ff97042e46d8d42
  Author: Théo Degioanni <theo.degioanni.llvm.deluge062 at simplelogin.fr>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    A mlir/include/mlir-c/Dialect/IRDL.h
    M mlir/lib/CAPI/Dialect/CMakeLists.txt
    A mlir/lib/CAPI/Dialect/IRDL.cpp
    M mlir/test/CAPI/CMakeLists.txt
    A mlir/test/CAPI/irdl.c
    M mlir/test/CMakeLists.txt
    M mlir/test/lit.cfg.py

  Log Message:
  -----------
  [MLIR] Add IRDL dialect loading to C API (#91852)

Being able to add custom dialects is one of the big missing pieces of
the C API. This change should make it achievable via IRDL. Hopefully
this should open custom dialect definition to non-C++ users of MLIR.


  Commit: 379b77773cf653352f30f8c7cca393f4df9389be
      https://github.com/llvm/llvm-project/commit/379b77773cf653352f30f8c7cca393f4df9389be
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/lib/AST/Interp/Pointer.h
    M clang/unittests/AST/Interp/Descriptor.cpp

  Log Message:
  -----------
  [clang][Interp] Use pointee metadata size in isRoot()

Previously, isRoot() would return true for pointers with a base
of sizeof(InlineDescriptor), even if the actual metadata size of the
pointee was 0.


  Commit: deffae5da123b32098914d8346bf4358a6792bdc
      https://github.com/llvm/llvm-project/commit/deffae5da123b32098914d8346bf4358a6792bdc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/SourceManager.h
    M clang/lib/ARCMigrate/ObjCMT.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/ASTMatchers/Dynamic/Marshallers.cpp
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/Basic/Targets/PPC.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/ModuleDependencyCollector.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseHLSL.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaStmtAsm.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/diagtool/TreeView.cpp
    M clang/unittests/CodeGen/IRMatchers.h

  Log Message:
  -----------
  [clang] Use StringRef::operator== instead of StringRef::equals (NFC) (#91844)

I'm planning to remove StringRef::equals in favor of
StringRef::operator==.

- StringRef::operator==/!= outnumber StringRef::equals by a factor of
  24 under clang/ in terms of their usage.

- The elimination of StringRef::equals brings StringRef closer to
  std::string_view, which has operator== but not equals.

- S == "foo" is more readable than S.equals("foo"), especially for
  !Long.Expression.equals("str") vs Long.Expression != "str".


  Commit: baffaf000fd4667f33b3756d0d3b645b1d926b44
      https://github.com/llvm/llvm-project/commit/baffaf000fd4667f33b3756d0d3b645b1d926b44
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M lldb/test/API/macosx/rosetta/TestRosetta.py
    M lldb/test/API/macosx/universal64/TestUniversal64.py

  Log Message:
  -----------
  [lldb] Add required skipIfLLVMTargetMissing for X86 (NFC)


  Commit: 2b386888b78327db4906b12401e1a89438471548
      https://github.com/llvm/llvm-project/commit/2b386888b78327db4906b12401e1a89438471548
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaTemplate/ctad.cpp

  Log Message:
  -----------
  Reland: [clang] Use getDefaultArgRange instead of getDefaultArg to retrieve
source location in `ConvertConstructorToDeductionGuideTransform`.

The commit fec471649fffaa3ec44e17801e5c9605825e58bb was reverted by accident in 7415524b45392651969374c067041daa82dc89e7.

Reland it with a testcase.


  Commit: 05cc2d5fe10ca3e7786863d9c600e1a3f8db93eb
      https://github.com/llvm/llvm-project/commit/05cc2d5fe10ca3e7786863d9c600e1a3f8db93eb
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/mismatch.h
    M libcxx/include/__algorithm/simd_utils.h
    A libcxx/include/__iterator/aliasing_iterator.h
    M libcxx/include/__type_traits/is_equality_comparable.h
    M libcxx/include/module.modulemap
    A libcxx/test/libcxx/iterators/aliasing_iterator.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp

  Log Message:
  -----------
  [libc++] Vectorize std::mismatch with trivially equality comparable types (#87716)


  Commit: 91c917b19f076b510635a6168305f6f0117e7fad
      https://github.com/llvm/llvm-project/commit/91c917b19f076b510635a6168305f6f0117e7fad
  Author: Ivan Murashko <ivan.murashko at gmail.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/test/Modules/implicit-module-no-timestamp.cpp

  Log Message:
  -----------
  [Modules] Enable MS Windows test for implicit-module-no-timestamp.cpp (#91738)

There is a follow-up commit for #90319. The Windows test was disabled in
that commit, but it should pass on this operating system. Therefore, it
would be beneficial to have it enabled for MS Windows.


  Commit: 0869204cff22831d0bb19a82c99bf85e4deb4ae3
      https://github.com/llvm/llvm-project/commit/0869204cff22831d0bb19a82c99bf85e4deb4ae3
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M clang/lib/Format/QualifierAlignmentFixer.cpp
    M clang/lib/Format/QualifierAlignmentFixer.h
    M clang/unittests/Format/QualifierFixerTest.cpp

  Log Message:
  -----------
  [clang-format] Fix buildbot failures

This effectively reverts 5cd280433e8e and changes to QualifierFixerTest.cpp
from e62ce1f8842c.

Failed buidbots:
https://lab.llvm.org/buildbot/#/builders/236/builds/11223
https://lab.llvm.org/buildbot/#/builders/239/builds/6968


  Commit: f42117c8517cc928c6373bad35ebf75d94fe865b
      https://github.com/llvm/llvm-project/commit/f42117c8517cc928c6373bad35ebf75d94fe865b
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/lib/MC/MCDXContainerWriter.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/tools/obj2yaml/dxcontainer2yaml.cpp
    M llvm/unittests/Object/DXContainerTest.cpp

  Log Message:
  -----------
  [DirectX] Replace bitfield version in ProgramHeader. (#91797)

Avoid using bitfield in dxbc::ProgramHeader.
It could potentially be read incorrectly on any host depending on the
compiler.

>From [C++17's
[class.bit]](https://timsong-cpp.github.io/cppwp/n4659/class.bit#1)
> Bit-fields are packed into some addressable allocation unit. [ Note:
Bit-fields straddle allocation units on some machines and not on others.
Bit-fields are assigned right-to-left on some machines, left-to-right on
others.  — end note ]

For #91793


  Commit: e586556e375fc5c4f7e76b5c299cb981f2016108
      https://github.com/llvm/llvm-project/commit/e586556e375fc5c4f7e76b5c299cb981f2016108
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/test/CodeGen/X86/cmp.ll

  Log Message:
  -----------
  [X86][CodeGen] Add NDD entries for transform TEST+AND -> TEST


  Commit: 63224d717108d927e998da8a67050a6cc5dd74a2
      https://github.com/llvm/llvm-project/commit/63224d717108d927e998da8a67050a6cc5dd74a2
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/Descriptor.h
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Program.cpp
    M clang/test/AST/Interp/builtin-align-cxx.cpp
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  Reapply "Reapply "[clang][Interp] Create full type info for dummy pointers""

This reverts commit fb1c2dbc0a6ba641e0b39e0692ec6a4ee4444c4b.


  Commit: c8864bceeb20582b4e7a739d8ba3e11052f0e49f
      https://github.com/llvm/llvm-project/commit/c8864bceeb20582b4e7a739d8ba3e11052f0e49f
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-05-11 (Sat, 11 May 2024)

  Changed paths:
    M bolt/test/runtime/bolt-reserved.cpp

  Log Message:
  -----------
  [BOLT] Fix race condition in a test (#91866)

Fix race condition in internal NFC test.


  Commit: 1d6bf0ca29322b08e8b50681d440e7182441b025
      https://github.com/llvm/llvm-project/commit/1d6bf0ca29322b08e8b50681d440e7182441b025
  Author: Nathan Sidwell <nathan at acm.org>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp

  Log Message:
  -----------
  [clang][NFC] Remove class layout scissor (#89055)

PR #87090 amended `accumulateBitfields` to do the correct clipping. The scissor is no longer necessary and  `checkBitfieldClipping` can compute its location directly when needed.


  Commit: a477004d822d02290f9d388aa22a42490fd8180d
      https://github.com/llvm/llvm-project/commit/a477004d822d02290f9d388aa22a42490fd8180d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h

  Log Message:
  -----------
  [CostModel][X86] Remove getGSScalarCost and use getCommonMaskedMemoryOpCost directly

The generic getCommonMaskedMemoryOpCost now gives the same cost estimates for scalarized gather/scatter.


  Commit: 502e77df1fc4aa859db6709e14e93af6207e4dc4
      https://github.com/llvm/llvm-project/commit/502e77df1fc4aa859db6709e14e93af6207e4dc4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp

  Log Message:
  -----------
  [CostModel][X86] getGSVectorCost - remove FIXME

getGSVectorCost has supported other TargetCostKind since a55127281b2ed5f24f848b9e5c70870ad170bc3f


  Commit: 78b3a00418ce6da0426a261a64a77608d0264fe5
      https://github.com/llvm/llvm-project/commit/78b3a00418ce6da0426a261a64a77608d0264fe5
  Author: Felix Schneider <fx.schn at gmail.com>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/DataFlowFramework.h
    M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp

  Log Message:
  -----------
  [mlir] `int-range-optmizations`: Fix referencing of deleted ops (#91807)

The pass runs a `DataFlowSolver` and collects state information on the
input IR. Then, the rewrite driver and folding is applied. During
pattern application and folding it can happen that an Op from the input
IR is deleted and a new Op is created at the same address. When the
newly created Ops is looked up in the `DataFlowSolver` state memory, the
state of the original Op is returned.

This patch adds a method to `DataFlowSolver` which removes all state
related to a `ProgramPoint`. It also adds a listener to the Pass which
clears the state information of deleted Ops from the `DataFlowSolver`.

Fix https://github.com/llvm/llvm-project/issues/81228


  Commit: 17daa204feadf9c28fc13b7daa69c3cbe865b238
      https://github.com/llvm/llvm-project/commit/17daa204feadf9c28fc13b7daa69c3cbe865b238
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-05-13 (Mon, 13 May 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/AST/ast-dump-default-init-json.cpp
    M clang/test/AST/ast-dump-default-init.cpp
    M clang/test/Analysis/lifetime-extended-regions.cpp
    M clang/test/CXX/drs/cwg16xx.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/special/class.temporary/p6.cpp
    M clang/test/SemaCXX/constexpr-default-arg.cpp
    M clang/test/SemaCXX/eval-crashes.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang][CWG1815] Support lifetime extension of temporary created by aggregate initialization using a default member initializer (#87933)

This PR complete [DR1815](https://wg21.link/CWG1815) under the guidance
of `FIXME` comments. And reuse `CXXDefaultInitExpr` rewrite machinery to
clone the initializer expression on each use that would lifetime extend
its temporaries.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: b7ed097f29d712b1cc839e15ab68d2c8a2ce07cc
      https://github.com/llvm/llvm-project/commit/b7ed097f29d712b1cc839e15ab68d2c8a2ce07cc
  Author: David Green <david.green at arm.com>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll

  Log Message:
  -----------
  [VectorCombine] Add intrinsics handling to shuffleToIdentity (#91000)

This is probably the most involved addition, as it tries to make use of
isTriviallyVectorizable with isVectorIntrinsicWithScalarOpAtArg to handle a
number of different intrinsics that are all lane-wise. Additional tests have
been added for some of the different intrinsics from
isVectorIntrinsicWithScalarOpAtArg / isVectorIntrinsicWithOverloadTypeAtArg.


  Commit: d2ea13bb9f4e465df7c8dd8b8d8c95d10a5ece11
      https://github.com/llvm/llvm-project/commit/d2ea13bb9f4e465df7c8dd8b8d8c95d10a5ece11
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.4

[skip ci]


  Commit: a01c7ddaf5c0ed4ef26ddf7ecefadc35689a1969
      https://github.com/llvm/llvm-project/commit/a01c7ddaf5c0ed4ef26ddf7ecefadc35689a1969
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-05-12 (Sun, 12 May 2024)

  Changed paths:
    M bolt/docs/BAT.md
    M bolt/lib/Profile/BoltAddressTranslation.cpp

  Log Message:
  -----------
  distinguish multiple blocks by using incrementing offsets

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/33914d22a24c...a01c7ddaf5c0

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