[X86] combineTargetShuffle - commute VPERMV3 shuffles so any load is on the RHS
[llvm-project.git] / mlir / test / IR / test-func-erase-result.mlir
blob8fe40b2fdfcbc8b5e276a87394e521009606af3c
1 // RUN: mlir-opt %s -test-func-erase-result -split-input-file | FileCheck %s
3 // CHECK: func private @f(){{$}}
4 // CHECK-NOT: attributes{{.*}}result
5 func.func private @f() -> (f32 {test.erase_this_result})
7 // -----
9 // CHECK: func private @f() -> (f32 {test.A})
10 // CHECK-NOT: attributes{{.*}}result
11 func.func private @f() -> (
12   f32 {test.erase_this_result},
13   f32 {test.A}
16 // -----
18 // CHECK: func private @f() -> (f32 {test.A})
19 // CHECK-NOT: attributes{{.*}}result
20 func.func private @f() -> (
21   f32 {test.A},
22   f32 {test.erase_this_result}
25 // -----
27 // CHECK: func private @f() -> (f32 {test.A}, f32 {test.B})
28 // CHECK-NOT: attributes{{.*}}result
29 func.func private @f() -> (
30   f32 {test.A},
31   f32 {test.erase_this_result},
32   f32 {test.B}
35 // -----
37 // CHECK: func private @f() -> (f32 {test.A}, f32 {test.B})
38 // CHECK-NOT: attributes{{.*}}result
39 func.func private @f() -> (
40   f32 {test.A},
41   f32 {test.erase_this_result},
42   f32 {test.erase_this_result},
43   f32 {test.B}
46 // -----
48 // CHECK: func private @f() -> (f32 {test.A}, f32 {test.B}, f32 {test.C})
49 // CHECK-NOT: attributes{{.*}}result
50 func.func private @f() -> (
51   f32 {test.A},
52   f32 {test.erase_this_result},
53   f32 {test.B},
54   f32 {test.erase_this_result},
55   f32 {test.C}
58 // -----
60 // CHECK: func private @f() -> (tensor<1xf32>, tensor<2xf32>, tensor<3xf32>)
61 // CHECK-NOT: attributes{{.*}}result
62 func.func private @f() -> (
63   tensor<1xf32>,
64   f32 {test.erase_this_result},
65   tensor<2xf32>,
66   f32 {test.erase_this_result},
67   tensor<3xf32>