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