@@ -386,6 +386,8 @@ static __attribute__ ((always_inline)) void depthwise_convolution2D_hwcn_krnpad(
386386 perception_area_nopad.clmn_beg = CEIL_DIV (padding_left, stride_width);
387387 perception_area_nopad.clmn_end = out_width - CEIL_DIV (padding_right, stride_width);
388388
389+ if ((perception_area_nopad.row_end - perception_area_nopad.row_beg > 0 )
390+ && (perception_area_nopad.clmn_end - perception_area_nopad.clmn_beg > 0 )){
389391 depthwise_convolution2D_hwcn_nopad<int8_t , int8_t , int32_t , mli_acc32_t >(
390392 in_ftrs, weights, biases, out_ftrs, &perception_area_nopad, quant_params,
391393 val_min_limit, val_max_limit,
@@ -395,7 +397,7 @@ static __attribute__ ((always_inline)) void depthwise_convolution2D_hwcn_krnpad(
395397 stride_height, stride_width,
396398 padding_top, padding_left,
397399 padding_bot, padding_right);
398-
400+ }
399401 // Phase 2: Process border part with more complex algorithm
400402 // (usually significantly smaller part of computations)
401403 // =======================================================================
@@ -680,8 +682,10 @@ static __attribute__ ((always_inline)) void convolution2D_nhwc_krnpad(
680682 perception_area_nopad.row_end = out_height - CEIL_DIV (padding_bot, stride_height);
681683 perception_area_nopad.clmn_beg = CEIL_DIV (padding_left, stride_width);
682684 perception_area_nopad.clmn_end = out_width - CEIL_DIV (padding_right, stride_width);
683-
684- convolution2D_nhwc_nopad<int8_t , int8_t , int32_t , mli_acc32_t >(
685+
686+ if ((perception_area_nopad.row_end - perception_area_nopad.row_beg > 0 )
687+ && (perception_area_nopad.clmn_end - perception_area_nopad.clmn_beg > 0 )){
688+ convolution2D_nhwc_nopad<int8_t , int8_t , int32_t , mli_acc32_t >(
685689 in_ftrs, weights, biases, out_ftrs, &perception_area_nopad, quant_params,
686690 val_min_limit, val_max_limit,
687691 in_ch, in_width, in_height,
@@ -690,6 +694,7 @@ static __attribute__ ((always_inline)) void convolution2D_nhwc_krnpad(
690694 stride_height, stride_width,
691695 padding_top, padding_left,
692696 padding_bot, padding_right);
697+ }
693698
694699 // Phase 2: Process border part with more complex algorithm
695700 // (usually significantly smaller part of computations)
0 commit comments