summaryrefslogtreecommitdiff
path: root/scons
diff options
context:
space:
mode:
authorJose Fonseca <jfonseca@vmware.com>2015-05-28 16:55:10 +0100
committerJose Fonseca <jfonseca@vmware.com>2015-05-29 11:20:58 +0100
commit0db4ef9df152da1d0f3601bbccc68ac1c94d4a3b (patch)
tree2542284d67315d7c68f4dd9c865aac25e3116d9f /scons
parent29203e77388f11e36db3190834809c3196ee47b5 (diff)
gallivm: Use the LLVM's C disassembly interface.
It doesn't do everything we want. In particular it doesn't allow to detect jumps or return opcodes. Currently we detect the x86's RET opcode. Even though it's worse for LLVM 3.3, it's an improvement for LLVM 3.7, which was totally busted. Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Diffstat (limited to 'scons')
-rw-r--r--scons/llvm.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/scons/llvm.py b/scons/llvm.py
index 17278df88be9..c59b8cb9317f 100644
--- a/scons/llvm.py
+++ b/scons/llvm.py
@@ -120,6 +120,7 @@ def generate(env):
])
elif llvm_version >= distutils.version.LooseVersion('3.5'):
env.Prepend(LIBS = [
+ 'LLVMMCDisassembler',
'LLVMBitWriter', 'LLVMMCJIT', 'LLVMRuntimeDyld',
'LLVMX86Disassembler', 'LLVMX86AsmParser', 'LLVMX86CodeGen',
'LLVMSelectionDAG', 'LLVMAsmPrinter', 'LLVMX86Desc',
@@ -132,6 +133,7 @@ def generate(env):
])
else:
env.Prepend(LIBS = [
+ 'LLVMMCDisassembler',
'LLVMBitWriter', 'LLVMX86Disassembler', 'LLVMX86AsmParser',
'LLVMX86CodeGen', 'LLVMX86Desc', 'LLVMSelectionDAG',
'LLVMAsmPrinter', 'LLVMMCParser', 'LLVMX86AsmPrinter',
@@ -189,7 +191,7 @@ def generate(env):
if '-fno-rtti' in cxxflags:
env.Append(CXXFLAGS = ['-fno-rtti'])
- components = ['engine', 'mcjit', 'bitwriter', 'x86asmprinter']
+ components = ['engine', 'mcjit', 'bitwriter', 'x86asmprinter', 'mcdisassembler']
env.ParseConfig('llvm-config --libs ' + ' '.join(components))
env.ParseConfig('llvm-config --ldflags')