MLIR
22.0.0git
include
mlir
Dialect
Bufferization
IR
AllocationOpInterface.h
Go to the documentation of this file.
1
//===- AllocationOpInterface.h - Allocation op interface ------------------===//
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 implements the operation interface for allocation ops.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef MLIR_DIALECT_BUFFERIZATION_IR_ALLOCATIONOPINTERFACE_H_
14
#define MLIR_DIALECT_BUFFERIZATION_IR_ALLOCATIONOPINTERFACE_H_
15
16
#include "
mlir/IR/Builders.h
"
17
18
namespace
mlir
{
19
// Enum class representing different hoisting kinds for the allocation
20
// operation
21
enum class
HoistingKind
: uint8_t {
22
None
= 0,
// No hoisting kind selected
23
Loop
= 1 << 0,
// Indicates loop hoisting kind
24
Block
= 1 << 1,
// Indicates dominated block hoisting kind
25
LLVM_MARK_AS_BITMASK_ENUM(
/* LargestValue = */
Block
)
26
};
27
}
// namespace mlir
28
29
#include "mlir/Dialect/Bufferization/IR/AllocationOpInterface.h.inc"
30
31
#endif
// MLIR_DIALECT_BUFFERIZATION_IR_ALLOCATIONOPINTERFACE_H_
Builders.h
mlir::Block
Block represents an ordered list of Operations.
Definition
Block.h:33
mlir
Include the generated interface declarations.
Definition
AliasAnalysis.h:19
mlir::HoistingKind
HoistingKind
Definition
AllocationOpInterface.h:21
mlir::HoistingKind::None
@ None
Definition
AllocationOpInterface.h:22
mlir::HoistingKind::Loop
@ Loop
Definition
AllocationOpInterface.h:23
Generated on
for MLIR by
1.14.0