diff options
| author | Ajax <commial@gmail.com> | 2017-06-27 12:27:30 +0200 |
|---|---|---|
| committer | Ajax <commial@gmail.com> | 2017-06-27 12:27:30 +0200 |
| commit | 5520569d1c6d969fecd968557fd2251e9d1399ee (patch) | |
| tree | da64c057fe3cb03f0a5b06a98341f5fa4dd5fdd4 | |
| parent | 9a493fc14c4e5d1931c06194d919b1765326c71f (diff) | |
| download | miasm-5520569d1c6d969fecd968557fd2251e9d1399ee.tar.gz miasm-5520569d1c6d969fecd968557fd2251e9d1399ee.zip | |
LLVM: load libLLVM for custom LLVM builtins
Diffstat (limited to '')
| -rw-r--r-- | miasm2/jitter/llvmconvert.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/miasm2/jitter/llvmconvert.py b/miasm2/jitter/llvmconvert.py index 5a7853a6..cf6dea31 100644 --- a/miasm2/jitter/llvmconvert.py +++ b/miasm2/jitter/llvmconvert.py @@ -140,6 +140,20 @@ class LLVMContext_JIT(LLVMContext): self.vmcpu = {} def load_libraries(self): + # Get LLVM specific functions + name = "libLLVM-%d.%d" % (llvm.llvm_version_info[0], + llvm.llvm_version_info[1], + ) + try: + # On Windows, no need to add ".dll" + self.add_shared_library(name) + except RuntimeError: + try: + # On Linux, ".so" is needed + self.add_shared_library("%s.so" % name) + except RuntimeError: + pass + # Load additional libraries for lib_fname in self.library_filenames: self.add_shared_library(lib_fname) |