mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-20 06:43:14 +01:00
42 lines
858 B
C++
42 lines
858 B
C++
#ifdef _MSC_VER
|
|
#pragma once
|
|
#endif
|
|
|
|
#ifndef LDC_LLVMCOMPAT_H
|
|
#define LDC_LLVMCOMPAT_H
|
|
|
|
#include "llvm/ADT/Triple.h"
|
|
#include <string>
|
|
|
|
#if !defined(LDC_LLVM_VER)
|
|
#error "Please specify value for LDC_LLVM_VER."
|
|
#endif
|
|
|
|
#if LDC_LLVM_VER == 300
|
|
namespace llvm {
|
|
class Module;
|
|
class Function;
|
|
|
|
namespace sys {
|
|
std::string getDefaultTargetTriple();
|
|
}
|
|
|
|
Triple Triple__get32BitArchVariant(const std::string&_this);
|
|
Triple Triple__get64BitArchVariant(const std::string& _this);
|
|
|
|
// From Transforms/Utils/ModuleUtils
|
|
void appendToGlobalCtors(Module &M, Function *F, int Priority);
|
|
void appendToGlobalDtors(Module &M, Function *F, int Priority);
|
|
}
|
|
#endif
|
|
|
|
#if LDC_LLVM_VER >= 302
|
|
#define ADDRESS_SPACE 0
|
|
#define HAS_ATTRIBUTES(x) (x).hasAttributes()
|
|
#else
|
|
#define ADDRESS_SPACE
|
|
#define HAS_ATTRIBUTES(x) (x)
|
|
#endif
|
|
|
|
#endif
|