search for: ilist_node

Displaying 14 results from an estimated 14 matches for "ilist_node".

Did you mean: hlist_node
2014 Jul 10
2
[LLVMdev] bug in ilist_node::getPrevNode() ?
Hi all, I stumbled over a problem in ilist_node::getPrevNode(). It crashes when invoked for the first element in a list. It's because the Prev pointer of a first list element does not point to the sentinel but is just null. First question: Is this really a bug or am I doing something wrong? Second question: If it is a bug, what should be t...
2012 Jul 20
0
[LLVMdev] LLVM Kaleidoscope Chapter 7 Compilation Error in MinGW32(MSYS Shell) on Windows
...ed this on Windows XP, Windows 7, and Windows 8 (Release Preview), always the same messages. Error message: $ clang++ -g -O3 toy.cpp `llvm-config --cppflags --ldflags --libs core jit nati ve` -o toy c:/llvm/llvminstall/lib/libLLVMCore.a(Instructions.cpp.obj): duplicate section ` .rdata$_ZTSN4llvm10ilist_nodeINS_11InstructionEEE[typeinfo name for llvm::ilist_ node<llvm::Instruction>]' has different size c:/llvm/llvminstall/lib/libLLVMCore.a(Instructions.cpp.obj): duplicate section ` .rdata$_ZTIN4llvm10ilist_nodeINS_11InstructionEEE[typeinfo for llvm::ilist_node< llvm::Instruction>]'...
2016 Jul 11
2
[PATCH] D22161: SystemZ: Avoid implicit iterator conversions, NFC
...ent to the end iterator and downcast to "T*" (badness). - MachineInstrBundleIterator::operator MachineInstr*() relies on the member of ilist_iterator<MachineInstr> being an already-downcast MachineInstr*, indirectly relying on the UB in operator++. I can't safely refactor ilist/ilist_node/etc. until code stops (indirectly) relying on this UB. What's `&*I` all about? - An iterator<T> does not necessarily point at a valid T. - It could just be a sentinel object that T inherits from (in the case of lists), or an unallocated memory location (in the case of arrays). - If y...
2009 Jul 31
3
[LLVMdev] RFC: MachineInstr Annotations
...e issues with register allocators (our primary use for these kinds of comments). In order to get this information to the AsmPrinter without requring a lot of overhead, I'd like to propose adding a small bitvector to MachineInstr to hold flags. Something like this: class MachineInstr : public ilist_node<MachineInstr> { const TargetInstrDesc *TID; // Instruction descriptor. unsigned short NumImplicitOps; // Number of implicit operands (which // are determined at construction time). unsigned short Flags; // ***NEW...
2011 Nov 14
0
[LLVMdev] ilist::getPrevNode asserts on list head
Hi all, I am finding a SEGFAULT in one of my passes when using getPrevNode on an instruction that is the only one in a BasicBlock. I was expecting getPrevNode to return 0 in that case (as per docs), but it breaks. I guess the code in in ilist_node.h: NodeTy *getPrevNode() { NodeTy *Prev = this->getPrev(); // Check for sentinel. if (!Prev->getNext()) return 0; return Prev; } would need to check if Prev is NULL before calling Prev->getNext(). BR Carlos
2012 Dec 20
0
[LLVMdev] LLVM segmentation fault / need use Instruction instead of Instruction*
I may be mistaken as I just took a quick look, but in ilist_node the function "getPrevNode()" actually calls a method on the previous node: NodeTy *getPrevNode() { NodeTy *Prev = this->getPrev(); // Check for sentinel. if (!Prev->getNext()) return 0; return Prev; } http://llvm.org/docs/doxygen/html/ilist__node_8h_source.html#l0005...
2012 Dec 20
3
[LLVMdev] LLVM segmentation fault / need use Instruction instead of Instruction*
Hello John, I was following your procedures and I isolated the problem. The problem are represented by the basic blocks with only one element. for (Function::iterator II = F.begin(), EE = F.end(); II != EE; ++II, ++ii) { BasicBlock* BB=II; if (BB->getTerminator()) { Instruction* current = BB->getTerminator(); Instruction* previous;
2009 Aug 01
0
[LLVMdev] RFC: MachineInstr Annotations
...> (our primary use for these kinds of comments). > > In order to get this information to the AsmPrinter without requring > a lot of overhead, I'd like to propose adding a small bitvector to > MachineInstr to hold flags. Something like this: > > class MachineInstr : public ilist_node<MachineInstr> { > const TargetInstrDesc *TID; // Instruction descriptor. > unsigned short NumImplicitOps; // Number of implicit > operands (which > // are determined at > construction > time). > > unsigned...
2008 Aug 06
2
[LLVMdev] crash in JIT when running the inliner
..._dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xb746c670 "TÉ,·\"É,·\222''·\204ò'·Ìâ+·"}}}, <llvm::Annotable> = {AnnotationList = 0x2b}, <llvm::ilist_node<llvm::Function>> = {Prev = 0x930e810, Next = 0x9fe0a80}, BasicBlocks = {<llvm::ilist_traits<llvm::BasicBlock>> = {<llvm::SymbolTableListTraits<llvm::BasicBlock,llvm::Function>> = {<llvm::ilist_default_traits<llvm::BasicBlock>> = {<llvm::ilist...
2019 May 25
3
llvm pass
Hi list, I have several questions about LLVM pass. 1) Is building a custom LLVM pass out-of-source not recommended? The official document only contains instructions about in-source build (http://llvm.org/docs/WritingAnLLVMPass.html <http://llvm.org/docs/WritingAnLLVMPass.html>). 2) opt (ver >= 4) with custom pass libraries does not work as before. When I have a simple custom LLVM pass
2014 Apr 15
10
[LLVMdev] [PATCH] Seh exceptions on Win64
Hi, I'd like to submit a patch to match the clang patch on the front end. http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20140414/103257.html The front end doesn't need this patch to work but it's still important. This is mostly based on work done by kai from redstar.de Could I get some feedback on this? I'm not sure if the emitting of the register names will effect
2010 Oct 01
2
[LLVMdev] CMake "sudo make install" & headers
...ling: /usr/local/llvm-2.8/include/llvm/ADT/UniqueVector.h -- Installing: /usr/local/llvm-2.8/include/llvm/ADT/ValueMap.h -- Installing: /usr/local/llvm-2.8/include/llvm/ADT/VectorExtras.h -- Installing: /usr/local/llvm-2.8/include/llvm/ADT/ilist.h -- Installing: /usr/local/llvm-2.8/include/llvm/ADT/ilist_node.h -- Installing: /usr/local/llvm-2.8/include/llvm/AbstractTypeUser.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/AliasAnalysis.h -- Installing: /usr/local/llvm-2.8/include/llvm/Analysis/AliasSetTracker.h -- Installing: /usr/local...
2010 Oct 01
0
[LLVMdev] CMake "sudo make install" & headers
On Thu, Sep 30, 2010 at 3:08 PM, Samuel Williams <space.ship.traveller at gmail.com> wrote: > Hi, > > I might just be doing something stupid, but when I do > > $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/llvm-2.8 -DCMAKE_BUILD_TYPE=Release .. > $ sudo make install > > I don't get the expected headers in >        /usr/local/llvm-2.8/include/llvm > > It is
2010 Sep 30
6
[LLVMdev] CMake "sudo make install" & headers
Hi, I might just be doing something stupid, but when I do $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/llvm-2.8 -DCMAKE_BUILD_TYPE=Release .. $ sudo make install I don't get the expected headers in /usr/local/llvm-2.8/include/llvm It is simply an empty directory. What am I doing wrong? This is on Mac OS X, CMake 2.8+ Kind regards, Samuel