mini-llvm 0.1.0
Loading...
Searching...
No Matches
StrengthReduction.h
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2
3#pragma once
4
5#include <cstddef>
6
10
11namespace mini_llvm::ir {
12
14public:
15 StrengthReduction(size_t mulThreshold, size_t divThreshold, size_t remThreshold)
16 : mulThreshold_(mulThreshold), divThreshold_(divThreshold), remThreshold_(remThreshold) {}
17
18 bool runOnFunction(Function &F) override;
19
20private:
21 size_t mulThreshold_;
22 size_t divThreshold_;
23 size_t remThreshold_;
24};
25
26} // namespace mini_llvm::ir
#define MINI_LLVM_EXPORT
Definition Compiler.h:17
Definition FunctionTransform.h:12
Definition Function.h:34
StrengthReduction(size_t mulThreshold, size_t divThreshold, size_t remThreshold)
Definition StrengthReduction.h:15
bool runOnFunction(Function &F) override
Definition Argument.h:13