Anubhav Agrawal
2010-May-31 18:23 UTC
[LLVMdev] Finding Merge nodes in CFG (ambika@cse.iitb.ac.in)
hi ambika, I am not sure about this solution as i just started working in this field. How about taking analogy of a problem which ask us to find nearest common parent of two nodes in a tree. Let me know if I can be corrected. - Anubhav intern IIT M B. Tech 4th year CSE VIT University, Vellore. On 31 May 2010 22:30, <llvmdev-request at cs.uiuc.edu> wrote:> Send LLVMdev mailing list submissions to > llvmdev at cs.uiuc.edu > > To subscribe or unsubscribe via the World Wide Web, visit > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > or, via email, send a message with subject or body 'help' to > llvmdev-request at cs.uiuc.edu > > You can reach the person managing the list at > llvmdev-owner at cs.uiuc.edu > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of LLVMdev digest..." > > > Today's Topics: > > 1. Re: How difficult is to fix this error: JIT does not support > address-of-label yet! [patch submitted] (Yuri) > 2. Finding Merge nodes in CFG (ambika) > 3. Re: How difficult is to fix this error: JIT does not support > address-of-label yet! [patch submitted] (Eric Christopher) > 4. Re: LLVM opportunities with Google Native Client (Fabio Kaminski) > 5. Re: Finding Merge nodes in CFG (John Criswell) > 6. libllvm on windows (John Lask) > 7. Re: libllvm on windows (T?r?k Edwin) > 8. Re: Finding Merge nodes in CFG (ambika at cse.iitb.ac.in) > 9. Error with instruction selection (Kalle.Raiskila at nokia.com) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Sun, 30 May 2010 13:32:22 -0700 > From: Yuri <yuri at rawbw.com> > Subject: Re: [LLVMdev] How difficult is to fix this error: JIT does > not support address-of-label yet! [patch submitted] > To: llvmdev at cs.uiuc.edu > Message-ID: <4C02CB56.8000105 at rawbw.com> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > I just implemented this feature and here is the patch: > http://llvm.org/bugs/show_bug.cgi?id=7264 > > Yuri > > > ------------------------------ > > Message: 2 > Date: Mon, 31 May 2010 03:19:42 +0530 > From: ambika <ambika at cse.iitb.ac.in> > Subject: [LLVMdev] Finding Merge nodes in CFG > To: "llvmdev at cs.uiuc.edu" <llvmdev at cs.uiuc.edu> > Message-ID: <4C02DD76.2090008 at cse.iitb.ac.in> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Hi, > > I have basic block and I want to find a merge node just above this basic > block. > How can I do this? > > Thanks in advance. > > regards, > Ambika > > > ------------------------------ > > Message: 3 > Date: Sun, 30 May 2010 18:42:39 -0700 > From: Eric Christopher <echristo at apple.com> > Subject: Re: [LLVMdev] How difficult is to fix this error: JIT does > not support address-of-label yet! [patch submitted] > To: Yuri <yuri at rawbw.com> > Cc: llvmdev at cs.uiuc.edu > Message-ID: <F2D7213F-F8FC-44A4-9B07-8256C36D1589 at apple.com> > Content-Type: text/plain; charset=us-ascii > > > On May 30, 2010, at 1:32 PM, Yuri wrote: > > > I just implemented this feature and here is the patch: > > http://llvm.org/bugs/show_bug.cgi?id=7264 > > Just to follow up to the list Reid replied to this in the bug. I commented > as well. > > -eric > > > ------------------------------ > > Message: 4 > Date: Sun, 30 May 2010 23:53:17 -0300 > From: Fabio Kaminski <fabiokaminski at gmail.com> > Subject: Re: [LLVMdev] LLVM opportunities with Google Native Client > To: bradchen at google.com > Cc: llvmdev at cs.uiuc.edu > Message-ID: > <AANLkTimFgmdOXczADU92h4h-Bkl1hhFCfx9SpngSOvIQ at mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > Oww Awsome!!! > > > can we spect the V8 using LLVM some day too?? :) > > it will make possible a real browser multilanguage JIT for all the > compilers > ported to llvm (why nobody deliver something like that either !?! hehehe) > > and the advance in LLVM jit itself (a powerfull dinamic jit) > > its very cool to know google is embracing LLVM Platform.. more brainpower > to > taking it to the next level! > > wish the best in this project..(and remembering how long i had to wait to > chromium arrives in the linux platform) > > On Sat, May 29, 2010 at 5:44 PM, Brad Chen <bradchen at google.com> wrote: > > > Google Native Client <http://code.google.com/p/nativeclient> is an > > open-source project working to deliver a native-code environment for Web > > browsers that is (at least) as safe and portable as JavaScript and other > > technologies we take for granted on the Web. Many LLVM developers have > > already noticed our recent blog post< > http://blog.chromium.org/2010/03/native-client-and-web-portability.html> > about > > using LLVM as the basis of our instruction set portability strategy. We > are > > looking for a few engineers with deep knowledge of LLVM, code generation, > > and system bring-up to join the core team delivering Portable Native > Client > > to our developer community. > > > > Feel free to contact me at bradchen at google.com for more information > about > > the project. Those of you who know Rafael Espindola can also consider > > contacting him. Rafael recently joined the project full-time. > > > > Brad Chen > > Engineering Manager > > Google Native Client > > > > > > _______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: > http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20100530/94556147/attachment-0001.html > > ------------------------------ > > Message: 5 > Date: Sun, 30 May 2010 23:55:46 -0600 > From: John Criswell <criswell at illinois.edu> > Subject: Re: [LLVMdev] Finding Merge nodes in CFG > To: ambika <ambika at cse.iitb.ac.in> > Cc: "llvmdev at cs.uiuc.edu" <llvmdev at cs.uiuc.edu> > Message-ID: <4C034F62.7060207 at illinois.edu> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > ambika wrote: > > Hi, > > > > I have basic block and I want to find a merge node just above this basic > > block. > > How can I do this? > > > > Can you clarify what you mean by a "merge node?" Are you looking for > the proper place to insert a phi node? Are you trying to find the first > basic block that dominates the basic block of interest, or do you mean > something else entirely? > > -- John T. > > > Thanks in advance. > > > > regards, > > Ambika > > _______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > > > ------------------------------ > > Message: 6 > Date: Mon, 31 May 2010 16:32:27 +0930 > From: John Lask <jvlask at hotmail.com> > Subject: [LLVMdev] libllvm on windows > To: llvmdev at cs.uiuc.edu > Message-ID: <BLU0-SMTP66EFCB44694C08EF9B0665C6EE0 at phx.gbl> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > I am looking to use llvm on windows. I know there is a pre-compiled llvm > windows distribution, but this does not seem to provide libllvm. The > software that I am looking to use makes use of libllvm (it is unix > based, but I would like to port it to windows). I really did not wish to > spend my time compiling llvm (i.e. installing it's dependencies) from > scratch. What options do I have ? > > > ------------------------------ > > Message: 7 > Date: Mon, 31 May 2010 11:16:08 +0300 > From: T?r?k Edwin <edwintorok at gmail.com> > Subject: Re: [LLVMdev] libllvm on windows > To: llvmdev at cs.uiuc.edu > Message-ID: <4C037048.4030306 at gmail.com> > Content-Type: text/plain; charset=ISO-8859-1 > > On 05/31/2010 10:02 AM, John Lask wrote: > > I am looking to use llvm on windows. I know there is a pre-compiled llvm > > windows distribution, but this does not seem to provide libllvm. The > > software that I am looking to use makes use of libllvm (it is unix > > based, but I would like to port it to windows). I really did not wish to > > spend my time compiling llvm (i.e. installing it's dependencies > > There are no dependencies. You just need cmake to generate a visual > studio project file. > > Best regards, > --Edwin > > > ------------------------------ > > Message: 8 > Date: Mon, 31 May 2010 16:11:15 +0530 > From: ambika at cse.iitb.ac.in > Subject: Re: [LLVMdev] Finding Merge nodes in CFG > To: "John Criswell" <criswell at illinois.edu> > Cc: "llvmdev at cs.uiuc.edu" <llvmdev at cs.uiuc.edu> > Message-ID: > <4c942266c42a7d8722bd7d3f6fe05be0.squirrel at www.cse.iitb.ac.in> > Content-Type: text/plain;charset=iso-8859-1 > > Actually I have collected some pointer information in the form [ p -> a,c > ]. Now suppose at some node I have information as [p->a,c]. Now i want to > find a merge node above this node where this information is actually > geting merged. > So if I get a merge node above this, I can check in its predecessors if > their out has only [p->a] or [p->c] and if not so then I will look for the > next merge node above this one, and so on. > > > ambika wrote: > >> Hi, > >> > >> I have basic block and I want to find a merge node just above this basic > >> block. > >> How can I do this? > >> > > > > Can you clarify what you mean by a "merge node?" Are you looking for > > the proper place to insert a phi node? Are you trying to find the first > > basic block that dominates the basic block of interest, or do you mean > > something else entirely? > > > > -- John T. > > > >> Thanks in advance. > >> > >> regards, > >> Ambika > >> _______________________________________________ > >> LLVM Developers mailing list > >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >> > > > > > > > > > ------------------------------ > > Message: 9 > Date: Mon, 31 May 2010 15:47:26 +0200 > From: <Kalle.Raiskila at nokia.com> > Subject: [LLVMdev] Error with instruction selection > To: <llvmdev at cs.uiuc.edu> > Message-ID: <1275313646.13411.91.camel at LLVMbuilder.research.nokia.com> > Content-Type: text/plain; charset="utf-8" > > Hello, > I'm seeing a miscompilation from the following code: > > declare <4 x float>* @getPtr() > define <4 x float> @func() { > %rv1 = call <4 x float>* @getPtr() > %rv2 = call <4 x float>* @getPtr() > %rv3 = load <4 x float>* %rv1 > ret <4 x float> %rv3 > } > > The load ends up loading from the pointer returned by the 2nd function > call. > I traced down the problem to calling the > SelectionDAGISel::SelectCodeCommon on the load instruction. Before > calling that the DAG looks OK. The selected target load ends up pointing > to the "physical function call return register node" instead of the > CopyFromReg node that copies the result of the 1st call to a temporary > register. The physical return register is then overwritten in the next > call. (This is visible when calling "llc -view-isel-dags > -view-sched-dags". The first graph is OK, the second is not.) > > The problem goes away if I: > -have the getPtr return anything else than <4xfloat>* or <4xi32>* (e.g. > <4xfloat> or float* work just fine) > -do not load from or store to the pointer - e.g. just returning the > pointer works. > -target any other processor than CellSPU (ok, some backends assert on > this code, and the PIC assebly I didn't understand :) ) > > Any explanation on what is going on or hints on how to fix this are > highly appreciated! > > thanks, > kalle > > > > > ------------------------------ > > _______________________________________________ > LLVMdev mailing list > LLVMdev at cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > End of LLVMdev Digest, Vol 71, Issue 49 > *************************************** >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100531/58451496/attachment.html>