mini-llvm 0.1.0
Loading...
Searching...
No Matches
BinaryFloatingRelationalOperator.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"
11#include "mini-llvm/ir/Value.h"
13
14namespace mini_llvm::ir {
15
17public:
18 std::unique_ptr<Type> type() const override {
19 return std::make_unique<I1>();
20 }
21
22protected:
23 BinaryFloatingRelationalOperator(std::shared_ptr<Value> lhs, std::shared_ptr<Value> rhs)
24 : BinaryFloatingOperator(std::move(lhs), std::move(rhs)) {}
25};
26
27} // namespace mini_llvm::ir
#define MINI_LLVM_EXPORT
Definition Compiler.h:17
auto & rhs(this Self &&self)
Definition BinaryFloatingOperator.h:24
auto & lhs(this Self &&self)
Definition BinaryFloatingOperator.h:19
BinaryFloatingOperator(std::shared_ptr< Value > lhs, std::shared_ptr< Value > rhs)
Definition BinaryFloatingOperator.h:36
BinaryFloatingRelationalOperator(std::shared_ptr< Value > lhs, std::shared_ptr< Value > rhs)
Definition BinaryFloatingRelationalOperator.h:23
std::unique_ptr< Type > type() const override
Definition BinaryFloatingRelationalOperator.h:18
Definition Argument.h:13