message: [OpKernel] Remove unused `OpKernel::output_required()` method and related field.
  The functionality is actually implemented by `OpKernelContext::output_required()`.
diff: @@ -154,18 +154,6 @@ class OpKernel {
  // Returns a pointer to the tensor stored inside constant ops.
  virtual const Tensor* const_tensor() const { return nullptr; }
  - // Returns true if this kernel must produce its ith output.
  - // REQUIRES: 0 <= i < num_inputs().
  - bool output_required(int i) const { return outputs_required_[i]; }
  -
  - // Hints whether or not the ith output must be produced when running the
  - // kernel. By default, all outputs are required. The kernel implementation
  - // may ignore the hint.
  - // REQUIRES: 0 <= i < num_inputs().
  - void set_output_required(int i, bool is_required) {
  - outputs_required_[i] = is_required;
  - }
  -
  // Updates the dynamic cost estimate, which is used to determine whether this
  // op is expensive. The new cost estimate is a weighted average of the old
  // cost estimate and the latest cost.
  @@ -233,7 +221,6 @@ class OpKernel {
  const bool is_deferred_;
  bool expensive_;
  std::atomic_uint_fast64_t cost_estimate_;
  - std::vector<bool> outputs_required_;
  TF_DISALLOW_COPY_AND_ASSIGN(OpKernel);
  };
  