message: Remove redefined BroadcastDiv function
diff: @@ -1339,47 +1339,6 @@ inline void BroadcastMul(const uint8* input1_data, const Dims<4>& input1_dims,
  output_data, output_dims);
  }
  -// TODO(jiawen): We can implement BroadcastDiv on buffers of arbitrary
  -// dimensionality if the runtime code does a single loop over one dimension
  -// that handles broadcasting as the base case. The code generator would then
  -// generate max(D1, D2) nested for loops.
  -template <typename T>
  -void BroadcastDiv(const T* input1_data, const Dims<4>& input1_dims,
  - const T* input2_data, const Dims<4>& input2_dims,
  - T output_activation_min, T output_activation_max,
  - T* output_data, const Dims<4>& output_dims) {
  - gemmlowp::ScopedProfilingLabel label("BroadcastDiv");
  -
  - NdArrayDesc<4> desc1;
  - NdArrayDesc<4> desc2;
  - NdArrayDescsForElementwiseBroadcast(input1_dims, input2_dims, &desc1, &desc2);
  -
  - // In Tensorflow, the dimensions are canonically named (batch_number, row,
  - // col, channel), with extents (batches, height, width, depth), with the
  - // trailing dimension changing most rapidly (channels has the smallest
  - // stride, typically 1 element).
  - //
  - // In generated C code, we store arrays with the dimensions reversed. The
  - // first dimension has smallest stride.
  - //
  - // We name our variables by their Tensorflow convention, but generate C code
  - // nesting loops such that the innermost loop has the smallest stride for
  - // the best cache behavior.
  - for (int b = 0; b < ArraySize(output_dims, 3); ++b) {
  - for (int y = 0; y < ArraySize(output_dims, 2); ++y) {
  - for (int x = 0; x < ArraySize(output_dims, 1); ++x) {
  - for (int c = 0; c < ArraySize(output_dims, 0); ++c) {
  - output_data[Offset(output_dims, c, x, y, b)] =
  - ActivationFunctionWithMinMax(
  - input1_data[SubscriptToIndex(desc1, c, x, y, b)] /
  - input2_data[SubscriptToIndex(desc2, c, x, y, b)],
  - output_activation_min, output_activation_max);
  - }
  - }
  - }
  - }
  -}
  -
  inline void Div(const float* input1_data, const Dims<4>& input1_dims,
  const float* input2_data, const Dims<4>& input2_dims,
  float output_activation_min, float output_activation_max,
  