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...