search for: basicblock

Displaying 20 results from an estimated 1609 matches for "basicblock".

2017 Aug 26
2
building release_50 with gcc7.2.0 on MacOS: duplicate symbol llvm::DominatorTreeBase
...LVMObject.a ../../lib/libLLVMMCParser.a ../../lib/libLLVMMC.a ../../lib/libLLVMBitReader.a ../../lib/libLLVMProfileData.a ../../lib/libLLVMCore.a ../../lib/libLLVMBinaryFormat.a ../../lib/libLLVMSupport.a -lcurses -lz -lm ../../lib/libLLVMDemangle.a duplicate symbol llvm::DominatorTreeBase<llvm::BasicBlock, true>::releaseMemory() in: ../../lib/libLLVMAnalysis.a(PostDominators.cpp.o) ../../lib/libLLVMCore.a(Dominators.cpp.o) duplicate symbol llvm::DominatorTreeBase<llvm::BasicBlock, true>::verify() const in: ../../lib/libLLVMAnalysis.a(PostDominators.cpp.o) ../../lib/libLLV...
2010 Aug 12
0
[LLVMdev] llvm build error with gcc-4.3.2 on OpenSolaris
...pc Solaris $ gcc-4.3.2 --version gcc-4.3.2 (GCC) 4.3.2 Copyright (C) 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. llvm-2.7 $ make ... llvm[1]: Compiling BasicBlock.cpp for Release build /usr/lib/gcc/i386-pc-solaris2.11/4.3.2/../../../../include/c++/4.3.2/bits/boost_concept_check.h: In member function ‘bool __gnu_cxx::_EqualOpConcept<_First, _Second>::__constraints_() [with _First = llvm::BasicBlock, _Second = llvm::BasicBlock*]’: /usr/lib/gcc/i386-pc-so...
2008 Oct 14
3
[LLVMdev] MINGW Compiler error.
...ve Leopard, and was hoping to use this for similar build environment. I use eclipse/ CDT for development on windows. Built with "C:/MinGW/bin/sh.exe"-2.04$ ./configure --prefix=/usr -- enable-optimized --disa ble-shared --disable-multilib --disable-asserts output: llvm[1]: Compiling BasicBlock.cpp for Release build c:\mingw\bin\../lib/gcc/mingw32/4.3.0/include/c++/bits/ boost_concept_check.h: In member function 'bool __gnu_cxx::_EqualOpConcept<_First, _Second>::__constraint s_() [with _First = llvm::BasicBlock, _Second = llvm::BasicBlock*]': c:\mingw\bin\../lib/gcc/min...
2012 Aug 25
6
[LLVMdev] How to Check whether BasicBlock resides in a conditional branch
Hello All, I want to dertermine whether a basicblock is in a conditional branch. such as, //============================= if a > 2 // BasicBlock A then BasicBlock B endif BasicBlock C //============================= What I want to identify is BasicBlock B, which is in a condtional block. but C is not. In other words, I want to distinguish Basi...
2008 Oct 14
0
[LLVMdev] MINGW Compiler error.
...is for similar build environment. I > use eclipse/CDT for development on windows. > > Built with "C:/MinGW/bin/sh.exe"-2.04$ ./configure --prefix=/usr -- > enable-optimized --disa > ble-shared --disable-multilib --disable-asserts > > output: > llvm[1]: Compiling BasicBlock.cpp for Release build > c:\mingw\bin\../lib/gcc/mingw32/4.3.0/include/c++/bits/ > boost_concept_check.h: In > member function 'bool __gnu_cxx::_EqualOpConcept<_First, > _Second>::__constraint > s_() [with _First = llvm::BasicBlock, _Second = llvm::BasicBlock*]': >...
2010 Oct 15
1
[LLVMdev] how to get MachineBasicBlock of a BasicBlock
Also note: there may be multiple MachineBasicBlock's for a single BasicBlock. - David M On Fri, Oct 15, 2010 at 4:59 AM, Jeff Kunkel <jdkunk3 at gmail.com> wrote: > I don't think you can. > > The BasicBlock is a member of MachineBasicBlock. It is not inherited, > so it cannot be cast. The number of the MachineBasicBloc...
2010 Oct 15
2
[LLVMdev] how to get MachineBasicBlock of a BasicBlock
Hello, we can get BasicBlock from MachineBasicBlock through MachineBasicBlock::getBasicBlock() function, but how can I get MachineBasicBlock of a BasicBlock? Thank you!
2012 Dec 17
4
[LLVMdev] BasicBlock back()
Hello, I am a beginner of LLVM. I am trying to move among the instructions of a BasicBlock and I cannot. In this particular example, I try to get the previous instruction of the end instruction. I am trying 2 methods: 1. I have the following sequence of code: bool patternDC::runOnBasicBlock(BasicBlock &BB) { ... if (BB.getTerminator()) { Instruction* current = BB.ge...
2012 Aug 25
2
[LLVMdev] How to Check whether BasicBlock resides in a conditional branch
...with branches as terminators on your way. If such parent exist, you mark that there is exist a direct connection between this parent and BB. What do you mean by "there are no BB with branches as terminators on your way" ? I remember All BB end with a terminator.... Well, I think if the basicblock only has one predecessor block, it also means its predecessor and iteself have direct connection. Do you mean this? > > Anyway I think it's impossible to detect all of such BB - you have indirect jumps, you can have a complicated branch structure with implicit flows that are hard to ana...
2010 Oct 15
0
[LLVMdev] how to get MachineBasicBlock of a BasicBlock
I don't think you can. The BasicBlock is a member of MachineBasicBlock. It is not inherited, so it cannot be cast. The number of the MachineBasicBlock is not the same as any BasicBlock values. So MachineFunction::getMachineBasicBlock( BasicBlock::{get the number} ) cannot work. I do not see much in the basic block which can identify it...
2015 Apr 09
3
[LLVMdev] BasicBlock.h in the binary and in the source differ
Hi, I am using LLVM to develop a tool, using Mac OS 10.9. I have download llvm source and binary from http://llvm.org/releases/download.html I just find the BasicBlock.h file of the binary package clang+llvm-3.6.0-x86_64-apple-darwin/include/llvm/IR/BasicBlock.h is slightly different from that of the source llvm/include/llvm/IR/BasicBlock.h In particular, llvm:: getModule(..) is included in the latter BasicBlock.h but not in the former BasicBlo...
2012 Aug 25
0
[LLVMdev] How to Check whether BasicBlock resides in a conditional branch
...impossible to detect all of such BB - you have indirect jumps, you can have a complicated branch structure with implicit flows that are hard to analyse - like this: a = 0; b = 1; if (X == 1) a = 1; if (X == 0) b = 0; if (a == 0) Y = 0; if (b == 1) Y = 1; // in the end Y = X if(X == Y) BasicBlock C endif BasicBlock D In this example BasicBlock C is *must* executed, however it's hard to detect that it is. -- Yaroslav Markov PhD student in Computer Science Stony Brook University ________________________________________ From: llvmdev-bounces at cs.uiuc.edu [llvmdev-bounces at cs.uiuc.ed...
2012 Dec 17
0
[LLVMdev] BasicBlock back()
On 12/17/12 10:34 AM, Alexandru Ionut Diaconescu wrote: > Hello, > > I am a beginner of LLVM. I am trying to move among the instructions of > a BasicBlock and I cannot. In this particular example, I try to get > the previous instruction of the end instruction. I am trying 2 methods: > > > > 1. I have the following sequence of code: > > bool patternDC::runOnBasicBlock(BasicBlock &BB) { > ... > if (BB.getTerminator()) &g...
2010 Mar 26
3
[LLVMdev] Why is BasicBlock's copy constructor private?
Hi, LLVM provides basic graph traversal for its CFGs, but I need additional operations, such as iterating over the edges. I thought I would solve this problem using the Boost graph library. It should be relatively simple to walk an LLVM CFG and add the BasicBlock objects to a Boost graph declared as: typedef boost::directed_graph<llvm::BasicBlock> Graph; Once constructed, this automatically gives me access to all kinds of sophisticated graph routines. Unfortunately, the above code doesn't compile because Boost apparently needs the cla...
2010 Jan 13
2
[LLVMdev] How to create forward reference to BasicBlock?
Hi, Can anyone tell me if there's a straighforward way to create a new BasicBlock without inserting it into a function's basic block list? I want to do this so I can create a forward reference to a block that's position in the function is not yet known. I've tried: Function function Builder builder; bb = BasicBlock::Create(function,...) bb.eraseFromParent() ... a...
2010 Aug 27
2
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
Dear all, Is there a way to check whether we can go from A to B within a function when I'm writing a pass? Thanks. Best, --Wenbin -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100827/8cf26762/attachment.html>
2010 Aug 27
0
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
Wenbin Zhang wrote: > Dear all, > Is there a way to check whether we can go from A to B within a > function when I'm writing a pass? I assume you are asking whether control flow can pass from BasicBlock A to BasicBlock B. In that case, yes: all you need to do is look at the terminator instruction of BasicBlock A and see if it can branch to BasicBlock B. There's a new indirect branch instruction; I don't believe it is used very often. You might have to handle those specially, but I'll...
2012 Jul 31
2
[LLVMdev] Assertion failure on region analysis
...=> if.end69             [6] if.end69 => if.end75             [6] for.end => if.end81             [6] for.cond88 => return               [7] for.end143 => return End region tree opt: /home/towelie/Tools/LLVM/llvm/lib/Analysis/RegionInfo.cpp:86: bool llvm::Region::contains(const llvm::BasicBlock *) const: Assertion `DT->getNode(BB) && "BB not part of the dominance tree"' failed. 0  opt             0x0000000000bc715e 1  opt             0x0000000000bc765a 2  libpthread.so.0 0x00007fe7ed96d420 3  libc.so.6       0x00007fe7ed17cb45 gsignal + 53 4  libc.so.6       0x000...
2010 Aug 27
2
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
----- Original Message ----- From: "John Criswell" <criswell at illinois.edu> To: "Wenbin Zhang" <zhangwen at cse.ohio-state.edu> Cc: <llvmdev at cs.uiuc.edu> Sent: Friday, August 27, 2010 5:09 PM Subject: Re: [LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function? > Wenbin Zhang wrote: >> Dear all, >> Is there a way to check whether we can go from A to B within a >> function when I'm writing a pass? > > I assume you are asking whether control flow can pass from BasicBlock...
2011 Feb 24
2
[LLVMdev] Valgrind memcheck errors in llvm
...641) ==24227== by 0x99FCDF8: llvm::ParseBitcodeFile(llvm::MemoryBuffer*, llvm::LLVMContext&, std::string*) (BitcodeReader.cpp:2660) ==24227== Mismatched free() / delete / delete [] ==24227== at 0x4025504: operator delete(void*) (vg_replace_malloc.c:387) ==24227== by 0x9C69C09: llvm::BasicBlock::~BasicBlock() (BasicBlock.cpp:83) ==24227== by 0x9C6B509: llvm::ilist_node_traits<llvm::BasicBlock>::deleteNode(llvm::BasicBlock*) (in /usr/local/llvm/svn-r126022.dbg/lib/libLLVM-2.9svn.so) ==24227== by 0x9C6B103: llvm::iplist<llvm::BasicBlock, llvm::ilist_traits<llvm::Basi...