diff options
| author | MLIR Team <no-reply@google.com> | 2019-11-25 14:44:20 -0800 |
|---|---|---|
| committer | A. Unique TensorFlower <gardener@tensorflow.org> | 2019-11-25 14:44:52 -0800 |
| commit | 1012c492f0ea6170eb94e2bd5c353340588a4925 (patch) | |
| tree | fc14cf48474d0bae439e0ea4c57673f2079dc7ac /mlir/test/Target | |
| parent | 38d7870ee537e21847ec4a67c725f2321e785024 (diff) | |
| download | bcm5719-llvm-1012c492f0ea6170eb94e2bd5c353340588a4925.tar.gz bcm5719-llvm-1012c492f0ea6170eb94e2bd5c353340588a4925.zip | |
Allow LLVM::ExtractElementOp to have non-i32 indices.
Also change the text format a bit, so that indices are braced by squares.
PiperOrigin-RevId: 282437095
Diffstat (limited to 'mlir/test/Target')
| -rw-r--r-- | mlir/test/Target/llvmir.mlir | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/mlir/test/Target/llvmir.mlir b/mlir/test/Target/llvmir.mlir index 8895668bfe5..a54b9f9ab47 100644 --- a/mlir/test/Target/llvmir.mlir +++ b/mlir/test/Target/llvmir.mlir @@ -941,15 +941,24 @@ llvm.func @fcmp(%arg0: !llvm.float, %arg1: !llvm.float) { // CHECK-LABEL: @vect llvm.func @vect(%arg0: !llvm<"<4 x float>">, %arg1: !llvm.i32, %arg2: !llvm.float) { - // CHECK-NEXT: extractelement <4 x float> {{.*}}, i32 {{.*}} - // CHECK-NEXT: insertelement <4 x float> {{.*}}, float %2, i32 {{.*}} + // CHECK-NEXT: extractelement <4 x float> {{.*}}, i32 + // CHECK-NEXT: insertelement <4 x float> {{.*}}, float %2, i32 // CHECK-NEXT: shufflevector <4 x float> {{.*}}, <4 x float> {{.*}}, <5 x i32> <i32 0, i32 0, i32 0, i32 0, i32 7> - %0 = llvm.extractelement %arg0, %arg1 : !llvm<"<4 x float>"> - %1 = llvm.insertelement %arg0, %arg2, %arg1 : !llvm<"<4 x float>"> + %0 = llvm.extractelement %arg0[%arg1 : !llvm.i32] : !llvm<"<4 x float>"> + %1 = llvm.insertelement %arg2, %arg0[%arg1 : !llvm.i32] : !llvm<"<4 x float>"> %2 = llvm.shufflevector %arg0, %arg0 [0 : i32, 0 : i32, 0 : i32, 0 : i32, 7 : i32] : !llvm<"<4 x float>">, !llvm<"<4 x float>"> llvm.return } +// CHECK-LABEL: @vect_i64idx +llvm.func @vect_i64idx(%arg0: !llvm<"<4 x float>">, %arg1: !llvm.i64, %arg2: !llvm.float) { + // CHECK-NEXT: extractelement <4 x float> {{.*}}, i64 + // CHECK-NEXT: insertelement <4 x float> {{.*}}, float %2, i64 + %0 = llvm.extractelement %arg0[%arg1 : !llvm.i64] : !llvm<"<4 x float>"> + %1 = llvm.insertelement %arg2, %arg0[%arg1 : !llvm.i64] : !llvm<"<4 x float>"> + llvm.return +} + // CHECK-LABEL: @alloca llvm.func @alloca(%size : !llvm.i64) { // CHECK: alloca |

