From fe34006908f1ff99ada34d52c06fd80197e452ec Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 14 Mar 2012 05:40:52 +0000 Subject: gallivm: Fix createOProfileJITEventListener namespace with llvm-3.1. llvm-3.1svn r152620 refactored the OProfile profiling code. createOProfileJITEventListener was moved from the llvm namespace to the llvm::JITEventListener namespace. Signed-off-by: Vinson Lee Reviewed-by: Brian Paul --- diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp index fe7616b..68f8808 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +++ b/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 } -- cgit v0.9.0.2-2-gbebe From 1633dcd890d97bd5e4d125d57f2f529f04d14477 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Tue, 06 Mar 2012 06:00:40 +0000 Subject: gallivm: Pass in a MCRegisterInfo to MCInstPrinter on llvm-3.1. llvm-3.1svn r152043 changes createMCInstPrinter to take an additional MCRegisterInfo argument. Signed-off-by: Vinson Lee Reviewed-by: Brian Paul --- (limited to 'src/gallium/auxiliary/gallivm/lp_bld_debug.cpp') diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp index 11209da..b6849cb 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp @@ -235,7 +235,18 @@ lp_disassemble(const void* func) int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); #endif -#if HAVE_LLVM >= 0x0300 +#if HAVE_LLVM >= 0x0301 + OwningPtr MRI(T->createMCRegInfo(Triple)); + if (!MRI) { + debug_printf("error: no register info for target %s\n", Triple.c_str()); + return; + } +#endif + +#if HAVE_LLVM >= 0x0301 + OwningPtr Printer( + T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MRI, *STI)); +#elif HAVE_LLVM == 0x0300 OwningPtr Printer( T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI)); #elif HAVE_LLVM >= 0x0208 -- cgit v0.9.0.2-2-gbebe From 4f513002f65c629576252b34efedf3c8c4531dfd Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Tue, 03 Apr 2012 05:14:15 +0000 Subject: gallivm: Pass in a MCInstrInfo to createMCInstPrinter on llvm-3.1. llvm-3.1svn r153860 makes MCInstrInfo available to the MCInstPrinter. Signed-off-by: Vinson Lee Reviewed-by: Brian Paul --- (limited to 'src/gallium/auxiliary/gallivm/lp_bld_debug.cpp') diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp index c5afff0..9cf2094 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp @@ -241,11 +241,17 @@ lp_disassemble(const void* func) debug_printf("error: no register info for target %s\n", Triple.c_str()); return; } + + OwningPtr 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 Printer( - T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MRI, *STI)); + T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MII, *MRI, *STI)); #elif HAVE_LLVM == 0x0300 OwningPtr Printer( T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI)); -- cgit v0.9.0.2-2-gbebe