#include "Serializer.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVAttributes.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVEnums.h"
#include "mlir/IR/RegionGraphTraits.h"
#include "mlir/Target/SPIRV/SPIRVBinaryUtils.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/Debug.h"
#define DEBUG_TYPE …
usingnamespacemlir;
static LogicalResult
visitInPrettyBlockOrder(Block *headerBlock,
function_ref<LogicalResult(Block *)> blockHandler,
bool skipHeader = false, BlockRange skipBlocks = { … }
namespace mlir {
namespace spirv {
LogicalResult Serializer::processConstantOp(spirv::ConstantOp op) { … }
LogicalResult Serializer::processSpecConstantOp(spirv::SpecConstantOp op) { … }
LogicalResult
Serializer::processSpecConstantCompositeOp(spirv::SpecConstantCompositeOp op) { … }
LogicalResult
Serializer::processSpecConstantOperationOp(spirv::SpecConstantOperationOp op) { … }
LogicalResult Serializer::processUndefOp(spirv::UndefOp op) { … }
LogicalResult Serializer::processFuncParameter(spirv::FuncOp op) { … }
LogicalResult Serializer::processFuncOp(spirv::FuncOp op) { … }
LogicalResult Serializer::processVariableOp(spirv::VariableOp op) { … }
LogicalResult
Serializer::processGlobalVariableOp(spirv::GlobalVariableOp varOp) { … }
LogicalResult Serializer::processSelectionOp(spirv::SelectionOp selectionOp) { … }
LogicalResult Serializer::processLoopOp(spirv::LoopOp loopOp) { … }
LogicalResult Serializer::processBranchConditionalOp(
spirv::BranchConditionalOp condBranchOp) { … }
LogicalResult Serializer::processBranchOp(spirv::BranchOp branchOp) { … }
LogicalResult Serializer::processAddressOfOp(spirv::AddressOfOp addressOfOp) { … }
LogicalResult
Serializer::processReferenceOfOp(spirv::ReferenceOfOp referenceOfOp) { … }
template <>
LogicalResult
Serializer::processOp<spirv::EntryPointOp>(spirv::EntryPointOp op) { … }
template <>
LogicalResult
Serializer::processOp<spirv::ExecutionModeOp>(spirv::ExecutionModeOp op) { … }
template <>
LogicalResult
Serializer::processOp<spirv::FunctionCallOp>(spirv::FunctionCallOp op) { … }
template <>
LogicalResult
Serializer::processOp<spirv::CopyMemoryOp>(spirv::CopyMemoryOp op) { … }
template <>
LogicalResult Serializer::processOp<spirv::GenericCastToPtrExplicitOp>(
spirv::GenericCastToPtrExplicitOp op) { … }
#define GET_SERIALIZATION_FNS
#include "mlir/Dialect/SPIRV/IR/SPIRVSerialization.inc"
}
}