message: Avoid unncessarily creating two new Shape objects in
  xla::CanShareOperandBufferWithUser.
diff: @@ -156,9 +156,10 @@ bool CanShareOperandBufferWithUser(
  const TuplePointsToAnalysis* points_to_analysis) {
  CHECK(user->IsUserOf(operand))
  << "user: " << user->ToString() << " operand: " << operand->ToString();
  - Shape operand_subshape =
  + const Shape& operand_subshape =
  ShapeUtil::GetSubshape(operand->shape(), operand_index);
  - Shape user_subshape = ShapeUtil::GetSubshape(user->shape(), user_index);
  + const Shape& user_subshape =
  + ShapeUtil::GetSubshape(user->shape(), user_index);
  // Check that operand and user emit the same shape and layout.
  if (!ShapeUtil::Equal(operand_subshape, user_subshape)) {
  return false;
  