[all-commits] [llvm/llvm-project] dec93a: [mlir] Migrate away from ValueRange(std::nullopt) ...

Kazu Hirata via All-commits all-commits at lists.llvm.org
Sun Jun 22 06:30:39 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dec93ae45492cd84e3eec05f00ffb0fb1d35f045
      https://github.com/llvm/llvm-project/commit/dec93ae45492cd84e3eec05f00ffb0fb1d35f045
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-06-22 (Sun, 22 Jun 2025)

  Changed paths:
    M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
    M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/LowerDeallocations.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp

  Log Message:
  -----------
  [mlir] Migrate away from ValueRange(std::nullopt) (NFC) (#145210)

ArrayRef has a constructor that accepts std::nullopt.  This
constructor dates back to the days when we still had llvm::Optional.

Since the use of std::nullopt outside the context of std::optional is
kind of abuse and not intuitive to new comers, I would like to move
away from the constructor and eventually remove it.

One of the common uses of std::nullopt is in one of the constructors
for ValueRange.  This patch takes care of the migration where we need
ValueRange() to facilitate perfect forwarding.  Note that {} would be
ambiguous for perfecting forwarding to work.



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