@@ -3646,11 +3646,11 @@ func.func @torch.aten.constant_pad_nd$basic(%arg0: !torch.vtensor<[1,1,20,20,4,4
36463646// CHECK: %[[VAL_9:.*]] = torch.prim.ListConstruct %[[VAL_6]], %[[VAL_6]] : (!torch.int, !torch.int) -> !torch.list<int>
36473647// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
36483648// CHECK: %[[VAL_11:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<10xf32>}> : () -> tensor<10xf32>
3649- // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<5x2x10x20xf32 >) -> tensor<5x10x20x2xf32 >
3650- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<10x2x3x3xf32 >) -> tensor<10x3x3x2xf32 >
3649+ // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<10x2x3x3xf32 >) -> tensor<10x3x3x2xf32 >
3650+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<5x2x10x20xf32 >) -> tensor<5x10x20x2xf32 >
36513651// CHECK: %[[VAL_14:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
36523652// CHECK: %[[VAL_15:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3653- // CHECK: %[[VAL_16:.*]] = tosa.conv2d %[[VAL_12 ]], %[[VAL_13 ]], %[[VAL_11]], %[[VAL_14]], %[[VAL_15]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 3, 3, 3, 3>, stride = array<i64: 1, 1>} : (tensor<5x10x20x2xf32>, tensor<10x3x3x2xf32>, tensor<10xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<5x14x24x10xf32>
3653+ // CHECK: %[[VAL_16:.*]] = tosa.conv2d %[[VAL_13 ]], %[[VAL_12 ]], %[[VAL_11]], %[[VAL_14]], %[[VAL_15]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 3, 3, 3, 3>, stride = array<i64: 1, 1>} : (tensor<5x10x20x2xf32>, tensor<10x3x3x2xf32>, tensor<10xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<5x14x24x10xf32>
36543654// CHECK: %[[VAL_17:.*]] = tosa.transpose %[[VAL_16]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<5x14x24x10xf32>) -> tensor<5x10x14x24xf32>
36553655// CHECK: %[[VAL_18:.*]] = torch_c.from_builtin_tensor %[[VAL_17]] : tensor<5x10x14x24xf32> -> !torch.vtensor<[5,10,14,24],f32>
36563656// CHECK: return %[[VAL_18]] : !torch.vtensor<[5,10,14,24],f32>
@@ -3685,13 +3685,13 @@ func.func @torch.aten.convolution$basic(%arg0: !torch.vtensor<[5,2,10,20],f32>)
36853685// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct %[[VAL_4]], %[[VAL_4]] : (!torch.int, !torch.int) -> !torch.list<int>
36863686// CHECK: %[[VAL_11:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
36873687// CHECK: %[[VAL_12:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<4xf32>}> : () -> tensor<4xf32>
3688- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<5x4x10x20xf32 >) -> tensor<5x10x20x4xf32 >
3689- // CHECK: %[[VAL_14:.*]] = tosa.transpose %[[VAL_5]] {perms = array<i32: 2 , 3, 0 , 1>} : ( tensor<4x1x3x3xf32> ) -> tensor<3x3x4x1xf32 >
3690- // CHECK: %[[VAL_15:.*]] = tosa.const_shape {values = dense<[3, 3, 4, 1]> : tensor<4xindex>} : () -> !tosa.shape<4>
3691- // CHECK: %[[VAL_16:.*]] = tosa.reshape %[[VAL_14]], %[[VAL_15]] : (tensor<3x3x4x1xf32>, !tosa.shape<4> ) -> tensor<3x3x4x1xf32 >
3688+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_5 ]] {perms = array<i32: 2, 3, 0, 1>} : (tensor<4x1x3x3xf32 >) -> tensor<3x3x4x1xf32 >
3689+ // CHECK: %[[VAL_14:.*]] = tosa.const_shape {values = dense<[3 , 3, 4 , 1]> : tensor<4xindex>} : ( ) -> !tosa.shape<4 >
3690+ // CHECK: %[[VAL_15:.*]] = tosa.reshape %[[VAL_13]], %[[VAL_14]] : ( tensor<3x3x4x1xf32>, !tosa.shape<4>) -> tensor<3x3x4x1xf32 >
3691+ // CHECK: %[[VAL_16:.*]] = tosa.transpose %[[VAL_1]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<5x4x10x20xf32> ) -> tensor<5x10x20x4xf32 >
36923692// CHECK: %[[VAL_17:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
36933693// CHECK: %[[VAL_18:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3694- // CHECK: %[[VAL_19:.*]] = tosa.depthwise_conv2d %[[VAL_13 ]], %[[VAL_16 ]], %[[VAL_12]], %[[VAL_17]], %[[VAL_18]] {acc_type = f32, dilation = array<i64: 3, 3>, pad = array<i64: 3, 2, 3, 2>, stride = array<i64: 2, 2>} : (tensor<5x10x20x4xf32>, tensor<3x3x4x1xf32>, tensor<4xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<5x5x10x4xf32>
3694+ // CHECK: %[[VAL_19:.*]] = tosa.depthwise_conv2d %[[VAL_16 ]], %[[VAL_15 ]], %[[VAL_12]], %[[VAL_17]], %[[VAL_18]] {acc_type = f32, dilation = array<i64: 3, 3>, pad = array<i64: 3, 2, 3, 2>, stride = array<i64: 2, 2>} : (tensor<5x10x20x4xf32>, tensor<3x3x4x1xf32>, tensor<4xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<5x5x10x4xf32>
36953695// CHECK: %[[VAL_20:.*]] = tosa.transpose %[[VAL_19]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<5x5x10x4xf32>) -> tensor<5x4x5x10xf32>
36963696// CHECK: %[[VAL_21:.*]] = torch_c.from_builtin_tensor %[[VAL_20]] : tensor<5x4x5x10xf32> -> !torch.vtensor<[5,4,5,10],f32>
36973697// CHECK: return %[[VAL_21]] : !torch.vtensor<[5,4,5,10],f32>
@@ -3727,17 +3727,17 @@ func.func @torch.aten.convolution$depthwise(%arg0: !torch.vtensor<[5,4,10,20],f3
37273727// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct %[[VAL_3]], %[[VAL_3]] : (!torch.int, !torch.int) -> !torch.list<int>
37283728// CHECK: %[[VAL_11:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
37293729// CHECK: %[[VAL_12:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<128xf32>}> : () -> tensor<128xf32>
3730- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<1x64x56x56xf32 >) -> tensor<1x56x56x64xf32 >
3731- // CHECK: %[[VAL_14:.*]] = tosa.transpose %[[VAL_5 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<128x64x1x1xf32 >) -> tensor<128x1x1x64xf32 >
3730+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_5 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<128x64x1x1xf32 >) -> tensor<128x1x1x64xf32 >
3731+ // CHECK: %[[VAL_14:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<1x64x56x56xf32 >) -> tensor<1x56x56x64xf32 >
37323732// CHECK-DAG: %[[VAL_15:.*]] = tosa.const_shape {values = dense<0> : tensor<4xindex>} : () -> !tosa.shape<4>
37333733// CHECK-DAG: %[[VAL_16:.*]] = tosa.const_shape {values = dense<[1, 55, 56, 64]> : tensor<4xindex>} : () -> !tosa.shape<4>
3734- // CHECK: %[[VAL_17:.*]] = tosa.slice %[[VAL_13 ]], %[[VAL_15]], %[[VAL_16]] : (tensor<1x56x56x64xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<1x55x56x64xf32>
3734+ // CHECK: %[[VAL_17:.*]] = tosa.slice %[[VAL_14 ]], %[[VAL_15]], %[[VAL_16]] : (tensor<1x56x56x64xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<1x55x56x64xf32>
37353735// CHECK-DAG: %[[VAL_18:.*]] = tosa.const_shape {values = dense<0> : tensor<4xindex>} : () -> !tosa.shape<4>
37363736// CHECK-DAG: %[[VAL_19:.*]] = tosa.const_shape {values = dense<[1, 55, 55, 64]> : tensor<4xindex>} : () -> !tosa.shape<4>
37373737// CHECK: %[[VAL_20:.*]] = tosa.slice %[[VAL_17]], %[[VAL_18]], %[[VAL_19]] : (tensor<1x55x56x64xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<1x55x55x64xf32>
37383738// CHECK: %[[VAL_21:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
37393739// CHECK: %[[VAL_22:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3740- // CHECK: %[[VAL_23:.*]] = tosa.conv2d %[[VAL_20]], %[[VAL_14 ]], %[[VAL_12]], %[[VAL_21]], %[[VAL_22]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 0, 0, 0, 0>, stride = array<i64: 2, 2>} : (tensor<1x55x55x64xf32>, tensor<128x1x1x64xf32>, tensor<128xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<1x28x28x128xf32>
3740+ // CHECK: %[[VAL_23:.*]] = tosa.conv2d %[[VAL_20]], %[[VAL_13 ]], %[[VAL_12]], %[[VAL_21]], %[[VAL_22]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 0, 0, 0, 0>, stride = array<i64: 2, 2>} : (tensor<1x55x55x64xf32>, tensor<128x1x1x64xf32>, tensor<128xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<1x28x28x128xf32>
37413741// CHECK: %[[VAL_24:.*]] = tosa.transpose %[[VAL_23]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<1x28x28x128xf32>) -> tensor<1x128x28x28xf32>
37423742// CHECK: %[[VAL_25:.*]] = torch_c.from_builtin_tensor %[[VAL_24]] : tensor<1x128x28x28xf32> -> !torch.vtensor<[1,128,28,28],f32>
37433743// CHECK: return %[[VAL_25]] : !torch.vtensor<[1,128,28,28],f32>
@@ -3772,11 +3772,11 @@ func.func @torch.aten.convolution$zero_pad_with_sliced_input(%arg0: !torch.vtens
37723772// CHECK: %[[VAL_9:.*]] = torch.prim.ListConstruct %[[VAL_3]], %[[VAL_3]] : (!torch.int, !torch.int) -> !torch.list<int>
37733773// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
37743774// CHECK: %[[VAL_11:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<32xf32>}> : () -> tensor<32xf32>
3775- // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<1x3x224x224xf32 >) -> tensor<1x224x224x3xf32 >
3776- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3775+ // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3776+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<1x3x224x224xf32 >) -> tensor<1x224x224x3xf32 >
37773777// CHECK: %[[VAL_14:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
37783778// CHECK: %[[VAL_15:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3779- // CHECK: %[[VAL_16:.*]] = tosa.conv2d %[[VAL_12 ]], %[[VAL_13 ]], %[[VAL_11]], %[[VAL_14]], %[[VAL_15]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 2, 2>} : (tensor<1x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<1x112x112x32xf32>
3779+ // CHECK: %[[VAL_16:.*]] = tosa.conv2d %[[VAL_13 ]], %[[VAL_12 ]], %[[VAL_11]], %[[VAL_14]], %[[VAL_15]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 2, 2>} : (tensor<1x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<1x112x112x32xf32>
37803780// CHECK: %[[VAL_17:.*]] = tosa.transpose %[[VAL_16]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<1x112x112x32xf32>) -> tensor<1x32x112x112xf32>
37813781// CHECK: %[[VAL_18:.*]] = torch_c.from_builtin_tensor %[[VAL_17]] : tensor<1x32x112x112xf32> -> !torch.vtensor<[1,32,112,112],f32>
37823782// CHECK: return %[[VAL_18]] : !torch.vtensor<[1,32,112,112],f32>
@@ -3810,17 +3810,17 @@ func.func @torch.aten.convolution$full_dim_indivisible_by_stride_without_sliced_
38103810// CHECK: %[[VAL_9:.*]] = torch.prim.ListConstruct %[[VAL_3]], %[[VAL_3]] : (!torch.int, !torch.int) -> !torch.list<int>
38113811// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
38123812// CHECK: %[[VAL_11:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<32xf32>}> : () -> tensor<32xf32>
3813- // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<1x3x225x225xf32 >) -> tensor<1x225x225x3xf32 >
3814- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3813+ // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3814+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<1x3x225x225xf32 >) -> tensor<1x225x225x3xf32 >
38153815// CHECK-DAG: %[[VAL_14:.*]] = tosa.const_shape {values = dense<0> : tensor<4xindex>} : () -> !tosa.shape<4>
38163816// CHECK-DAG: %[[VAL_15:.*]] = tosa.const_shape {values = dense<[1, 224, 225, 3]> : tensor<4xindex>} : () -> !tosa.shape<4>
3817- // CHECK: %[[VAL_16:.*]] = tosa.slice %[[VAL_12 ]], %[[VAL_14]], %[[VAL_15]] : (tensor<1x225x225x3xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<1x224x225x3xf32>
3817+ // CHECK: %[[VAL_16:.*]] = tosa.slice %[[VAL_13 ]], %[[VAL_14]], %[[VAL_15]] : (tensor<1x225x225x3xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<1x224x225x3xf32>
38183818// CHECK-DAG: %[[VAL_17:.*]] = tosa.const_shape {values = dense<0> : tensor<4xindex>} : () -> !tosa.shape<4>
38193819// CHECK-DAG: %[[VAL_18:.*]] = tosa.const_shape {values = dense<[1, 224, 224, 3]> : tensor<4xindex>} : () -> !tosa.shape<4>
38203820// CHECK: %[[VAL_19:.*]] = tosa.slice %[[VAL_16]], %[[VAL_17]], %[[VAL_18]] : (tensor<1x224x225x3xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<1x224x224x3xf32>
38213821// CHECK: %[[VAL_20:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
38223822// CHECK: %[[VAL_21:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3823- // CHECK: %[[VAL_22:.*]] = tosa.conv2d %[[VAL_19]], %[[VAL_13 ]], %[[VAL_11]], %[[VAL_20]], %[[VAL_21]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 3, 3>} : (tensor<1x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<1x75x75x32xf32>
3823+ // CHECK: %[[VAL_22:.*]] = tosa.conv2d %[[VAL_19]], %[[VAL_12 ]], %[[VAL_11]], %[[VAL_20]], %[[VAL_21]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 3, 3>} : (tensor<1x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<1x75x75x32xf32>
38243824// CHECK: %[[VAL_23:.*]] = tosa.transpose %[[VAL_22]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<1x75x75x32xf32>) -> tensor<1x32x75x75xf32>
38253825// CHECK: %[[VAL_24:.*]] = torch_c.from_builtin_tensor %[[VAL_23]] : tensor<1x32x75x75xf32> -> !torch.vtensor<[1,32,75,75],f32>
38263826// CHECK: return %[[VAL_24]] : !torch.vtensor<[1,32,75,75],f32>
@@ -3855,11 +3855,11 @@ func.func @torch.aten.convolution$full_dim_indivisible_by_stride_with_sliced_inp
38553855// CHECK: %[[VAL_9:.*]] = torch.prim.ListConstruct %[[VAL_3]], %[[VAL_3]] : (!torch.int, !torch.int) -> !torch.list<int>
38563856// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
38573857// CHECK: %[[VAL_11:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<32xf32>}> : () -> tensor<32xf32>
3858- // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<?x3x224x224xf32 >) -> tensor<?x224x224x3xf32 >
3859- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3858+ // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3859+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<?x3x224x224xf32 >) -> tensor<?x224x224x3xf32 >
38603860// CHECK: %[[VAL_14:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
38613861// CHECK: %[[VAL_15:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3862- // CHECK: %[[VAL_16:.*]] = tosa.conv2d %[[VAL_12 ]], %[[VAL_13 ]], %[[VAL_11]], %[[VAL_14]], %[[VAL_15]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 2, 2>} : (tensor<?x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<?x112x112x32xf32>
3862+ // CHECK: %[[VAL_16:.*]] = tosa.conv2d %[[VAL_13 ]], %[[VAL_12 ]], %[[VAL_11]], %[[VAL_14]], %[[VAL_15]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 2, 2>} : (tensor<?x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<?x112x112x32xf32>
38633863// CHECK: %[[VAL_17:.*]] = tosa.transpose %[[VAL_16]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<?x112x112x32xf32>) -> tensor<?x32x112x112xf32>
38643864// CHECK: %[[VAL_18:.*]] = torch_c.from_builtin_tensor %[[VAL_17]] : tensor<?x32x112x112xf32> -> !torch.vtensor<[?,32,112,112],f32>
38653865// CHECK: return %[[VAL_18]]
@@ -3894,17 +3894,17 @@ func.func @torch.aten.convolution$full_dim_indivisible_by_stride_without_sliced_
38943894// CHECK: %[[VAL_9:.*]] = torch.prim.ListConstruct %[[VAL_3]], %[[VAL_3]] : (!torch.int, !torch.int) -> !torch.list<int>
38953895// CHECK: %[[VAL_10:.*]] = torch.prim.ListConstruct : () -> !torch.list<int>
38963896// CHECK: %[[VAL_11:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<32xf32>}> : () -> tensor<32xf32>
3897- // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<?x3x225x225xf32 >) -> tensor<?x225x225x3xf32 >
3898- // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3897+ // CHECK: %[[VAL_12:.*]] = tosa.transpose %[[VAL_4 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<32x3x3x3xf32 >) -> tensor<32x3x3x3xf32 >
3898+ // CHECK: %[[VAL_13:.*]] = tosa.transpose %[[VAL_1 ]] {perms = array<i32: 0, 2, 3, 1>} : (tensor<?x3x225x225xf32 >) -> tensor<?x225x225x3xf32 >
38993899// CHECK-DAG: %[[VAL_14:.*]] = tosa.const_shape {values = dense<0> : tensor<4xindex>} : () -> !tosa.shape<4>
39003900// CHECK-DAG: %[[VAL_15:.*]] = tosa.const_shape {values = dense<[-1, 224, 225, 3]> : tensor<4xindex>} : () -> !tosa.shape<4>
3901- // CHECK: %[[VAL_16:.*]] = tosa.slice %[[VAL_12 ]], %[[VAL_14]], %[[VAL_15]] : (tensor<?x225x225x3xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<?x224x225x3xf32>
3901+ // CHECK: %[[VAL_16:.*]] = tosa.slice %[[VAL_13 ]], %[[VAL_14]], %[[VAL_15]] : (tensor<?x225x225x3xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<?x224x225x3xf32>
39023902// CHECK-DAG: %[[VAL_17:.*]] = tosa.const_shape {values = dense<0> : tensor<4xindex>} : () -> !tosa.shape<4>
39033903// CHECK-DAG: %[[VAL_18:.*]] = tosa.const_shape {values = dense<[-1, 224, 224, 3]> : tensor<4xindex>} : () -> !tosa.shape<4>
39043904// CHECK: %[[VAL_19:.*]] = tosa.slice %[[VAL_16]], %[[VAL_17]], %[[VAL_18]] : (tensor<?x224x225x3xf32>, !tosa.shape<4>, !tosa.shape<4>) -> tensor<?x224x224x3xf32>
39053905// CHECK: %[[VAL_20:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
39063906// CHECK: %[[VAL_21:.*]] = "tosa.const"() <{values = dense<0.000000e+00> : tensor<1xf32>}> : () -> tensor<1xf32>
3907- // CHECK: %[[VAL_22:.*]] = tosa.conv2d %[[VAL_19]], %[[VAL_13 ]], %[[VAL_11]], %[[VAL_20]], %[[VAL_21]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 3, 3>} : (tensor<?x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<?x75x75x32xf32>
3907+ // CHECK: %[[VAL_22:.*]] = tosa.conv2d %[[VAL_19]], %[[VAL_12 ]], %[[VAL_11]], %[[VAL_20]], %[[VAL_21]] {acc_type = f32, dilation = array<i64: 1, 1>, pad = array<i64: 1, 0, 1, 0>, stride = array<i64: 3, 3>} : (tensor<?x224x224x3xf32>, tensor<32x3x3x3xf32>, tensor<32xf32>, tensor<1xf32>, tensor<1xf32>) -> tensor<?x75x75x32xf32>
39083908// CHECK: %[[VAL_23:.*]] = tosa.transpose %[[VAL_22]] {perms = array<i32: 0, 3, 1, 2>} : (tensor<?x75x75x32xf32>) -> tensor<?x32x75x75xf32>
39093909// CHECK: %[[VAL_24:.*]] = torch_c.from_builtin_tensor %[[VAL_23]] : tensor<?x32x75x75xf32> -> !torch.vtensor<[?,32,75,75],f32>
39103910// CHECK: return %[[VAL_24]]
0 commit comments