search for: newblock

Displaying 17 results from an estimated 17 matches for "newblock".

Did you mean: netblock
2018 May 24
0
LLVM Pass To Remove Dead Code In A Basic Block
> On 25 May 2018, at 01:46, Aaron via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > Hi all, > > LLVM optimization pass gives an error "Terminator found in the middle of a basic block!" since basic block IR may have multiple "ret" instructions. It seems LLVM does not accept multiple return in a basic block by default. > Yes, if you’re inserting
2018 May 24
2
LLVM Pass To Remove Dead Code In A Basic Block
Hi all, LLVM optimization pass gives an error "Terminator found in the middle of a basic block!" since basic block IR may have multiple "ret" instructions. It seems LLVM does not accept multiple return in a basic block by default. Is there a specific optimization or pass that I can enable to remove unreachable codes in basic blocks? Best, Aaron -------------- next part
2005 Apr 28
2
[LLVMdev] inserting blocks into a Function
...es need to be updated in places where the incoming control-edge has changed. Is there anything else that can be affected when a block is inserted into the CFG? Also, planning to write a helper function which will take care of such issues. The general signature is: void reconnectBlocks(BasicBlock *newBlock, BasicBlock *insertBefore , std::vector<BasicBlock*> &preds , bool createBr = true) The std::vector "preds" is used to provide a list of preds for insertBefore, which will be reconnected to newBlock. For cases where all the preds will be...
2011 Oct 14
0
[LLVMdev] BasicBlock succ iterator
Hi I have checked all blocks, each block have a Terminator instruction and each blocks belongs to a function. I'm really confused. I guess the problem is caused by the removal of the Loop,The code is as follows: * //every block to header (except the ones in the loop), will now redirect to newblock for (pred_iterator PI = pred_begin(header); PI != pred_end(header); ++PI) { BasicBlock *pred = *PI; if (L->contains(pred)) { continue; } TerminatorInst *termInst = pred->getTerminator(); for (unsigned i = 0; i < termInst->getNumOp...
2018 May 24
2
LLVM Pass To Remove Dead Code In A Basic Block
...icBlock::iterator it) { assert(basicBlock->getTerminator() && "Block must have terminator instruction."); assert(it != basicBlock->getInstList().end() && "Can't split block since there is no following instruction in the basic block."); auto newBlock = llvm::BasicBlock::Create(basicBlock->getContext(), "splitedBlock", basicBlock->getParent(), basicBlock->getNextNode()); // Move all of the instructions from original block into new block. newBlock->getInstList().splice(newBlock->end(), basicBlock->getInstList(...
2005 Apr 29
0
[LLVMdev] inserting blocks into a Function
...hould be it. Note that the -loop-simplify pass does preheader insertion among other things. If you can just use it, I do recommend that. > Also, planning to write a helper function which will take care of such > issues. The general signature is: > > void reconnectBlocks(BasicBlock *newBlock, BasicBlock *insertBefore > , std::vector<BasicBlock*> &preds > , bool createBr = true) > > The std::vector "preds" is used to provide a list of preds for > insertBefore, which will be reconnected to newBlock. For cases where...
2011 Oct 13
6
[LLVMdev] BasicBlock succ iterator
Hi, All I want to implement DSWP Which is used for parallelization of loops. For this purpose, the loop was replaced with a new basic block in main function. And new functions were created and basic blocks of Loop assigned to them.I have checked blocks and branches for Succ and Pred relation and I have not found any problems. However I get the following error: * **opt:
2013 Jul 05
2
[LLVMdev] Any suggestion for "Unknown instruction type encountered" error?
...llvm::ICmpInst *Cmp = new llvm::ICmpInst(&SI, llvm::CmpInst::ICMP_EQ, Addr, llvm::Constant::getNullValue(Addr->getType()), ""); llvm::Instruction *Iter = &SI; OldBB->getParent()->dump(); llvm::BasicBlock *NewBB = OldBB->splitBasicBlock(Iter, "newBlock"); OldBB->getParent()->dump(); } } }; char Hello::ID = 0; static llvm::RegisterPass<Hello> X("hello", "Hello Pass", false, false); } The test1.c example is as the following: #include <stdio.h> void main() { int x; x = 5; }...
2003 Aug 27
2
Basic GLM: residuals definition
Dear R Users, I suppose this is a school boy question, but here it is anyway. I'm trying to re-create the residuals for a poisson GLM with simulated data; x<-rpois(1000,5) model<-glm(x~1,poisson) my.resids<-(log(x)- summary(model)$coefficients[1]) plot(my.resids,residuals(model)) This shows that my calculated residuals (my.resids) are not the same as residuals(model). p 65 of
2011 Sep 06
17
ext4 BUG in dom0 Kernel 2.6.32.36
...d. that is we have in_range(iblock, ee_block, ee_len) = true. so iblock >= ee_block fs/ext4/extents.c 3306 <+++<+++if (in_range(iblock, ee_block, ee_len)) { 3307 <+++<+++<+++newblock = iblock - ee_block + ee_start; 3308 <+++<+++<+++/* number of remaining blocks in the extent */ 3309 <+++<+++<+++allocated = ee_len - (iblock - ee_block); 3310 <+++<+++<+++ext_debug("%u fit into %u:%d -> %llu\n", iblock, 3311 <+++<+++<+++<+++<+...
2013 Jul 05
0
[LLVMdev] Any suggestion for "Unknown instruction type encountered" error?
...= new llvm::ICmpInst(&SI, llvm::CmpInst::ICMP_EQ, Addr, llvm::Constant::getNullValue(Addr->getType()),""); > > llvm::Instruction *Iter =&SI; > OldBB->getParent()->dump(); > llvm::BasicBlock *NewBB = OldBB->splitBasicBlock(Iter,"newBlock"); > OldBB->getParent()->dump(); > > } > > } > }; > > char Hello::ID = 0; > static llvm::RegisterPass<Hello> X("hello","Hello Pass", false, false); > } > > The test1.c example is as the following...
2004 Mar 16
0
VS: Documentation on how to put classes and methods in packages with namespace?
...[117] "name" "name<-" [119] "Names" "Names<-" [121] "nameToVertexIndex" "newBlock" [123] "newBlockEdge" "newDefaultModelObject" [125] "newDefaultTestObject" "newFactor" [127] "newFactorEdge"...
2004 Mar 16
2
Documentation on how to put classes and methods in packages with namespace?
Documentation on how to put classes and methods in packages with namespace? How should I define my classes and methods in "dynamicGraph"??? (That is - Can some one point me to the documentation on how to put classes and methods in packages with a namespace? ) Currently it is done by the code below. This gives problems, when a workspace with a "dynmaicGraph" is
2008 Apr 23
0
[LLVMdev] newbie with pass registering Problem
...=getAnalysis<blockNrs>(); GGenomManager->newFunction(F); for(Function::iterator b = F.begin(), be = F.end(); b!=be; ++b) { //aktuelle Block Nummer wird geholt blockCounter *bcntr = bnrs.lookup(b); GGenomManager->newBlock(&(*b),*bcntr); for(BasicBlock::iterator i = b->begin(), ie = b->end(); i!=ie; ++i) { GGenomManager->newInstruction(i); }// end for BB } // end for Function return false; } // end runO...
2010 Jan 09
2
[LLVMdev] [PATCH] Fix nondeterministic behaviour in the CodeExtractor
...BlocksToExtract.end(); i != e; ++i) { TerminatorInst *TI = (*i)->getTerminator(); for (unsigned i = 0, e = TI->getNumSuccessors(); i != e; ++i) @@ -633,7 +634,7 @@ Function::BasicBlockListType &oldBlocks = oldFunc->getBasicBlockList(); Function::BasicBlockListType &newBlocks = newFunction->getBasicBlockList(); - for (std::set<BasicBlock*>::const_iterator i = BlocksToExtract.begin(), + for (SetVector<BasicBlock*>::const_iterator i = BlocksToExtract.begin(), e = BlocksToExtract.end(); i != e; ++i) { // Delete the basic block from the ol...
2004 Mar 16
1
SV: Documentation on how to put classes and methods in packageswith namespace?
Re. the Kings Quest game called R, Inspired by the "stats4" of R-1.9.0 (alpha of 2004-03-15) I moved the body af my function ".onLoad.dynamicGraph" to the end of ".../dynamicGraph/R/dynamicGraph" (replacing "library(methods)" by "require(methods)"). The secound run, with [Previously saved workspace restored], produces the same result as in
2012 Sep 03
1
[GIT-PULL] XFS filesystem driver
...>sb_agcount * (s)->sb_agblocks) +#define XFS_MIN_DBLOCKS(s) ((xfs_drfsbno_t)((s)->sb_agcount - 1) * \ + (s)->sb_agblocks + XFS_MIN_AG_BLOCKS) + +/* + * Structures for XFS_IOC_FSGROWFSDATA, XFS_IOC_FSGROWFSLOG & XFS_IOC_FSGROWFSRT + */ +typedef struct xfs_growfs_data { + uint64_t newblocks; /* new data subvol size, fsblocks */ + uint32_t imaxpct; /* new inode space percentage limit */ +} xfs_growfs_data_t; + +typedef struct xfs_growfs_log { + uint32_t newblocks; /* new log size, fsblocks */ + uint32_t isint; /* 1 if new log is internal */ +} xfs_growfs_log_t; + +typedef struct x...