mini-llvm
0.1.0
Toggle main menu visibility
Loading...
Searching...
No Matches
FunctionInlining.h
Go to the documentation of this file.
1
// SPDX-License-Identifier: MIT
2
3
#pragma once
4
5
#include <cstddef>
6
7
#include "
mini-llvm/ir/Function.h
"
8
#include "
mini-llvm/opt/ir/FunctionTransform.h
"
9
#include "
mini-llvm/utils/Compiler.h
"
10
11
namespace
mini_llvm::ir
{
12
13
class
MINI_LLVM_EXPORT
FunctionInlining
final :
public
FunctionTransform
{
14
public
:
15
FunctionInlining
(
size_t
calleeThreshold,
size_t
callerThreshold)
16
: calleeThreshold_(calleeThreshold), callerThreshold_(callerThreshold) {}
17
18
bool
runOnFunction
(
Function
&F)
override
;
19
20
private
:
21
size_t
calleeThreshold_;
22
size_t
callerThreshold_;
23
};
24
25
}
// namespace mini_llvm::ir
Compiler.h
MINI_LLVM_EXPORT
#define MINI_LLVM_EXPORT
Definition
Compiler.h:17
mini_llvm::ir::FunctionInlining::FunctionInlining
FunctionInlining(size_t calleeThreshold, size_t callerThreshold)
Definition
FunctionInlining.h:15
mini_llvm::ir::FunctionInlining::runOnFunction
bool runOnFunction(Function &F) override
mini_llvm::ir::FunctionTransform
Definition
FunctionTransform.h:12
mini_llvm::ir::Function
Definition
Function.h:34
FunctionTransform.h
Function.h
mini_llvm::ir
Definition
Argument.h:13
include
mini-llvm
opt
ir
passes
FunctionInlining.h
Generated by
1.17.0