#ifndef TENSORFLOW_LITE_KERNELS_STABLEHLO_ELEMENTWISE_H_
#define TENSORFLOW_LITE_KERNELS_STABLEHLO_ELEMENTWISE_H_
#include <cstdint>
#include <vector>
#include "Eigen/Core"
#include "tensorflow/lite/core/c/common.h"
#include "tensorflow/lite/kernels/internal/runtime_shape.h"
#include "tensorflow/lite/kernels/internal/tensor_ctypes.h"
#include "tensorflow/lite/kernels/internal/types.h"
#include "tensorflow/lite/kernels/kernel_util.h"
namespace tflite {
namespace ops {
namespace builtin {
constexpr int kInputTensor1 = …;
constexpr int kInputTensor2 = …;
constexpr int kOutputTensor = …;
enum class ComputationType { … };
TfLiteStatus ElementwisePrepare(TfLiteContext* context, TfLiteNode* node);
template <typename IndexType>
static IndexType TensorIndexToFlat(const IndexType* index, const int64_t dims,
const RuntimeShape& shape) { … }
template <typename DataType, ComputationType computation_type>
inline DataType ApplyComputation(DataType input1, DataType input2) { … }
template <ComputationType computation_type, typename DataType>
TfLiteStatus EvalWithType(TfLiteContext* context, TfLiteNode* node) { … }
template <ComputationType computation_type>
TfLiteStatus ElementwiseEval(TfLiteContext* context, TfLiteNode* node) { … }
}
}
}
#endif