44 lines
1.6 KiB
Diff
44 lines
1.6 KiB
Diff
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
|
|
index a50a51d..f1bb4d9 100644
|
|
--- src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
|
|
+++ src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
|
|
@@ -235,7 +235,24 @@ lp_disassemble(const void* func)
|
|
int AsmPrinterVariant = AsmInfo->getAssemblerDialect();
|
|
#endif
|
|
|
|
-#if HAVE_LLVM >= 0x0300
|
|
+#if HAVE_LLVM >= 0x0301
|
|
+ OwningPtr<const MCRegisterInfo> MRI(T->createMCRegInfo(Triple));
|
|
+ if (!MRI) {
|
|
+ debug_printf("error: no register info for target %s\n", Triple.c_str());
|
|
+ return;
|
|
+ }
|
|
+
|
|
+ OwningPtr<const MCInstrInfo> MII(T->createMCInstrInfo());
|
|
+ if (!MII) {
|
|
+ debug_printf("error: no instruction info for target %s\n", Triple.c_str());
|
|
+ return;
|
|
+ }
|
|
+#endif
|
|
+
|
|
+#if HAVE_LLVM >= 0x0301
|
|
+ OwningPtr<MCInstPrinter> Printer(
|
|
+ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MII, *MRI, *STI));
|
|
+#elif HAVE_LLVM == 0x0300
|
|
OwningPtr<MCInstPrinter> Printer(
|
|
T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI));
|
|
#elif HAVE_LLVM >= 0x0208
|
|
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
|
index fe7616b..68f8808 100644
|
|
--- src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
|
+++ src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
|
@@ -62,7 +62,11 @@
|
|
extern "C" void
|
|
lp_register_oprofile_jit_event_listener(LLVMExecutionEngineRef EE)
|
|
{
|
|
+#if HAVE_LLVM >= 0x0301
|
|
+ llvm::unwrap(EE)->RegisterJITEventListener(llvm::JITEventListener::createOProfileJITEventListener());
|
|
+#else
|
|
llvm::unwrap(EE)->RegisterJITEventListener(llvm::createOProfileJITEventListener());
|
|
+#endif
|
|
}
|