similar to: [LLVMdev] Creating a GEP instruction.

Displaying 20 results from an estimated 900 matches similar to: "[LLVMdev] Creating a GEP instruction."

2010 Apr 26
0
[LLVMdev] Creating a GEP instruction.
On Sun, Apr 25, 2010 at 5:15 PM, Rohith Goparaju <rgoparaj at umail.iu.edu> wrote: >  Hi, > >    I'm trying to create a GEP (inbounds) instruction . I was looking at the > createinboundsGEP method . I didnt get the inputiterator part. My question > how do i create a GEP instruction and what do i pass for the input iterator > arguments. Generic answer to "how do I
2010 Apr 26
1
[LLVMdev] Creating a GEP instruction.
Thanks. The problem i'm facing is i want to get the address of the first element of an array and i have also tried using the createInBoundsGEP which takes the base pointer and the index value and a name. When i try passing '0' as the index im running into problems. Thanks, Rohith. On Sun, Apr 25, 2010 at 10:27 PM, Eli Friedman <eli.friedman at gmail.com>wrote: > On Sun, Apr
2010 Mar 17
3
[LLVMdev] CFG Manipulation is LLVM
Hi, Is there any API within llvm that provides methods to access the CFG and do some manipulations on the CFG. Thanks, Rohith. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100317/5536c443/attachment.html>
2010 May 02
2
[LLVMdev] Unreachable Executed error.
Hi, I've written a pass that basically does some code transformations to enable parallel execution. After the transformation llvm runs BitCode Writer pass , which is aborting with Unreachable Executed error. What does this error generally mean?. Any pointers on how to go about debugging this. Thanks, Rohith. -------------- next part -------------- An HTML attachment was scrubbed...
2010 Mar 26
0
[LLVMdev] CFG Manipulation is LLVM
Hi Rohith, > I'm actually working on building a dependence graph . I'm not able > to find the methods which llvm uses to build the CFG. Is it possible to > use the same functions do build a dependence graph ( i Know the CFG > nodes are basicblocks where as dependence graph nodes will be variables)?. LLVM does not have explicit methods to build the CFG because it is
2010 May 02
0
[LLVMdev] Unreachable Executed error.
Run the verifier pass after your pass. The bitcode readers and writers assume that the IR is well-formed, which yours may not be. Reid On Sun, May 2, 2010 at 1:08 AM, Rohith Goparaju <rgoparaj at umail.iu.edu> wrote: > Hi, > >   I've written a pass that basically does some code transformations to > enable parallel execution. After the transformation llvm runs BitCode
2010 Apr 18
2
[LLVMdev] Creating a Return Instruction.
Hi all, I have to create a return instruction in a function. The function is of type -- void * func (void *) . So i have to create a return instruction for the function that should return a void pointer. But actually the function will not return anything useful . it will be something like -- return void * null. The problem i am facing is to create a return instruction the Create function
2010 Apr 05
1
[LLVMdev] Moving Instructions.
Hi, Is there a way in which i can move an instruction from one basicblock to another?.(without giving the instruction a new name). I'm actually trying to move the body of a given loop into a new function. If i would be able to move basicblocks's that would be ideal. So is there a way to move a basicblock into a function?. Thanks, Rohith. -------------- next part -------------- An HTML
2010 Apr 18
2
[LLVMdev] Free Variables In a Loop.
Hi , I'm working on a project in which i need to find out all free variables in a loop. I need to find all variables used inside a loop and that are not declared(allocated) in the loop. I'm confused about what symbol tables to use to get hold of such variables. Thanks, Rohith. -------------- next part -------------- An HTML attachment was scrubbed... URL:
2010 Apr 19
0
[LLVMdev] Free Variables In a Loop.
Rohith Goparaju wrote: > Hi , > > I'm working on a project in which i need to find out all free > variables in a loop. I need to find all variables used inside a loop > and that are not declared(allocated) in the loop. I'm confused about > what symbol tables to use to get hold of such variables. When you say "variables," are you talking about LLVM virtual
2016 Apr 17
2
Problems with GEP and CallInst
I got a little problems with strings (const char pointers). Global variables holding the string literal are declared correctly, but i have a problem when I pass this string to a function: it asserts with this message. Assertion failed: ((i >= FTy->getNumParams() || FTy->getParamType(i) == Args[i]->getType()) && "Calling a function with a bad signature!"), function
2010 Mar 01
1
[LLVMdev] Regarding Dependence Analysis
Hi , I'm using llvm for a project im currently working on. I got a couple of questions . Is Dependence Analysis supported and/or implemented within llvm?. Does llvm perform peephole optimizations before genrating the bytecode . Thanks, Rohith. -------------- next part -------------- An HTML attachment was scrubbed... URL:
2010 Sep 20
1
[LLVMdev] AliasAnalysis Doubt.
Hi All, I'm trying to use the inbuilt AliasAnalysis function for one of my projects. Im trying to find out if a pair of load and store alias each other. It would be helpful if somebody could point out the right way to do this. Example : %13 = load i32* %12, align 4 store i32 30, i32* %4, align 4 So in the above example i'm trying to find out if
2008 Jul 23
2
[LLVMdev] GEP::getIndexValid() with other iterators
On Jul 22, 2008, at 11:54 PM, Matthijs Kooijman wrote: > Hi Chris, > > >> I'd prefer to not turn this into a template. Why not just define a >> version that takes an array of uint64_t's or something like that? > because I want to be able to pass in iterators. I could define a > version that > takes std<uint64_t>::iterators, but next thing we know, we
2010 Apr 19
1
[LLVMdev] Free Variables In a Loop.
John, Thanks, this would work. But we are interested in obtaining the instruction that defines/allocates the value of interest. Once we obtain that we can use LoopInfo pass to check whether the basic block containing that definition instruction belongs to the loop in question. Is there a method that returns the defining instruction? Thanks, Adarsh On Mon, Apr 19, 2010 at 10:05 AM, John Criswell
2008 Jul 23
0
[LLVMdev] GEP::getIndexValid() with other iterators
Hi Chris, > What flavor of iterators do you want to pass in? vector or > smallvector? If so, a pointer to the first element + extents is fine. I was passing a std::vector in. And you are quite right, first element + size works like a charm. Since I am using a vector of uint64_t's instead of Value*, I did need to add an extra version of getIndexedType(), taking a uint64_t* instead
2011 Feb 01
2
[LLVMdev] Convenience methods in ConstantExpr et al
I notice that there's a lot of inconsistency in the various LLVM classes with respect to convenience methods. Here's some examples: For creating GEPS, IRBuilder has: CreateGEP (2 overloads) CreateInBoundsGEP (2 overloads) CreateConstGEP1_32 CreateConstInBoundsGEP1_32 CreateConstGEP2_32 CreateConstInBoundsGEP2_32 CreateConstGEP1_64 CreateConstInBoundsGEP1_64
2008 Jul 16
3
[LLVMdev] GEP::getIndexValid() with other iterators
Hi all, currently, GetElementPtrInst has a method getIndexedType, which has a templated variant. You pass in a begin and an end iterator, and it will find the indexed type for those. However, both iterators must iterate over Value*. For some argpromotion code, I would like to pass in iterators that iterate over unsigneds instead of Value*. I currently solve this by transforming my
2011 Feb 02
0
[LLVMdev] Convenience methods in ConstantExpr et al
On Mon, Jan 31, 2011 at 10:57 PM, Talin <viridia at gmail.com> wrote: > I notice that there's a lot of inconsistency in the various LLVM classes > with respect to convenience methods. Here's some examples: > > For creating GEPS, IRBuilder has: > > CreateGEP (2 overloads) > CreateInBoundsGEP (2 overloads) > CreateConstGEP1_32 >
2007 Jul 04
1
[LLVMdev] API design (and Boost and tr1)
On Monday 02 July 2007 23:24, David A. Greene wrote: > > > - Changing the API > > > a) Template it to take two iterators. This causes code size bloat. > > This seems like the right solution to me. Unless llvm is running on > extremely limited memory embedded systems, the extra code space > shouldn't be an issue. It turns out this wasn't quite a simple as