search for: bbi

Displaying 20 results from an estimated 49 matches for "bbi".

Did you mean: abi
2017 Jan 10
2
[PATCHish] IfConversion; lost edges for some diamonds
...ring IfConversion of diamonds and it’s not > obvious how to reproduce on an upstream target. The documentation for > HasFallThrough says *may* fallthrough which I interpret as “this will be > true whenever we aren’t sure” but IfConverter::AnalyzeBranches() contains > the code: > > BBI.HasFallThrough = BBI.IsBrAnalyzable && BBI.FalseBB == nullptr; > BBI.HasFallThrough really means "Has Analyzable fallthrough." So this line is correct. > > So HasFallThrough is false whenever IsBrAnalyzable is false. That is > common because IsBrAnalyzable is false...
2002 Sep 16
4
[LLVMdev] another question
...llocationInst *AI = dyn_cast<AllocationInst>(Val)) { ... } I cannot understand how you take a operand, a value, and cast it into a Instruction. Can you explain it for me? Another common example is: // Loop over all of the phi nodes in a basic block BasicBlock::iterator BBI = BB->begin(); for (; PHINode *PN = dyn_cast<PHINode>(&*BBI); ++BBI) cerr << *PN; In this case you cast &*BBI. It's not an operand. Can you explain to me a little about what you can cast and what cannot? Besides, maybe this is a stupid question, but what do you me...
2005 Oct 17
1
smbcacls add fails 3.0.20a
Hi all! I have a problem setting ACLs on a remote file on a Windows XP Pro SP2 box. I issue the following command: smbcacls -a 'ACL:BBI-DEV\beakid:ALLOWED/0/0x00100116' -U 'BBI-DEV \Admin' //BBI-DEV/Data /Niva.txt And I get this response from debug level 3. Password: Connecting to host=BBI-DEV Connecting to 192.168.1.124 at port 445 Doing spnego session setup (blob length=16) server didn't supply a full spnego ne...
2012 Nov 01
0
[LLVMdev] : Predication on SIMD architectures and LLVM
On Wed, Oct 31, 2012 at 09:13:43PM +0100, Bjorn De Sutter wrote: > Hi all, > > I am working on a CGRA backend (something like a 2D VLIW), and we also absolutely need predication. I extended the IfConversion pass to allow it to be executed multiple times and to predicate already predicated code. This is necessary to predicate code with nested conditional statements. At this point, we
2005 Oct 14
1
smbcacls add acl fails 3.0.20
Hi all! I have a problem setting ACLs on a remote file on a Windows XP Pro SP2 box. I issue the following command: smbcacls -a 'ACL:BBI-DEV\beakid:ALLOWED/0/0x00100116' -U 'BBI-DEV \Admin' //BBI-DEV/Data /Niva.txt And I get this response from debug level 3. Password: Connecting to host=BBI-DEV Connecting to 192.168.1.124 at port 445 Doing spnego session setup (blob length=16) server didn't supply a full spnego ne...
2013 Apr 10
3
[LLVMdev] If Conversion and predicated returns
...es later transformations. Specifically, the issue is that BB#1 still lists BB#3 as a successor, but this is not true. Looking at IfConversion.cpp, I see this function: /// RemoveExtraEdges - Remove true / false edges if either / both are no longer /// successors. void IfConverter::RemoveExtraEdges(BBInfo &BBI) { MachineBasicBlock *TBB = NULL, *FBB = NULL; SmallVector<MachineOperand, 4> Cond; if (!TII->AnalyzeBranch(*BBI.BB, TBB, FBB, Cond)) BBI.BB->CorrectExtraCFGEdges(TBB, FBB, !Cond.empty()); } and I think that this function is supposed to clean up the successors of...
2002 Sep 16
0
[LLVMdev] another question
...= dyn_cast<AllocationInst>(Val)) { } ... } } } I cannot understand how you take a operand, a value, and cast } it into a Instruction. Can you explain it for me? } } Another common example is: } } // Loop over all of the phi nodes in a basic block } BasicBlock::iterator BBI = BB->begin(); } for (; PHINode *PN = dyn_cast<PHINode>(&*BBI); ++BBI) } cerr << *PN; } } In this case you cast &*BBI. It's not an operand. Can you } explain to me a little about what you can cast and what } cannot? } } Besides, maybe this is a stupid question, bu...
2011 Nov 01
2
[LLVMdev] Adding a custom GC safe point creation phase
...your findCustomSafePoints implementation looks > like. Perhaps it's possible to extract some of it into the framework. > The code for my findCustomSafePoints is like this: void MyGC::findCustomSafePoints(GCFunctionInfo& FI, MachineFunction &MF) { for (MachineFunction::iterator BBI = MF.begin(), BBE = MF.end(); BBI != BBE; ++BBI) { for (MachineBasicBlock::iterator MI = BBI->begin(), ME = BBI->end(); MI != ME; ++MI) { if (MI->getDesc().isCall()) { /// Standard code need for...
2012 Oct 31
3
[LLVMdev] : Predication on SIMD architectures and LLVM
Hi all, I am working on a CGRA backend (something like a 2D VLIW), and we also absolutely need predication. I extended the IfConversion pass to allow it to be executed multiple times and to predicate already predicated code. This is necessary to predicate code with nested conditional statements. At this point, we support or, and, and conditional predicates (see Scott Mahlke's papers on this
2011 Nov 01
0
[LLVMdev] Adding a custom GC safe point creation phase
...SafePoints implementation looks like. Perhaps it's possible to extract some of it into the framework. > > The code for my findCustomSafePoints is like this: > > void MyGC::findCustomSafePoints(GCFunctionInfo& FI, MachineFunction &MF) { > for (MachineFunction::iterator BBI = MF.begin(), > BBE = MF.end(); BBI != BBE; ++BBI) { > for (MachineBasicBlock::iterator MI = BBI->begin(), > ME = BBI->end(); MI != ME; ++MI) { > if (MI->getDesc().isCall()) { > //...
2013 Apr 10
0
[LLVMdev] If Conversion and predicated returns
...not have a designated exit block). > Alternatively, the diamond conversion routine contains this: > > // RemoveExtraEdges won't work if the block has an unanalyzable branch, > // which can happen here if TailBB is unanalyzable and is merged, so > // explicitly remove BBI1 and BBI2 as successors. > BBI.BB->removeSuccessor(BBI1->BB); > BBI.BB->removeSuccessor(BBI2->BB); > RemoveExtraEdges(BBI); > > should something similar be added prior to the calls to RemoveExtraEdges in the simple and triangle conversion routines? Both of these...
2014 Jul 31
2
[LLVMdev] suspicious typo in MCObjectDisassembler.cpp
...MC CFG: Support disassembly at arbitrary addresses in MCObjectDisassembler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk at 188889 91177308-0d34-0410-b5e6-96231b3b80d8 please review "SE != SE" below. i think it should be SI != SE. + for (AddressSetTy::const_iterator SI = BBI->SuccAddrs.begin(), + SE = BBI->SuccAddrs.end(); + SE != SE; ++SI) { thanks, --lx
2011 Nov 23
0
[LLVMdev] GC plugin: Not add (postcall) safe point after tail-call
...exclude Tail-call instructions from being considered as Safe Points. For that reason I have overwritten the "findCustomSafePoints" function with something like that: bool ErlangGC::findCustomSafePoints(GCFunctionInfo &FI, MachineFunction &MF) { for (MachineFunction::iterator BBI = MF.begin(), BBE = MF.end(); BBI != BBE; ++BBI) for (MachineBasicBlock::iterator MI = BBI->begin(), ME = BBI->end(); MI != ME; ++MI) if (MI->getDesc().isCall() && !isTailC...
2014 Jul 31
2
[LLVMdev] suspicious typo in MCObjectDisassembler.cpp
...>> >> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk at 188889 >> 91177308-0d34-0410-b5e6-96231b3b80d8 >> >> >> please review "SE != SE" below. i think it should be SI != SE. >> >> >> + for (AddressSetTy::const_iterator SI = BBI->SuccAddrs.begin(), >> + SE = BBI->SuccAddrs.end(); >> + SE != SE; ++SI) { >> >> >> thanks, >> --lx >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.ed...
2012 Oct 31
1
[LLVMdev] Lifetime analysis of variables within a module
...e used in a given Module. I want to know the variables that must be alive at the input and at the end of every function call (and every BasicBlock). By creating a pass inheriting from ModulePass I can reach up to here: virtual bool runOnFunction(Function &F) { ... for (Function::iterator bbi = F.begin(), bbf = F.end(); bbi != bbf; bbi++) { ... for (BasicBlock::iterator insi = bbi->begin(), insf = bbi->end(); insi != insf; insi++) { ... for (User::op_iterator opi = insi->op_begin(), opf = insi->op_end(); opi != opf; opi++)...
2011 Nov 01
0
[LLVMdev] Adding a custom GC safe point creation phase
On 2011-10-31, at 17:21, Nicolas Geoffray wrote: > Here's a patch to allow a GCStrategy to customize the places where it wants to insert safe points. I'm not sure who maintains the GC code today in LLVM (I'd be happy to take ownership, if needed). > > The patch just adds up a custom safepoints flag, similar to the way the GCStrategy can customize intrinsics lowering, or
2011 Oct 31
2
[LLVMdev] Adding a custom GC safe point creation phase
Hi Chris, Gordon, Here's a patch to allow a GCStrategy to customize the places where it wants to insert safe points. I'm not sure who maintains the GC code today in LLVM (I'd be happy to take ownership, if needed). The patch just adds up a custom safepoints flag, similar to the way the GCStrategy can customize intrinsics lowering, or roots initialization. It works pretty well, as
2020 May 05
2
Missing vectorization of loop due to load late in the loop
...#39;t. I've done some digging to see why and have some kind of idea what prevents it, but I don't know what the best way to fix it would be so I thought I'd share a reduced version of it to see if anyone here have ideas. So, what happens can be reproduced on trunk with opt -O3 -S -o - bbi-39227-reduced.ll The input program consists of two nested loops where the inner loop loads a value and does some calculations and then the outer loop writes the calculated value somewhere. With -debug-only=loop-vectorize I see this printout from the vectorizer for the inner loop: LV: Not vecto...
2017 Aug 22
5
[RFC] mir-canon: A new tool for canonicalizing MIR for cleaner diffing.
Patch for review. On Mon, Aug 21, 2017 at 11:45 PM Puyan Lotfi <puyan.lotfi.llvm at gmail.com> wrote: > Ping. > > Still working on preparing code for review. Will have a patch for review > ready in the coming days. > > PL > > On Tue, Aug 15, 2017 at 12:06 PM Puyan Lotfi <puyan.lotfi.llvm at gmail.com> > wrote: > >> Hi, >> >> >>
2009 Nov 18
2
parsing numeric values
Dear list, I'm seeking advice to extract some numeric values from a log file created by an external program. Consider the following example, input <- readLines(textConnection( "some text <ax> = 1.3770E-03 <bx> = 3.4644E-07 <ay> = 1.9412E-04 <by> = 4.8840E-08 other text <aax> = 1.3770E-03 <bbx> = 3.4644E-07