BLFS updated LLVM to Version 3.1 on May 26th, 2012. I compiled LLVM 3.1
successfully, but compiling MesaLib failed. The code snippets at the end
of this message show why: LLVM has changed a function definition
incompatibly from v3.0 to v3.1 but MesaLib is using the old version
(even in version 8.0.3). As long as MesaLib doesn't know differences in
LLVM 3.x versions BLFS shouldn't go past LLVM 3.0.
In my opinion MesaLib is be the most important user of LLVM in the
context of BLFS ; the gallium drivers for ATI/AMD-chips need it.

And here are the code snippets:

--- llvm-3.0.src/include/llvm/Support/TargetRegistry.h  2011-09-07
19:24:38.000000000 +0200
+++ llvm-3.1.src/include/llvm/Support/TargetRegistry.h  2012-04-02
08:09:36.000000000 +0200
@@ -383,10 +394,12 @@

     MCInstPrinter *createMCInstPrinter(unsigned SyntaxVariant,
                                        const MCAsmInfo &MAI,
+                                       const MCInstrInfo &MII,
+                                       const MCRegisterInfo &MRI,
                                        const MCSubtargetInfo &STI) const {
       if (!MCInstPrinterCtorFn)
         return 0;
-      return MCInstPrinterCtorFn(*this, SyntaxVariant, MAI, STI);
+      return MCInstPrinterCtorFn(*this, SyntaxVariant, MAI, MII, MRI, STI);
     }

Mesa-8.0.[23]/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp :

#if HAVE_LLVM >= 0x0300
   OwningPtr<MCInstPrinter> Printer(
         T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI));
#elif HAVE_LLVM >= 0x0208
   OwningPtr<MCInstPrinter> Printer(
         T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo));
#else
   OwningPtr<MCInstPrinter> Printer(
         T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, Out));
#endif

Best regards
Klaus Wulff

-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to