similar to: [LLVMdev] llvm-c API and well formed block

Displaying 20 results from an estimated 900 matches similar to: "[LLVMdev] llvm-c API and well formed block"

2008 Dec 19
0
[LLVMdev] llvm-c API and well formed block
On 2008-12-19, at 09:18, Seo Sanghyeon wrote: > How can I find out, in llvm-c API, whether a basic block is well > formed? In C++ I could call getTerminator and test for NULL. There's not currently a binding for this. In general, there's incomplete support for inspection and analysis through the C bindings. BasicBlock::getTerminator() is just a convenient way to spell for
2006 Dec 27
2
[LLVMdev] Sparse and LLVM
I can't be the first person to think of this, can I? But I couldn't locate any reference on this combination. If you know of one, please tell me. Sparse: http://kernel.org/pub/linux/kernel/people/josh/sparse/ LLVM: http://llvm.org/ So, you may expect compile-llvm.c in a few days. :) -- Seo Sanghyeon
2008 Oct 02
2
[LLVMdev] VMKit broken on trunk
With trunk(r56943), I get: make[3]: Entering directory `/home/tinuviel/llvm/vmkit/lib/JnJVM/VMCore' llvm[3]: Compiling JnjvmModule.cpp for Debug build JnjvmModule.cpp:11:38: error: llvm/ParameterAttributes.h: No such file or directory -- Seo Sanghyeon
2007 Dec 13
1
[LLVMdev] Miscompilation
http://llvm.org/bugs/show_bug.cgi?id=1837 I reduced the above case to this: ; test.ll define i8* @test() { %x1 = malloc i8, i32 16 %x2 = bitcast i8* %x1 to i8** store i8* %x1, i8** %x2 ret i8* %x1 } $ llvm-as test.ll $ opt -instcombine test.bc -o testopt.bc $ llc test.bc $ llc testopt.bc $ diff -u test.s testopt.s -movl $16, (%esp) +movl $8, (%esp) call malloc I'm afraid that I'm not
2007 Dec 25
0
[LLVMdev] llvm-ar's q operation
I'm not sure how this happened, but llvm-ar q doesn't work, even if llvm-ar.cpp has relevant codes. As the developer policy said "you are allowed to commit patches without approval which you think are obvious", I did. The patch follows, just in case. Index: tools/llvm-ar/llvm-ar.cpp =================================================================== ---
2006 Jan 15
5
SEO friendly and validation?
Hello everyone! I am new to Ruby on Rails. These are my questions: - is Ruby on Rails SEO friendly? - can validation result be in another language then english? thanks! -- Posted via http://www.ruby-forum.com/.
2012 Dec 20
3
[LLVMdev] LLVM segmentation fault / need use Instruction instead of Instruction*
Hello John, I was following your procedures and I isolated the problem. The problem are represented by the basic blocks with only one element. for (Function::iterator II = F.begin(), EE = F.end(); II != EE; ++II, ++ii) { BasicBlock* BB=II; if (BB->getTerminator()) { Instruction* current = BB->getTerminator(); Instruction* previous;
2009 May 08
2
[LLVMdev] Splitting a basic block, replacing it's terminator
Hi, I want to insert a conditional branch in the middle of a basic block. To that end, I am doing these steps: (1) Split the basic block: bb->splitBasicBlock() (2) Remove the old terminator: succ->removePredecessor(bb) bb->getTerminator()->getParent() (3) Adding a new terminator: BranchInst::Create(ifTrue, ifFalse, cnd, "", bb); That seems to work, but later passes
2012 Dec 19
3
[LLVMdev] LLVM segmentation fault / need use Instruction instead of Instruction*
Hello everyone, I have a segmentation fault while running an LLVM pass. I need to use BBterminators array outside the iterating "for" loop for basic blocks. It seems that LLVM does not protect the addresses ( note: TerminatorInst *BasicBlock::getTerminator() ) when iterating through the loop, so I need to keep in BBterminators "Instruction" type elements, not
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
Hello, I'm finding problems with BackEdgeTaken count calculation in even simple fortran loops with gfortran-4.6 + DragonEgg 3.0. Even for simple double loops like this one: program test2 integer i,j,k dimension k(100,100) do j=1,100 do i=1,100 k(i,j) = i enddo enddo write(*,*) k(1,30) end make the ScalarEvolution
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
Attached 2012/2/8 Marcello Maggioni <hayarms at gmail.com>: > Mmm, sorry, the patch I posted crashes if ExitBr is null (which it may > be ...) , this one should be ok (and passess all the ScalarEvolution > tests in LLVM): > > diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp > index daf7742..b10fab2 100644 > ---
2006 Aug 14
8
How search engine friendly are RoR sites?
I am a total RoR virgin, and took my first steps this weekend into the Ruby world. A lot of sites I create need to be as SEO friendly as possible, particularly for google. Before I delve any further, can anyone tell me how friendly the dynamic URLs or if there is the usual rewrite mod for rugby? Thanks Mike -- Posted via http://www.ruby-forum.com/.
2012 Feb 08
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
Well, it wasn't intended as a "real" patch to be included , but more as a "proof of concept" for a solution. Do you think it is a valid solution and I'm correct in my assumption? If so then I'll clean up the patch and attach a testcase for inclusion. Thanks! Marcello 2012/2/9 Nick Lewycky <nlewycky at google.com>: > Your patch should include a testcase,
2009 May 08
0
[LLVMdev] Splitting a basic block, replacing it's terminator
On May 8, 2009, at 4:02 PM, Nick Johnson wrote: > I want to insert a conditional branch in the middle of a basic block. > To that end, I am doing these steps: > > (1) Split the basic block: > bb->splitBasicBlock() > > (2) Remove the old terminator: > succ->removePredecessor(bb) > bb->getTerminator()->getParent() Assuming that the new block will still be a
2012 Feb 09
2
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
This is the .ll for that graph (attached). I think I understand what you are saying. This particular testcase returns CNC not because the exit block doesn't have a unique predecessor, but because the unique predecessor (the inner loop block) has a successor that is inside the loop (in this case itself, because it's the inner loop block). That doesn't change, anyway, the assuption that
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
Mmm, sorry, the patch I posted crashes if ExitBr is null (which it may be ...) , this one should be ok (and passess all the ScalarEvolution tests in LLVM): diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp index daf7742..b10fab2 100644 --- a/lib/Analysis/ScalarEvolution.cpp +++ b/lib/Analysis/ScalarEvolution.cpp @@ -4293,9 +4293,15 @@
2010 May 04
2
[LLVMdev] Question about GVN
Hello, I was investigating GVN.cpp file and I found suspicious part: 1587 bool NeedToSplitEdges = false; 1588 for (pred_iterator PI = pred_begin(LoadBB), E = pred_end(LoadBB); 1589 PI != E; ++PI) { 1590 BasicBlock *Pred = *PI; 1591 if (IsValueFullyAvailableInBlock(Pred, FullyAvailableBlocks)) { 1592 continue; 1593 } 1594 PredLoads[Pred] = 0; 1595 1596 if
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 =
2012 Feb 08
0
[LLVMdev] BackedgeTakenCount calculation for fortran loops and DragonEgg gfortran-4.6
Your patch should include a testcase, see test/Analysis/ScalarEvolution for examples. "BranchInst* " should be "BranchInst *". You should have spaces after the // in your comments. One of the comment lines isn't indented properly. Nick On 8 February 2012 12:05, Marcello Maggioni <hayarms at gmail.com> wrote: > Attached > > 2012/2/8 Marcello Maggioni
2008 Nov 28
1
confidence interval for glm
Hi all, simple Q: how do I extract the upper and lower CI for predicted probabilities directly for a glm - I'm sure there's a one line to do it but I can't find it. the predicted values I get with the predict (.. "response") Thanks Gerard ********************************************************************************** The information transmitted is intended only for