message: [XLA] Return status instead of TF_RET_CHECK.
  TF_RET_CHECK logs the call stack and HloEvaluator is often called with
  parameters and non-constant ops which results in a logging output in cases where the caller expects it could fail.
diff: @@ -1243,8 +1243,14 @@ StatusOr<std::unique_ptr<Literal>> HloEvaluator::Evaluate(
  StatusOr<std::unique_ptr<Literal>> HloEvaluator::Evaluate(
  HloInstruction* instruction) {
  - TF_RET_CHECK(hlo_query::AllOperandsAreConstants(*instruction));
  - TF_RET_CHECK(instruction->opcode() != HloOpcode::kParameter);
  + if (instruction->opcode() == HloOpcode::kParameter) {
  + return tensorflow::errors::FailedPrecondition(
  + "Cannot evaluate a parameter.");
  + }
  + if (!hlo_query::AllOperandsAreConstants(*instruction)) {
  + return tensorflow::errors::FailedPrecondition(
  + "Not all operands are constants.");
  + }
  TF_RETURN_IF_ERROR(ShapeUtil::ValidateShape(instruction->shape()));
  arg_literals_.clear();
  