[LLVMdev] OpenCL Backend

Simon Moll Simon.Moll at dfki.de
Sat Aug 27 03:56:49 CDT 2011


Hi,

as you come to speak of it, i have implemented an OpenCL-Backend for
LLVM as part of my bachelor thesis (and for GLSlang as well, see
http://www.cdl.uni-saarland.de/publications/theses/moll_bsc.pdf ).
However, the code is currently unreleased. But that could be arranged,
if you are interested in using it.

Regards,
Simon

Am Freitag, den 26.08.2011, 20:11 -0500 schrieb
llvmdev-request at cs.uiuc.edu:
> 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: Dead node removal in DAGCombiner (Akira Hatanaka)
>    2. Re: Is LLVM compatible with AMD? (Villmow, Micah)
>    3. Re: Segmented Stacks (Re-Roll 2) (Rafael ?vila de Esp?ndola)
>    4. How much adaptable is the LLVM to POSIX pattern?
>       (geovanisouza92 at gmail.com)
>    5. Re: Why BinaryOperator::Create requires same argument types
>       for shifts? (Yuri)
>    6. Re: Why BinaryOperator::Create requires same argument types
>       for shifts? (Eli Friedman)
>    7. Re: Segmented Stacks (Re-Roll 2) (Evan Cheng)
>    8. Re: Is LLVM compatible with AMD? (geovanisouza92 at gmail.com)
>    9. Re: Is LLVM compatible with AMD? (Villmow, Micah)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Fri, 26 Aug 2011 10:54:36 -0700
> From: Akira Hatanaka <ahatanak at gmail.com>
> Subject: Re: [LLVMdev] Dead node removal in DAGCombiner
> To: llvmdev at cs.uiuc.edu
> Message-ID:
> 	<CAB297QxcCQdpqMf7x89aAVyTiP0fDaqUxr_kjpRSX6BHAT=M7A at mail.gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
> 
> On Fri, Aug 26, 2011 at 9:52 AM, Duncan Sands <baldrick at free.fr> wrote:
> > Hi Akira,
> >
> >> Is this piece of code in DAGCombiner::visitLOAD removing a dead node?
> >>
> >> 06155 ? ? ? ? if (N->use_empty()) {
> >> 06156 ? ? ? ? ? removeFromWorkList(N);
> >> 06157 ? ? ? ? ? DAG.DeleteNode(N);
> >> 06158 ? ? ? ? }
> >
> > yes.
> >
> >> If it is, is there a reason it doesn't push its operands to the work
> >> list as done in line 974-975?
> >>
> >> 00970 ? ? // If N has no uses, it is dead. ?Make sure to revisit all
> >> N's operands once
> >> 00971 ? ? // N is deleted from the DAG, since they too may now be dead
> >> or may have a
> >> 00972 ? ? // reduced number of uses, allowing other xforms.
> >> 00973 ? ? if (N->use_empty()&& ?N !=&Dummy) {
> >> 00974 ? ? ? for (unsigned i = 0, e = N->getNumOperands(); i != e; ++i)
> >> 00975 ? ? ? ? AddToWorkList(N->getOperand(i).getNode());
> >> 00976
> >> 00977 ? ? ? DAG.DeleteNode(N);
> >> 00978 ? ? ? continue;
> >> 00979 ? ? }
> >
> > I suspect they could be removed. ?Probably a helper function should be added
> > for this and used all over the place. ?Also, the RAUW earlier can cause nodes
> > to be unified (due to CSE). ?Probably the WorkListRemover class should add nodes
> > to the worklist in the NodeUpdated method.
> >
> >>
> >> Or is it one of the corner cases mentioned in SelectionDAGISel.cpp:644?
> >>
> >> 00644 ? ? ? // Skip dead nodes. DAGCombiner is expected to eliminate
> >> all dead nodes,
> >> 00645 ? ? ? // but there are currently some corner cases that it
> >> misses. Also, this
> >> 00646 ? ? ? // makes it theoretically possible to disable the DAGCombiner.
> >>
> >> I am seeing an error message "LLVM ERROR: Cannot select:" because
> >> operands of a dead node do not get removed.
> >
> > What is it that cannot be selected?
> >
> 
> This seems to be what is happening,
> 
> There is a subgraph in the DAG.
> (Load (Add (MipsHi tglobaladdr), (MipsLo tglobaladdr)))
> 
> The Load node is removed in DAGCombiner.cpp:6155, but its operand are
> not removed, leaving this subgraph:
> (Add (MipsHi tglobaladdr), (MipsLo tglobaladdr))
> 
> Since Add is a dead node without any users, the selector skips this
> node in SelectionDAGISel.cpp:644-.
> 
> Then, the selector tries to match this fragment:
> (MipsLo tglobaladdr)
> 
> MipsLo does not have a pattern defined, since it is not meant to be
> the root node of a pattern, therefore instruction selection fails.
> 
> I was thinking this problem should go away if DAGCombiner cleans up
> all dead nodes, but it looks like I should just define a pattern for
> MIpsLo for now.
> 
> > Ciao, Duncan.
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu ? ? ? ? http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
> 
> 
> 
> ------------------------------
> 
> Message: 2
> Date: Fri, 26 Aug 2011 13:18:47 -0500
> From: "Villmow, Micah" <Micah.Villmow at amd.com>
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> To: LLVM-Dev <llvmdev at cs.uiuc.edu>
> Message-ID:
> 	<D556DCBBC0EA924A9AC80003B62121120AF96EF5A5 at sausexmbp02.amd.com>
> Content-Type: text/plain; charset="utf-8"
> 
> You can find out about OpenCL here:
> http://www.khronos.org/opencl/
> 
> That being said, AMD OpenCL is not a target of LLVM. AMD uses LLVM for its optimizer and code generation paths for the OpenCL compiler.
> 
> Micah
> 
> From: geovanisouza92 at gmail.com [mailto:geovanisouza92 at gmail.com]
> Sent: Friday, August 26, 2011 10:06 AM
> To: Villmow, Micah
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> 
> So, AMD OpenCL is another target for LLVM?
> 
> Where I can learn about OpenCL?
> 
> Thanks.
> 
> 
> 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com<mailto:Micah.Villmow at amd.com>>
> 
> 
> From: llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu> [mailto:llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu>] On Behalf Of geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Sent: Friday, August 26, 2011 7:33 AM
> To: LLVM-Dev
> Subject: [LLVMdev] Is LLVM compatible with AMD?
> 
> Hi all!
> 
> I'm getting starting with LLVM, and I'm creating a new cross-platform programming language LLVM-based with a Standard Library POSIX-based. The language has sintatic sugar of Object Pascal and Ruby.
> 
> My doubt is if LLVM is compatible with AMD (e.g. Fusion), allowing so that my StdLib can be used to create Games, in future...
> [Villmow, Micah] AMD uses LLVM for its OpenCL compilers which run on Fusion parts and LLVM itself can generate X86 code. However, there currently is no way to target the X86 GPU?s directly. You might want to look at the Gallium3D project(Linux only) for a way to do this.
> 
> Regards!
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu>         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 
> 
> 
> --
> "Antequam noveris, a laudando et vituperando abstine"
> 
> Esperando que esteja bem,
> 
> Geovani de Souza
> 
> 
> MSN: gss6978 at hotmail.com<mailto:gss6978 at hotmail.com>
> E-mail: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Skype: geovanisouza92
> 
> http://www.twitter.com/geovanisouza92
> http://www.sentinelaaizen.blogspot.com/
> http://www.delphiloaded.blogspot.com/
> WebRep
> Error! Filename not specified.
> Overall rating
> Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.
> 
> 
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20110826/fa1b4334/attachment-0001.html 
> 
> ------------------------------
> 
> Message: 3
> Date: Fri, 26 Aug 2011 14:30:17 -0400
> From: Rafael ?vila de Esp?ndola 	<rafael.espindola at gmail.com>
> Subject: Re: [LLVMdev] Segmented Stacks (Re-Roll 2)
> To: Sanjoy Das <sanjoy at playingwithpointers.com>
> Cc: llvmdev at cs.uiuc.edu
> Message-ID: <4E57E639.2040101 at gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> 
> On 08/25/2011 12:41 AM, Sanjoy Das wrote:
> > Hi all!
> >
> > I've attached a corrected set of patches (based on the input I
> > received here).  Please let me know if this work looks mergeable.
> >
> > The documentation is only partially filled in, I'll add more details
> > once support for Go is also merged (the current co-routine work I'm
> > doing).
> >
> 
> LGTM.
> 
> Evan, anything else?
> 
> > Thanks!
> >
> 
> Thanks!
> Rafael
> 
> 
> ------------------------------
> 
> Message: 4
> Date: Fri, 26 Aug 2011 15:40:58 -0300
> From: "geovanisouza92 at gmail.com" <geovanisouza92 at gmail.com>
> Subject: [LLVMdev] How much adaptable is the LLVM to POSIX pattern?
> To: LLVM-Dev <llvmdev at cs.uiuc.edu>
> Message-ID:
> 	<CAA+uDF75JS-2WKAUaB0+5m-Lps1rLZv6HP5=QuQovE9igyWugw at mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Hi everyone again!
> 
> I'm come back with a new doubt... How much adaptable is the LLVM to POSIX
> pattern?
> 
> I'm thinking about create a cross-platform "framework" (it will turn more
> than this), POSIX-based.
> 
> You think that this is possible, while using LLVM infrastructure?
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20110826/3b7164f6/attachment-0001.html 
> 
> ------------------------------
> 
> Message: 5
> Date: Fri, 26 Aug 2011 12:51:34 -0700
> From: Yuri <yuri at rawbw.com>
> Subject: Re: [LLVMdev] Why BinaryOperator::Create requires same
> 	argument types for shifts?
> To: Stephan Falke <falke at iti.uka.de>
> Cc: llvmdev at cs.uiuc.edu
> Message-ID: <4E57F946.3030307 at rawbw.com>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> 
> On 08/26/2011 05:32, Stephan Falke wrote:
> > As stated in LLVM's language reference manual
> > (http://llvm.org/docs/LangRef.html#i_shl), both arguments for a shl need
> > to have the same type.
> 
> In my case, original types were uint8 (value) and uint32 (shift)
> llvm lacks unsigned types which made it S1=i8 and S2=i32. It's 
> technically nothing wrong with such combination, and code works fine 
> until I ran debug llvm for some other reason and this assert showed up.
> 
> So if I need to shift signed int8 with unsigned uint32, I have to first 
> truncate shift to uint8, with understanding that uint8 will become int8 
> because llvm lacks unsignedness?
> I think such requirement is redundant and you should make an exception 
> in shift operator definitions to allow for any combination of numeric 
> arguments. It forces to create an extra trunc/expand operator without 
> the real need.
> 
> Yuri
> 
> 
> ------------------------------
> 
> Message: 6
> Date: Fri, 26 Aug 2011 13:28:38 -0700
> From: Eli Friedman <eli.friedman at gmail.com>
> Subject: Re: [LLVMdev] Why BinaryOperator::Create requires same
> 	argument types for shifts?
> To: Yuri <yuri at rawbw.com>
> Cc: llvmdev at cs.uiuc.edu
> Message-ID:
> 	<CAJdarcFNKOGJxtb9ndBXhgDjdjq7Ccz-unX9xEerfF9OPuaiWg at mail.gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
> 
> On Fri, Aug 26, 2011 at 12:51 PM, Yuri <yuri at rawbw.com> wrote:
> > On 08/26/2011 05:32, Stephan Falke wrote:
> >> As stated in LLVM's language reference manual
> >> (http://llvm.org/docs/LangRef.html#i_shl), both arguments for a shl need
> >> to have the same type.
> >
> > In my case, original types were uint8 (value) and uint32 (shift)
> > llvm lacks unsigned types which made it S1=i8 and S2=i32. It's
> > technically nothing wrong with such combination, and code works fine
> > until I ran debug llvm for some other reason and this assert showed up.
> >
> > So if I need to shift signed int8 with unsigned uint32, I have to first
> > truncate shift to uint8, with understanding that uint8 will become int8
> > because llvm lacks unsignedness?
> 
> (LLVM integer types aren't signed or unsigned; the operations on them are.)
> 
> > I think such requirement is redundant and you should make an exception
> > in shift operator definitions to allow for any combination of numeric
> > arguments. It forces to create an extra trunc/expand operator without
> > the real need.
> 
> Every BinaryOperator has two operands of the same type; it isn't worth
> the mess to change that...
> 
> -Eli
> 
> 
> ------------------------------
> 
> Message: 7
> Date: Fri, 26 Aug 2011 15:07:37 -0700
> From: Evan Cheng <evan.cheng at apple.com>
> Subject: Re: [LLVMdev] Segmented Stacks (Re-Roll 2)
> To: Rafael ?vila de Esp?ndola <rafael.espindola at gmail.com>
> Cc: llvmdev at cs.uiuc.edu
> Message-ID: <A0FF37B1-C68D-49C6-860D-B0D7061F0504 at apple.com>
> Content-Type: text/plain; charset=iso-8859-1
> 
> 
> On Aug 26, 2011, at 11:30 AM, Rafael ?vila de Esp?ndola wrote:
> 
> > On 08/25/2011 12:41 AM, Sanjoy Das wrote:
> >> Hi all!
> >> 
> >> I've attached a corrected set of patches (based on the input I
> >> received here).  Please let me know if this work looks mergeable.
> >> 
> >> The documentation is only partially filled in, I'll add more details
> >> once support for Go is also merged (the current co-routine work I'm
> >> doing).
> >> 
> > 
> > LGTM.
> > 
> > Evan, anything else?
> 
> Nope.
> 
> Evan
> 
> > 
> >> Thanks!
> >> 
> > 
> > Thanks!
> > Rafael
> 
> 
> 
> 
> ------------------------------
> 
> Message: 8
> Date: Fri, 26 Aug 2011 21:52:21 -0300
> From: "geovanisouza92 at gmail.com" <geovanisouza92 at gmail.com>
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> To: LLVM-Dev <llvmdev at cs.uiuc.edu>
> Message-ID:
> 	<CAA+uDF6T4fdZBr4wZKVRbwLpSSNgcmV+63spCvJ-=OBckSycsQ at mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Villmow, excuse me about the previous reply. :$
> 
> So, I'm thinking about OpenGL, or other generic graphical libraries.
> 
> 
> 
> 
> 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com>
> 
> > In what context? Also, please have all replies go to the mailing list and
> > not to the contributor directly.****
> >
> > ** **
> >
> > Thanks,****
> >
> > Micah****
> >
> > ** **
> >
> > *From:* geovanisouza92 at gmail.com [mailto:geovanisouza92 at gmail.com]
> > *Sent:* Friday, August 26, 2011 5:42 PM
> >
> > *To:* Villmow, Micah
> > *Subject:* Re: [LLVMdev] Is LLVM compatible with AMD?****
> >
> > ** **
> >
> > Villmow, you know if LLVM supports graphical computing beyond AMD-IL?****
> >
> > ** **
> >
> > []'s****
> >
> > ** **
> >
> > ** **
> >
> > 2011/8/26 geovanisouza92 at gmail.com <geovanisouza92 at gmail.com>****
> >
> > Ok. Thanks Villmow!****
> >
> > ** **
> >
> > ** **
> >
> > 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com>****
> >
> > You can find out about OpenCL here:****
> >
> > http://www.khronos.org/opencl/****
> >
> >  ****
> >
> > That being said, AMD OpenCL is not a target of LLVM. AMD uses LLVM for its
> > optimizer and code generation paths for the OpenCL compiler. ****
> >
> >  ****
> >
> > Micah****
> >
> >  ****
> >
> > *From:* geovanisouza92 at gmail.com [mailto:geovanisouza92 at gmail.com]
> > *Sent:* Friday, August 26, 2011 10:06 AM
> > *To:* Villmow, Micah
> > *Subject:* Re: [LLVMdev] Is LLVM compatible with AMD?****
> >
> >  ****
> >
> > So, AMD OpenCL is another target for LLVM?****
> >
> >  ****
> >
> > Where I can learn about OpenCL?****
> >
> >  ****
> >
> > Thanks.****
> >
> >  ****
> >
> >  ****
> >
> > 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com>****
> >
> >  ****
> >
> >  ****
> >
> > *From:* llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] *On
> > Behalf Of *geovanisouza92 at gmail.com
> > *Sent:* Friday, August 26, 2011 7:33 AM
> > *To:* LLVM-Dev
> > *Subject:* [LLVMdev] Is LLVM compatible with AMD?****
> >
> >  ****
> >
> > Hi all!****
> >
> >  ****
> >
> > I'm getting starting with LLVM, and I'm creating a new cross-platform
> > programming language LLVM-based with a Standard Library POSIX-based. The
> > language has sintatic sugar of Object Pascal and Ruby.****
> >
> >  ****
> >
> > My doubt is if LLVM is compatible with AMD (e.g. Fusion), allowing so that
> > my StdLib can be used to create Games, in future...****
> >
> > *[Villmow, Micah] AMD uses LLVM for its OpenCL compilers which run on
> > Fusion parts and LLVM itself can generate X86 code. However, there currently
> > is no way to target the X86 GPU?s directly. You might want to look at the
> > Gallium3D project(Linux only) for a way to do this.*****
> >
> >  ****
> >
> > Regards!****
> >
> >  ****
> >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev****
> >
> >
> >
> > ****
> >
> >  ****
> >
> > --
> > "Antequam noveris, a laudando et vituperando abstine"
> >
> > Esperando que esteja bem,
> >
> > Geovani de Souza
> >
> >
> > *MSN*: gss6978 at hotmail.com
> > *E-mail*: geovanisouza92 at gmail.com****
> >
> > *Skype*: geovanisouza92****
> >
> >
> > http://www.twitter.com/geovanisouza92
> > http://www.sentinelaaizen.blogspot.com/****
> >
> > http://www.delphiloaded.blogspot.com/****
> >
> > WebRep****
> >
> > *Error! Filename not specified.*****
> >
> > Overall rating****
> >
> > *Error! Filename not specified.*****
> >
> > *Error! Filename not specified.Error! Filename not specified.Error!
> > Filename not specified.Error! Filename not specified.Error! Filename not
> > specified.*****
> >
> > *Error! Filename not specified.Error! Filename not specified.Error!
> > Filename not specified.Error! Filename not specified.Error! Filename not
> > specified.*****
> >
> > *Error! Filename not specified.*****
> >
> >  ****
> >
> >  ****
> >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev****
> >
> >
> >
> > ****
> >
> > ** **
> >
> > --
> > "Antequam noveris, a laudando et vituperando abstine"
> >
> > Esperando que esteja bem,
> >
> > Geovani de Souza
> >
> >
> > *MSN*: gss6978 at hotmail.com
> > *E-mail*: geovanisouza92 at gmail.com****
> >
> > *Skype*: geovanisouza92****
> >
> >
> > http://www.twitter.com/geovanisouza92
> > http://www.sentinelaaizen.blogspot.com/****
> >
> > http://www.delphiloaded.blogspot.com/****
> >
> > WebRep****
> >
> > *Error! Filename not specified.*****
> >
> > Overall rating****
> >
> > *Error! Filename not specified.*****
> >
> > *Error! Filename not specified.**Error! Filename not specified.**Error!
> > Filename not specified.**Error! Filename not specified.**Error! Filename
> > not specified.*****
> >
> > *Error! Filename not specified.**Error! Filename not specified.**Error!
> > Filename not specified.**Error! Filename not specified.**Error! Filename
> > not specified.*****
> >
> > *Error! Filename not specified.*****
> >
> >  ****
> >
> > ** **
> >
> >
> >
> > ****
> >
> > ** **
> >
> > --
> > "Antequam noveris, a laudando et vituperando abstine"
> >
> > Esperando que esteja bem,
> >
> > Geovani de Souza
> >
> >
> > *MSN*: gss6978 at hotmail.com
> > *E-mail*: geovanisouza92 at gmail.com****
> >
> > *Skype*: geovanisouza92****
> >
> >
> > http://www.twitter.com/geovanisouza92
> > http://www.sentinelaaizen.blogspot.com/****
> >
> > http://www.delphiloaded.blogspot.com/****
> >
> > WebRep****
> >
> > *Error! Filename not specified.*****
> >
> > Overall rating****
> >
> > *Error! Filename not specified.*****
> >
> > *Error! Filename not specified.**Error! Filename not specified.**Error!
> > Filename not specified.**Error! Filename not specified.**Error! Filename
> > not specified.*****
> >
> > *Error! Filename not specified.**Error! Filename not specified.**Error!
> > Filename not specified.**Error! Filename not specified.**Error! Filename
> > not specified.*****
> >
> > *Error! Filename not specified.*****
> >
> >  ****
> >
> > ** **
> >
> 
> 
> 
> -- 
> "Antequam noveris, a laudando et vituperando abstine"
> 
> Esperando que esteja bem,
> 
> Geovani de Souza
> 
> 
> *MSN*: gss6978 at hotmail.com
> *E-mail*: geovanisouza92 at gmail.com
> *Skype*: geovanisouza92
> 
> http://www.twitter.com/geovanisouza92
> http://www.sentinelaaizen.blogspot.com/
> http://www.delphiloaded.blogspot.com/
> WebRep
> Overall rating
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20110826/a91174b0/attachment-0001.html 
> 
> ------------------------------
> 
> Message: 9
> Date: Fri, 26 Aug 2011 20:11:22 -0500
> From: "Villmow, Micah" <Micah.Villmow at amd.com>
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> To: "geovanisouza92 at gmail.com" <geovanisouza92 at gmail.com>, LLVM-Dev
> 	<llvmdev at cs.uiuc.edu>
> Message-ID:
> 	<D556DCBBC0EA924A9AC80003B62121120AF96EF62E at sausexmbp02.amd.com>
> Content-Type: text/plain; charset="utf-8"
> 
> You should check out the Gallium3D project as I mentioned below. They are using LLVM for their graphics language compilation.
> 
> Micah
> 
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of geovanisouza92 at gmail.com
> Sent: Friday, August 26, 2011 5:52 PM
> To: LLVM-Dev
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> 
> Villmow, excuse me about the previous reply. :$
> 
> So, I'm thinking about OpenGL, or other generic graphical libraries.
> 
> 
> 
> 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com<mailto:Micah.Villmow at amd.com>>
> In what context? Also, please have all replies go to the mailing list and not to the contributor directly.
> 
> Thanks,
> Micah
> 
> From: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com> [mailto:geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>]
> Sent: Friday, August 26, 2011 5:42 PM
> 
> To: Villmow, Micah
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> 
> Villmow, you know if LLVM supports graphical computing beyond AMD-IL?
> 
> []'s
> 
> 
> 2011/8/26 geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com> <geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>>
> Ok. Thanks Villmow!
> 
> 
> 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com<mailto:Micah.Villmow at amd.com>>
> You can find out about OpenCL here:
> http://www.khronos.org/opencl/
> 
> That being said, AMD OpenCL is not a target of LLVM. AMD uses LLVM for its optimizer and code generation paths for the OpenCL compiler.
> 
> Micah
> 
> From: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com> [mailto:geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>]
> Sent: Friday, August 26, 2011 10:06 AM
> To: Villmow, Micah
> Subject: Re: [LLVMdev] Is LLVM compatible with AMD?
> 
> So, AMD OpenCL is another target for LLVM?
> 
> Where I can learn about OpenCL?
> 
> Thanks.
> 
> 
> 2011/8/26 Villmow, Micah <Micah.Villmow at amd.com<mailto:Micah.Villmow at amd.com>>
> 
> 
> From: llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu> [mailto:llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu>] On Behalf Of geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Sent: Friday, August 26, 2011 7:33 AM
> To: LLVM-Dev
> Subject: [LLVMdev] Is LLVM compatible with AMD?
> 
> Hi all!
> 
> I'm getting starting with LLVM, and I'm creating a new cross-platform programming language LLVM-based with a Standard Library POSIX-based. The language has sintatic sugar of Object Pascal and Ruby.
> 
> My doubt is if LLVM is compatible with AMD (e.g. Fusion), allowing so that my StdLib can be used to create Games, in future...
> [Villmow, Micah] AMD uses LLVM for its OpenCL compilers which run on Fusion parts and LLVM itself can generate X86 code. However, there currently is no way to target the X86 GPU?s directly. You might want to look at the Gallium3D project(Linux only) for a way to do this.
> 
> Regards!
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu>         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 
> 
> 
> --
> "Antequam noveris, a laudando et vituperando abstine"
> 
> Esperando que esteja bem,
> 
> Geovani de Souza
> 
> 
> MSN: gss6978 at hotmail.com<mailto:gss6978 at hotmail.com>
> E-mail: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Skype: geovanisouza92
> 
> http://www.twitter.com/geovanisouza92
> http://www.sentinelaaizen.blogspot.com/
> http://www.delphiloaded.blogspot.com/
> WebRep
> Error! Filename not specified.
> Overall rating
> Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.
> 
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu>         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 
> 
> 
> --
> "Antequam noveris, a laudando et vituperando abstine"
> 
> Esperando que esteja bem,
> 
> Geovani de Souza
> 
> 
> MSN: gss6978 at hotmail.com<mailto:gss6978 at hotmail.com>
> E-mail: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Skype: geovanisouza92
> 
> http://www.twitter.com/geovanisouza92
> http://www.sentinelaaizen.blogspot.com/
> http://www.delphiloaded.blogspot.com/
> WebRep
> Error! Filename not specified.
> Overall rating
> Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.
> 
> 
> 
> 
> 
> --
> "Antequam noveris, a laudando et vituperando abstine"
> 
> Esperando que esteja bem,
> 
> Geovani de Souza
> 
> 
> MSN: gss6978 at hotmail.com<mailto:gss6978 at hotmail.com>
> E-mail: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Skype: geovanisouza92
> 
> http://www.twitter.com/geovanisouza92
> http://www.sentinelaaizen.blogspot.com/
> http://www.delphiloaded.blogspot.com/
> WebRep
> Error! Filename not specified.
> Overall rating
> Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.
> 
> 
> 
> 
> 
> --
> "Antequam noveris, a laudando et vituperando abstine"
> 
> Esperando que esteja bem,
> 
> Geovani de Souza
> 
> 
> MSN: gss6978 at hotmail.com<mailto:gss6978 at hotmail.com>
> E-mail: geovanisouza92 at gmail.com<mailto:geovanisouza92 at gmail.com>
> Skype: geovanisouza92
> 
> http://www.twitter.com/geovanisouza92
> http://www.sentinelaaizen.blogspot.com/
> http://www.delphiloaded.blogspot.com/
> WebRep
> Error! Filename not specified.
> Overall rating
> Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.Error! Filename not specified.
> Error! Filename not specified.
> 
> 
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20110826/751b88cb/attachment.html 
> 
> ------------------------------
> 
> _______________________________________________
> LLVMdev mailing list
> LLVMdev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 
> 
> End of LLVMdev Digest, Vol 86, Issue 50
> ***************************************




More information about the LLVMdev mailing list