Skip to content

Commit

Permalink
Merge pull request #48082 from njeffrie:f1_depthwise
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 365150386
Change-Id: I0cca1c34d2e600cea51ef45b37e5cf808891541a
  • Loading branch information
tensorflower-gardener committed Mar 25, 2021
2 parents fc75295 + bfb4c1e commit 6af4297
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 9 deletions.
18 changes: 9 additions & 9 deletions tensorflow/lite/micro/tools/make/ext_libs/xtensa_download.sh
Expand Up @@ -65,15 +65,15 @@ else
fi

unzip -qo /tmp/${TMP_ZIP_ARCHIVE_NAME} -d ${DOWNLOADS_DIR} >&2
# TODO(b/183232978): remove these checks when xa_nnlib is updated.
sed -i '/XA_NNLIB_ARG_CHK_COND((y_stride > kernel_height), -1);/d' \
${DOWNLOADS_DIR}/xa_nnlib_hifi4/algo/kernels/cnn/hifi4/*.c
sed -i '/XA_NNLIB_ARG_CHK_COND((x_stride > kernel_width), -1);/d' \
${DOWNLOADS_DIR}/xa_nnlib_hifi4/algo/kernels/cnn/hifi4/*.c
sed -i '/XA_NNLIB_CHK_COND((x_stride <= 0 || x_stride > kernel_width), -1);/d' \
${DOWNLOADS_DIR}/xa_nnlib_hifi4/algo/kernels/cnn/hifi4/*.c
sed -i '/XA_NNLIB_CHK_COND((y_stride <= 0 || y_stride > kernel_width), -1);/d' \
${DOWNLOADS_DIR}/xa_nnlib_hifi4/algo/kernels/cnn/hifi4/*.c

pushd ${DOWNLOADS_DIR}/xa_nnlib_hifi4/
git init .
git config user.email "tflm@google.com"
git config user.name "TensorflowLite Micro"
git add *
git commit -a -m "Commit for a temporary repository." > /dev/null
git apply ../../ext_libs/xtensa_patch.patch
popd

fi

Expand Down
45 changes: 45 additions & 0 deletions tensorflow/lite/micro/tools/make/ext_libs/xtensa_patch.patch
@@ -0,0 +1,45 @@
diff --git a/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise.c b/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise.c
index 3e29856..e550ebf 100644
--- a/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise.c
+++ b/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise.c
@@ -249,7 +249,6 @@ WORD32 xa_nn_conv2d_depthwise_getsize
XA_NNLIB_CHK_COND((kernel_height <= 0), -1);
XA_NNLIB_CHK_COND((kernel_width <= 0), -1);
XA_NNLIB_CHK_COND((channels_multiplier <= 0), -1);
- XA_NNLIB_CHK_COND((x_stride <= 0 || x_stride > kernel_width), -1);
XA_NNLIB_CHK_COND((y_stride <= 0 || y_stride > kernel_height), -1);
XA_NNLIB_CHK_COND((x_padding < 0), -1);
XA_NNLIB_CHK_COND((y_padding < 0), -1);
diff --git a/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise_sym8sxasym8s.c b/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise_sym8sxasym8s.c
index e719da1..5b7390f 100644
--- a/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise_sym8sxasym8s.c
+++ b/algo/kernels/cnn/hifi4/xa_nn_conv2d_depthwise_sym8sxasym8s.c
@@ -659,7 +659,6 @@ WORD32 xa_nn_conv2d_depthwise_per_chan_sym8sxasym8s
XA_NNLIB_ARG_CHK_COND((input_channels <= 0), -1);
XA_NNLIB_ARG_CHK_COND((kernel_height <= 0 || kernel_width <= 0), -1);
XA_NNLIB_ARG_CHK_COND((kernel_height > input_height), -1);
- XA_NNLIB_ARG_CHK_COND((kernel_width > input_width), -1);
XA_NNLIB_ARG_CHK_COND((channels_multiplier <= 0), -1);
XA_NNLIB_ARG_CHK_COND((y_stride <= 0 || x_stride <= 0), -1);
XA_NNLIB_ARG_CHK_COND((y_padding < 0 || x_padding < 0), -1);
@@ -671,8 +670,6 @@ WORD32 xa_nn_conv2d_depthwise_per_chan_sym8sxasym8s
XA_NNLIB_ARG_CHK_COND((inp_data_format != 0 && inp_data_format != 1), -1);
XA_NNLIB_ARG_CHK_COND((out_data_format != 0), -1);
/* Implementation dependent checks */
- XA_NNLIB_ARG_CHK_COND((y_stride > kernel_height), -1);
- XA_NNLIB_ARG_CHK_COND((x_stride > kernel_width), -1);

if(inp_data_format == 0)
{
diff --git a/algo/kernels/cnn/hifi4/xa_nn_conv2d_std_sym8sxasym8s.c b/algo/kernels/cnn/hifi4/xa_nn_conv2d_std_sym8sxasym8s.c
index b16b9fc..38e69d3 100644
--- a/algo/kernels/cnn/hifi4/xa_nn_conv2d_std_sym8sxasym8s.c
+++ b/algo/kernels/cnn/hifi4/xa_nn_conv2d_std_sym8sxasym8s.c
@@ -198,7 +198,6 @@ WORD32 xa_nn_conv2d_std_per_chan_sym8sxasym8s(
XA_NNLIB_ARG_CHK_COND((input_channels <= 0), -1);
XA_NNLIB_ARG_CHK_COND((kernel_height <= 0 || kernel_width <= 0), -1);
XA_NNLIB_ARG_CHK_COND((kernel_height > input_height), -1);
- XA_NNLIB_ARG_CHK_COND((kernel_width > input_width), -1);
XA_NNLIB_ARG_CHK_COND((out_channels <= 0), -1);
XA_NNLIB_ARG_CHK_COND((y_stride <= 0 || x_stride <= 0), -1);
XA_NNLIB_ARG_CHK_COND((y_padding < 0 || x_padding < 0), -1);

0 comments on commit 6af4297

Please sign in to comment.