mini-llvm 0.1.0
Loading...
Searching...
No Matches
UnaryFloatingArithmeticOperator.h
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2
3#pragma once
4
5#include <memory>
6#include <utility>
7
9#include "mini-llvm/ir/Type.h"
10#include "mini-llvm/ir/Value.h"
12
13namespace mini_llvm::ir {
14
16public:
17 std::unique_ptr<Type> type() const override {
18 return value()->type();
19 }
20
21protected:
22 explicit UnaryFloatingArithmeticOperator(std::shared_ptr<Value> op)
23 : UnaryFloatingOperator(std::move(op)) {}
24};
25
26} // namespace mini_llvm::ir
#define MINI_LLVM_EXPORT
Definition Compiler.h:17
std::unique_ptr< Type > type() const override
Definition UnaryFloatingArithmeticOperator.h:17
UnaryFloatingArithmeticOperator(std::shared_ptr< Value > op)
Definition UnaryFloatingArithmeticOperator.h:22
UnaryFloatingOperator(std::shared_ptr< Value > value)
Definition UnaryFloatingOperator.h:31
auto & value(this Self &&self)
Definition UnaryFloatingOperator.h:19
Definition Argument.h:13