[all-commits] [llvm/llvm-project] f52ec5: [llvm][DenseMapInfo] Add an info specialization fo...
River Riddle via All-commits
all-commits at lists.llvm.org
Tue Apr 14 15:22:41 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: f52ec5d5c088305298fa2a19e4c5b7380bcd98e8
https://github.com/llvm/llvm-project/commit/f52ec5d5c088305298fa2a19e4c5b7380bcd98e8
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-04-14 (Tue, 14 Apr 2020)
Changed paths:
M llvm/include/llvm/ADT/DenseMapInfo.h
M mlir/include/mlir/Support/STLExtras.h
Log Message:
-----------
[llvm][DenseMapInfo] Add an info specialization for std::tuple
This revision adds a DenseMapInfo overload for std::tuples whose elements all have a DenseMapInfo. The implementation is similar to that of std::pair, and has been used within MLIR for over a year.
Differential Revision: https://reviews.llvm.org/D78057
Commit: 8cbe371c28a30ca5b0775b095a754702e57aa7ea
https://github.com/llvm/llvm-project/commit/8cbe371c28a30ca5b0775b095a754702e57aa7ea
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-04-14 (Tue, 14 Apr 2020)
Changed paths:
M llvm/include/llvm/ADT/STLExtras.h
M llvm/unittests/ADT/CMakeLists.txt
A llvm/unittests/ADT/TypeTraitsTest.cpp
M mlir/include/mlir/ADT/TypeSwitch.h
M mlir/include/mlir/IR/Matchers.h
M mlir/include/mlir/IR/OpDefinition.h
M mlir/include/mlir/Pass/AnalysisManager.h
M mlir/include/mlir/Support/STLExtras.h
M mlir/include/mlir/Support/StorageUniquer.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/IR/SymbolTable.cpp
Log Message:
-----------
[llvm][STLExtras] Add various type_trait utilities currently present in MLIR
This revision moves several type_trait utilities from MLIR into LLVM. Namely, this revision adds:
is_detected - This matches the experimental std::is_detected
is_invocable - This matches the c++17 std::is_invocable
function_traits - A utility traits class for getting the argument and result types of a callable type
Differential Revision: https://reviews.llvm.org/D78059
Commit: 204c3b551626a925dfdc3822a6f240bdc8ef5d3a
https://github.com/llvm/llvm-project/commit/204c3b551626a925dfdc3822a6f240bdc8ef5d3a
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-04-14 (Tue, 14 Apr 2020)
Changed paths:
M llvm/include/llvm/ADT/STLExtras.h
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/IndexedAccessorTest.cpp
M mlir/include/mlir/Dialect/SPIRV/SPIRVTypes.h
M mlir/include/mlir/IR/Attributes.h
M mlir/include/mlir/IR/BlockSupport.h
M mlir/include/mlir/IR/OpImplementation.h
M mlir/include/mlir/IR/OperationSupport.h
M mlir/include/mlir/IR/Region.h
M mlir/include/mlir/IR/UseDefLists.h
M mlir/include/mlir/Support/STLExtras.h
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/lib/Dialect/GPU/Transforms/MemoryPromotion.cpp
M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
M mlir/lib/Dialect/SPIRV/SPIRVOps.cpp
M mlir/lib/Dialect/StandardOps/IR/Ops.cpp
M mlir/lib/IR/Attributes.cpp
M mlir/lib/IR/Module.cpp
M mlir/lib/IR/OperationSupport.cpp
M mlir/lib/IR/Region.cpp
M mlir/lib/IR/SymbolTable.cpp
M mlir/lib/Transforms/Utils/LoopUtils.cpp
M mlir/unittests/CMakeLists.txt
R mlir/unittests/Support/CMakeLists.txt
R mlir/unittests/Support/IndexedAccessorTest.cpp
Log Message:
-----------
[llvm][STLExtras] Move various iterator/range utilities from MLIR to LLVM
This revision moves the various range utilities present in MLIR to LLVM to enable greater reuse. This revision moves the following utilities:
* indexed_accessor_*
This is set of utility iterator/range base classes that allow for building a range class where the iterators are represented by an object+index pair.
* make_second_range
Given a range of pairs, returns a range iterating over the `second` elements.
* hasSingleElement
Returns if the given range has 1 element. size() == 1 checks end up being very common, but size() is not always O(1) (e.g., ilist). This method provides O(1) checks for those cases.
Differential Revision: https://reviews.llvm.org/D78064
Commit: 2f21a579665d44330b964cb47eece8bb9ab5a90c
https://github.com/llvm/llvm-project/commit/2f21a579665d44330b964cb47eece8bb9ab5a90c
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-04-14 (Tue, 14 Apr 2020)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M llvm/include/llvm/ADT/STLExtras.h
M mlir/docs/Tutorials/Toy/Ch-6.md
M mlir/docs/Tutorials/Toy/Ch-7.md
M mlir/examples/toy/Ch1/parser/AST.cpp
M mlir/examples/toy/Ch2/parser/AST.cpp
M mlir/examples/toy/Ch3/parser/AST.cpp
M mlir/examples/toy/Ch4/parser/AST.cpp
M mlir/examples/toy/Ch5/parser/AST.cpp
M mlir/examples/toy/Ch6/parser/AST.cpp
M mlir/examples/toy/Ch7/mlir/Dialect.cpp
M mlir/examples/toy/Ch7/parser/AST.cpp
M mlir/include/mlir/IR/Diagnostics.h
M mlir/include/mlir/IR/OpImplementation.h
M mlir/include/mlir/Pass/PassOptions.h
M mlir/include/mlir/Support/STLExtras.h
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/LoopOps/LoopOps.cpp
M mlir/lib/Dialect/Quant/IR/TypeParser.cpp
M mlir/lib/Dialect/SPIRV/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/SPIRVOps.cpp
M mlir/lib/Dialect/Vector/VectorOps.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/FunctionImplementation.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/lib/Pass/PassRegistry.cpp
M mlir/lib/Transforms/DialectConversion.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
M mlir/test/lib/Dialect/Affine/TestVectorizationUtils.cpp
M mlir/test/lib/Dialect/SPIRV/TestAvailability.cpp
M mlir/test/lib/Transforms/TestMemRefStrideCalculation.cpp
M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
M mlir/tools/mlir-tblgen/LLVMIRIntrinsicGen.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
M mlir/tools/mlir-tblgen/RewriterGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
Log Message:
-----------
[llvm][STLExtras] Move the algorithm `interleave*` methods from MLIR to LLVM
These have proved incredibly useful for interleaving values between a range w.r.t to streams. After this revision, the mlir/Support/STLExtras.h is empty. A followup revision will remove it from the tree.
Differential Revision: https://reviews.llvm.org/D78067
Commit: ebf190fcda0b8b4e9de405ba13ddbc679550644b
https://github.com/llvm/llvm-project/commit/ebf190fcda0b8b4e9de405ba13ddbc679550644b
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-04-14 (Tue, 14 Apr 2020)
Changed paths:
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
A llvm/include/llvm/ADT/TypeSwitch.h
M llvm/unittests/ADT/CMakeLists.txt
A llvm/unittests/ADT/TypeSwitchTest.cpp
M mlir/examples/toy/Ch1/parser/AST.cpp
M mlir/examples/toy/Ch2/parser/AST.cpp
M mlir/examples/toy/Ch3/parser/AST.cpp
M mlir/examples/toy/Ch4/parser/AST.cpp
M mlir/examples/toy/Ch5/parser/AST.cpp
M mlir/examples/toy/Ch6/parser/AST.cpp
M mlir/examples/toy/Ch7/parser/AST.cpp
R mlir/include/mlir/ADT/TypeSwitch.h
M mlir/include/mlir/Support/LLVM.h
M mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
M mlir/lib/Dialect/SPIRV/Serialization/Serializer.cpp
M mlir/lib/TableGen/Operator.cpp
M mlir/lib/TableGen/Successor.cpp
M mlir/lib/TableGen/Type.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Transforms/Utils/Utils.cpp
M mlir/test/lib/Transforms/TestMemRefBoundCheck.cpp
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
R mlir/unittests/ADT/CMakeLists.txt
R mlir/unittests/ADT/TypeSwitchTest.cpp
M mlir/unittests/CMakeLists.txt
Log Message:
-----------
[llvm][ADT] Move TypeSwitch class from MLIR to LLVM
This class implements a switch-like dispatch statement for a value of 'T' using dyn_cast functionality. Each `Case<T>` takes a callable to be invoked if the root value isa<T>, the callable is invoked with the result of dyn_cast<T>() as a parameter.
Differential Revision: https://reviews.llvm.org/D78070
Commit: 92f1562f3dd158d837c66a1dd20ae745477d9c36
https://github.com/llvm/llvm-project/commit/92f1562f3dd158d837c66a1dd20ae745477d9c36
Author: River Riddle <riddleriver at gmail.com>
Date: 2020-04-14 (Tue, 14 Apr 2020)
Changed paths:
M llvm/unittests/ADT/TypeTraitsTest.cpp
M mlir/examples/toy/Ch1/parser/AST.cpp
M mlir/examples/toy/Ch2/parser/AST.cpp
M mlir/examples/toy/Ch3/parser/AST.cpp
M mlir/examples/toy/Ch4/parser/AST.cpp
M mlir/examples/toy/Ch5/parser/AST.cpp
M mlir/examples/toy/Ch6/parser/AST.cpp
M mlir/examples/toy/Ch7/parser/AST.cpp
M mlir/include/mlir/IR/Diagnostics.h
M mlir/include/mlir/Pass/PassOptions.h
R mlir/include/mlir/Support/STLExtras.h
M mlir/include/mlir/Support/StorageUniquer.h
M mlir/lib/Analysis/AffineAnalysis.cpp
M mlir/lib/Analysis/SliceAnalysis.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
M mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
M mlir/lib/Dialect/LoopOps/LoopOps.cpp
M mlir/lib/Dialect/StandardOps/IR/Ops.cpp
M mlir/lib/Dialect/Vector/VectorOps.cpp
M mlir/lib/Dialect/Vector/VectorTransforms.cpp
M mlir/lib/Dialect/Vector/VectorUtils.cpp
M mlir/lib/IR/AffineExpr.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/StandardTypes.cpp
M mlir/lib/Parser/Parser.cpp
M mlir/lib/TableGen/OpTrait.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
M mlir/test/lib/Dialect/Affine/TestVectorizationUtils.cpp
M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
M mlir/tools/mlir-tblgen/DialectGen.cpp
M mlir/tools/mlir-tblgen/LLVMIRIntrinsicGen.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
M mlir/tools/mlir-tblgen/RewriterGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
Log Message:
-----------
[mlir][NFC] Remove the STLExtras.h header file now that it has been merged into LLVM.
Now that no more utilities exist within, this file can be deleted.
Differential Revision: https://reviews.llvm.org/D78079
Compare: https://github.com/llvm/llvm-project/compare/483f2783ae01...92f1562f3dd1
More information about the All-commits
mailing list