diff --git a/lite/backends/arm/math/pooling.cc b/lite/backends/arm/math/pooling.cc index aaa9b9ff4c9800be6743863fab17633eb5a1c4c2..3e6cbff0660be8f2542d059a39115bed52122ff1 100644 --- a/lite/backends/arm/math/pooling.cc +++ b/lite/backends/arm/math/pooling.cc @@ -2701,7 +2701,9 @@ void pooling3x3s2p0_avg(const float* din, w_unroll_size -= 1; w_unroll_remian = wout - w_unroll_size * 4; } - + // do overflow process + w_unroll_size -= 1; + w_unroll_remian += 4; auto zero_ptr = static_cast(TargetMalloc(TARGET(kARM), win * sizeof(float))); memset(zero_ptr, 0, win * sizeof(float));