Displaying 20 results from an estimated 600 matches similar to: "Getting variable names from LLVM Pass"
2018 May 21
0
Getting variable names from LLVM Pass
> On 21 May 2018, at 18:38, Ridwan Shariffdeen via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hi,
>
> I want to retrieve the variable names used in a statement, I tried the following snippet,
> but it only gives me the variable named in llvm bitcode. I need the variable name in source code.
>
> for (auto op = I.op_begin(); op != I.op_end(); op++) {
>
2018 May 24
1
Getting variable names from LLVM Pass
Hi Michael,
Thanks for the help, it seems like you said its not going to be easy. But I
will have a try at this, thank you for the link to LibTooling.
Best
On Mon, May 21, 2018 at 6:26 PM Dean Michael Berris <dean.berris at gmail.com>
wrote:
>
>
> > On 21 May 2018, at 18:38, Ridwan Shariffdeen via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
> >
> >
2018 May 15
0
source line number for instruction
Not sure what you tried/how it didn't work - could you explain more?
You could scan through all the llvm::Functions in an llvm::Module and look
at the debug info associated with them (getSubprogram) then check the
location of that debug info.
- Dave
On Tue, May 15, 2018 at 12:46 AM Ridwan Shariffdeen via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hi,
>
> I want to
2018 May 15
2
source line number for instruction
Hi,
I want to retrieve a function from a source line-number, is this
something possible to achieve?
I tried the following code snippet with LLVM-7 but it doesn't seem to
workhttp://llvm.org/docs/SourceLevelDebugging.html#ccxx_frontend
<http://llvm.org/docs/SourceLevelDebugging.html#ccxx_frontend:>
Is there specific documentation I can refer to implement this?
Thanks
--
*Rtr. PP
2005 Jul 11
2
[LLVMdev] Getting started with LLVM Passes
... here is some generally useful information I should have cc'd to
llvmdev in the first place ...
-Chris
--
http://nondot.org/sabre/
http://llvm.cs.uiuc.edu/
---------- Forwarded message ----------
Date: Sun, 10 Jul 2005 21:41:55 -0500 (CDT)
From: Chris Lattner <sabre at nondot.org>
To: Sean Peisert <peisert at gmail.com>
Subject: Re: [LLVMdev] Getting started with LLVM
2005 Jul 12
0
[LLVMdev] Getting started with LLVM Passes
Chris,
I've now figured out how to track and single out specific
instructions, which was ridiculously easy. Thanks!
I'm now on to trying to find more detail about those instructions,
such as the values and addresses of the operands in memory (or, in
the case of operands which are pointers, trying to get the pointer
values, addresses, and values stored at location specified by
2009 Sep 28
4
[LLVMdev] Printing Function Arguments
ivtm wrote:
> Hey Oscar,
>
> I want to extract information from the instruction.
>
> Think writing a simple interpreter.
>
> I already have the CallInst instance (described above in the message).
>
> Via ci->getOperand(1) say I can get the 'i32 8' parameter and I can get the
> 'i32' and '8' separately as Nick described.
>
> But I
2011 Sep 22
2
[LLVMdev] How to const char* Value for function argument
Hi,
I'm trying to replace function call with call to
wrapper(function_name, num_args, ...), where varargs hold args of
original call.
Function* launch = Function::Create(
TypeBuilder<int(const char*, int, ...), false>::get(context),
GlobalValue::ExternalLinkage, "kernelgen_launch_", m2);
{
CallInst* call = dyn_cast<CallInst>(cast<Value>(I));
if
2009 Sep 28
0
[LLVMdev] Printing Function Arguments
Hi Nick,
I parsed your message again carefully and did some experiments.
I guess the:
for (User::op_iterator i = I->op_begin(), e = I->op_end(); i != e; ++i)
{
}
iterates over the operands of the instruction "I", which are as you said,
*other* instructions.
But if I want to get other information about the instruction, say the type
of the operands,
then I still need to figure
2007 Sep 23
2
[LLVMdev] RFC: Tail call optimization X86
The patch is against revision 42247.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tailcall-src.patch
Type: application/octet-stream
Size: 62639 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070923/4770302f/attachment.obj>
2008 Apr 29
5
[LLVMdev] [PATCH] use-diet for review
Hi all,
I have reported more than enough about the space savings achieved
and the associated costs, here comes the current patch for review.
Since this one is substantially smaller than the previous one, I did
not cut it in pieces. The front part is about headers and the rest
the .cpp and other files.
Cheers,
Gabor
-------------- next part --------------
An embedded and charset-unspecified
2016 Apr 20
2
[IndVarSimplify] Narrow IV's are not eliminated resulting in inefficient code
Hi,
Would you be able to kindly check and assist with the IndVarSimplify / SCEV
problem I got in the latest LLVM, please?
Sometimes IndVarSimplify may not eliminate narrow IV's when there actually
exists such a possibility. This may affect other LLVM passes and result in
inefficient code. The reproducing test 'indvar_test.cpp' is attached.
The problem is with the second
2011 Sep 22
0
[LLVMdev] How to const char* Value for function argument
Hi Dimitry,
This makes sense if you think about it from the perspective that the string you want passing must be passed at runtime, and so can't use a const char * from compile time.
You need to make the string visible in the compiled image, and use that as the argument. A string is an array of 8-bit integers, so you need to create a ConstantArray.
Value *v = ConstantArray::get(Context,
2016 Apr 23
2
[IndVarSimplify] Narrow IV's are not eliminated resulting in inefficient code
Hi Sanjoy,
Thank you for looking into this!
Yes, your patch does fix my larger test case too. My algorithm gets double
performance improvement with the patch, as the loop now has a smaller
instruction set and succeeds to unroll w/o any extra #pragma's.
I also ran the LLVM tests against the patch. There are 6 new failures:
Analysis/LoopAccessAnalysis/number-of-memchecks.ll
2006 Mar 03
1
[LLVMdev] printing constants
Sir,
I am using the op_begin and op_end iterator for
iterating over the operands as mentioned below.
for (User::op_iterator
operand=j->op_begin(),operand_end=j->op_end();operand!=operand_end;++operand){
Value *v=operand->get();
const Type *t=v->getType();
cerr<<endl<<" operand: "<<"[ "<<v->hasName()<<"
2015 Sep 13
3
RFC: faster simplifyInstructionsInBlock/SimplifyInstructions pass
LLVM has two similar bits of infrastructure: a simplifyInstructionsInBlock function and a SimplifyInstructions pass, both intended to be lightweight “fix up this code without doing serious optimizations” functions, as far as I can tell. I don’t think either is used in a performance-sensitive place in-tree; the former is mostly called in minor places when doing CFG twiddling, and the latter seems
2010 Jan 09
0
[LLVMdev] [PATCH] Fix nondeterministic behaviour in the CodeExtractor
On Jan 8, 2010, at 5:01 PM, Julien Lerouge wrote:
> Hello,
>
> The CodeExtractor contains a std::set<BasicBlock*> to keep track of
> the
> blocks to extract. Iterators on this set are not deterministic, and so
> the functions that are generated are not (the order of the
> inputs/outputs can change).
>
> The attached patch uses a SetVector instead. Ok to apply ?
2004 Oct 12
1
[LLVMdev] Re: Hide visible string in variable (Chris Lattner)
Hi,
Thanks so much at first.
> Here are some observations:
>
> > for C level,
> >
> > char a[]="global string test";
> > for(i=0;i<strlen(a);i++){
> > a[i]= a[i]^RANDMON;
> > }
>
> If you compile this C code, "global string test" will occur in the program
> binary, so you have not obfuscated anything. You can
2009 Sep 06
3
[LLVMdev] Graphviz and LLVM-TV
On 2009-09-06 19:57, Ioannis Nousias wrote:
> Edwin,
>
> thank you for your effort, but I'm not sure I understand.
> Are you describing a graph traversal problem? Is the data model stored
> in a predecessor/successor fashion, which requires you to 'walk' the
> graph in order to visit all nodes? (and what happens when you have
> disjointed DFGs?).
Sorry for the
2012 Feb 13
10
[RFB] add LZ4 compression method to btrfs
Hi,
so here it is, LZ4 compression method inside btrfs. The patchset is based on
top of current Chris'' for-linus + Andi''s snappy implementation + the fixes from
Li Zefan. Passes xfstests and stresstests.
I haven''t measured performance on wide range of hardware or workloads, rather
wanted to publish the patches before I get distracted again. I''d like to ask