13e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower/* Copyright 2017 The TensorFlow Authors. All Rights Reserved. 23e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 33e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerLicensed under the Apache License, Version 2.0 (the "License"); 43e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFloweryou may not use this file except in compliance with the License. 53e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerYou may obtain a copy of the License at 63e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 73e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower http://www.apache.org/licenses/LICENSE-2.0 83e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 93e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerUnless required by applicable law or agreed to in writing, software 103e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerdistributed under the License is distributed on an "AS IS" BASIS, 113e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 123e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerSee the License for the specific language governing permissions and 133e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerlimitations under the License. 143e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower==============================================================================*/ 153e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 163e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower// Utilities to manipulate data in hlo.proto. 173e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 183e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#ifndef TENSORFLOW_COMPILER_XLA_SERVICE_HLO_PROTO_UTIL_H_ 193e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#define TENSORFLOW_COMPILER_XLA_SERVICE_HLO_PROTO_UTIL_H_ 203e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 213e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#include <string> 223e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 233e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#include "tensorflow/compiler/xla/service/buffer_assignment.h" 243e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#include "tensorflow/compiler/xla/service/hlo.pb.h" 253e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#include "tensorflow/compiler/xla/service/hlo_module.h" 263e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#include "tensorflow/compiler/xla/status.h" 273e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 283e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowernamespace xla { 293e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 303e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower// Returns a serialized representation of the HLO state. 313e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlowerHloProto MakeHloProto(const HloModule& module, 323e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower const BufferAssignment& assignment); 333e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 340922a8c17a2896cb5cac527b4ce8fc4a9d1d0630A. Unique TensorFlower// Returns a serialized representation of the HLO state, but buffer assignment 350922a8c17a2896cb5cac527b4ce8fc4a9d1d0630A. Unique TensorFlower// will not be included in the output. 360922a8c17a2896cb5cac527b4ce8fc4a9d1d0630A. Unique TensorFlowerHloProto MakeHloProto(const HloModule& module); 370922a8c17a2896cb5cac527b4ce8fc4a9d1d0630A. Unique TensorFlower 383e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower} // namespace xla 393e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower 403e767e9db0e0a00a509354ec18462841ea4d40f2A. Unique TensorFlower#endif // TENSORFLOW_COMPILER_XLA_SERVICE_HLO_PROTO_UTIL_H_ 41