KSeExpr 6.0.0.0
ExprLLVM.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2011-2019 Disney Enterprises, Inc.
2// SPDX-License-Identifier: LicenseRef-Apache-2.0
3// SPDX-FileCopyrightText: 2020 L. E. Segovia <amy@amyspark.me>
4// SPDX-License-Identifier: GPL-3.0-or-later
5
6#pragma once
7
8#include "ExprConfig.h"
9
10#if defined(SEEXPR_ENABLE_LLVM)
11#ifndef Q_MOC_RUN /* automoc chokes in Qt classes using llvm/ir/intrinsics.h indirectly*/
12#include <llvm/IR/IRBuilder.h>
13#endif
14namespace llvm {
15class Value;
16class Type;
17class Module;
18class Function;
19}
20using LLVM_VALUE = llvm::Value *;
21using LLVM_BUILDER = llvm::IRBuilder<> &;
22#define LLVM_BASE const
23#define LLVM_BODY const override
24#else
25using LLVM_VALUE = double;
26using LLVM_BUILDER = double;
27#define LLVM_BASE const { return 0; }
28#define LLVM_BODY const override { return 0; }
29#endif
double LLVM_BUILDER
Definition ExprLLVM.h:26
double LLVM_VALUE
Definition ExprLLVM.h:25