similar to: [LLVMdev] Instruction Conversion

Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] Instruction Conversion"

2009 May 09
0
[LLVMdev] Instruction Conversion
Rotem Varon wrote: > Hi, > > Let say i am writing a code inside basic block pass and iterating all > the instructions inside, > and i encountered in this instruction : If you're asking how to get the operands of an Instruction, use the getOperand() method: Value * Operand1 = I->getOperand(0); Value * Operand2 = I->getOperand(1); The LLVM doxygen documentation
2014 Mar 06
2
[LLVMdev] Upstreaming PNaCl's IR simplification passes
> > Just in case it gets lost in my longer reply, I want to emphasize that if > these will be used to simplify the in-tree backends and those backend > maintainers are on board, then I am *totally* in favor of this going into > the tree. My concerns are heavily based on the fact that as proposed, none > of that seems likely to happen. > > > Framing the problem
2014 Mar 04
2
[LLVMdev] Upstreaming PNaCl's IR simplification passes
On Tue, Mar 4, 2014 at 3:11 PM, Sean Silva <chisophugis at gmail.com> wrote: > On Tue, Mar 4, 2014 at 4:04 PM, Mark Seaborn <mseaborn at chromium.org>wrote: > >> The PNaCl project has implemented various IR simplification passes that >> simplify LLVM IR by lowering complex features to simpler features. We'd >> like to upstream some of these IR passes to
2009 May 09
2
[LLVMdev] LLVM related question
I will start with that i am vary grateful for your time.And continue with, i am sorry if my Qs aren't quite accurate( i just started with the LLVM compiler). On Sat, May 9, 2009 at 5:23 PM, Eli Friedman <eli.friedman at gmail.com> wrote: > On Sat, May 9, 2009 at 5:35 AM, Rotem Varon <varonrotem at gmail.com> wrote: > > I need to add a new optimization to the LLVM
2009 May 09
2
[LLVMdev] LLVM related question
Hi, I am a student (software engineering), and i am using the LLVM in my project (I am sorry of the lack of details, but i want to take the minimum of your time, if you want more details don't hesitate...). I need to add a new optimization to the LLVM compiler. The optimization ALREADY written for x86 IR (i mean that the code that handles the optimization is designated to work on assembly 86)
2009 May 10
1
[LLVMdev] LLVM related question
Thank you you answer. On Sun, May 10, 2009 at 12:48 AM, Eli Friedman <eli.friedman at gmail.com>wrote: > On Sat, May 9, 2009 at 8:37 AM, Rotem Varon <varonrotem at gmail.com> wrote: > > Its not x86 IR nor x86 assembly. I have x86 IR "like" instructions ( add > > R1, R2, R3 and so...) > >> > >> If it's really > >> x86
2009 May 09
0
[LLVMdev] LLVM related question
On Sat, May 9, 2009 at 5:35 AM, Rotem Varon <varonrotem at gmail.com> wrote: > I need to add a new optimization to the LLVM compiler. Knowing what the optimization does would be very helpful here. > The optimization ALREADY written for x86 IR (i mean that the code that > handles the optimization is designated to work on assembly 86) . It's designed to work on x86 assembly, or
2018 Sep 10
3
How to avoid multiple registers definitions in customInserter.
Hi, I'm lowering some of the logical operators (by example the | operator) on integer32. Sadly my target only provide native instruction on high and low parts of 32 bits registers. So, I have to generate a sequence of two native instructions (LOR followed by HOR). I've introduced an Pseudo instruction with a custom inserter. def OR_A_oo : CLPPseudoInst<(ins
2009 May 30
4
[LLVMdev] Value liveout (uses)
Thank you. Is it possible to determine the liveout of the operands (see example bellow) ? %5 = add i32 %4, %3 For '%5': i can simply use " i->isUsedOutsideOfBlock() " For '%3' and '%4' : this is the question ... >From your answer, is it possible to determine *which* value is liveout ( in binary instruction)? On Sat, May 30, 2009 at 2:57 AM,
2009 May 09
0
[LLVMdev] LLVM related question
On Sat, May 9, 2009 at 8:37 AM, Rotem Varon <varonrotem at gmail.com> wrote: > Its not x86 IR nor  x86 assembly. I have x86 IR "like" instructions ( add > R1, R2, R3    and so...) >> >>  If it's really >> x86 assembly, you can use LLVM's code generator to get x86 assembly, > > Do you mean the "llvm-gcc -S file.c" , or can i have the
2009 May 30
0
[LLVMdev] Value liveout (uses)
I believe Dan has added a pass to compute livein / liveout values. Evan Sent from my iPhone On May 30, 2009, at 5:03 AM, Rotem Varon <varonrotem at gmail.com> wrote: > Thank you. > > Is it possible to determine the liveout of the operands (see example > bellow) ? > > %5 = add i32 %4, %3 > > For '%5': i can simply use "
2009 May 10
2
[LLVMdev] llvm to x86 IR conversion
Hi, I am running a basic block pass (and iterating through each instruction). Is it possible to convert the basic block instruction form llvm IR to x86 IRWITHIN the path ? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090510/9c636a9a/attachment.html>
2009 May 18
3
[LLVMdev] IDE for llvm
Hi, I am new in the "Linux business" and i need to add an optimization to the LLVM compiler. I would like to know what is the bast way to debug (IDE) the LLVM compiler ? To be more precise, what is the equivalent to Microsoft visual studio on Linux platform? is it eclipse? I want features like: syntax highlight, go to def, etc. Thanks. -------------- next part -------------- An HTML
2009 May 31
1
[LLVMdev] Value liveout (uses)
The pass you're referring to is in include/llvm/Analysis/LiveValues.h and lib/Analysis/LiveValues.cpp. It computes conservative approximations for specific liveness queries, rather than full livein/liveout information. It's intended to be used as a heuristic. Dan On May 30, 2009, at 3:51 PM, Evan Cheng wrote: > I believe Dan has added a pass to compute livein / liveout values. >
2009 May 30
4
[LLVMdev] Value liveout (uses)
Hi, How can i know, if a value have uses outside of the current basic block (liveout), without iterating through all the basic block ? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090530/71681bc2/attachment.html>
2009 May 10
0
[LLVMdev] llvm to x86 IR conversion
On Sun, May 10, 2009 at 15:17, Rotem Varon <varonrotem at gmail.com> wrote: > I am running a basic block pass (and iterating through each instruction). > Is it possible to convert the basic block instruction form llvm IR to x86 IR > WITHIN the path ? > It seems to me that phi nodes would mean that you can't convert any unit smaller than a function to native code. ~ Scott
2009 May 10
1
[LLVMdev] llvm to x86 IR conversion
Hi, I believe that my question isn't clear. So, please let me rephrase : I am running a basic block pass (and iterating through each instruction). Is it possible to convert the basic block instruction form llvm IR to x86 IRWITHIN the path ? I mean: is LLVM API exists for this purpose ? Again, thanks. On Sun, May 10, 2009 at 10:30 PM, me22 <me22.ca at gmail.com> wrote: > On Sun,
2004 Jul 08
4
[LLVMdev] PHI nodes in machine code
Could anybody quickly explain why PHI nodes instructions are necessary in machine code? And why the code in LiveVariables.cpp which looks at those PHI nodes (line 249 and below) is necessary. The reason I'm asking is that I try to support 64-bit comparison and I do it by generating code like: // if high1 cond high2: goto operand0 // if high1 reverse_cond high2:
2009 May 09
0
[LLVMdev] Instruction Conversion
Rotem Varon wrote: > Hi, > > If i want to continue the conversation with you, do i need to replay > to llvmdev or to you diractly ? > If i replay to you, me email will be routed to you? You should reply to the llvmdev mailing list. That way, others can answer your questions, others can read their responses if they are having problems similar to the ones that you are
2004 Jul 08
0
[LLVMdev] PHI nodes in machine code
On Thu, Jul 08, 2004 at 08:06:29PM +0400, Vladimir Prus wrote: > Could anybody quickly explain why PHI nodes instructions are necessary > in machine code? And why the code in LiveVariables.cpp which looks at > those PHI nodes (line 249 and below) is necessary. LLVM Machine code is in SSA. Let's say you want to do r = a cond b But doing this: if (a cond b) then r = 1