MLIR
21.0.0git
include
mlir
Target
SPIRV
Serialization.h
Go to the documentation of this file.
1
//===- Serialization.h - MLIR SPIR-V (De)serialization ----------*- C++ -*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// This file declares the entry point for serializing SPIR-V binary modules.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef MLIR_TARGET_SPIRV_SERIALIZATION_H
14
#define MLIR_TARGET_SPIRV_SERIALIZATION_H
15
16
#include "
mlir/Support/LLVM.h
"
17
#include <cstdint>
18
19
namespace
mlir
{
20
class
MLIRContext;
21
22
namespace
spirv {
23
class
ModuleOp;
24
25
struct
SerializationOptions
{
26
/// Whether to emit `OpName` instructions for SPIR-V symbol ops.
27
bool
emitSymbolName
=
true
;
28
/// Whether to emit `OpLine` location information for SPIR-V ops.
29
bool
emitDebugInfo
=
false
;
30
};
31
32
/// Serializes the given SPIR-V `module` and writes to `binary`. On failure,
33
/// reports errors to the error handler registered with the MLIR context for
34
/// `module`.
35
LogicalResult
serialize
(ModuleOp module,
SmallVectorImpl<uint32_t>
&binary,
36
const
SerializationOptions
&
options
= {});
37
38
}
// namespace spirv
39
}
// namespace mlir
40
41
#endif
// MLIR_TARGET_SPIRV_SERIALIZATION_H
options
static llvm::ManagedStatic< PassManagerOptions > options
Definition:
PassManagerOptions.cpp:89
llvm::SmallVectorImpl
Definition:
LLVM.h:74
LLVM.h
mlir::spirv::serialize
LogicalResult serialize(ModuleOp module, SmallVectorImpl< uint32_t > &binary, const SerializationOptions &options={})
Serializes the given SPIR-V module and writes to binary.
mlir
Include the generated interface declarations.
Definition:
LocalAliasAnalysis.h:20
mlir::spirv::SerializationOptions
Definition:
Serialization.h:25
mlir::spirv::SerializationOptions::emitSymbolName
bool emitSymbolName
Whether to emit OpName instructions for SPIR-V symbol ops.
Definition:
Serialization.h:27
mlir::spirv::SerializationOptions::emitDebugInfo
bool emitDebugInfo
Whether to emit OpLine location information for SPIR-V ops.
Definition:
Serialization.h:29
Generated on Sun Mar 16 2025 08:31:48 for MLIR by
1.9.1