search for: getpar

Displaying 20 results from an estimated 483 matches for "getpar".

Did you mean: getpars
2004 Feb 09
10
PhD student reading list, suggestions wanted
I've got a PhD student starting this year. She'll be working on data mining. She has asked for a reading list while she's still in her home country, which is a really good sign. Her cosupervisor and I don't (think we) have any problem with choosing things that are specifically about data mining, but there are some statistical ideas (sampling, exploratory-vs-confirmatory,
2015 Jun 21
2
[LLVMdev] getAnalysis<DataLayout>() Causing Compilation Error
I’m debugging SAFECode source code files, and in AllocatorInfo.cpp, in the function getObjectSize(Value* V), the function getAnalysis<DataLayout>() is called. I’ve run into this problem before, and the first time I saw it, my employer recommended I use M.getDataLayout() instead, where M was a reference to a Module. However, in getObjectSize(Value* V), there is no Module reference in the
2015 Dec 02
4
Cloning a MachineInstr
I'm trying to clone a MachineInstr in the AsmPrinter::EmitInstruction, Here is the code: void EsenciaAsmPrinter::EmitInstruction(const MachineInstr *MI) { const MachineFunction *MF = MI->getParent()->getParent(); MachineInstr *CloneMI = MF->CloneMachineInstr(MI); ... ... } The problem is that MF is a const and CloneMachineInstr expects a non-const. Does anybody know if there is a way to create a copy of a given MachineInstr? Any help is appreciated. -- Rail Shafigulin Software...
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...nt of the > branch will > @@ -4316,10 +4322,23 @@ ScalarEvolution::ComputeExitLimit(const Loop > *L, BasicBlock *ExitingBlock) { >   if (ExitBr->getSuccessor(0) != L->getHeader() && >       ExitBr->getSuccessor(1) != L->getHeader() && >       ExitBr->getParent() != L->getHeader()) { > -    // The simple checks failed, try climbing the unique predecessor chain > -    // up to the header. > + >     bool Ok = false; > -    for (BasicBlock *BB = ExitBr->getParent(); BB; ) { > +    //Check if the one of the successor of the exit bra...
2009 Sep 22
5
[LLVMdev] Verifier should not make any assumptions about calls to "malloc"
Hi Victor, this code from the verifier broke the Ada front-end build: const Module* M = CI.getParent()->getParent()->getParent(); Constant *MallocFunc = M->getFunction("malloc"); if (CI.getOperand(0) == MallocFunc) { const PointerType *PTy = PointerType::getUnqual(Type::getInt8Ty(CI.getParent()->getContext())); Assert1(CI.getType() == PTy, "Malloc c...
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...ditional, it can't be in loop!"); @@ -4315,8 +4320,12 @@ ScalarEvolution::ComputeExitLimit(const Loop *L, BasicBlock *ExitingBlock) { // if (ExitBr->getSuccessor(0) != L->getHeader() && ExitBr->getSuccessor(1) != L->getHeader() && - ExitBr->getParent() != L->getHeader()) { - // The simple checks failed, try climbing the unique predecessor chain + ExitBr->getParent() != L->getHeader() && + !((BrFirstSucc && BrFirstSucc->isUnconditional() && + BrFirstSucc->getSuccessor(0) == L->get...
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...not, then the execution count of the branch will @@ -4316,10 +4322,23 @@ ScalarEvolution::ComputeExitLimit(const Loop *L, BasicBlock *ExitingBlock) { if (ExitBr->getSuccessor(0) != L->getHeader() && ExitBr->getSuccessor(1) != L->getHeader() && ExitBr->getParent() != L->getHeader()) { - // The simple checks failed, try climbing the unique predecessor chain - // up to the header. + bool Ok = false; - for (BasicBlock *BB = ExitBr->getParent(); BB; ) { + //Check if the one of the successor of the exit branch has the is a block + /...
2005 May 11
3
[LLVMdev] Computing live values
Say I want to find all LLVM Value*-es that a live on exit from a basic block. What's the best way? - The 'LiveRange', 'LiveVariables' and 'LiveIntervals' classes seem to be tied to register allocation. - The ./lib/Target/SparcV9/LiveVar/FunctionLiveVarInfo.h file seem to provide what I need, but it's no a public header. - Volodya
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...4316,10 +4322,23 @@ ScalarEvolution::ComputeExitLimit(const Loop >> > *L, BasicBlock *ExitingBlock) { >> >   if (ExitBr->getSuccessor(0) != L->getHeader() && >> >       ExitBr->getSuccessor(1) != L->getHeader() && >> >       ExitBr->getParent() != L->getHeader()) { >> > -    // The simple checks failed, try climbing the unique predecessor >> > chain >> > -    // up to the header. >> > + >> >     bool Ok = false; >> > -    for (BasicBlock *BB = ExitBr->getParent(); BB; ) { &g...
2004 Aug 04
0
[LLVMdev] moving instructions
How does one move instructions from one basic block to another? I tried this: (IB is an Instruction* as is current_last, current_BB is a BasicBlock*) IB->getParent()->getInstList().remove(IB); current_BB->getInstList().insert(current_last, IB); and I get this assertion: Assertion `V->getParent() == 0 && "Value already in a container!!"' failed. it seems to me that remove should remove it from it's container....
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...l > > @@ -4316,10 +4322,23 @@ ScalarEvolution::ComputeExitLimit(const Loop > > *L, BasicBlock *ExitingBlock) { > > if (ExitBr->getSuccessor(0) != L->getHeader() && > > ExitBr->getSuccessor(1) != L->getHeader() && > > ExitBr->getParent() != L->getHeader()) { > > - // The simple checks failed, try climbing the unique predecessor > chain > > - // up to the header. > > + > > bool Ok = false; > > - for (BasicBlock *BB = ExitBr->getParent(); BB; ) { > > + //Check if the o...
2009 May 30
0
[LLVMdev] Value liveout (uses)
...through all the basic block ? If the value is created within the basic block in question, and the block doesn't loop to itself, then you can just iterate through the uses and note if the use is an instruction in a different block: bool isLiveOut(Instruction* I) { BasicBlock* I_BB = I->getParent(): for (Value::use_iterator ui = I->use_begin(), ue = I->use_end(); ui ! = ue; ++ui) if (cast<Instruction>(ui)->getParent() != I_BB) return true; } } If the value is created within the block but the block loops to itself, you can get away with a very slight adjustment:...
2012 Feb 09
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...:ComputeExitLimit(const Loop >> >> > *L, BasicBlock *ExitingBlock) { >> >> >   if (ExitBr->getSuccessor(0) != L->getHeader() && >> >> >       ExitBr->getSuccessor(1) != L->getHeader() && >> >> >       ExitBr->getParent() != L->getHeader()) { >> >> > -    // The simple checks failed, try climbing the unique predecessor >> >> > chain >> >> > -    // up to the header. >> >> > + >> >> >     bool Ok = false; >> >> > -    fo...
2005 May 11
1
[LLVMdev] Computing live values
...a public header. >> >> This is overkill. I would suggest something like this: >> >> bool LiveOutsideOfBlock(Instruction *I) { >> for (Value::use_iterator UI = I->use_begin(), E = I->use_end(); UI != E; ++UI) >> if (cast<Instruction>(*UI))->getParent() != I->getParent()) return true; >> return false; >> } > > Is this really going to work? What if the value is used in a loop and it > is used by a phi-node in the same block it is defined? Good point. :) If PHI nodes matter (depends on your application), it would t...
2009 May 30
4
[LLVMdev] Value liveout (uses)
Hi, How can i know, if a value have uses outside of the current basic block (liveout), without iterating through all the basic block ? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090530/71681bc2/attachment.html>
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...ScalarEvolution::ComputeExitLimit(const Loop > >> > *L, BasicBlock *ExitingBlock) { > >> > if (ExitBr->getSuccessor(0) != L->getHeader() && > >> > ExitBr->getSuccessor(1) != L->getHeader() && > >> > ExitBr->getParent() != L->getHeader()) { > >> > - // The simple checks failed, try climbing the unique predecessor > >> > chain > >> > - // up to the header. > >> > + > >> > bool Ok = false; > >> > - for (BasicBlock *BB = Exit...
2004 Aug 04
4
[LLVMdev] error building updated LLVM
> Compiling InstrSelectorEmitter.cpp > InstrSelectorEmitter.cpp: In member function `virtual void > llvm::InstrSelectorEmitter::run(std::ostream&)': > InstrSelectorEmitter.cpp:1295: internal compiler error: in > convert_from_eh_region_ranges_1, at except.c:1159 > Please submit a full bug report, GCC 3.3.2 is not compatible with LLVM, sorry! -Chris > with
2012 Feb 09
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...t(const Loop >>> >> > *L, BasicBlock *ExitingBlock) { >>> >> >   if (ExitBr->getSuccessor(0) != L->getHeader() && >>> >> >       ExitBr->getSuccessor(1) != L->getHeader() && >>> >> >       ExitBr->getParent() != L->getHeader()) { >>> >> > -    // The simple checks failed, try climbing the unique predecessor >>> >> > chain >>> >> > -    // up to the header. >>> >> > + >>> >> >     bool Ok = false; >>&g...
2012 Feb 09
1
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
...;>>> >> > *L, BasicBlock *ExitingBlock) { >>>> >> >   if (ExitBr->getSuccessor(0) != L->getHeader() && >>>> >> >       ExitBr->getSuccessor(1) != L->getHeader() && >>>> >> >       ExitBr->getParent() != L->getHeader()) { >>>> >> > -    // The simple checks failed, try climbing the unique predecessor >>>> >> > chain >>>> >> > -    // up to the header. >>>> >> > + >>>> >> >     bool Ok...
2005 Feb 17
4
[LLVMdev] Branching to Entry block
On Thu, 17 Feb 2005, Tanu Sharma wrote: > I created a new block and inserted it into the present basic block list > , but I get this error: > > opt: BasicBlock.cpp:83: virtual llvm::BasicBlock::~BasicBlock(): Assertion `getParent() == 0 && "BasicBlock still linked into the program!"' failed. > > The program completes its task and i get this in the end. I am unable to > resolve this. The problem there is that you're trying to delete some basic block that is still embedded into a funct...