Skip to content

Commit f6a5fa0

Browse files
authored
Fix incorrect function signature for conv1d ops
Differential Revision: D82462394 Pull Request resolved: #14302
1 parent 7bcb6d3 commit f6a5fa0

4 files changed

+18
-42
lines changed

backends/cadence/hifi/operators/op_quantized_conv1d_nchw_asym8sxsym8s_asym8s_per_tensor_out.cpp

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -57,15 +57,9 @@ void xa_opt_quantized_conv1d_nchw_asym8sxsym8s_asym8s(
5757
WORD32 x_stride = stride[1];
5858
WORD32 x_padding = padding[1];
5959
WORD32 input_zero_bias = -in_zero_point;
60-
WORD32 out_multiplier32[out_channels];
61-
WORD32 out_shift32[out_channels];
60+
WORD32 out_multiplier32 = bias_scale * (1. / output_scale) * 2147483648;
61+
WORD32 out_shift32 = 0;
6262
WORD32 kernel_zero_bias = -weight_zero_point;
63-
float out_scale = 1. / output_scale;
64-
65-
for (int i = 0; i < out_channels; i++) {
66-
out_multiplier32[i] = bias_scale * out_scale * 2147483648;
67-
out_shift32[i] = 0;
68-
}
6963

7064
WORD32 out_zero_bias = output_zero_point;
7165
WORD32 out_data_format = 1;
@@ -129,9 +123,9 @@ void xa_opt_quantized_conv1d_nchw_asym8sxsym8s_asym8s(
129123
WORD8* out_batch = p_out + _n * out_channels * out_width;
130124

131125
xa_nn_conv1d_std_asym8xasym8(
132-
out_batch,
133-
in_batch,
134-
pkernel,
126+
(UWORD8*)out_batch,
127+
(UWORD8*)in_batch,
128+
(UWORD8*)pkernel,
135129
p_bias,
136130
1,
137131
input_width,

backends/cadence/hifi/operators/op_quantized_conv1d_nchw_asym8uxsym8u_asym8u_per_tensor_out.cpp

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -57,15 +57,9 @@ void xa_opt_quantized_conv1d_nchw_asym8uxsym8u_asym8u(
5757
WORD32 x_stride = stride[1];
5858
WORD32 x_padding = padding[1];
5959
WORD32 input_zero_bias = -in_zero_point;
60-
WORD32 out_multiplier32[out_channels];
61-
WORD32 out_shift32[out_channels];
60+
WORD32 out_multiplier32 = bias_scale * (1. / output_scale) * 2147483648;
61+
WORD32 out_shift32 = 0;
6262
WORD32 kernel_zero_bias = -weight_zero_point;
63-
float out_scale = 1. / output_scale;
64-
65-
for (int i = 0; i < out_channels; i++) {
66-
out_multiplier32[i] = bias_scale * out_scale * 2147483648;
67-
out_shift32[i] = 0;
68-
}
6963

7064
WORD32 out_zero_bias = output_zero_point;
7165
WORD32 out_data_format = 1;
@@ -90,9 +84,9 @@ void xa_opt_quantized_conv1d_nchw_asym8uxsym8u_asym8u(
9084
WORD32 p_permute_vec[kNnlibMaxDim] = {0, 2, 1};
9185

9286
xa_nn_transpose_8_8(
93-
pin,
87+
(WORD8*)pin,
9488
p_out_shape,
95-
p_inp,
89+
(WORD8*)p_inp,
9690
p_inp_shape,
9791
p_permute_vec,
9892
kNnlibMaxDim,
@@ -109,9 +103,9 @@ void xa_opt_quantized_conv1d_nchw_asym8uxsym8u_asym8u(
109103
p_out_shape1[2] = kernel_channels;
110104

111105
xa_nn_transpose_8_8(
112-
pkernel,
106+
(WORD8*)pkernel,
113107
p_out_shape1,
114-
p_kernel,
108+
(WORD8*)p_kernel,
115109
p_inp_shape1,
116110
p_permute_vec,
117111
kNnlibMaxDim,

backends/cadence/hifi/operators/op_quantized_conv1d_nhwc_asym8sxsym8s_asym8s_per_tensor_out.cpp

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,15 +54,9 @@ void xa_opt_quantized_conv1d_nhwc_asym8sxsym8s_asym8s(
5454
WORD32 x_stride = stride[1];
5555
WORD32 x_padding = padding[1];
5656
WORD32 input_zero_bias = -in_zero_point;
57-
WORD32 out_multiplier32[out_channels];
58-
WORD32 out_shift32[out_channels];
57+
WORD32 out_multiplier32 = bias_scale * (1. / output_scale) * 2147483648;
58+
WORD32 out_shift32 = 0;
5959
WORD32 kernel_zero_bias = -weight_zero_point;
60-
float out_scale = 1. / output_scale;
61-
62-
for (int i = 0; i < out_channels; i++) {
63-
out_multiplier32[i] = bias_scale * out_scale * 2147483648;
64-
out_shift32[i] = 0;
65-
}
6660

6761
WORD32 out_zero_bias = output_zero_point;
6862
WORD32 out_data_format = 0;
@@ -78,9 +72,9 @@ void xa_opt_quantized_conv1d_nhwc_asym8sxsym8s_asym8s(
7872
WORD8* out_batch = p_out + _n * out_channels * out_width;
7973

8074
xa_nn_conv1d_std_asym8xasym8(
81-
out_batch,
82-
in_batch,
83-
p_kernel,
75+
(UWORD8*)out_batch,
76+
(UWORD8*)in_batch,
77+
(UWORD8*)p_kernel,
8478
p_bias,
8579
1,
8680
input_width,

backends/cadence/hifi/operators/op_quantized_conv1d_nhwc_asym8uxsym8u_asym8u_per_tensor_out.cpp

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -54,15 +54,9 @@ void xa_opt_quantized_conv1d_nhwc_asym8uxsym8u_asym8u(
5454
WORD32 x_stride = stride[1];
5555
WORD32 x_padding = padding[1];
5656
WORD32 input_zero_bias = -in_zero_point;
57-
WORD32 out_multiplier32[out_channels];
58-
WORD32 out_shift32[out_channels];
57+
WORD32 out_multiplier32 = bias_scale * (1. / output_scale) * 2147483648;
58+
WORD32 out_shift32 = 0;
5959
WORD32 kernel_zero_bias = -weight_zero_point;
60-
float out_scale = 1. / output_scale;
61-
62-
for (int i = 0; i < out_channels; i++) {
63-
out_multiplier32[i] = bias_scale * out_scale * 2147483648;
64-
out_shift32[i] = 0;
65-
}
6660

6761
WORD32 out_zero_bias = output_zero_point;
6862
WORD32 out_data_format = 0;

0 commit comments

Comments
 (0)