Hi, Just to report that when I tried to compile some code with a NoFolder given as template arg to my IRBuilder, the compiler complained with: In file included from lang_3-llvm.cxx:33: /usr/lib/llvm-2.8/include/llvm/Support/IRBuilder.h: In member function ‘llvm::Value* llvm::IRBuilder<preserveNames, T, Inserter>::CreateFNeg (llvm::Value*, const llvm::Twine&) [with bool preserveNames = true, T = llvm::NoFolder, Inserter = llvm::IRBuilderDefaultInserter<true>]’: ... I just added Value *CreateFNeg(Constant *C) const { return BinaryOperator::CreateFNeg(C); } amongst the unary operators of NoFolder.h, and everything seemed ok. Should I consider NoFolder unsupported ? Best regards, Bernard
On Wed, Nov 17, 2010 at 9:26 PM, BernardH <gmane.comp.compilers.llvm.devel at bernard-hugueney.org> wrote:> Should I consider NoFolder unsupported ?Seeing as it's completely broken (it doesn't insert the created instructions into the relevant basic block) that's probably best... :( (It's also missing most of the casting operations, by the way)
On Wed, Nov 17, 2010 at 9:37 PM, Frits van Bommel <fvbommel at gmail.com> wrote:> On Wed, Nov 17, 2010 at 9:26 PM, BernardH > <gmane.comp.compilers.llvm.devel at bernard-hugueney.org> wrote: >> Should I consider NoFolder unsupported ? > > Seeing as it's completely broken (it doesn't insert the created > instructions into the relevant basic block) that's probably best... :( > > (It's also missing most of the casting operations, by the way)I just submitted a patch to fix all of those problems. See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20101115/112020.html if you're interested.