llvm-ffi-3.9.0: include/support.h
#ifndef LLVM_HS_SUPPORT_H
#define LLVM_HS_SUPPORT_H
#include "llvm-c/ExecutionEngine.h"
#ifdef __cplusplus
typedef llvm::StringMap<bool> LLVMFeatureMap;
typedef llvm::StringMap<bool>::const_iterator LLVMFeatureIterator;
extern "C" {
#else
typedef int LLVMFeatureMap;
typedef int LLVMFeatureIterator;
#endif
/* Wraps the LLVMInitializeTarget macro from Target.h */
unsigned LLVMInitNativeTarget(void);
/* Wraps llvm::Value::getNumUses(). */
unsigned LLVMValueGetNumUses(LLVMValueRef value);
/* Wraps llvm::Instruction::getOpcode(). */
unsigned LLVMInstGetOpcode(LLVMValueRef inst);
/* Wraps llvm::CmpInst::getPredicate(). */
unsigned LLVMCmpInstGetPredicate(LLVMValueRef cmpinst);
#if HS_LLVM_VERSION < 700
char *LLVMGetHostCPUName(void);
#endif
typedef LLVMFeatureMap *LLVMFeatureMapRef;
typedef LLVMFeatureIterator *LLVMFeatureIteratorRef;
LLVMFeatureMapRef LLVMGetHostFeatures();
void LLVMFreeFeatures(LLVMFeatureMapRef features);
LLVMFeatureIteratorRef LLVMGetFirstFeature(LLVMFeatureMapRef features);
LLVMFeatureIteratorRef LLVMGetNextFeature(LLVMFeatureMapRef features, LLVMFeatureIteratorRef featureRef);
const char *LLVMGetFeatureName(LLVMFeatureIteratorRef featureRef);
LLVMBool LLVMGetFeatureSupport(LLVMFeatureIteratorRef featureRef);
typedef unsigned LLVMEngineKind;
LLVMBool LLVMCreateExecutionEngineKindForModuleCPU
(LLVMExecutionEngineRef *OutEE,
LLVMEngineKind kind,
LLVMModuleRef M,
char **OutError);
void LLVMSetHasUnsafeAlgebra(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasNoNaNs(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasNoInfs(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasNoSignedZeros(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasAllowReciprocal(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasAllowReassoc(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasAllowContract(LLVMValueRef Instr, LLVMBool B);
void LLVMSetHasApproxFunc(LLVMValueRef Instr, LLVMBool B);
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* LLVM_HS_SUPPORT_H */