search for: symboltablelisttrait

Displaying 20 results from an estimated 34 matches for "symboltablelisttrait".

Did you mean: symboltablelisttraits
2016 Aug 04
3
help please: how to sort the contents of a "SymbolTableListTraits<GlobalVariable>"?
On 08/04/2016 01:33 PM, David Majnemer wrote: > You should never be copying or moving around Values. Why not? Is that because of this thing you also wrote in the same message: "use lists are allocated before the object"? > An llvm::Value (which GlobalVariable is a subtype of) should exist only in the heap. Trying to sort a container of such objects doesn`t require me to
2016 Jul 27
2
help please: how to sort the contents of a "SymbolTableListTraits<GlobalVariable>"?
Dear all, In the process of trying to add optimization for better layout of global variables, I have run up against a roadblock: I don`t seem to be able to sort the contents of a "SymbolTableListTraits<GlobalVariable>" -- or even swap two elements in that list -- without causing LLVM to crash. I have tried writing a comparator class and then using "llvm::iplist< NodeTy, Traits >::sort(Compare comp)" [<http://llvm.org/docs/doxygen/html/classllvm_1_1iplist.html#a...
2016 Aug 04
4
help please: how to sort the contents of a "SymbolTableListTraits<GlobalVariable>"?
...o.0 0x00007fc595318330 5 clang-3.9 0x00000000027fbe12 llvm::StringMapImpl::LookupBucketFor(llvm::StringRef) + 466 6 clang-3.9 0x0000000002320fa4 7 clang-3.9 0x0000000002320a10 llvm::ValueSymbolTable::reinsertValue(llvm::Value*) + 112 8 clang-3.9 0x00000000022f0551 llvm::SymbolTableListTraits<llvm::GlobalVariable>::transferNodesFromList(llvm::SymbolTableListTraits<llvm::GlobalVariable>&, llvm::ilist_iterator<llvm::GlobalVariable>, llvm::ilist_iterator<llvm::GlobalVariable>) + 273 9 clang-3.9 0x00000000023b1fd9 10 clang-3.9 0x00000000023b1c45 11...
2016 Feb 24
2
Heap problems with 3.8.0rc2 in combination with vs2015 sp1
...er::operator delete(void * Usr) Line 195 C++ ConsoleEngine.exe!llvm::Function::`scalar deleting destructor'(unsigned int) C++ ConsoleEngine.exe!llvm::ilist_node_traits<llvm::Function>::deleteNode(llvm::Function * V) Line 160 C++ ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >::erase(llvm::ilist_iterator<llvm::Function> where) Line 519 C++ ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >::erase(llvm::ilist_iterator<llvm::Function> first, llvm::ilist_iterator<llvm::Function...
2018 Nov 27
2
GlobalVariable::eraseFromParent
I am confused by GlobalVariable::eraseFromParent's declaration: /// This method unlinks 'this' from the containing module and deletes it. void eraseFromParent(); In Globals.cpp the unlinking is done and SymbolTableListTraits cleans up the symbol table but I don't see anything that actually deletes the object. Is the comment misleading or am I missing something? -David
2016 Feb 25
0
Heap problems with 3.8.0rc2 in combination with vs2015 sp1
...* Usr) Line 195 C++ > ConsoleEngine.exe!llvm::Function::`scalar deleting destructor'(unsigned > int) C++ > ConsoleEngine.exe!llvm::ilist_node_traits<llvm::Function>::deleteNode(llvm::Function > * V) Line 160 C++ > ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> > >::erase(llvm::ilist_iterator<llvm::Function> where) Line 519 C++ > ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> > >::erase(llvm::ilist_iterator<llvm::Function> first, > llvm::ilist_iterat...
2010 Jan 13
2
[LLVMdev] How to create forward reference to BasicBlock?
...s not yet known. I've tried: Function function Builder builder; bb = BasicBlock::Create(function,...) bb.eraseFromParent() ... add other blocks to function and build instructions in those blocks ... function.getBasicBlockList.push_back(bb) but I get an assert failure from push_back: t1: SymbolTableListTraitsImpl.h:68: void llvm::SymbolTableListTraits<ValueSubClass, ItemParentClass>::addNodeToList(ValueSubClass*) [with ValueSubClass = llvm::BasicBlock, ItemParentClass = llvm::Function]: Assertion `V->getParent() == 0 && "Value already in a container!!"' failed. Should I...
2016 Feb 25
2
Heap problems with 3.8.0rc2 in combination with vs2015 sp1
...>> ConsoleEngine.exe!llvm::Function::`scalar deleting >> destructor'(unsigned int) C++ >> ConsoleEngine.exe!llvm::ilist_node_traits<llvm::Function>::deleteNode(llvm::Function >> * V) Line 160 C++ >> ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >> >::erase(llvm::ilist_iterator<llvm::Function> where) Line 519 C++ >> ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >> >::erase(llvm::ilist_iterator<llvm::Function> first, >> ll...
2013 Jul 30
2
[LLVMdev] Instruction insertion By Module Pass
...struction into every basic block like x=1 or while loop I tried this code, but it doesn't work Type * Int32Type = IntegerType::getInt32Ty(getGlobalContext()); AllocaInst* newInst = new AllocaInst(Int32Type,"flag", Bb); Bb->getInstList().push_back(newInst); the error: void llvm::SymbolTableListTraits<llvm::Instruction, llvm::BasicBlock>::addNodeToList(ValueSubClass *) [ValueSubClass = llvm::Instruction, ItemParentClass = llvm::BasicBlock]: Assertion `V->getParent() == 0 && "Value already in a container!!"' failed. Is there a class I could use to insert while lo...
2016 Feb 25
0
Heap problems with 3.8.0rc2 in combination with vs2015 sp1
...leEngine.exe!llvm::Function::`scalar deleting >>> destructor'(unsigned int) C++ >>> ConsoleEngine.exe!llvm::ilist_node_traits<llvm::Function>::deleteNode(llvm::Function >>> * V) Line 160 C++ >>> ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >>> >::erase(llvm::ilist_iterator<llvm::Function> where) Line 519 C++ >>> ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >>> >::erase(llvm::ilist_iterator<llvm::Function> first,...
2016 Aug 25
2
InstList insert depreciated?
.../project/plugin/FSlice.cpp:7: /home/shehbaz/project/llvm/include/llvm/ADT/ilist.h:461:12: note: candidate: llvm::iplist<NodeTy, Traits>::iterator llvm::iplist<NodeTy, Traits>: :insert(llvm::iplist<NodeTy, Traits>::iterator, NodeTy*) [with NodeTy = llvm::Instruction; Traits = llvm::SymbolTableListTraits<llvm::Instruction >; llvm::iplist<NodeTy, Traits>::iterator = llvm::ilist_iterator<llvm::Instruction>] iterator insert(iterator where, NodeTy *New) { ^ /home/shehbaz/project/llvm/include/llvm/ADT/ilist.h:461:12: note: no known conversion for argument 1 from ‘llvm...
2016 Feb 26
2
Heap problems with 3.8.0rc2 in combination with vs2015 sp1
...m::Function::`scalar deleting >>>> destructor'(unsigned int) C++ >>>> ConsoleEngine.exe!llvm::ilist_node_traits<llvm::Function>::deleteNode(llvm::Function >>>> * V) Line 160 C++ >>>> ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >>>> >::erase(llvm::ilist_iterator<llvm::Function> where) Line 519 C++ >>>> ConsoleEngine.exe!llvm::iplist<llvm::Function,llvm::SymbolTableListTraits<llvm::Function> >>>> >::erase(llvm::ilist_iterator<llvm::Functio...
2010 Jan 13
0
[LLVMdev] How to create forward reference to BasicBlock?
...lder; > > bb = BasicBlock::Create(function,...) > bb.eraseFromParent() > > ... > add other blocks to function and build instructions in those blocks > ... > > function.getBasicBlockList.push_back(bb) > > > but I get an assert failure from push_back: > > t1: SymbolTableListTraitsImpl.h:68: void > llvm::SymbolTableListTraits<ValueSubClass, > ItemParentClass>::addNodeToList(ValueSubClass*) [with ValueSubClass = > llvm::BasicBlock, ItemParentClass = llvm::Function]: Assertion > `V->getParent() == 0 && "Value already in a container!!"'...
2013 Jul 30
0
[LLVMdev] Instruction insertion By Module Pass
...ou then attempt to insert the AllocaInst into the BasicBlock Bb a second time with the last line. Note that the assertion is telling you that you're inserting the alloca instruction twice. Remove the last line, and it should fix your problem. -- John T. > > the error: > void llvm::SymbolTableListTraits<llvm::Instruction, > llvm::BasicBlock>::addNodeToList(ValueSubClass *) [ValueSubClass = > llvm::Instruction, ItemParentClass = llvm::BasicBlock]: Assertion > `V->getParent() == 0 && "Value already in a container!!"' failed. > > Is there a class I c...
2005 Feb 07
0
[LLVMdev] Segmentation Fault(Modifying BasicBlockPlacement.cpp)
...-------------------------------------------------------------------------------------- opt((anonymous namespace)::PrintStackTrace()+0x18)[0x8691968] opt((anonymous namespace)::SignalHandler(int)+0xd8)[0x8691bc8] /lib/tls/libc.so.6[0x688a48] opt(llvm::BasicBlock::getNext()+0x6)[0x83d36d0] opt(llvm::SymbolTableListTraits<llvm::BasicBlock, llvm::Function, llvm::Function, llvm::ilist_traits<llvm::BasicBlock> >::getNext(llvm::BasicBlock*)+0x11)[0x83d36c5] opt(llvm::ilist_iterator<llvm::BasicBlock>::operator++()+0x17)[0x83d011d] opt(llvm::ilist_iterator<llvm::BasicBlock>::operator++(int)+0x1c)[...
2013 Jul 31
1
[LLVMdev] Instruction insertion By Module Pass
...llocaInst into the BasicBlock > Bb a second time with the last line. Note that the assertion is telling > you that you're inserting the alloca instruction twice. > > Remove the last line, and it should fix your problem. > > -- John T. > > > the error: > void llvm::SymbolTableListTraits<llvm::Instruction, > llvm::BasicBlock>::addNodeToList(ValueSubClass *) [ValueSubClass = > llvm::Instruction, ItemParentClass = llvm::BasicBlock]: Assertion > `V->getParent() == 0 && "Value already in a container!!"' failed. > > Is there a class I cou...
2005 Feb 07
2
[LLVMdev] Segmentation Fault(Modifying BasicBlockPlacement.cpp)
...--------------------------------------------------------- > > opt((anonymous namespace)::PrintStackTrace()+0x18)[0x8691968] > opt((anonymous namespace)::SignalHandler(int)+0xd8)[0x8691bc8] > /lib/tls/libc.so.6[0x688a48] > opt(llvm::BasicBlock::getNext()+0x6)[0x83d36d0] > opt(llvm::SymbolTableListTraits<llvm::BasicBlock, llvm::Function, llvm::Function, llvm::ilist_traits<llvm::BasicBlock> >::getNext(llvm::BasicBlock*)+0x11)[0x83d36c5] > opt(llvm::ilist_iterator<llvm::BasicBlock>::operator++()+0x17)[0x83d011d] > opt(llvm::ilist_iterator<llvm::BasicBlock>::operator++(i...
2004 May 21
1
[LLVMdev] Re: LLVMdev digest, Vol 1 #292 - 4 msgs
...if I used those two instructions , it works well. Thanks Instruction *InstrCall = new CallInst (InstrFn, Args , ""); BB->getInstList().insert(InsertPos,InstrCall); Error inforamtion: %opt -load ../../lib/Debug/libcntPass.so -cntPass<insert.bc -f -o i.bc BB name : entry opt: SymbolTableListTraitsImpl.h:53: void llvm::SymbolTableListTraits<ValueSubClass, ItemParentClass, SymTabClass, SubClass>::addNodeToList(ValueSubClass*) [with ValueSubClass = llvm::Instruction, ItemParentClass = llvm::BasicBlock, SymTabClass = llvm::Function, SubClass = llvm::ilist_traits<llvm::Instruction>]:...
2005 Feb 05
3
[LLVMdev] Improving Makefile.rules header install rules [PATCH]
>> Is attached patch acceptable? > > Looks great, applied, thanks! > http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20050131/023931.html Thanks! >> Also I have in Makefile.rules (but not include in patch) some >> modification for simplify used common Makefile.rules in LLVM projects and >> non-LLVM project (guarding some LLVM specific parts by ifdef
2008 Aug 06
2
[LLVMdev] crash in JIT when running the inliner
...= 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_nextprev_traits<llvm::BasicBlock>> = {<No data fields>}, <llvm::ilist_sentinel_traits<llvm::BasicBlock>> = {<No data fields>}, <No dat...