code: def flip(m, axis):
      """
      Reverse the order of elements in a tensor along the given axis.
  
      The shape of the array is preserved, but the elements are reordered.
  
      Parameters
      ----------
      m : array_like
          Input tensor.
      axis : integer
          Axis in tensor, which entries are reversed.
  
  
      Returns
      -------
      out : array_like
          A view of `m` with the entries of axis reversed.  Since a view is
          returned, this operation is done in constant time.
  
      See Also
      --------
      flipud : Flip a tensor vertically (axis=0).
      fliplr : Flip a tensor horizontally (axis=1).
  
      Notes
      -----
      flip(m, 0) is equivalent to flipud(m).
      flip(m, 1) is equivalent to fliplr(m).
      flip(m, n) corresponds to ``m[...,::-1,...]`` with ``::-1`` at position n.
  
      Examples
      --------
      >>> import mars.tensor as mt
  
      >>> A = mt.arange(8).reshape((2,2,2))
      >>> A.execute()
      array([[[0, 1],
              [2, 3]],
  
             [[4, 5],
              [6, 7]]])
  
      >>> mt.flip(A, 0).execute()
      array([[[4, 5],
              [6, 7]],
  
             [[0, 1],
              [2, 3]]])
  
      >>> mt.flip(A, 1).execute()
      array([[[2, 3],
              [0, 1]],
  
             [[6, 7],
              [4, 5]]])
  
      >>> A = mt.random.randn(3,4,5)
      >>> mt.all(mt.flip(A,2) == A[:,:,::-1,...]).execute()
      True
      """
      m = astensor(m)
  
      sl = [slice(None)] * m.ndim
      try:
          sl[axis] = slice(None, None, -1)
      except IndexError:
          raise ValueError(
              "axis=%i is invalid for the %i-dimensional input tensor"
              % (axis, m.ndim)
          )
  
      return m[tuple(sl)]
  
label_desc: Use image node_id 1 for calling a global function with example usage: flip(m, axis) and returns: m