Skip to content

Commit 5754934

Browse files
silee2drprajap
andauthored
Update LLVM SHA (#499)
* refactor: update llvm SHA * Update LLVM SHA. Co-authored-by: Dimple Prajapati <[email protected]>
1 parent 685ba66 commit 5754934

File tree

19 files changed

+376
-375
lines changed

19 files changed

+376
-375
lines changed

build_tools/llvm_version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2a827e4a988b614bc6f70abe00308ceeb50dcd0a
1+
06e972ed91e6d173025dc122d202f546d1a5e8ce

lib/Conversion/PTensorToLinalg/PTensorToLinalg.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,8 @@ struct ARangeLowering
212212
// map needed for output only (we have no input tensor)
213213
const ::mlir::AffineMap maps[] = {
214214
::mlir::AffineMap::getMultiDimIdentityMap(1, rewriter.getContext())};
215-
llvm::SmallVector<::mlir::StringRef> iterators(1, "parallel");
215+
llvm::SmallVector<mlir::utils::IteratorType> iterators(
216+
1, mlir::utils::IteratorType::parallel);
216217

217218
// The body; accepting no input, the lambda simply captures start and step
218219
auto body = [&start, &step, &elTyp, &intTyp](::mlir::OpBuilder &builder,
@@ -381,12 +382,12 @@ struct EWBinOpLowering
381382
// different shapes
382383
auto rank = static_cast<unsigned>(retRtTyp.getRank());
383384
llvm::SmallVector<::mlir::OpFoldResult> shapeVVec(rank);
384-
llvm::SmallVector<mlir::StringRef> iterators(rank);
385+
llvm::SmallVector<mlir::utils::IteratorType> iterators(rank);
385386
for (auto i : llvm::seq<unsigned>(0u, rank)) {
386387
shapeVVec[i] =
387388
rewriter.create<::mlir::tensor::DimOp>(loc, lhsTnsr, i).getResult();
388389
// iterate in parallel
389-
iterators[i] = "parallel";
390+
iterators[i] = mlir::utils::IteratorType::parallel;
390391
}
391392

392393
// init tensor
@@ -503,7 +504,8 @@ struct ReductionOpLowering
503504
// output map is "*->()"
504505
auto omap = ::mlir::AffineMap::get(inpRank, 0, rewriter.getContext());
505506
const ::mlir::AffineMap maps[] = {inpMap, omap};
506-
llvm::SmallVector<mlir::StringRef> iterators(inpRank, "reduction");
507+
llvm::SmallVector<mlir::utils::IteratorType> iterators(
508+
inpRank, mlir::utils::IteratorType::reduction);
507509

508510
// create reduction op as linalg::generic
509511
const ::imex::ptensor::ReduceOpId ropid =
Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,42 @@
11
# linalg dialect to gpu dialect lowering pipeline
22
# Ready for vulkan runner or narrow scope l0/sycl runner starting from GPU dialect.
3-
convert-tensor-to-linalg
4-
arith-bufferize
5-
func.func(empty-tensor-to-alloc-tensor
6-
eliminate-alloc-tensors
3+
builtin.module(convert-tensor-to-linalg
4+
arith-bufferize
5+
func.func(empty-tensor-to-alloc-tensor
6+
eliminate-empty-tensors
77
scf-bufferize
88
shape-bufferize
99
linalg-bufferize
1010
bufferization-bufferize
1111
tensor-bufferize)
12-
func-bufferize
13-
func.func(finalizing-bufferize
12+
func-bufferize
13+
func.func(finalizing-bufferize
1414
convert-linalg-to-parallel-loops
1515
gpu-map-parallel-loops
1616
convert-parallel-loops-to-gpu)
1717
# insert-gpu-allocs pass can have client-api = opencl or vulkan args
18-
func.func(insert-gpu-allocs{client-api=opencl})
19-
canonicalize
20-
normalize-memrefs
18+
func.func(insert-gpu-allocs{client-api=opencl})
19+
canonicalize
20+
normalize-memrefs
2121
# Unstride memrefs does not seem to be needed.
22-
#func.func(unstride-memrefs)
23-
func.func(lower-affine)
24-
gpu-kernel-outlining
25-
canonicalize
26-
cse
22+
# func.func(unstride-memrefs)
23+
func.func(lower-affine)
24+
gpu-kernel-outlining
25+
canonicalize
26+
cse
2727
# The following set-spirv-* passes can have client-api = opencl or vulkan args
28-
set-spirv-capabilities{client-api=opencl}
29-
gpu.module(set-spirv-abi-attrs{client-api=opencl})
30-
canonicalize
31-
fold-memref-alias-ops
32-
imex-convert-gpu-to-spirv
33-
spirv.module(spirv-lower-abi-attrs
28+
set-spirv-capabilities{client-api=opencl}
29+
gpu.module(set-spirv-abi-attrs{client-api=opencl})
30+
canonicalize
31+
fold-memref-alias-ops
32+
imex-convert-gpu-to-spirv
33+
spirv.module(spirv-lower-abi-attrs
3434
spirv-update-vce)
35-
func.func(llvm-request-c-wrappers)
36-
serialize-spirv
37-
convert-gpu-to-gpux
38-
convert-func-to-llvm
39-
# Passes to be enable later
40-
convert-gpux-to-llvm
41-
convert-memref-to-llvm
42-
reconcile-unrealized-casts
35+
func.func(llvm-request-c-wrappers)
36+
serialize-spirv
37+
convert-gpu-to-gpux
38+
convert-func-to-llvm
39+
convert-gpux-to-llvm
40+
convert-memref-to-llvm
41+
reconcile-unrealized-casts)
4342
# End
Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
11
# linalg dialect to gpu dialect lowering pipeline
22
# Ready for vulkan runner or narrow scope l0/sycl runner starting from GPU dialect.
3-
convert-tensor-to-linalg
4-
arith-bufferize
5-
func.func(empty-tensor-to-alloc-tensor
6-
eliminate-alloc-tensors
3+
builtin.module(convert-tensor-to-linalg
4+
arith-bufferize
5+
func.func(empty-tensor-to-alloc-tensor
6+
eliminate-empty-tensors
77
scf-bufferize
88
shape-bufferize
99
linalg-bufferize
1010
bufferization-bufferize
1111
tensor-bufferize)
12-
func-bufferize
13-
func.func(finalizing-bufferize
12+
func-bufferize
13+
func.func(finalizing-bufferize
1414
convert-linalg-to-parallel-loops
1515
gpu-map-parallel-loops
1616
convert-parallel-loops-to-gpu)
1717
# insert-gpu-allocs pass can have client-api = opencl or vulkan args
18-
func.func(insert-gpu-allocs)
19-
canonicalize
20-
normalize-memrefs
18+
func.func(insert-gpu-allocs)
19+
canonicalize
20+
normalize-memrefs
2121
# Unstride memrefs does not seem to be needed.
22-
#func.func(unstride-memrefs)
23-
func.func(lower-affine)
24-
gpu-kernel-outlining
25-
canonicalize
26-
cse
22+
# func.func(unstride-memrefs)
23+
func.func(lower-affine)
24+
gpu-kernel-outlining
25+
canonicalize
26+
cse
2727
# The following set-spirv-* passes can have client-api = opencl or vulkan args
28-
set-spirv-capabilities
29-
gpu.module(set-spirv-abi-attrs)
30-
canonicalize
28+
set-spirv-capabilities
29+
gpu.module(set-spirv-abi-attrs)
30+
canonicalize)
3131
# End

test/Jax/gordon/linalg-to-cpu.pp

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
# linalg dialect to gpu dialect lowering pipeline
2-
inline
3-
convert-tensor-to-linalg
4-
convert-elementwise-to-linalg
5-
arith-bufferize
6-
func.func(empty-tensor-to-alloc-tensor
7-
eliminate-alloc-tensors
2+
builtin.module(inline
3+
convert-tensor-to-linalg
4+
convert-elementwise-to-linalg
5+
arith-bufferize
6+
func.func(empty-tensor-to-alloc-tensor
7+
eliminate-empty-tensors
88
scf-bufferize
99
shape-bufferize
1010
linalg-bufferize
1111
bufferization-bufferize
1212
tensor-bufferize)
13-
func-bufferize
14-
func.func(finalizing-bufferize
13+
func-bufferize
14+
func.func(finalizing-bufferize
1515
convert-linalg-to-loops)
16-
convert-scf-to-cf
17-
convert-linalg-to-llvm
18-
convert-cf-to-llvm
19-
convert-arith-to-llvm
20-
convert-math-to-llvm
21-
convert-complex-to-llvm
22-
convert-index-to-llvm
23-
convert-memref-to-llvm
24-
convert-func-to-llvm
25-
reconcile-unrealized-casts
16+
convert-scf-to-cf
17+
convert-linalg-to-llvm
18+
convert-cf-to-llvm
19+
convert-arith-to-llvm
20+
convert-math-to-llvm
21+
convert-complex-to-llvm
22+
convert-index-to-llvm
23+
convert-memref-to-llvm
24+
convert-func-to-llvm
25+
reconcile-unrealized-casts)
2626
# End

test/Jax/gordon/linalg-to-llvm.pp

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,44 @@
11
# linalg dialect to gpu dialect lowering pipeline
22
# Ready for vulkan runner or narrow scope l0/sycl runner starting from GPU dialect.
3-
convert-tensor-to-linalg
4-
arith-bufferize
5-
func.func(empty-tensor-to-alloc-tensor
6-
eliminate-alloc-tensors
3+
builtin.module(convert-tensor-to-linalg
4+
arith-bufferize
5+
func.func(empty-tensor-to-alloc-tensor
6+
eliminate-empty-tensors
77
scf-bufferize
88
shape-bufferize
99
linalg-bufferize
1010
bufferization-bufferize
1111
tensor-bufferize)
12-
func-bufferize
13-
func.func(finalizing-bufferize
12+
func-bufferize
13+
func.func(finalizing-bufferize
1414
convert-linalg-to-parallel-loops
1515
imex-add-outer-parallel-loop
1616
gpu-map-parallel-loops
1717
convert-parallel-loops-to-gpu)
1818
# insert-gpu-allocs pass can have client-api = opencl or vulkan args
19-
func.func(insert-gpu-allocs{client-api=opencl})
20-
canonicalize
21-
normalize-memrefs
19+
func.func(insert-gpu-allocs{client-api=opencl})
20+
canonicalize
21+
normalize-memrefs
2222
# Unstride memrefs does not seem to be needed.
23-
#func.func(unstride-memrefs)
24-
func.func(lower-affine)
25-
gpu-kernel-outlining
26-
canonicalize
27-
cse
23+
# func.func(unstride-memrefs)
24+
func.func(lower-affine)
25+
gpu-kernel-outlining
26+
canonicalize
27+
cse
2828
# The following set-spirv-* passes can have client-api = opencl or vulkan args
29-
set-spirv-capabilities{client-api=opencl}
30-
gpu.module(set-spirv-abi-attrs{client-api=opencl})
31-
canonicalize
32-
fold-memref-alias-ops
33-
imex-convert-gpu-to-spirv
34-
spirv.module(spirv-lower-abi-attrs
29+
set-spirv-capabilities{client-api=opencl}
30+
gpu.module(set-spirv-abi-attrs{client-api=opencl})
31+
canonicalize
32+
fold-memref-alias-ops
33+
imex-convert-gpu-to-spirv
34+
spirv.module(spirv-lower-abi-attrs
3535
spirv-update-vce)
36-
func.func(llvm-request-c-wrappers)
37-
serialize-spirv
38-
convert-gpu-to-gpux
39-
convert-func-to-llvm
40-
convert-math-to-llvm
41-
convert-gpux-to-llvm
42-
convert-memref-to-llvm
43-
reconcile-unrealized-casts
36+
func.func(llvm-request-c-wrappers)
37+
serialize-spirv
38+
convert-gpu-to-gpux
39+
convert-func-to-llvm
40+
convert-math-to-llvm
41+
convert-gpux-to-llvm
42+
convert-memref-to-llvm
43+
reconcile-unrealized-casts)
4444
# End

test/Jax/janet/linalg-to-cpu.pp

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
# linalg dialect to gpu dialect lowering pipeline
2-
inline
3-
convert-tensor-to-linalg
4-
convert-elementwise-to-linalg
5-
arith-bufferize
6-
func.func(empty-tensor-to-alloc-tensor
7-
eliminate-alloc-tensors
2+
builtin.module(inline
3+
convert-tensor-to-linalg
4+
convert-elementwise-to-linalg
5+
arith-bufferize
6+
func.func(empty-tensor-to-alloc-tensor
7+
eliminate-empty-tensors
88
scf-bufferize
99
shape-bufferize
1010
linalg-bufferize
1111
bufferization-bufferize
1212
tensor-bufferize)
13-
func-bufferize
14-
func.func(finalizing-bufferize
13+
func-bufferize
14+
func.func(finalizing-bufferize
1515
convert-linalg-to-loops)
16-
convert-scf-to-cf
17-
convert-linalg-to-llvm
18-
convert-cf-to-llvm
19-
convert-arith-to-llvm
20-
convert-math-to-llvm
21-
convert-complex-to-llvm
22-
convert-index-to-llvm
23-
convert-memref-to-llvm
24-
convert-func-to-llvm
25-
reconcile-unrealized-casts
16+
convert-scf-to-cf
17+
convert-linalg-to-llvm
18+
convert-cf-to-llvm
19+
convert-arith-to-llvm
20+
convert-math-to-llvm
21+
convert-complex-to-llvm
22+
convert-index-to-llvm
23+
convert-memref-to-llvm
24+
convert-func-to-llvm
25+
reconcile-unrealized-casts)
2626
# End

test/Jax/janet/linalg-to-llvm.pp

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,44 @@
11
# linalg dialect to gpu dialect lowering pipeline
22
# Ready for vulkan runner or narrow scope l0/sycl runner starting from GPU dialect.
3-
convert-tensor-to-linalg
4-
arith-bufferize
5-
func.func(empty-tensor-to-alloc-tensor
6-
eliminate-alloc-tensors
3+
builtin.module(convert-tensor-to-linalg
4+
arith-bufferize
5+
func.func(empty-tensor-to-alloc-tensor
6+
eliminate-empty-tensors
77
scf-bufferize
88
shape-bufferize
99
linalg-bufferize
1010
bufferization-bufferize
1111
tensor-bufferize)
12-
func-bufferize
13-
func.func(finalizing-bufferize
12+
func-bufferize
13+
func.func(finalizing-bufferize
1414
convert-linalg-to-parallel-loops
1515
imex-add-outer-parallel-loop
1616
gpu-map-parallel-loops
1717
convert-parallel-loops-to-gpu)
1818
# insert-gpu-allocs pass can have client-api = opencl or vulkan args
19-
func.func(insert-gpu-allocs{client-api=opencl})
20-
canonicalize
21-
normalize-memrefs
19+
func.func(insert-gpu-allocs{client-api=opencl})
20+
canonicalize
21+
normalize-memrefs
2222
# Unstride memrefs does not seem to be needed.
23-
#func.func(unstride-memrefs)
24-
func.func(lower-affine)
25-
gpu-kernel-outlining
26-
canonicalize
27-
cse
23+
# func.func(unstride-memrefs)
24+
func.func(lower-affine)
25+
gpu-kernel-outlining
26+
canonicalize
27+
cse
2828
# The following set-spirv-* passes can have client-api = opencl or vulkan args
29-
set-spirv-capabilities{client-api=opencl}
30-
gpu.module(set-spirv-abi-attrs{client-api=opencl})
31-
canonicalize
32-
fold-memref-alias-ops
33-
imex-convert-gpu-to-spirv
34-
spirv.module(spirv-lower-abi-attrs
29+
set-spirv-capabilities{client-api=opencl}
30+
gpu.module(set-spirv-abi-attrs{client-api=opencl})
31+
canonicalize
32+
fold-memref-alias-ops
33+
imex-convert-gpu-to-spirv
34+
spirv.module(spirv-lower-abi-attrs
3535
spirv-update-vce)
36-
func.func(llvm-request-c-wrappers)
37-
serialize-spirv
38-
convert-gpu-to-gpux
39-
convert-func-to-llvm
40-
convert-math-to-llvm
41-
convert-gpux-to-llvm
42-
convert-memref-to-llvm
43-
reconcile-unrealized-casts
36+
func.func(llvm-request-c-wrappers)
37+
serialize-spirv
38+
convert-gpu-to-gpux
39+
convert-func-to-llvm
40+
convert-math-to-llvm
41+
convert-gpux-to-llvm
42+
convert-memref-to-llvm
43+
reconcile-unrealized-casts)
4444
# End

0 commit comments

Comments
 (0)