message: Avoid signed integer overflow in HandleCopies when batch_size * indices_size * slice_size is larger than int32.
diff: @@ -115,13 +115,17 @@ struct GatherFunctorCPU {
  typename TTypes<T, 3>::ConstTensor params,
  typename TTypes<Index>::ConstFlat indices,
  typename TTypes<T, 3>::Tensor out) {
  - const int64 N = indices.size();
  + const int64 indices_size = indices.size();
  const int64 slice_size = out.dimension(2);
  int64 bad_i;
  + const int64 batch_size = params.dimension(0);
  +
  bool use_large = (slice_size > std::numeric_limits<int32>::max() ||
  params.size() > std::numeric_limits<int32>::max() ||
  - N > std::numeric_limits<int32>::max());
  + indices_size > std::numeric_limits<int32>::max() ||
  + batch_size * indices_size * slice_size >
  + std::numeric_limits<int32>::max());
  #define CALL(elems) \
  do { \
  if (use_large) { \
  